RE: How to fix WARN from drivers/base/dd.c in next-20200401 if CONFIG_MODULES=y?
Hi again, > I'm guessing we should add the following flush_work for > deferred_probe_timeout_work(). > # Sorry, I didn't test this for some reasons yet though... > > + /* wait for the deferred probe timeout workqueue to finish */ > + if (driver_deferred_probe_timeout > 0) > + flush_work(&deferred_probe_timeout_work); I'm sorry. This code caused build error because the deferred_probe_timeout_work is struct delayed_work. Also, I don't think using flush_delayed_work() is my expectation (wait until the timeout of deferred)... Best regards, Yoshihiro Shimoda ___ iommu mailing list iommu@lists.linux-foundation.org https://lists.linuxfoundation.org/mailman/listinfo/iommu
RE: How to fix WARN from drivers/base/dd.c in next-20200401 if CONFIG_MODULES=y?
Hi John, Geert, > From: John Stultz, Sent: Saturday, April 4, 2020 1:19 PM > > On Fri, Apr 3, 2020 at 4:47 AM Geert Uytterhoeven > wrote: > > On Thu, Apr 2, 2020 at 7:27 PM John Stultz wrote: > > > On Thu, Apr 2, 2020 at 3:17 AM Yoshihiro Shimoda > > > wrote: > > > > > > > > I found an issue after applied the following patches: > > > > --- > > > > 64c775f driver core: Rename deferred_probe_timeout and make it global > > > > 0e9f8d0 driver core: Remove driver_deferred_probe_check_state_continue() > > > > bec6c0e pinctrl: Remove use of > > > > driver_deferred_probe_check_state_continue() > > > > e2cec7d driver core: Set deferred_probe_timeout to a longer default if > > > > CONFIG_MODULES is set > > > > Note that just setting deferred_probe_timeout = -1 like for the > > CONFIG_MODULES=n case doesn't help. > > Yea. I can see why in that case, as we're checking > !IS_ENABLED(CONFIG_MODULES) directly in > driver_deferred_probe_check_state. > > I guess we could switch that to checking > (driver_deferred_probe_timeout == -1) which would have the same logic > and at least make it consistent if someone specifies -1 on the command > line (since now it will effectively have it EPROBE_DEFER forever in > that case). But also having a timeout=infinity could be useful if > folks don't want the deferring to time out. Maybe in the !modules > case setting it to =0 would be the most clear. > > But that's sort of a further cleanup. I'm still more worried about the > NFS failure below. > > > > > Hey, > > > Terribly sorry for the trouble. So as Robin mentioned I have a patch > > > to remove the WARN messages, but I'm a bit more concerned about why > > > after the 30 second delay, the ethernet driver loads: > > > [ 36.218666] ravb e680.ethernet eth0: Base address at > > > 0xe680, 2e:09:0a:02:eb:2d, IRQ 117. > > > but NFS fails. > > > > > > Is it just that the 30 second delay is too long and NFS gives up? > > > > I added some debug code to mount_nfs_root(), which shows that the first > > 3 tries happen before ravb is instantiated, and the last 3 tries happen > > after. So NFS root should work, if the network works. > > > > However, it seems the Ethernet PHY is never initialized, hence the link > > never becomes ready. Dmesg before/after: > > > > ravb e680.ethernet eth0: Base address at 0xe680, > > 2e:09:0a:02:ea:ff, IRQ 108. > > > > Good. > > > > ... > > -gpio_rcar e6052000.gpio: sense irq = 11, type = 8 > > > > This is the GPIO the PHY IRQ is connected to. > > Note that that GPIO controller has been instantiated before. > > > > ... > > -Micrel KSZ9031 Gigabit PHY e680.ethernet-:00: > > attached PHY driver [Micrel KSZ9031 Gigabit PHY] > > (mii_bus:phy_addr=e680.ethernet-:00, irq=197) > > ... > > -ravb e680.ethernet eth0: Link is Up - 1Gbps/Full - flow control off > > > > Oops. > > > > -Sending DHCP requests .., OK > > -IP-Config: Got DHCP answer from ... > > ... > > +VFS: Unable to mount root fs via NFS, trying floppy. > > +VFS: Cannot open root device "nfs" or unknown-block(2,0): error -6 > > > > > Does booting with deferred_probe_timeout=0 work? > > > > It does, as now everything using optional links (DMA and IOMMU) is now > > instantiated on first try. > > Thanks so much for helping clarify this! > > So it's at least good to hear that booting with > deferred_probe_timeout=0 is working! But I'm bummed the NFS (or as > you pointed out in your later mail, ip_auto_config) falls over > because the network isn't immediately there. > > Looking a little closer at the ip_auto_config() code, I think the > issue may be that wait_for_device_probe() is effectively returning too > early, since the probe_defer_timeout is still active? I need to dig a > bit more on that code, on Monday, as I don't fully understand it yet. I think so. I also investigated this issue more and then the following patch seems to be related because return value is changed a bit. c8c43ce driver core: Fix driver_deferred_probe_check_state() logic # By the way, this is other topic though, IIUC we should revise # the deferred_probe_timeout= in Documentation/admin-guide/kernel-parameters.txt # for the commit c8c43ce. Especially " A timeout of 0 will timeout at the end of initcalls." # doesn't match after we applied the commit. I'm guessing we should add the following flush_work for deferred_probe_timeout_work(). # Sorry, I didn't test this for some reasons yet though... + /* wait for the deferred probe timeout workqueue to finish */ + if (driver_deferred_probe_timeout > 0) + flush_work(&deferred_probe_timeout_work); > If I can't find a way to address that, I think the best course will be > to set the driver_deferred_probe_timeout value to default to 0 > regardless of the value of CONFIG_MODULES, so we don't cause any > apparent regression from previous behavior. That will also sort out > the less intuitive = -1 initi
Re: How to fix WARN from drivers/base/dd.c in next-20200401 if CONFIG_MODULES=y?
On Fri, Apr 3, 2020 at 4:47 AM Geert Uytterhoeven wrote: > On Thu, Apr 2, 2020 at 7:27 PM John Stultz wrote: > > On Thu, Apr 2, 2020 at 3:17 AM Yoshihiro Shimoda > > wrote: > > > > > > I found an issue after applied the following patches: > > > --- > > > 64c775f driver core: Rename deferred_probe_timeout and make it global > > > 0e9f8d0 driver core: Remove driver_deferred_probe_check_state_continue() > > > bec6c0e pinctrl: Remove use of > > > driver_deferred_probe_check_state_continue() > > > e2cec7d driver core: Set deferred_probe_timeout to a longer default if > > > CONFIG_MODULES is set > > Note that just setting deferred_probe_timeout = -1 like for the > CONFIG_MODULES=n case doesn't help. Yea. I can see why in that case, as we're checking !IS_ENABLED(CONFIG_MODULES) directly in driver_deferred_probe_check_state. I guess we could switch that to checking (driver_deferred_probe_timeout == -1) which would have the same logic and at least make it consistent if someone specifies -1 on the command line (since now it will effectively have it EPROBE_DEFER forever in that case). But also having a timeout=infinity could be useful if folks don't want the deferring to time out. Maybe in the !modules case setting it to =0 would be the most clear. But that's sort of a further cleanup. I'm still more worried about the NFS failure below. > > Hey, > > Terribly sorry for the trouble. So as Robin mentioned I have a patch > > to remove the WARN messages, but I'm a bit more concerned about why > > after the 30 second delay, the ethernet driver loads: > > [ 36.218666] ravb e680.ethernet eth0: Base address at > > 0xe680, 2e:09:0a:02:eb:2d, IRQ 117. > > but NFS fails. > > > > Is it just that the 30 second delay is too long and NFS gives up? > > I added some debug code to mount_nfs_root(), which shows that the first > 3 tries happen before ravb is instantiated, and the last 3 tries happen > after. So NFS root should work, if the network works. > > However, it seems the Ethernet PHY is never initialized, hence the link > never becomes ready. Dmesg before/after: > > ravb e680.ethernet eth0: Base address at 0xe680, > 2e:09:0a:02:ea:ff, IRQ 108. > > Good. > > ... > -gpio_rcar e6052000.gpio: sense irq = 11, type = 8 > > This is the GPIO the PHY IRQ is connected to. > Note that that GPIO controller has been instantiated before. > > ... > -Micrel KSZ9031 Gigabit PHY e680.ethernet-:00: > attached PHY driver [Micrel KSZ9031 Gigabit PHY] > (mii_bus:phy_addr=e680.ethernet-:00, irq=197) > ... > -ravb e680.ethernet eth0: Link is Up - 1Gbps/Full - flow control off > > Oops. > > -Sending DHCP requests .., OK > -IP-Config: Got DHCP answer from ... > ... > +VFS: Unable to mount root fs via NFS, trying floppy. > +VFS: Cannot open root device "nfs" or unknown-block(2,0): error -6 > > > Does booting with deferred_probe_timeout=0 work? > > It does, as now everything using optional links (DMA and IOMMU) is now > instantiated on first try. Thanks so much for helping clarify this! So it's at least good to hear that booting with deferred_probe_timeout=0 is working! But I'm bummed the NFS (or as you pointed out in your later mail, ip_auto_config) falls over because the network isn't immediately there. Looking a little closer at the ip_auto_config() code, I think the issue may be that wait_for_device_probe() is effectively returning too early, since the probe_defer_timeout is still active? I need to dig a bit more on that code, on Monday, as I don't fully understand it yet. If I can't find a way to address that, I think the best course will be to set the driver_deferred_probe_timeout value to default to 0 regardless of the value of CONFIG_MODULES, so we don't cause any apparent regression from previous behavior. That will also sort out the less intuitive = -1 initialization in the non-modules case. In any case, I'll try to have a patch to send out on Monday. thanks -john ___ iommu mailing list iommu@lists.linux-foundation.org https://lists.linuxfoundation.org/mailman/listinfo/iommu
Re: How to fix WARN from drivers/base/dd.c in next-20200401 if CONFIG_MODULES=y?
Hi John, On Fri, Apr 3, 2020 at 1:47 PM Geert Uytterhoeven wrote: > On Thu, Apr 2, 2020 at 7:27 PM John Stultz wrote: > > On Thu, Apr 2, 2020 at 3:17 AM Yoshihiro Shimoda > > wrote: > > > > > > I found an issue after applied the following patches: > > > --- > > > 64c775f driver core: Rename deferred_probe_timeout and make it global > > > 0e9f8d0 driver core: Remove driver_deferred_probe_check_state_continue() > > > bec6c0e pinctrl: Remove use of > > > driver_deferred_probe_check_state_continue() > > > e2cec7d driver core: Set deferred_probe_timeout to a longer default if > > > CONFIG_MODULES is set > > Note that just setting deferred_probe_timeout = -1 like for the > CONFIG_MODULES=n case doesn't help. > > > > c8c43ce driver core: Fix driver_deferred_probe_check_state() logic > > > --- > > > > > > Before these patches, on my environment [1], some device drivers > > > which has iommus property output the following message when probing: > > > > > > [3.05] ravb e680.ethernet: ignoring dependency for device, > > > assuming no driver > > > [3.257174] ravb e680.ethernet eth0: Base address at 0xe680, > > > 2e:09:0a:02:eb:2d, IRQ 117. > > > > > > So, since ravb driver is probed within 4 seconds, we can use NFS rootfs > > > correctly. > > > > > > However, after these patches are applied, since the patches are always > > > waiting for 30 seconds > > > for of_iommu_configure() when IOMMU hardware is disabled, > > > drivers/base/dd.c output WARN. > > > Also, since ravb cannot be probed for 30 seconds, we cannot use NFS > > > rootfs anymore. > > > JFYI, I copied the kernel log to the end of this email. > > > > Hey, > > Terribly sorry for the trouble. So as Robin mentioned I have a patch > > to remove the WARN messages, but I'm a bit more concerned about why > > after the 30 second delay, the ethernet driver loads: > > [ 36.218666] ravb e680.ethernet eth0: Base address at > > 0xe680, 2e:09:0a:02:eb:2d, IRQ 117. > > but NFS fails. > > > > Is it just that the 30 second delay is too long and NFS gives up? > > I added some debug code to mount_nfs_root(), which shows that the first > 3 tries happen before ravb is instantiated, and the last 3 tries happen > after. So NFS root should work, if the network works. > > However, it seems the Ethernet PHY is never initialized, hence the link > never becomes ready. So the issue is not nfsroot in-se, but the ip-config that needs to happen before that. The call to wait_for_devices() in ip_auto_config() (which is a late_initcall()) returns -ENODEV, as the network device hasn't probed successfully yet, so ip-config is aborted. The (whitespace-damaged) patch below fixes that, but may have unintended side-effects. --- a/net/ipv4/ipconfig.c +++ b/net/ipv4/ipconfig.c @@ -1469,7 +1469,11 @@ static int __init ip_auto_config(void) /* Wait for devices to appear */ err = wait_for_devices(); if (err) +#ifdef IPCONFIG_DYNAMIC + goto try_try_again; +#else return err; +#endif /* Setup all network devices */ err = ic_open_devs(); Probably we want at least some CONFIG_ROOT_NFS || CONFIG_CIFS_ROOT, and ROOT_DEV == Root_NFS || ROOT_DEV == Root_CIFS checks. Thanks for your comments! Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- ge...@linux-m68k.org In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds ___ iommu mailing list iommu@lists.linux-foundation.org https://lists.linuxfoundation.org/mailman/listinfo/iommu
Re: How to fix WARN from drivers/base/dd.c in next-20200401 if CONFIG_MODULES=y?
Hi John, On Thu, Apr 2, 2020 at 7:27 PM John Stultz wrote: > On Thu, Apr 2, 2020 at 3:17 AM Yoshihiro Shimoda > wrote: > > > > I found an issue after applied the following patches: > > --- > > 64c775f driver core: Rename deferred_probe_timeout and make it global > > 0e9f8d0 driver core: Remove driver_deferred_probe_check_state_continue() > > bec6c0e pinctrl: Remove use of driver_deferred_probe_check_state_continue() > > e2cec7d driver core: Set deferred_probe_timeout to a longer default if > > CONFIG_MODULES is set Note that just setting deferred_probe_timeout = -1 like for the CONFIG_MODULES=n case doesn't help. > > c8c43ce driver core: Fix driver_deferred_probe_check_state() logic > > --- > > > > Before these patches, on my environment [1], some device drivers > > which has iommus property output the following message when probing: > > > > [3.05] ravb e680.ethernet: ignoring dependency for device, > > assuming no driver > > [3.257174] ravb e680.ethernet eth0: Base address at 0xe680, > > 2e:09:0a:02:eb:2d, IRQ 117. > > > > So, since ravb driver is probed within 4 seconds, we can use NFS rootfs > > correctly. > > > > However, after these patches are applied, since the patches are always > > waiting for 30 seconds > > for of_iommu_configure() when IOMMU hardware is disabled, drivers/base/dd.c > > output WARN. > > Also, since ravb cannot be probed for 30 seconds, we cannot use NFS rootfs > > anymore. > > JFYI, I copied the kernel log to the end of this email. > > Hey, > Terribly sorry for the trouble. So as Robin mentioned I have a patch > to remove the WARN messages, but I'm a bit more concerned about why > after the 30 second delay, the ethernet driver loads: > [ 36.218666] ravb e680.ethernet eth0: Base address at > 0xe680, 2e:09:0a:02:eb:2d, IRQ 117. > but NFS fails. > > Is it just that the 30 second delay is too long and NFS gives up? I added some debug code to mount_nfs_root(), which shows that the first 3 tries happen before ravb is instantiated, and the last 3 tries happen after. So NFS root should work, if the network works. However, it seems the Ethernet PHY is never initialized, hence the link never becomes ready. Dmesg before/after: ravb e680.ethernet eth0: Base address at 0xe680, 2e:09:0a:02:ea:ff, IRQ 108. Good. ... -gpio_rcar e6052000.gpio: sense irq = 11, type = 8 This is the GPIO the PHY IRQ is connected to. Note that that GPIO controller has been instantiated before. ... -Micrel KSZ9031 Gigabit PHY e680.ethernet-:00: attached PHY driver [Micrel KSZ9031 Gigabit PHY] (mii_bus:phy_addr=e680.ethernet-:00, irq=197) ... -ravb e680.ethernet eth0: Link is Up - 1Gbps/Full - flow control off Oops. -Sending DHCP requests .., OK -IP-Config: Got DHCP answer from ... ... +VFS: Unable to mount root fs via NFS, trying floppy. +VFS: Cannot open root device "nfs" or unknown-block(2,0): error -6 > Does booting with deferred_probe_timeout=0 work? It does, as now everything using optional links (DMA and IOMMU) is now instantiated on first try. Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- ge...@linux-m68k.org In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds ___ iommu mailing list iommu@lists.linux-foundation.org https://lists.linuxfoundation.org/mailman/listinfo/iommu
Re: How to fix WARN from drivers/base/dd.c in next-20200401 if CONFIG_MODULES=y?
On Thu, Apr 2, 2020 at 3:17 AM Yoshihiro Shimoda wrote: > > I found an issue after applied the following patches: > --- > 64c775f driver core: Rename deferred_probe_timeout and make it global > 0e9f8d0 driver core: Remove driver_deferred_probe_check_state_continue() > bec6c0e pinctrl: Remove use of driver_deferred_probe_check_state_continue() > e2cec7d driver core: Set deferred_probe_timeout to a longer default if > CONFIG_MODULES is set > c8c43ce driver core: Fix driver_deferred_probe_check_state() logic > --- > > Before these patches, on my environment [1], some device drivers > which has iommus property output the following message when probing: > > [3.05] ravb e680.ethernet: ignoring dependency for device, > assuming no driver > [3.257174] ravb e680.ethernet eth0: Base address at 0xe680, > 2e:09:0a:02:eb:2d, IRQ 117. > > So, since ravb driver is probed within 4 seconds, we can use NFS rootfs > correctly. > > However, after these patches are applied, since the patches are always > waiting for 30 seconds > for of_iommu_configure() when IOMMU hardware is disabled, drivers/base/dd.c > output WARN. > Also, since ravb cannot be probed for 30 seconds, we cannot use NFS rootfs > anymore. > JFYI, I copied the kernel log to the end of this email. Hey, Terribly sorry for the trouble. So as Robin mentioned I have a patch to remove the WARN messages, but I'm a bit more concerned about why after the 30 second delay, the ethernet driver loads: [ 36.218666] ravb e680.ethernet eth0: Base address at 0xe680, 2e:09:0a:02:eb:2d, IRQ 117. but NFS fails. Is it just that the 30 second delay is too long and NFS gives up? Does booting with deferred_probe_timeout=0 work? thanks -john ___ iommu mailing list iommu@lists.linux-foundation.org https://lists.linuxfoundation.org/mailman/listinfo/iommu
Re: How to fix WARN from drivers/base/dd.c in next-20200401 if CONFIG_MODULES=y?
On 2020-04-02 11:16 am, Yoshihiro Shimoda wrote: Hi John, I found an issue after applied the following patches: --- 64c775f driver core: Rename deferred_probe_timeout and make it global 0e9f8d0 driver core: Remove driver_deferred_probe_check_state_continue() bec6c0e pinctrl: Remove use of driver_deferred_probe_check_state_continue() e2cec7d driver core: Set deferred_probe_timeout to a longer default if CONFIG_MODULES is set c8c43ce driver core: Fix driver_deferred_probe_check_state() logic --- Before these patches, on my environment [1], some device drivers which has iommus property output the following message when probing: [3.05] ravb e680.ethernet: ignoring dependency for device, assuming no driver [3.257174] ravb e680.ethernet eth0: Base address at 0xe680, 2e:09:0a:02:eb:2d, IRQ 117. So, since ravb driver is probed within 4 seconds, we can use NFS rootfs correctly. However, after these patches are applied, since the patches are always waiting for 30 seconds for of_iommu_configure() when IOMMU hardware is disabled, drivers/base/dd.c output WARN. Also, since ravb cannot be probed for 30 seconds, we cannot use NFS rootfs anymore. JFYI, I copied the kernel log to the end of this email. I guess the patches will be merged into v5.7-rc1 because the patches are contained from next-20200316, I'd like to fix the issue in v5.7-rcN cycle somehow. This already came up in a different context, and there's a proposal from John here: https://lore.kernel.org/lkml/20200330202715.86609-1-john.stu...@linaro.org/ Robin. ___ iommu mailing list iommu@lists.linux-foundation.org https://lists.linuxfoundation.org/mailman/listinfo/iommu
How to fix WARN from drivers/base/dd.c in next-20200401 if CONFIG_MODULES=y?
Hi John, I found an issue after applied the following patches: --- 64c775f driver core: Rename deferred_probe_timeout and make it global 0e9f8d0 driver core: Remove driver_deferred_probe_check_state_continue() bec6c0e pinctrl: Remove use of driver_deferred_probe_check_state_continue() e2cec7d driver core: Set deferred_probe_timeout to a longer default if CONFIG_MODULES is set c8c43ce driver core: Fix driver_deferred_probe_check_state() logic --- Before these patches, on my environment [1], some device drivers which has iommus property output the following message when probing: [3.05] ravb e680.ethernet: ignoring dependency for device, assuming no driver [3.257174] ravb e680.ethernet eth0: Base address at 0xe680, 2e:09:0a:02:eb:2d, IRQ 117. So, since ravb driver is probed within 4 seconds, we can use NFS rootfs correctly. However, after these patches are applied, since the patches are always waiting for 30 seconds for of_iommu_configure() when IOMMU hardware is disabled, drivers/base/dd.c output WARN. Also, since ravb cannot be probed for 30 seconds, we cannot use NFS rootfs anymore. JFYI, I copied the kernel log to the end of this email. I guess the patches will be merged into v5.7-rc1 because the patches are contained from next-20200316, I'd like to fix the issue in v5.7-rcN cycle somehow. [1] - R-Car H3 (r8a77951). - Using defconfig of arch/arm64. -- So, the IOMMU hardware of the environment is not enabled. Best regards, Yoshihiro Shimoda --- log --- [0.000162] NOTICE: BL2: R-Car Gen3 Initial Program Loader(CA57) Rev.1.0.21 [0.005735] NOTICE: BL2: PRR is R-Car H3 Ver.3.0 [0.010412] NOTICE: BL2: Board is Salvator-XS Rev.1.0 [0.015532] NOTICE: BL2: Boot device is HyperFlash(160MHz) [0.021054] NOTICE: BL2: LCM state is CM [0.025100] NOTICE: BL2: AVS setting succeeded. DVFS_SetVID=0x53 [0.031085] NOTICE: BL2: CH0: 0x4 - 0x48000, 2 GiB [0.036956] NOTICE: BL2: CH1: 0x5 - 0x58000, 2 GiB [0.042840] NOTICE: BL2: CH2: 0x6 - 0x68000, 2 GiB [0.048725] NOTICE: BL2: CH3: 0x7 - 0x78000, 2 GiB [0.054650] NOTICE: BL2: DDR3200(rev.0.33)NOTICE: [COLD_BOOT]NOTICE: ..0 [0.100344] NOTICE: BL2: DRAM Split is 4ch(DDR f) [0.104839] NOTICE: BL2: QoS is default setting(rev.0.07) [0.110291] NOTICE: BL2: DRAM refresh interval 1.95 usec [0.115720] NOTICE: BL2: v1.4(release):15dba6b [0.120156] NOTICE: BL2: Built : 02:55:27, Sep 4 2018 [0.125352] NOTICE: BL2: Normal boot [0.129004] NOTICE: BL2: dst=0xe6322d00 src=0x818 len=512(0x200) [0.135395] NOTICE: BL2: dst=0x43f0 src=0x8180400 len=6144(0x1800) [0.142003] NOTICE: BL2: dst=0x4400 src=0x81c len=65536(0x1) [0.149012] NOTICE: BL2: dst=0x4410 src=0x820 len=1048576(0x10) [0.159988] NOTICE: BL2: dst=0x5000 src=0x864 len=1048576(0x10) U-Boot 2015.04 (Sep 04 2018 - 10:09:18) CPU: Renesas Electronics R8A7795 rev 3.0 Board: Salvator-X I2C: ready DRAM: 7.9 GiB Bank #0: 0x04800 - 0x0bfff, 1.9 GiB Bank #1: 0x5 - 0x57fff, 2 GiB Bank #2: 0x6 - 0x67fff, 2 GiB Bank #3: 0x7 - 0x77fff, 2 GiB MMC: sh-sdhi: 0, sh-sdhi: 1, sh-sdhi: 2 In:serial Out: serial Err: serial Net: ravb Hit any key to stop autoboot: 2 1 0 ravb Waiting for PHY auto negotiation to complete. done ravb: 1000Base/Full Using ravb device TFTP from server 192.168.10.111; our IP address is 192.168.10.224 Filename 'lava/775/tftp-deploy-8205xjm0/kernel/Image'. Load address: 0x4808 Loading: * # # # # # # # # # # # # # # # # # # #