Boot failure with 5.4-rc5, bisected to 0f0581b24bd0 ("spi: fsl: Convert to use CS GPIO descriptors")

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Linus,

With the above mentionned commit, I get a crash on boot:

[    3.146041] ------------[ cut here ]------------
[    3.150340] kernel BUG at lib/genalloc.c:516!
[    3.154649] Oops: Exception in kernel mode, sig: 5 [#1]
[    3.159821] BE PAGE_SIZE=16K PREEMPT CMPC885
[    3.164053] CPU: 0 PID: 1 Comm: swapper Not tainted 5.4.0-rc5-s3k-dev-00785-gab26ba2f2775 #2471
[    3.172630] NIP:  c0249054 LR: c0249054 CTR: 00000000
[    3.177631] REGS: c60e1c50 TRAP: 0700   Not tainted (5.4.0-rc5-s3k-dev-00785-gab26ba2f2775)
[    3.185953] MSR:  00021032 <ME,IR,DR,RI>  CR: 24002422 XER: 20000000
[    3.192322]
[    3.192322] GPR00: c0249054 c60e1d08 c60d4000 c600c200 00009d80 00000000 00000000 00000000 [    3.192322] GPR08: 00000000 00000000 00009bbf 000affff 24000422 00000000 c0003890 00000000 [    3.192322] GPR16: 00000000 00000000 00000000 00000000 00000000 00000000 c0800000 0000009e [    3.192322] GPR24: c0852778 00000000 00000000 00000000 00000000 c600c200 00009d80 c600c200
[    3.227053] NIP [c0249054] gen_pool_free_owner+0xfc/0x100
[    3.232377] LR [c0249054] gen_pool_free_owner+0xfc/0x100
[    3.237588] Call Trace:
[    3.240037] [c60e1d08] [c0249054] gen_pool_free_owner+0xfc/0x100 (unreliable)
[    3.247113] [c60e1d38] [c0299020] cpm_muram_free+0x84/0xf4
[    3.252517] [c60e1d58] [c030e7a4] fsl_spi_cpm_free+0x94/0x100
[    3.258198] [c60e1d68] [c030f2d4] of_fsl_spi_probe+0x260/0x3a0
[    3.263965] [c60e1db8] [c02c5458] platform_drv_probe+0x44/0xa4
[    3.269754] [c60e1dc8] [c02c35fc] really_probe+0x1ac/0x418
[    3.275164] [c60e1df8] [c02c407c] device_driver_attach+0x88/0x90
[    3.281099] [c60e1e18] [c02c4124] __driver_attach+0xa0/0x154
[    3.286691] [c60e1e38] [c02c165c] bus_for_each_dev+0x64/0xb4
[    3.292284] [c60e1e68] [c02c2038] bus_add_driver+0xe0/0x218
[    3.297783] [c60e1e88] [c02c48dc] driver_register+0x84/0x148
[    3.303394] [c60e1e98] [c06d8d30] do_one_initcall+0x8c/0x1cc
[    3.308978] [c60e1ef8] [c06d8fac] kernel_init_freeable+0x13c/0x1ec
[    3.315087] [c60e1f28] [c00038a4] kernel_init+0x14/0x110
[    3.320342] [c60e1f38] [c000e1cc] ret_from_kernel_thread+0x14/0x1c
[    3.326401] Instruction dump:
[    3.329337] 40a2fff4 4192000c 813f0010 913a0000 80010034 81810010 7c0803a6 bb210014 [    3.336994] 7d808120 38210030 4be1d7a8 4be1d7a5 <0fe00000> 7c0802a6 9421ffe0 bf810010
[    3.344864] ---[ end trace 2200b36c5d6384b0 ]---
[    3.349380]
[    4.320994] note: swapper[1] exited with preempt_count 1
[    4.326187] Kernel panic - not syncing: Attempted to kill init! exitcode=0x00000005
[    4.333602] Rebooting in 180 seconds..

Reverting 0f0581b24bd0 ("spi: fsl: Convert to use CS GPIO descriptors") solves the issue.

Renaming the gpios item to cs-gpios in the devicetree fixes the crash on boot but the following warning appears during boot and SPI doesn't work (can't read board temperature on LM74 chip):

[    3.145635] ------------[ cut here ]------------
[    3.150048] WARNING: CPU: 0 PID: 1 at drivers/spi/spi-fsl-spi.c:716 fsl_spi_cs_control+0x64/0x7c [    3.158715] CPU: 0 PID: 1 Comm: swapper Not tainted 5.4.0-rc5-s3k-dev-00785-gab26ba2f2775 #2473
[    3.167296] NIP:  c030ee68 LR: c030ee3c CTR: c030ee04
[    3.172295] REGS: c60e1bd0 TRAP: 0700   Not tainted (5.4.0-rc5-s3k-dev-00785-gab26ba2f2775)
[    3.180618] MSR:  00029032 <EE,ME,IR,DR,RI>  CR: 24004842  XER: 20000000
[    3.187246]
[    3.187246] GPR00: c030fbd4 c60e1c88 c60d4000 c6211c50 00000000 00000000 07de2900 c61f2210 [    3.187246] GPR08: 00001208 c61f2210 00001200 000affff 24004848 00000000 c0003890 00000000 [    3.187246] GPR16: 00000000 00000000 00000000 c7fdd478 c06aa8dc c06b0000 c06aa7f8 c06aa804 [    3.187246] GPR24: c06aa810 c06aa81c 00000000 c61f2210 c07b72fc 00000000 c6244a40 00000000
[    3.221966] NIP [c030ee68] fsl_spi_cs_control+0x64/0x7c
[    3.227126] LR [c030ee3c] fsl_spi_cs_control+0x38/0x7c
[    3.232167] Call Trace:
[    3.234616] [c60e1c98] [c030fbd4] fsl_spi_setup+0xc4/0x148
[    3.240070] [c60e1cb8] [c030c45c] spi_setup+0xd0/0x1c4
[    3.245129] [c60e1cd8] [c030c5f4] spi_add_device+0xa4/0x190
[    3.250640] [c60e1cf8] [c030d0ec] spi_register_controller+0x75c/0xb50
[    3.257009] [c60e1d48] [c030d520] devm_spi_register_controller+0x40/0x98
[    3.263619] [c60e1d68] [c030f354] of_fsl_spi_probe+0x2e0/0x3a0
[    3.269388] [c60e1db8] [c02c5458] platform_drv_probe+0x44/0xa4
[    3.275178] [c60e1dc8] [c02c35fc] really_probe+0x1ac/0x418
[    3.280587] [c60e1df8] [c02c407c] device_driver_attach+0x88/0x90
[    3.286523] [c60e1e18] [c02c4124] __driver_attach+0xa0/0x154
[    3.292115] [c60e1e38] [c02c165c] bus_for_each_dev+0x64/0xb4
[    3.297708] [c60e1e68] [c02c2038] bus_add_driver+0xe0/0x218
[    3.303205] [c60e1e88] [c02c48dc] driver_register+0x84/0x148
[    3.308815] [c60e1e98] [c06d8d30] do_one_initcall+0x8c/0x1cc
[    3.314400] [c60e1ef8] [c06d8fac] kernel_init_freeable+0x13c/0x1ec
[    3.320508] [c60e1f28] [c00038a4] kernel_init+0x14/0x110
[    3.325762] [c60e1f38] [c000e1cc] ret_from_kernel_thread+0x14/0x1c
[    3.331824] Instruction dump:
[    3.334759] 4bfffab1 80830018 2f840000 419e0024 80010014 215f0000 7c0803a6 83e1000c [    3.342416] 7c631910 54630000 38210010 4bcffa84 <0fe00000> 80010014 83e1000c 7c0803a6
[    3.350277] ---[ end trace 15d6993a62672e78 ]---


Any idea ?

Thanks,
Christophe



[Index of Archives]     [Linux Kernel]     [Linux ARM (vger)]     [Linux ARM MSM]     [Linux Omap]     [Linux Arm]     [Linux Tegra]     [Fedora ARM]     [Linux for Samsung SOC]     [eCos]     [Linux Fastboot]     [Gcc Help]     [Git]     [DCCP]     [IETF Announce]     [Security]     [Linux MIPS]     [Yosemite Campsites]

  Powered by Linux