From: Simon Glass <sjg@chromium.org>
To: Harkirat Virk <harkiratsvirk@gmail.com>
Cc: U-Boot Mailing List <u-boot@lists.denx.de>
Subject: Re: S25HS512 not functional with u-boot 2021.10.rc3
Date: Thu, 23 Sep 2021 20:49:19 -0600 [thread overview]
Message-ID: <CAPnjgZ0=8cwGKgKjd_EubgmLpzq85wxM_=Ma3F7=dYfapvoT_A@mail.gmail.com> (raw)
In-Reply-To: <708882D3-8802-48F5-87BF-3A089ADB7391@gmail.com>
Hi Harkirat,
On Tue, 14 Sept 2021 at 19:50, Harkirat Virk <harkiratsvirk@gmail.com> wrote:
>
> I have a custom board using imx6ul and Spansion S25HS512T Flash. On the current version of u-boot (2021.10.rc3) and I am guessing even previous ones the Spansion flash is not functioning
>
> => sf probe
> drivers/core/uclass.c:325-uclass_find_device_by_seq() 0
> drivers/core/uclass.c:333-uclass_find_device_by_seq() - 0 'spi@21e0000'
> drivers/core/uclass.c:336-uclass_find_device_by_seq() - found
> drivers/spi/spi-uclass.c:282-spi_find_chip_select() fsl_qspi spi@21e0000: spi_find_chip_select: plat=9ef2bf60, cs=0
> drivers/core/uclass.c:325-uclass_find_device_by_seq() 0
> drivers/core/uclass.c:333-uclass_find_device_by_seq() - 0 'spi@21e0000'
> drivers/core/uclass.c:336-uclass_find_device_by_seq() - found
> drivers/spi/spi-uclass.c:282-spi_find_chip_select() fsl_qspi spi@21e0000: spi_find_chip_select: plat=9ef2bf60, cs=0
> drivers/core/uclass.c:325-uclass_find_device_by_seq() 0
> drivers/core/uclass.c:333-uclass_find_device_by_seq() - 0 'iomuxc@20e0000'
> drivers/core/uclass.c:336-uclass_find_device_by_seq() - found
> drivers/pinctrl/pinctrl-uclass.c:300-pinctrl_select_state_simple() jedec_spi_nor s25hs512t@0: set_state_simple op missing
> drivers/spi/fsl_qspi.c:464-fsl_qspi_prepare_lut() fsl_qspi spi@21e0000: CMD[9f] lutval[0:1c00049f 1:0 2:0 3:0]
> drivers/spi/spi-uclass.c:438- spi_get_bus_and_cs() spi_get_bus_and_cs: Error path, created=0, device 's25hs512t@0'
> Failed to initialize SPI flash at 0:0 (error -524)
>
> Result is the same with different modes and frequencies, bus and CS are correct
>
> My DTSI is
>
> &qspi {
> pinctrl-names = "default";
> pinctrl-0 = <&pinctrl_qspi>;
> status = "okay";
>
> flash0: s25hs512t@0 {
> #address-cells = <1>;
> #size-cells = <1>;
> compatible = "spansion,s25hs512t", "jedec,spi-nor";
> spi-max-frequency = <40000000>;
> spi-rx-bus-width = <4>;
> spi-tx-bus-width = <4>;
> reg = <0>;
> spi-mode = <0>;
> m25p,fast-read;
> status = "okay";
> /* some partition information*/
> };
> };
>
> Defconfig has
>
> CONFIG_SPI=y
> CONFIG_DM_SPI=y
> CONFIG_FSL_QSPI=y
> CONFIG_MTD=y
> CONFIG_DM_MTD=y
> CONFIG_DM_SPI_FLASH=y
> CONFIG_SF_DEFAULT_MODE=0
> CONFIG_SF_DEFAULT_SPEED=40000000
> CONFIG_SPI_FLASH_SPANSION=y
>
> DM Tree
>
> => dm tree
> Class Index Probed Driver Name
> -----------------------------------------------------------
> root 0 [ + ] root_driver root_driver
> thermal 0 [ ] imx_thermal |-- imx_thermal
> simple_bus 0 [ + ] simple_bus |-- soc
> simple_bus 1 [ + ] simple_bus | |-- aips-bus@2000000
> simple_bus 2 [ + ] simple_bus | | |-- spba-bus@2000000
> serial 0 [ + ] serial_mxc | | | `-- serial@2020000
> gpio 0 [ ] gpio_mxc | | |-- gpio@209c000
> gpio 1 [ ] gpio_mxc | | |-- gpio@20a0000
> gpio 2 [ ] gpio_mxc | | |-- gpio@20a4000
> gpio 3 [ ] gpio_mxc | | |-- gpio@20a8000
> gpio 4 [ ] gpio_mxc | | |-- gpio@20ac000
> simple_bus 3 [ ] simple_bus | | |-- anatop@20c8000
> simple_bus 4 [ ] simple_bus | | |-- snvs@20cc000
> pinctrl 0 [ + ] fsl_imx6q_iomuxc | | `-- iomuxc@20e0000
> pinconfig 0 [ ] pinconfig | | |-- i2c1grp
> pinconfig 1 [ ] pinconfig | | |-- i2c2grp
> pinconfig 2 [ + ] pinconfig | | |-- qspigrp
> pinconfig 3 [ ] pinconfig | | |-- ledsgrp
> pinconfig 4 [ + ] pinconfig | | |-- uart1grp
> pinconfig 5 [ + ] pinconfig | | |-- usdhc2grp
> pinconfig 6 [ ] pinconfig | | `-- wdoggrp
> simple_bus 5 [ + ] simple_bus | `-- aips-bus@2100000
> usb 0 [ ] ehci_mx6 | |-- usb@2184000
> mmc 0 [ + ] fsl_esdhc | |-- usdhc@2194000
> blk 0 [ ] mmc_blk | | `-- usdhc@2194000.blk
> i2c 0 [ ] i2c_mxc | |-- i2c@21a0000
> i2c 1 [ ] i2c_mxc | |-- i2c@21a4000
> spi 0 [ + ] fsl_qspi | `-- spi@21e0000
> spi_flash 0 [ ] jedec_spi_nor | `-- s25hs512t@0
> regulator 0 [ ] regulator_fixed |-- regulator-sd2-vmmc
> led 0 [ ] gpio_led `-- leds
> led 1 [ ] gpio_led |-- green
> led 2 [ ] gpio_led |-- red
> led 3 [ ] gpio_led `— amber
>
> I am unable to identify source of error returning -524 or why SPI Flash initialisation fails
I'm not sure. Is that the full DT node or are you relying on a .dtis
file? Can you look in spi_get_bus_and_cs() and see where it fails?
There is a pattern we use to find the call stack of an error without a debugger:
ret = do_something(...);
if (ret)
return log_msg_ret("what", ret);
then enable CONFIG_LOG_ERROR_RETURN
-ENOTSUP is used by pinctrl so perhaps pinctrl_qspi is failing?
Regards,
SImon
next prev parent reply other threads:[~2021-09-24 2:50 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-09-14 18:50 S25HS512 not functional with u-boot 2021.10.rc3 Harkirat Virk
2021-09-24 2:49 ` Simon Glass [this message]
2021-09-28 9:13 ` [EXT] " Kuldeep Singh
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='CAPnjgZ0=8cwGKgKjd_EubgmLpzq85wxM_=Ma3F7=dYfapvoT_A@mail.gmail.com' \
--to=sjg@chromium.org \
--cc=harkiratsvirk@gmail.com \
--cc=u-boot@lists.denx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).