I have 5 of the Serial Expansion HATs from Waveshare. I have set the resistors on each of them to a uniquie interrupt and i2c address. When I add all the dtoverlays (either on the command line or via config.txt) I get the following kernel error:
It doesn't matter which order I add the overlays, the last one added always causes the error. Each of the boards work well individually or up to four of them simultaneously.
The commands I use to load the overlays are:and the entries in config.txt look like this (currently commented out so I can load the overlays on the command line):Any help would be greatly appreciated.
Code:
[ 174.948620] Unable to handle kernel NULL pointer dereference at virtual address 0000000000000040[ 174.957640] Mem abort info:[ 174.960522] ESR = 0x0000000096000005[ 174.964417] EC = 0x25: DABT (current EL), IL = 32 bits[ 174.969953] SET = 0, FnV = 0[ 174.973272] EA = 0, S1PTW = 0[ 174.976552] FSC = 0x05: level 1 translation fault[ 174.981921] Data abort info:[ 174.984898] ISV = 0, ISS = 0x00000005, ISS2 = 0x00000000[ 174.990516] CM = 0, WnR = 0, TnD = 0, TagAccess = 0[ 174.995694] GCS = 0, Overlay = 0, DirtyBit = 0, Xs = 0[ 175.001135] user pgtable: 4k pages, 39-bit VAs, pgdp=00000000430c6000[ 175.007704] [0000000000000040] pgd=0000000000000000, p4d=0000000000000000, pud=0000000000000000[ 175.016901] Internal error: Oops: 0000000096000005 [#1] PREEMPT SMP[ 175.023301] Modules linked in: sc16is7xx regmap_spi regmap_i2c cmac algif_hash aes_arm64 aes_generic algif_skcipher af_alg bnep vc4 snd_soc_hdmi_codec drm_display_helper cec drm_dma_helper brcmfmac_wcc hci_uart drm_kms_helper btbcm bluetooth brcmfmac binfmt_misc brcmutil snd_soc_core v3d cfg80211 gpu_sched ecdh_generic drm_shmem_helper ecc bcm2835_codec(C) libaes snd_compress rfkill bcm2835_v4l2(C) rpivid_hevc(C) bcm2835_isp(C) snd_bcm2835(C) raspberrypi_hwmon bcm2835_mmal_vchiq(C) snd_pcm_dmaengine v4l2_mem2mem videobuf2_dma_contig videobuf2_vmalloc snd_pcm videobuf2_memops i2c_brcmstb videobuf2_v4l2 i2c_bcm2835 videodev vc_sm_cma(C) snd_timer raspberrypi_gpiomem videobuf2_common mc snd nvmem_rmem uio_pdrv_genirq uio i2c_dev drm fuse dm_mod drm_panel_orientation_quirks backlight ip_tables x_tables ipv6[ 175.095657] CPU: 0 PID: 743 Comm: kworker/u9:3 Tainted: G C 6.6.21-v8+ #1743[ 175.104219] Hardware name: Raspberry Pi 4 Model B Rev 1.5 (DT)[ 175.110132] Workqueue: events_unbound deferred_probe_work_func[ 175.116055] pstate: 00000005 (nzcv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)[ 175.123115] pc : serial_core_unregister_port+0x58/0x2b0[ 175.128413] lr : serial_ctrl_unregister_port+0x18/0x30[ 175.133620] sp : ffffffc080f3b980[ 175.136975] x29: ffffffc080f3b980 x28: 0000000000000000 x27: ffffff8042b66080[ 175.144216] x26: ffffffe885884010 x25: 61c8864680b583eb x24: ffffff8042b66660[ 175.151456] x23: ffffffe885887b08 x22: 0000000000000000 x21: ffffffe8a3f9efe0[ 175.158695] x20: ffffffe8a38d1068 x19: 0000000000000000 x18: 0000000000000000[ 175.165933] x17: 0000000000000000 x16: ffffffe8a3032178 x15: 0000000000000000[ 175.173172] x14: 0000000000000000 x13: 0000000000000000 x12: 0000000000000000[ 175.180410] x11: 0000000000000040 x10: 0000000000001a30 x9 : ffffffe8a30320c0[ 175.187650] x8 : ffffff8040ff76d0 x7 : 0000000000000000 x6 : 0000000020800004[ 175.194889] x5 : 0000000000000000 x4 : 00000000000000fe x3 : 00000000000000ff[ 175.202128] x2 : ffffffe885884880 x1 : ffffff8042b66660 x0 : ffffffe8a3f9f0f8[ 175.209367] Call trace:[ 175.211841] serial_core_unregister_port+0x58/0x2b0[ 175.216785] serial_ctrl_unregister_port+0x18/0x30[ 175.221641] uart_remove_one_port+0x18/0x30[ 175.225879] sc16is7xx_probe+0x584/0x8f0 [sc16is7xx][ 175.230921] sc16is7xx_i2c_probe+0xfc/0x158 [sc16is7xx][ 175.236222] i2c_device_probe+0x148/0x298[ 175.240286] really_probe+0x118/0x288[ 175.243995] __driver_probe_device+0x80/0x138[ 175.248410] driver_probe_device+0x44/0x118[ 175.252649] __device_attach_driver+0xc0/0x108[ 175.257153] bus_for_each_drv+0x90/0xf0[ 175.261038] __device_attach+0xf4/0x190[ 175.264924] device_initial_probe+0x1c/0x30[ 175.269163] bus_probe_device+0xb4/0xc0[ 175.273049] deferred_probe_work_func+0x90/0xd0[ 175.277641] process_scheduled_works+0x17c/0x3e0[ 175.282321] worker_thread+0x16c/0x320[ 175.286118] kthread+0x120/0x138[ 175.289387] ret_from_fork+0x10/0x20[ 175.293012] Code: a90573fb 910462a0 a955f033 b940a036 (f9402397) [ 175.299190] ---[ end trace 0000000000000000 ]---
The commands I use to load the overlays are:
Code:
sudo dtoverlay sc16is752-i2c int_pin=24 addr=0x48sudo dtoverlay sc16is752-i2c int_pin=23 addr=0x49sudo dtoverlay sc16is752-i2c int_pin=22 addr=0x4asudo dtoverlay sc16is752-i2c int_pin=21 addr=0x4bsudo dtoverlay sc16is752-i2c int_pin=20 addr=0x4c
Code:
#dtoverlay=sc16is752-i2c,int_pin=20,addr=0x4c#dtoverlay=sc16is752-i2c,int_pin=21,addr=0x4b#dtoverlay=sc16is752-i2c,int_pin=22,addr=0x4a#dtoverlay=sc16is752-i2c,int_pin=23,addr=0x49#dtoverlay=sc16is752-i2c,int_pin=24,addr=0x48
Statistics: Posted by pmelange — Thu Mar 14, 2024 4:45 pm — Replies 1 — Views 13