[U-Boot] [RESEND Patch v2] net: fm: fix spi flash probe for using driver model

The current code would always use the speed and mode set by CONFIG_ENV_SPI_MAX_HZ and CONFIG_ENV_SPI_MODE. But if using SPI driver model it should get the values from DT.
Signed-off-by: Gong Qianyu Qianyu.Gong@nxp.com Reviewed-by: Jagan Teki jteki@openedev.com Reviewed-by: Joe Hershberger joe.hershberger@ni.com --- v2: - Revised the comments as per Jagan's advice.
drivers/net/fm/fm.c | 10 ++++++++++ 1 file changed, 10 insertions(+)
diff --git a/drivers/net/fm/fm.c b/drivers/net/fm/fm.c index 5eb773e..17a0886 100644 --- a/drivers/net/fm/fm.c +++ b/drivers/net/fm/fm.c @@ -368,8 +368,18 @@ int fm_init_common(int index, struct ccsr_fman *reg) void *addr = malloc(CONFIG_SYS_QE_FMAN_FW_LENGTH); int ret = 0;
+#ifdef CONFIG_DM_SPI_FLASH + struct udevice *new; + + /* speed and mode will be read from DT */ + ret = spi_flash_probe_bus_cs(CONFIG_ENV_SPI_BUS, CONFIG_ENV_SPI_CS, + 0, 0, &new); + + ucode_flash = dev_get_uclass_priv(new); +#else ucode_flash = spi_flash_probe(CONFIG_ENV_SPI_BUS, CONFIG_ENV_SPI_CS, CONFIG_ENV_SPI_MAX_HZ, CONFIG_ENV_SPI_MODE); +#endif if (!ucode_flash) printf("SF: probe for ucode failed\n"); else {

On 09/01/2016 11:26 PM, Gong Qianyu wrote:
The current code would always use the speed and mode set by CONFIG_ENV_SPI_MAX_HZ and CONFIG_ENV_SPI_MODE. But if using SPI driver model it should get the values from DT.
Signed-off-by: Gong Qianyu Qianyu.Gong@nxp.com Reviewed-by: Jagan Teki jteki@openedev.com Reviewed-by: Joe Hershberger joe.hershberger@ni.com
v2:
- Revised the comments as per Jagan's advice.
Applied to fsl-qoriq master. Awaiting upstream. Thanks.
York
participants (2)
-
Gong Qianyu
-
york sun