From: Tom Rini <trini@konsulko.com>
To: u-boot@lists.denx.de
Subject: [PATCHv4 3/3] spi: Convert CONFIG_DM_SPI* to CONFIG_$(SPL_TPL_)DM_SPI*
Date: Tue, 2 Jun 2020 14:27:50 -0400 [thread overview]
Message-ID: <20200602182750.GQ21630@bill-the-cat> (raw)
In-Reply-To: <CAMty3ZAvJbSDV=ZGbS5s+CJdbng3hZ5PHtZja_Rjo=Ma6XFOHQ@mail.gmail.com>
On Tue, Jun 02, 2020 at 06:59:21PM +0530, Jagan Teki wrote:
> On Tue, Jun 2, 2020 at 6:47 PM Zhiqiang Hou <Zhiqiang.Hou@nxp.com> wrote:
> >
> > From: Lukasz Majewski <lukma@denx.de>
> >
> > This change allows more fine tuning of driver model based SPI support in
> > SPL and TPL. It is now possible to explicitly enable/disable the DM_SPI
> > support in SPL and TPL via Kconfig option.
> >
> > Before this change it was necessary to use:
> > /* SPI Flash Configs */
> > #if defined(CONFIG_SPL_BUILD)
> > #undef CONFIG_DM_SPI
> > #undef CONFIG_DM_SPI_FLASH
> > #undef CONFIG_SPI_FLASH_MTD
> > #endif
> >
> > in the ./include/configs/<board>.h, which is error prone and shall be
> > avoided when we strive to switch to Kconfig.
> >
> > The goal of this patch:
> >
> > Provide distinction for DM_SPI support in both U-Boot proper and SPL (TPL).
> > Valid use case is when U-Boot proper wants to use DM_SPI, but SPL must
> > still support non DM driver.
> >
> > Another use case is the conversion of non DM/DTS SPI driver to support
> > DM/DTS. When such driver needs to work in both SPL and U-Boot proper, the
> > distinction is needed in Kconfig (also if SPL version of the driver
> > supports OF_PLATDATA).
> >
> > In the end of the day one would have to support following use cases (in
> > single driver file - e.g. mxs_spi.c):
> >
> > - U-Boot proper driver supporting DT/DTS
> > - U-Boot proper driver without DT/DTS support (deprecated)
> > - SPL driver without DT/DTS support
> > - SPL (and TPL) driver with DT/DTS (when the SoC has enough resources to
> > run full blown DT/DTS)
> > - SPL driver with DT/DTS and SPL_OF_PLATDATA (when one have constrained
> > environment with no fitImage and OF_LIBFDT support).
> >
> > Some boards do require SPI support (with DM) in SPL (TPL) and some only
> > have DM_SPI{_FLASH} defined to allow compiling SPL.
> >
> > This patch converts #ifdef CONFIG_DM_SPI* to #if CONFIG_IS_ENABLED(DM_SPI)
> > and provides corresponding defines in Kconfig.
> >
> > Signed-off-by: Lukasz Majewski <lukma@denx.de>
> > Tested-by: Adam Ford <aford173@gmail.com> #da850-evm
> > Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
> > ---
> > V4:
> > - Rebase the patch and remove SPL_DM_SPI from target ls1046 boards.
> >
> > arch/arm/Kconfig | 11 +++++++++++
> > board/l+g/vinco/vinco.c | 4 ++--
> > cmd/sf.c | 4 ++--
> > cmd/spi.c | 6 +++---
> > common/spl/Kconfig | 20 ++++++++++++++++++++
> > configs/am57xx_evm_defconfig | 2 ++
> > configs/am57xx_hs_evm_defconfig | 2 ++
> > configs/am57xx_hs_evm_usb_defconfig | 2 ++
> > configs/axm_defconfig | 2 ++
> > configs/chromebook_link64_defconfig | 2 ++
> > configs/chromebook_samus_tpl_defconfig | 4 ++++
> > configs/dra7xx_evm_defconfig | 2 ++
> > configs/dra7xx_hs_evm_defconfig | 2 ++
> > configs/dra7xx_hs_evm_usb_defconfig | 2 ++
> > configs/j721e_evm_a72_defconfig | 2 ++
> > configs/j721e_evm_r5_defconfig | 2 ++
> > configs/ls1021aiot_qspi_defconfig | 2 ++
> > configs/ls1021aiot_sdcard_defconfig | 2 ++
> > configs/ls1021aqds_qspi_defconfig | 1 +
> > configs/ls1021aqds_sdcard_qspi_defconfig | 1 +
> > configs/ls1021atwr_qspi_defconfig | 1 +
> > configs/sama5d2_xplained_spiflash_defconfig | 2 ++
> > configs/sama5d3xek_spiflash_defconfig | 7 ++++---
> > configs/sama5d4_xplained_spiflash_defconfig | 2 ++
> > configs/sama5d4ek_spiflash_defconfig | 2 ++
> > configs/stm32mp15_basic_defconfig | 2 ++
> > configs/taurus_defconfig | 2 ++
> > drivers/mtd/spi/Makefile | 4 ++--
> > drivers/mtd/spi/sf_probe.c | 2 +-
> > drivers/net/fm/fm.c | 4 ++--
> > drivers/spi/Makefile | 2 +-
> > drivers/spi/atmel_spi.c | 4 ++--
> > drivers/spi/davinci_spi.c | 6 +++---
> > drivers/spi/fsl_dspi.c | 5 +++--
> > drivers/spi/kirkwood_spi.c | 2 +-
> > drivers/spi/mxc_spi.c | 6 +++---
> > drivers/spi/omap3_spi.c | 4 ++--
>
> nondm code on most of the driver will remove in the next version, So I
> didn't see any usecase of this conversion here.
I think this is still the right direction to go in. non-DM for SPL is
allowed and this is part of the logical steps needed for moving forward
with "now pull non-DM driver into own file for SPL" until the efforts to
make DM smaller still are ready. So this series is on my list to test
and confirm doesn't change binary size on.
--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200602/33b6e0df/attachment.sig>
next prev parent reply other threads:[~2020-06-02 18:27 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-06-02 13:11 [PATCHv4 0/3] spi: Split CONFIG_DM_SPI* to CONFIG_{SPL_TPL}DM_SPI* Zhiqiang Hou
2020-06-02 13:11 ` [PATCHv4 1/3] spi: Move DM_SPI_FLASH to Kconfig (for NXP's ls1043a) Zhiqiang Hou
2020-06-03 7:19 ` Priyanka Jain
2020-06-03 9:01 ` Z.q. Hou
2020-06-02 13:11 ` [PATCHv4 2/3] spi: Move DM_SPI_FLASH and SPI_FLASH_DATAFLASH to Kconfig (for ls1021aXXX) Zhiqiang Hou
2020-06-02 13:11 ` [PATCHv4 3/3] spi: Convert CONFIG_DM_SPI* to CONFIG_$(SPL_TPL_)DM_SPI* Zhiqiang Hou
2020-06-02 13:29 ` Jagan Teki
2020-06-02 18:27 ` Tom Rini [this message]
2020-06-02 18:40 ` Jagan Teki
2020-06-02 19:01 ` Tom Rini
2020-06-02 19:11 ` Jagan Teki
2020-06-03 9:48 ` Lukasz Majewski
2020-06-03 1:46 ` Z.q. Hou
2020-06-03 7:39 ` Jagan Teki
2020-06-03 9:09 ` Z.q. Hou
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=20200602182750.GQ21630@bill-the-cat \
--to=trini@konsulko.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