Hi Peng, On 6 January 2015 at 20:06, Peng Fan <b51...@freescale.com> wrote: > Hi Simon, > > I am hacking DTB and DM SPI FLASH support for i.MX 6SoloX. I have a question > about `sf probe`. In original way, `sf probe` or `sf probe 0:0` can detect > qspi flashes on my platform. But after using DM, I should use `sf probe > 35536896:0` to probe flashes. 35536896 is the address of QSPI controller's > reg base 0x021e4000 in hex format. Does I miss something in my driver? It > seems dev->seq is not valid so should pass req_seq which is the address of > qspi controller in dts file. > > Any ideas?
You can use: aliases { spi0 = "/spi@xxxx"; } to correct the sequence number. It would be better if we had a way to indicate a bus where reg provides the sequence number, so we know when it doesn't. I haven't come up with a good idea on that yet. > > The log using `sf probe 0:0`. Fail to probe flash > => sf probe 0:0 > uclass_find_device_by_seq: 0 0 > - 35536896 35536896 > - not found > spi_find_bus_and_cs: No bus 0 > uclass_find_device_by_seq: 0 0 > - 35536896 35536896 > - not found > uclass_find_device_by_seq: 1 0 > - 35536896 35536896 > - not found > Invalid bus 0 (err=-19) > Failed to initialize SPI flash at 0:0 (error -19) > > The log using `sf probe 35536896:0`. Success to probe flash. > => sf probe 35536896:0 > uclass_find_device_by_seq: 0 35536896 > - 35536896 -1 > - not found > spi_find_bus_and_cs: No bus 35536896 > uclass_find_device_by_seq: 0 35536896 > - 35536896 -1 > - not found > uclass_find_device_by_seq: 1 35536896 > - 35536896 -1 > - found > uclass_find_device_by_seq: 0 -1 > uclass_find_device_by_seq: 0 0 > - -1 -1 > - 33554432 -1 > - 33554432 -1 > - 34373632 -1 > - -1 -1 > - 34603008 -1 > - 35651584 -1 > - 35913728 -1 > - -1 -1 > - not found > uclass_find_device_by_seq: 0 34603008 > - -1 0 > - 33554432 -1 > - 33554432 -1 > - 34373632 -1 > - -1 -1 > - 34603008 -1 > - 35651584 -1 > - 35913728 -1 > - -1 -1 > - not found > uclass_find_device_by_seq: 0 35536896 > - 35536896 -1 > - not found > fdtdec_get_int_array: reg > get_prop_check_min_len: reg > fdtdec_get_int: spi-max-frequency: (not found) > fsl_qspi_ofdata_to_platdata: reg_base=0x21e4000 amba_base=0x70000000 > max-frequency=500000 > fdtdec_get_int: spi-max-frequency: (not found) > spi_get_bus_and_cs: Binding new device '35536896:0', busnum=35536896, cs=0, > driver=spi_flash_std > fdtdec_get_int: reg: (not found) > Bound device 35536896:0 to qspi@021e4000 > fdtdec_get_int: reg: (not found) > fdtdec_get_int: spi-max-frequency: (not found) > fdtdec_get_bool: spi-cpol > fdtdec_get_bool: spi-cpha > fdtdec_get_bool: spi-cs-high > fdtdec_get_bool: spi-half-duplex > uclass_find_device_by_seq: 0 -1 > uclass_find_device_by_seq: 0 0 > - -1 -1 > - not found > spi_flash_std_probe: slave=bfc5b208, cs=0 > fsl_qspi_set_speed: hz=100000 > fsl_qspi_set_mode: mode=0 > SF: Got idcodes > 00000000: 20 ba 19 10 00 .... > SF: Detected N25Q256 with page size 256 Bytes, erase size 4 KiB, total 32 > MiB > SF: Warning - Only lower 16MiB accessible, Full access #define > CONFIG_SPI_FLASH_BAR > fsl_qspi_set_speed: hz=1000000 > fsl_qspi_set_mode: mode=3 > spi_get_bus_and_cs: bus=bfc53308, slave=bfc5b208 Regards, Simon _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot