Hi Jagan, On 23 April 2015 at 08:15, Jagannadha Sutradharudu Teki <jagannadh.t...@gmail.com> wrote: > This converts the zynq spi driver to use the driver model. > > Minimal functional changes like using meaningful name on > structure members wrt mainlined dm spi drivers. > - input_hz -> frequency > - req_hz -> freq > - base -> regs > > Signed-off-by: Jagannadha Sutradharudu Teki <jagannadh.t...@gmail.com> > Cc: Simon Glass <s...@chromium.org> > Cc: Michal Simek <michal.si...@xilinx.com> > Cc: Siva Durga Prasad Paladugu <siva...@xilinx.com> > --- > Note: Siva Durga Prasad, can you test this on zc770_xm010 > > drivers/spi/zynq_spi.c | 305 > +++++++++++++++++++++++++++++-------------------- > 1 file changed, 181 insertions(+), 124 deletions(-) >
Acked-by: Simon Glass <s...@chromium.org> > diff --git a/drivers/spi/zynq_spi.c b/drivers/spi/zynq_spi.c > index ff1ec6a..62edbbe 100644 > --- a/drivers/spi/zynq_spi.c > +++ b/drivers/spi/zynq_spi.c > @@ -1,5 +1,6 @@ > /* > * (C) Copyright 2013 Inc. > + * (C) Copyright 2015 Jagannadha Sutradharudu Teki <jagannadh.t...@gmail.com> > * > * Xilinx Zynq PS SPI controller driver (master mode only) > * > @@ -8,6 +9,8 @@ > > #include <config.h> > #include <common.h> > +#include <dm.h> > +#include <errno.h> > #include <malloc.h> > #include <spi.h> > #include <asm/io.h> > @@ -44,180 +47,142 @@ struct zynq_spi_regs { > u32 rxdr; /* 0x20 */ > }; > > -/* zynq spi slave */ > -struct zynq_spi_slave { > - struct spi_slave slave; > - struct zynq_spi_regs *base; > - u8 mode; > - u8 fifo_depth; > + > +/* zynq spi platform data */ > +struct zynq_spi_platdata { > + struct zynq_spi_regs *regs; > + u32 frequency; /* input frequency */ > u32 speed_hz; > - u32 input_hz; > - u32 req_hz; > }; > > -static inline struct zynq_spi_slave *to_zynq_spi_slave(struct spi_slave > *slave) > -{ > - return container_of(slave, struct zynq_spi_slave, slave); > -} > +/* zynq spi priv */ > +struct zynq_spi_priv { > + struct zynq_spi_regs *regs; > + u8 cs; > + u8 mode; > + u8 fifo_depth; > + u32 freq; /* required frequency */ > +}; > > -static inline struct zynq_spi_regs *get_zynq_spi_base(int dev) > +static inline struct zynq_spi_regs *get_zynq_spi_regs(struct udevice *bus) I see you remove this in a latest patch. > { > - if (dev) > + if (bus->seq) > return (struct zynq_spi_regs *)ZYNQ_SPI_BASEADDR1; > else > return (struct zynq_spi_regs *)ZYNQ_SPI_BASEADDR0; > } > [snip] Regards, Simon _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot