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

Marek Vasut marex at denx.de
Thu Sep 10 13:41:33 CEST 2015


On Thursday, September 10, 2015 at 06:58:10 AM, Chin Liang See wrote:
> Hi,
> 
> On Tue, 2015-09-08 at 13:19 +0200, marex at denx.de wrote:
> > On Tuesday, September 08, 2015 at 03:18:24 AM, 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>
> > > ---
> > > Changes for v2
> > > - Add unsigned casting for plat->max_hz
> > > ---
> > > 
> > >  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 23c88d5..8c0f7dd 100644
> > > --- a/drivers/spi/cadence_qspi.c
> > > +++ b/drivers/spi/cadence_qspi.c
> > > @@ -296,10 +296,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) {
> > > 
> > > @@ -307,6 +303,10 @@ static int cadence_spi_ofdata_to_platdata(struct
> > > udevice *bus) return -ENODEV;
> > > 
> > >  	}
> > > 
> > > +	/* Use 500KHz as a suitable default */
> > > +	plat->max_hz = (unsigned int)fdtdec_get_int(blob, subnode,
> > > +						"spi-max-frequency", 500000);
> > > +
> > 
> > fdt_getprop_u32() might be the right thing to do here :)
> 
> Cool, yup, I am using fdt_getprop_u32_default_node. But need additional
> patch to enable this and more FDT related function in SPL

All right, be careful not to blow the SPL size too much btw.

Best regards,
Marek Vasut


More information about the U-Boot mailing list