Messages in this thread | | | Date | Sat, 30 Jul 2022 09:36:31 +0200 | Subject | Re: fw_devlink=on breaks probing devices when of_platform_populate() is used | From | Rafał Miłecki <> |
| |
Hi guys,
On 16.07.2022 22:50, Rafał Miłecki wrote: > I added of_platform_populate() calls in mtd subsystem in the commit > bcdf0315a61a2 ("mtd: call of_platform_populate() for MTD partitions"): > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=bcdf0315a61a29eb753a607d3a85a4032de72d94 > > I recently backported that commit in OpenWrt to kernels 5.10 and 5.15. > We started receiving reports that probing Ethernet devices stopped > working in kernel 5.15. I bisected it down to the kernel 5.13 change: > > commit ea718c699055c8566eb64432388a04974c43b2ea (refs/bisect/bad) > Author: Saravana Kannan <saravanak@google.com> > Date: Tue Mar 2 13:11:32 2021 -0800 > > Revert "Revert "driver core: Set fw_devlink=on by default"" > > This reverts commit 3e4c982f1ce75faf5314477b8da296d2d00919df. > > Since all reported issues due to fw_devlink=on should be addressed by > this series, revert the revert. fw_devlink=on Take II. > > Signed-off-by: Saravana Kannan <saravanak@google.com> > Link: https://lore.kernel.org/r/20210302211133.2244281-4-saravanak@google.com > Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> > > For me with above commit kernel just never calls bcm4908_enet_probe(). > Reverting it from the top of 5.13.19 and 5.15.50 fixes it. I believe the > same issue happens with other drivers. > > Critical detail is that in DT Ethernet block node references NVMEM cell > of MTD partition (see below). > > Could you help me dealing with this issue, please? Can you see something > obvious breaking fw_devlink=on + of_platform_populate() case? Can I > provide some extra information to help fixing it?
Any ideas about this problem / solution?
> Relevant DT part: > > partitions { > compatible = "fixed-partitions"; > #address-cells = <1>; > #size-cells = <1>; > > partition@0 { > compatible = "nvmem-cells"; > reg = <0x0 0x100000>; > label = "bootloader"; > > #address-cells = <1>; > #size-cells = <1>; > ranges = <0 0x0 0x100000>; > > base_mac_addr: mac@106a0 { > reg = <0x106a0 0x6>; > }; > }; > > partition@100000 { > reg = <0x100000 0x5700000>; > label = "firmware"; > }; > }; > > ethernet@2000 { > compatible = "brcm,bcm4908-enet"; > reg = <0x2000 0x1000>; > > interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>, > <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>; > interrupt-names = "rx", "tx"; > > nvmem-cells = <&base_mac_addr>; > nvmem-cell-names = "mac-address"; > }; > > OpenWrt bug report: > https://github.com/openwrt/openwrt/issues/10232
| |