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

Marek Vasut
2015-09-10T11:41:33Z

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@altera.com>
> > > Cc: Dinh Nguyen <dinguyen@opensource.altera.com>
> > > Cc: Dinh Nguyen <dinh.linux@gmail.com>
> > > Cc: Marek Vasut <marex@denx.de>
> > > Cc: Stefan Roese <sr@denx.de>
> > > Cc: Vikas Manocha <vikas.manocha@st.com>
> > > Cc: Jagannadh Teki <jteki@openedev.com>
> > > Cc: Pavel Machek <pavel@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