[U-Boot] [PATCH 2/4] spi: cadence_qspi: Fix fdt read of spi-max-frequency

Marek Vasut marex at denx.de
Tue Sep 8 12:08:38 CEST 2015


On Tuesday, September 08, 2015 at 03:16:58 AM, Chin Liang See wrote:
> Hi,

Hi!

> On Thu, 2015-09-03 at 16:19 +0200, marex at denx.de wrote:
> > On Thursday, September 03, 2015 at 03:42:00 PM, Chin Liang See wrote:
> > > Fix the fdt read for spi-max-frequency as it's contained
> > > in the child node. Current state of code is always
> > > returning default value.
> > > 
> > > Signed-off-by: Chin Liang See <clsee at altera.com>
> > > Cc: Dinh Nguyen <dinguyen at opensource.altera.com>
> > > Cc: Dinh Nguyen <dinh.linux at gmail.com>
> > > Cc: Marek Vasut <marex at denx.de>
> > > Cc: Stefan Roese <sr at denx.de>
> > > Cc: Vikas Manocha <vikas.manocha at st.com>
> > > Cc: Jagannadh Teki <jteki at openedev.com>
> > > Cc: Pavel Machek <pavel at denx.de>
> > > ---
> > > 
> > >  drivers/spi/cadence_qspi.c |    8 ++++----
> > >  1 files changed, 4 insertions(+), 4 deletions(-)
> > > 
> > > diff --git a/drivers/spi/cadence_qspi.c b/drivers/spi/cadence_qspi.c
> > > index 300934e..a00af87 100644
> > > --- a/drivers/spi/cadence_qspi.c
> > > +++ b/drivers/spi/cadence_qspi.c
> > > @@ -291,10 +291,6 @@ static int cadence_spi_ofdata_to_platdata(struct
> > > udevice *bus) plat->regbase = (void *)data[0];
> > > 
> > >  	plat->ahbbase = (void *)data[2];
> > > 
> > > -	/* Use 500KHz as a suitable default */
> > > -	plat->max_hz = fdtdec_get_int(blob, node, "spi-max-frequency",
> > > -				      500000);
> > > -
> > > 
> > >  	/* All other paramters are embedded in the child node */
> > >  	subnode = fdt_first_subnode(blob, node);
> > >  	if (subnode < 0) {
> > > 
> > > @@ -302,6 +298,10 @@ static int cadence_spi_ofdata_to_platdata(struct
> > > udevice *bus) return -ENODEV;
> > > 
> > >  	}
> > > 
> > > +	/* Use 500KHz as a suitable default */
> > > +	plat->max_hz = fdtdec_get_int(blob, subnode, "spi-max-frequency",
> > > +				      500000);
> > 
> > Use fdtdec_get_u32() or such, since the value is unsigned int (have you
> > ever seen negative frequency ? ;-) ). Then check the fdtdec_get_u32()
> > return value.
> 
> I git grep and no unsigned version.
> But I can add unsigned casting to avoid that.

I think fdt_getprop_u32() is what you're looking for.

Best regards,
Marek Vasut


More information about the U-Boot mailing list