[PATCH 05/11] ARM: shmobile: APE6EVM LAN9220 support

Simon Horman horms at verge.net.au
Fri May 24 21:01:02 EDT 2013


On Wed, May 22, 2013 at 07:22:59PM +0200, Guennadi Liakhovetski wrote:
> Hi Simon
> 
> On Wed, 22 May 2013, Simon Horman wrote:
> 
> > On Fri, May 17, 2013 at 03:00:23PM +0200, Guennadi Liakhovetski wrote:
> > > Hi Simon, Magnus
> > > 
> > > On Wed, 3 Apr 2013, Simon Horman wrote:
> > > 
> > > > From: Magnus Damm <damm at opensource.se>
> > > > 
> > > > Add LAN9220 support to the APE6EVM board using C and DT.
> > > > At this point the PFC driver lacks DT bindings so to
> > > > configure the PFC we use PINCTRL in C board code.
> > > > 
> > > > Signed-off-by: Magnus Damm <damm at opensource.se>
> > > > Signed-off-by: Simon Horman <horms+renesas at verge.net.au>
> > > > ---
> > > >  arch/arm/boot/dts/r8a73a4-ape6evm.dts  |   23 ++++++++++++++++++-
> > > >  arch/arm/mach-shmobile/board-ape6evm.c |   38 ++++++++++++++++++++++++++++++++
> > > >  2 files changed, 60 insertions(+), 1 deletion(-)
> > > > 
> > > > diff --git a/arch/arm/boot/dts/r8a73a4-ape6evm.dts b/arch/arm/boot/dts/r8a73a4-ape6evm.dts
> > > > index 833f703..f603c69 100644
> > > > --- a/arch/arm/boot/dts/r8a73a4-ape6evm.dts
> > > > +++ b/arch/arm/boot/dts/r8a73a4-ape6evm.dts
> > > > @@ -16,7 +16,7 @@
> > > >  	compatible = "renesas,ape6evm", "renesas,r8a73a4";
> > > >  
> > > >  	chosen {
> > > > -		bootargs = "console=ttySC0,115200 ignore_loglevel";
> > > > +		bootargs = "console=ttySC0,115200 ignore_loglevel root=/dev/nfs ip=dhcp";
> > > >  	};
> > > >  
> > > >  	memory at 40000000 {
> > > > @@ -24,8 +24,29 @@
> > > >  		reg = <0 0x40000000 0 0x40000000>;
> > > >  	};
> > > >  
> > > > +	ape6evm_fixed_3v3: fixedregulator at 0 {
> > > > +		compatible = "regulator-fixed";
> > > > +		regulator-name = "3V3";
> > > > +		regulator-min-microvolt = <3300000>;
> > > > +		regulator-max-microvolt = <3300000>;
> > > > +		regulator-always-on;
> > > > +	};
> > > > +
> > > >  	lbsc {
> > > >  		#address-cells = <1>;
> > > >  		#size-cells = <1>;
> > > > +
> > > > +		ethernet at 8000000 {
> > > > +			compatible = "smsc,lan9118", "smsc,lan9115";
> > > > +			reg = <0x08000000 0x1000>;
> > > > +			interrupt-parent = <&irqc1>;
> > > > +			interrupts = <8 0x4>;
> > > > +			phy-mode = "mii";
> > > > +			reg-io-width = <4>;
> > > > +			smsc,irq-active-high;
> > > > +			smsc,irq-push-pull;
> > > > +			vdd33a-supply = <&ape6evm_fixed_3v3>;
> > > > +			vddvario-supply = <&ape6evm_fixed_3v3>;
> > > > +		};
> > > >  	};
> > > >  };
> > > 
> > > The above didn't work in my tests without this:
> > > 
> > > diff --git a/arch/arm/boot/dts/r8a73a4-ape6evm.dts 
> > > b/arch/arm/boot/dts/r8a73a4-ape6evm.dts
> > > index f603c69..4fb0102 100644
> > > --- a/arch/arm/boot/dts/r8a73a4-ape6evm.dts
> > > +++ b/arch/arm/boot/dts/r8a73a4-ape6evm.dts
> > > @@ -33,8 +33,10 @@
> > >  	};
> > >  
> > >  	lbsc {
> > > +		compatible = "simple-bus";
> > >  		#address-cells = <1>;
> > >  		#size-cells = <1>;
> > > +		ranges = <0 0 0 0x80000000>;
> > >  
> > >  		ethernet at 8000000 {
> > >  			compatible = "smsc,lan9118", "smsc,lan9115";
> > > 
> > 
> > Could you please post this as a formal patch and indicate
> > if you would like it included as a fix in v3.10 or not?
> 
> Can do that, sure, just thought maybe it would be better to fix the 
> original patch. Besides, I wasn't sure what the correct values for 
> "ranges" are, I just picked up something, that would be sufficient for 
> ethernet. But if more devices are added to it in the future, maybe 
> different ranges values would be needed. I think actually, lbsc should map 
> the 3 BSC areas, so, the correct property would be

I believe the original patches are past the point where they
can be updated.

With regards to the correct values, perhaps Magnus can help here?

> 
> +		ranges = <0 0 0 0x14000000>;
> 
> > Also, I am curious to know what your tests are.
> 
> Just booting with NFS root. I think, anything involving ethernet. Without 
> the "simple-bus" property the lbsc node doesn't get scanned, so, no device 
> is added. Without "ranges" addresses cannot be mapped correctly.

Ok, it sounds like it should be fixed for v3.10.



More information about the linux-arm-kernel mailing list