From: Chris Morgan <macroalpha82@gmail.com>
To: u-boot@lists.denx.de
Cc: heiko.stuebner@theobroma-systems.com, vigneshr@ti.com,
jagan@amarulasolutions.com, kever.yang@rock-chips.com,
philipp.tomsich@theobroma-systems.com, sjg@chromium.org,
Chris Morgan <macromorgan@hotmail.com>
Subject: [RFC 0/5] rockchip_sfc: add support for Rockchip SFC
Date: Tue, 25 May 2021 16:49:16 -0500 [thread overview]
Message-ID: <20210525214921.16606-1-macroalpha82@gmail.com> (raw)
From: Chris Morgan <macromorgan@hotmail.com>
Requesting comments for a proposed patchset for adding the Rockchip
serial flash controller to u-boot. The goal of these patches is to
enable it for the Odroid Go Advance so that it may eventually boot
exclusively from the SFC on mainline U-boot (I have tested this and
it works).
The specific help I need with this patch is:
1) I don't know the best way to upstream the XTX25F128B flash chip.
This chip uses a continuation code for the manufacturer ID, however I
cannot seem to find any way to actually read the continuation code.
There is a risk of this driver, used as-is, to collide with another
chip which has the same manufacturer ID with a different continuation
code.
2) The Rockchip SFC driver itself (as it is mostly as-is from the BSP
U-Boot sources) supports SPI NAND and chips of varying sizes, but my
implementation only permits me to test with a single 128Mb flash chip.
The driver itself does some checking on the bitlen in the routine
rockchip_sfc_xfer() which is what is called for the dm_spi_ops.xfer.
I'm not sure if there is a better way to do this. Additionally, I have
to bit-shift the address written to the SFC as I suspect the value is
meant to be left justified, but I never tested it further.
Additionally, it might be worth mentioning but I noticed the Rockchip
BROM will only boot the TPL/SPL off of the SFC if I write it to address
0x10000. This is not documented and different than the address looked
at for SD card booting (512 * 64 = 0x8000 for SD Card booting). Also,
like the SD card driver I can confirm that if DMA is enabled at the SPL
stage A-TF seems to fail silently, then when Linux loads it hangs.
There is an ifdef to force FIFO mode only in the SPL stage.
Tested: Read (works)
Write (works if you write to an erased sector)
Erase (works)
SPL Read (works if you edit the u-boot,spl-boot-order)
Chris Morgan (5):
spi: rockchip_sfc: add support for Rockchip SFC
rockchip: px30: Add support for using SFC
rockchip: px30: add the serial flash controller
mtd: spi-nor-ids: Add XTX XT25F128B
rockchip: px30: add support for SFC for Odroid Go Advance
arch/arm/dts/px30.dtsi | 38 ++
arch/arm/dts/rk3326-odroid-go2-u-boot.dtsi | 10 +-
arch/arm/dts/rk3326-odroid-go2.dts | 22 +
arch/arm/mach-rockchip/px30/px30.c | 64 ++
drivers/mtd/spi/Kconfig | 6 +
drivers/mtd/spi/spi-nor-ids.c | 8 +
drivers/spi/Kconfig | 8 +
drivers/spi/Makefile | 1 +
drivers/spi/rockchip_sfc.c | 652 +++++++++++++++++++++
9 files changed, 926 insertions(+), 1 deletion(-)
create mode 100644 drivers/spi/rockchip_sfc.c
--
2.25.1
next reply other threads:[~2021-05-25 22:00 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-05-25 21:49 Chris Morgan [this message]
2021-05-25 21:49 ` [PATCH 1/5] spi: rockchip_sfc: add support for Rockchip SFC Chris Morgan
2021-05-25 21:49 ` [PATCH 2/5] rockchip: px30: Add support for using SFC Chris Morgan
2021-05-25 21:49 ` [PATCH 3/5] rockchip: px30: add the serial flash controller Chris Morgan
2021-05-25 21:49 ` [PATCH 4/5] mtd: spi-nor-ids: Add XTX XT25F128B Chris Morgan
2021-05-25 21:49 ` [PATCH 5/5] rockchip: px30: add support for SFC for Odroid Go Advance Chris Morgan
2021-06-01 12:22 ` [RFC 0/5] rockchip_sfc: add support for Rockchip SFC Kever Yang
2021-06-01 16:54 ` Chris Morgan
2021-06-02 1:27 ` Kever Yang
2021-06-04 13:42 ` 林鼎强
2021-06-04 14:40 ` Chris Morgan
2021-06-05 7:37 ` Jon Lin
2021-06-07 15:34 ` Chris Morgan
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=20210525214921.16606-1-macroalpha82@gmail.com \
--to=macroalpha82@gmail.com \
--cc=heiko.stuebner@theobroma-systems.com \
--cc=jagan@amarulasolutions.com \
--cc=kever.yang@rock-chips.com \
--cc=macromorgan@hotmail.com \
--cc=philipp.tomsich@theobroma-systems.com \
--cc=sjg@chromium.org \
--cc=u-boot@lists.denx.de \
--cc=vigneshr@ti.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.