Hi Jagan, On 26 June 2015 at 13:07, Jagan Teki <[email protected]> wrote: > Hi Simon, > > On 26 June 2015 at 21:23, Simon Glass <[email protected]> wrote: >> Hi Jagan, >> >> On 23 June 2015 at 15:03, Jagan Teki <[email protected]> wrote: >>> Hi Simon, >>> >>> I'm calling spi_chip_select(bus) from set_speed or claim_bus >>> to get the cs value from sf probe. >>> >>> Seems like it returns the maximum number as 254, when I debug >>> further seems like slave_platdata returns NULL >>> >>> int spi_chip_select(struct udevice *dev) >>> { >>> struct dm_spi_slave_platdata *plat = dev_get_parent_platdata(dev); >>> / * this plat data returns NULL */ >>> >>> return plat ? plat->cs : -ENOENT; >>> } >>> >> >> /** >> * spi_chip_select() - Get the chip select for a slave >> * >> * @return the chip select this slave is attached to >> */ >> int spi_chip_select(struct udevice *slave); >> >> This function takes a slave device as a parameter, not a bus. Are you >> passing it a bus? > > So as it's a struct udevice - I have passed it from probe and store my cs. > Seems like if you get the cs only if we call it from spi_xfer as it's slave > is it right?
Both the bus and the slave device are devices, and thus use struct udevice. I really don't understand what you are asking/saying. Please can you try to be more descriptive? > >> >>> log: >>> zynq-uboot> sf probe 1:0 >>> zynq_spi_ofdata_to_platdata: regs=e0007000 max-frequency=166666700 >>> zynq_spi_set_speed: cs 254 >>> zynq_spi_set_speed: regs=e0007000, mode=1000000 >>> zynq_spi_set_mode: regs=e0007000, mode=3 >>> zynq_spi_claim_bus: cs 254 >>> spi_xfer: bus:1 cs:254 bitlen:8 len:1 flags:1 >>> spi_xfer: Timeout! TX FIFO not full >>> SF: Failed to get idcodes >>> Failed to initialize SPI flash at 1:0 (error -1) > > thanks! > -- > Jagan | openedev. Regards, Simon _______________________________________________ U-Boot mailing list [email protected] http://lists.denx.de/mailman/listinfo/u-boot

