
Hi Jagan,
Thanks a lot for your comments!
-----Original Message----- From: Jagan Teki [mailto:jagan@amarulasolutions.com] Sent: 2020年6月3日 15:39 To: Z.q. Hou zhiqiang.hou@nxp.com Cc: Tom Rini trini@konsulko.com; U-Boot-Denx u-boot@lists.denx.de; Lokesh Vutla lokeshvutla@ti.com; Andrew F Davis afd@ti.com; Heiko Schocher hs@denx.de; Simon Glass sjg@chromium.org; Feng Li feng.li_2@nxp.com; Alison Wang alison.wang@nxp.com; Sumit Garg sumit.garg@nxp.com; Eugen Hristev eugen.hristev@microchip.com; Patrick Delaunay patrick.delaunay@st.com; Vignesh R vigneshr@ti.com; Joe Hershberger joe.hershberger@ni.com; Stefan Roese sr@denx.de; Wolfgang Denk wd@denx.de; Lukasz Majewski lukma@denx.de; Miquel Raynal miquel.raynal@bootlin.com; Marek Vasut marex@denx.de; Bin Meng bmeng.cn@gmail.com; Simon Goldschmidt simon.k.r.goldschmidt@gmail.com; Markus Klotzbuecher markus.klotzbuecher@kistler.com; Baruch Siach baruch@tkos.co.il; Harald Seiler hws@denx.de; Joel Johnson mrjoel@lixil.net; Anatolij Gustschin agust@denx.de; Priyanka Jain priyanka.jain@nxp.com; Madalin Bucur (OSS) madalin.bucur@oss.nxp.com; Gervais, Francois FGervais@distech-controls.com; Udit Agarwal udit.agarwal@nxp.com Subject: Re: [PATCHv4 3/3] spi: Convert CONFIG_DM_SPI* to CONFIG_$(SPL_TPL_)DM_SPI*
On Wed, Jun 3, 2020 at 7:16 AM Z.q. Hou zhiqiang.hou@nxp.com wrote:
Hi Tom and Jagan,
Thanks a lot for your comments!
-----Original Message----- From: Tom Rini trini@konsulko.com Sent: 2020年6月3日 3:02 To: Jagan Teki jagan@amarulasolutions.com; Z.q. Hou zhiqiang.hou@nxp.com Cc: U-Boot-Denx u-boot@lists.denx.de; Lokesh Vutla lokeshvutla@ti.com; Andrew F Davis afd@ti.com; Heiko Schocher hs@denx.de; Simon Glass sjg@chromium.org; Feng Li feng.li_2@nxp.com; Alison Wang alison.wang@nxp.com; Sumit Garg sumit.garg@nxp.com; Eugen Hristev eugen.hristev@microchip.com; Patrick Delaunay patrick.delaunay@st.com; Vignesh R vigneshr@ti.com; Joe Hershberger joe.hershberger@ni.com; Stefan Roese sr@denx.de; Wolfgang Denk wd@denx.de; Lukasz Majewski lukma@denx.de; Miquel Raynal miquel.raynal@bootlin.com; Marek Vasut marex@denx.de; Bin Meng bmeng.cn@gmail.com; Simon Goldschmidt simon.k.r.goldschmidt@gmail.com; Markus Klotzbuecher markus.klotzbuecher@kistler.com; Baruch Siach baruch@tkos.co.il; Harald Seiler hws@denx.de; Joel Johnson mrjoel@lixil.net; Anatolij Gustschin agust@denx.de; Priyanka Jain priyanka.jain@nxp.com; Madalin Bucur (OSS) madalin.bucur@oss.nxp.com; Gervais, Francois FGervais@distech-controls.com; Udit Agarwal
Subject: Re: [PATCHv4 3/3] spi: Convert CONFIG_DM_SPI* to CONFIG_$(SPL_TPL_)DM_SPI*
On Wed, Jun 03, 2020 at 12:10:30AM +0530, Jagan Teki wrote:
On Tue, Jun 2, 2020 at 11:57 PM Tom Rini trini@konsulko.com wrote:
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.
Sorry, I can't do a similar task over the years, I'm saying about nondm part of drivers which doesn't have any footprint issues? You may be true for nondm part which has SPL size issues like mxc_spi, sh_qspi, rest are fine to move. I'd remove those that part at max for next MW.
It comes down to where are we at with everything again? I'm not saying you have to be the one to split the code out. But from what I recall of the thread last week, for mxc_spi we get back to "i.MX6 is having problems with size for DM+SPL". So we can't just "OK, no more i.MX6 support". Full U-Boot needs to be, and I believe is,
converted.
So I guess the next question I have really is for Hou Zhiqiang and is, do you need this series as part of fixing / converting the eSPI driver and getting NXP platforms converted? Thanks!
Yes, the eSPI DM converting depends on this series, since the SPL now is
non-DM.
But, I was wonder why it would touch other drivers, other than fsl_espi.c ?
This series is not belong to eSPI converting patchset, the author of this series is Lukasz, I help to rebase them to the latest code base, because the eSPI converting patch depends on this series.
Thanks, Zhiqiang
Jagan.