Hi Jagan, Thanks a lot for your comments!
> -----Original Message----- > From: Jagan Teki [mailto:[email protected]] > Sent: 2020年6月3日 15:39 > To: Z.q. Hou <[email protected]> > Cc: Tom Rini <[email protected]>; U-Boot-Denx <[email protected]>; > Lokesh Vutla <[email protected]>; Andrew F Davis <[email protected]>; Heiko > Schocher <[email protected]>; Simon Glass <[email protected]>; Feng Li > <[email protected]>; Alison Wang <[email protected]>; Sumit Garg > <[email protected]>; Eugen Hristev <[email protected]>; > Patrick Delaunay <[email protected]>; Vignesh R <[email protected]>; > Joe Hershberger <[email protected]>; Stefan Roese <[email protected]>; > Wolfgang Denk <[email protected]>; Lukasz Majewski <[email protected]>; Miquel > Raynal <[email protected]>; Marek Vasut <[email protected]>; Bin > Meng <[email protected]>; Simon Goldschmidt > <[email protected]>; Markus Klotzbuecher > <[email protected]>; Baruch Siach <[email protected]>; > Harald Seiler <[email protected]>; Joel Johnson <[email protected]>; Anatolij > Gustschin <[email protected]>; Priyanka Jain <[email protected]>; > Madalin Bucur (OSS) <[email protected]>; Gervais, Francois > <[email protected]>; Udit Agarwal <[email protected]> > 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 <[email protected]> wrote: > > > > Hi Tom and Jagan, > > > > Thanks a lot for your comments! > > > > > -----Original Message----- > > > From: Tom Rini <[email protected]> > > > Sent: 2020年6月3日 3:02 > > > To: Jagan Teki <[email protected]>; Z.q. Hou > > > <[email protected]> > > > Cc: U-Boot-Denx <[email protected]>; Lokesh Vutla > > > <[email protected]>; Andrew F Davis <[email protected]>; Heiko Schocher > > > <[email protected]>; Simon Glass <[email protected]>; Feng Li > > > <[email protected]>; Alison Wang <[email protected]>; Sumit Garg > > > <[email protected]>; Eugen Hristev <[email protected]>; > > > Patrick Delaunay <[email protected]>; Vignesh R > > > <[email protected]>; Joe Hershberger <[email protected]>; Stefan > > > Roese <[email protected]>; Wolfgang Denk <[email protected]>; Lukasz Majewski > > > <[email protected]>; Miquel Raynal <[email protected]>; Marek > > > Vasut <[email protected]>; Bin Meng <[email protected]>; Simon > > > Goldschmidt <[email protected]>; Markus Klotzbuecher > > > <[email protected]>; Baruch Siach <[email protected]>; > > > Harald Seiler <[email protected]>; Joel Johnson <[email protected]>; > > > Anatolij Gustschin <[email protected]>; Priyanka Jain > > > <[email protected]>; Madalin Bucur (OSS) > > > <[email protected]>; Gervais, Francois > > > <[email protected]>; Udit Agarwal > <[email protected]> > > > 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 <[email protected]> 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 > > > > > > <[email protected]> > > > wrote: > > > > > > > > > > > > > > From: Lukasz Majewski <[email protected]> > > > > > > > > > > > > > > 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 <[email protected]> > > > > > > > Tested-by: Adam Ford <[email protected]> #da850-evm > > > > > > > Signed-off-by: Hou Zhiqiang <[email protected]> > > > > > > > --- > > > > > > > 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.

