On Wednesday 18 February 2015 17:33:53 Tony Lindgren wrote: > * Pali Rohár <pali.rohar@xxxxxxxxx> [150218 07:23]: > > On Tuesday 06 January 2015 00:02:29 Tony Lindgren wrote: > > > Revert "ARM: dts: Disable smc91x on n900 until bootloader > > > dependency is removed". We've now fixed the issues that > > > caused problems with uninitialized hardware depending on > > > the bootloader version. Mostly things got fixed with > > > the following commits: > > > > > > 9a894953a97b ("ARM: dts: Fix bootloader version > > > dependencies by muxing n900 smc91x pins") 7d2911c43815 > > > ("net: smc91x: Fix gpios for device tree based booting") > > > > > > Note that this only affects the early development boards > > > with Ethernet that we still have in a few automated boot > > > test systems. > > > > > > Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx> > > > > > > --- a/arch/arm/boot/dts/omap3-n900.dts > > > +++ b/arch/arm/boot/dts/omap3-n900.dts > > > @@ -702,9 +702,6 @@ > > > > > > ethernet@gpmc { > > > > > > compatible = "smsc,lan91c94"; > > > > > > - > > > - status = "disabled"; > > > - > > > > > > interrupt-parent = <&gpio2>; > > > interrupts = <22 IRQ_TYPE_LEVEL_HIGH>; /* gpio54 */ > > > reg = <1 0x300 0xf>; /* 16 byte IO range at offset > > > 0x300 > > > > > > */ > > > > Hello Tony, > > > > to make smc ethernet working in n900 qemu I needed to apply > > this patch: > > > > diff --git a/arch/arm/boot/dts/omap3-n900.dts > > b/arch/arm/boot/dts/omap3-n900.dts index ff36fbe..d96eeb8 > > 100644 > > --- a/arch/arm/boot/dts/omap3-n900.dts > > +++ b/arch/arm/boot/dts/omap3-n900.dts > > @@ -770,7 +770,8 @@ > > > > compatible = "smsc,lan91c94"; > > interrupt-parent = <&gpio2>; > > interrupts = <22 IRQ_TYPE_LEVEL_HIGH>; /* gpio54 */ > > > > - reg = <1 0x300 0xf>; /* 16 byte IO range at offset 0x300 > > */ +// reg = <1 0x300 0xf>; /* 16 byte IO range at offset > > 0x300 */ + reg = <1 0x0 0xf>; /* 16 byte IO range at > > offset 0x300 */ > > > > bank-width = <2>; > > pinctrl-names = "default"; > > pinctrl-0 = <ðernet_pins>; > > Oh cool, the 0x300 offset is there mostly to suppress warnings > about non-standard location. > > > With this patch I see in dmesg: > > > > [ 20.577911] smc91x 2000000.ethernet (unnamed net_device) > > (uninitialized): smc91x: smc_probe [ 20.580535] smc91x > > 2000000.ethernet (unnamed net_device) (uninitialized): > > smc91x: bank signature probe returned 0x3300 > > [ 20.585327] smc91x 2000000.ethernet (unnamed net_device) > > (uninitialized): smc91x: revision = 0x3391 [ 20.590087] > > smc91x.c: v1.1, sep 22 2004 by Nicolas Pitre > > <nico@xxxxxxxxxxx> [ 20.593627] smc91x 2000000.ethernet > > (unnamed net_device) (uninitialized): smc_reset [ > > 20.596832] smc91x 2000000.ethernet (unnamed net_device) > > (uninitialized): smc_phy_detect [ 20.611938] smc91x > > 2000000.ethernet (unnamed net_device) (uninitialized): > > smc91x: smc_shutdown [ 20.615875] smc91x 2000000.ethernet > > eth0: SMC91C11xFD (rev 1) at d08be000 IRQ 166 [ > > 20.618682] > > [ 20.621124] smc91x 2000000.ethernet eth0: Ethernet addr: > > 52:54:00:12:34:56 [ 20.624938] smc91x 2000000.ethernet > > eth0: No PHY found > > > > (and eth0 exists in ifconfig) > > > > If I do not apply my patch I got this error message: > > > > [ 22.134704] smc91x 2000300.ethernet (unnamed net_device) > > (uninitialized): smc91x: bank signature probe returned > > 0x0000 > > [ 22.140014] smc91x: not found (-19). > > > > and no ethernet device was registered. > > > > With 2.6.28 kernel with N900 patches (but smc91x is > > unmodified!) ethernet device is working fine. > > OK that's good news. Care to do a patch to set the offset 0x0 > with added comment that qemu needs it? I'll test to make sure > it works on the real hardware as well. > > Regards, > > Tony Yes, I can send proper git format-patch, but first let me know if that change does not break your HW... -- Pali Rohár pali.rohar@xxxxxxxxx
Attachment:
signature.asc
Description: This is a digitally signed message part.