public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Lukasz Majewski <lukma@denx.de>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH v2 4/4] spi: Convert CONFIG_DM_SPI* to CONFIG_$(SPL_TPL_)DM_SPI*
Date: Tue, 3 Sep 2019 17:56:36 +0200	[thread overview]
Message-ID: <20190903175636.4d1d6161@jawa> (raw)
In-Reply-To: <20190823210518.GB26850@bill-the-cat>

Hi Tom,

> On Fri, Aug 23, 2019 at 11:02:27PM +0200, Lukasz Majewski wrote:
> > Hi Tom,
> >   
> > > On Tue, Aug 13, 2019 at 03:47:31PM +0200, Lukasz Majewski wrote:  
> > > > 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    
> > > 
> > > Sorry I didn't bisect down to which part of the series is doing
> > > this, but I see problems with:
> > > ls1046ardb_sdcard ls1046ardb_qspi_spl ls1043ardb_nand
> > > ls1046aqds_tfa ls1046aq ds_nand ls1046ardb_qspi
> > > ls1046aqds_sdcard_ifc ls1046aqds_SECURE_BOOT
> > > ls1046aqds_sdcard_qspi ls1 046aqds_qspi ls1043ardb_sdcard
> > > ls1043aqds_sdcard_ifc ls1046ardb_tfa ls1046ardb_tfa_SECURE_BOOT
> > > ls1043aqds_nand ls1046aqds_lpuart ls1046ardb_emmc
> > > ls1046aqds_tfa_SECURE_BOOT ls1046afrwy_tfa ls 1046aqds
> > > ls1043ardb_nand_SECURE_BOOT ls1046ardb_qspi_SECURE_BOOT
> > > ls1043aqds_sdcard_qspi
> > > 
> > > Some of which are dependency problems about SPL/SPL_DM.  I also
> > > see: aarch64: (for 225/225 boards) all -294.2 bss -0.0 data -11.7
> > > rodata -72.5 spl/u-boot-spl:all -0.3 spl/u-boot-spl:text -0.3 text
> > > -210.0 [snip] ls1043ardb_nand: all -9435 data -376 rodata -2331
> > > text -6728 ls1043ardb_sdcard: all -9435 data -376 rodata -2331
> > > text -6728 ls1043aqds_sdcard_ifc: all -9435 data -376 rodata -2331
> > > text -6728 ls1043aqds_nand: all -9435 data -376 rodata -2331 text
> > > -6728 ls1043ardb_nand_SECURE_BOOT: all -9435 data -376 rodata
> > > -2331 text -6728 ls1043ardb_sdcard_SECURE_BOOT: all -9435 data
> > > -376 rodata -2331 text -6728 ls1043aqds_sdcard_qspi: all -9436
> > > bss -8 data -376 rodata -2324 text -6728
> > > 
> > > which I think means a few conversions weren't right.  
> > 
> > It looks like some parts of the SPL are not build ....  
> 
> Yes, there's some dependency problem Kconfig is spotting related to
> SPL/SPL_DM.
> 
> > Is the delta of size available from travis-CI or from any other
> > script (maybe there is some buildman switch)?  
> 
> Yes, it's part of buildman.  I do:
> $ export SOURCE_DATE_EPOCH=`date +%s`
> $ ./tools/buildman/buildman -o  /tmp/test --step 0 -b origin/master..
> --force-build -CveE $ ./tools/buildman/buildman -o  /tmp/test --step
> 0 -b origin/master.. -Ssdel
> 
> to get size changes between point A and point Z in a branch, and omit
> --step 0 when I need to see which patch in between them caused the
> size change.
> 

I cannot reproduce your results on current master branch:
SHA1:d22c8be964a870f59d2fdab6c67cefa0c4799364

for this series applied.

echo $SOURCE_DATE_EPOCH
1567523778

./tools/buildman/buildman.py -b HEAD --count=3 ls1043
--output-dir=../BUILD/ --force-build -CveE

./tools/buildman/buildman.py -b HEAD --count=3 ls1043
--output-dir=../BUILD/ -Ssdel


Just gives me some warnings (without the size difference):

   aarch64:  w+   ls1043aqds_nand ls1043ardb_nand
   ls1043aqds_sdcard_qspi ls1043aqds_sdcard_ifc
   ls1043ardb_nand_SECURE_BOOT ls1043ardb_sdcard
   ls1043ardb_sdcard_SECURE_BOOT
   +(ls1043aqds_nand,ls1043ardb_nand,ls1043ardb_nand_SECURE_BOOT,ls1043aqds_sdcard_ifc,ls1043aqds_sdcard_qspi,ls1043ardb_sdcard,ls1043ardb_sdcard_SECURE_BOOT)
   ===================== WARNING ======================
   +(ls1043aqds_nand,ls1043ardb_nand,ls1043ardb_nand_SECURE_BOOT,ls1043aqds_sdcard_ifc,ls1043aqds_sdcard_qspi,ls1043ardb_sdcard,ls1043ardb_sdcard_SECURE_BOOT)
   This board does not use CONFIG_DM_SPI_FLASH. Please update
   +(ls1043aqds_nand,ls1043ardb_nand,ls1043ardb_nand_SECURE_BOOT,ls1043aqds_sdcard_ifc,ls1043aqds_sdcard_qspi,ls1043ardb_sdcard,ls1043ardb_sdcard_SECURE_BOOT)
   the board to use CONFIG_SPI_FLASH before the v2019.07 release.
   +(ls1043aqds_nand,ls1043ardb_nand,ls1043ardb_nand_SECURE_BOOT,ls1043aqds_sdcard_ifc,ls1043aqds_sdcard_qspi,ls1043ardb_sdcard,ls1043ardb_sdcard_SECURE_BOOT)
   Failure to update by the deadline may result in board removal.
   +(ls1043aqds_nand,ls1043ardb_nand,ls1043ardb_nand_SECURE_BOOT,ls1043aqds_sdcard_ifc,ls1043aqds_sdcard_qspi,ls1043ardb_sdcard,ls1043ardb_sdcard_SECURE_BOOT)
   See doc/driver-model/MIGRATION.txt for more info.
   +(ls1043aqds_nand,ls1043ardb_nand,ls1043ardb_nand_SECURE_BOOT,ls1043aqds_sdcard_ifc,ls1043aqds_sdcard_qspi,ls1043ardb_sdcard,ls1043ardb_sdcard_SECURE_BOOT)
   ====================================================
   +(ls1043ardb_sdcard_SECURE_BOOT) This board does not use
   CONFIG_DM_MMC. Please update +(ls1043ardb_sdcard_SECURE_BOOT) the
   board to use CONFIG_DM_MMC before the v2019.04 release.
   +(ls1043ardb_sdcard_SECURE_BOOT) This board does not use
   CONFIG_DM_USB. Please update +(ls1043ardb_sdcard_SECURE_BOOT) the
   board to use CONFIG_DM_USB before the v2019.07 release.


Am I doing something wrong? Or am I missing any extra switches for
buildman?


And I don't know why the ' -b HEAD..HEAD~~~ ' option returns:

 Range 'HEAD..HEAD~~~' has no commits    , as I'm able to use HEAD with
 -b switch and count=X ?



Best regards,

Lukasz Majewski

--

DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-59 Fax: (+49)-8142-66989-80 Email: lukma at denx.de
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 488 bytes
Desc: OpenPGP digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20190903/dc435ed5/attachment.sig>

  reply	other threads:[~2019-09-03 15:56 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-08-13 13:47 [U-Boot] [PATCH v2 0/4] spi: Split CONFIG_DM_SPI* to CONFIG_{SPL_TPL}DM_SPI* Lukasz Majewski
2019-08-13 13:47 ` [U-Boot] [PATCH v2 1/4] kconfig: doc: Update comment regarding CONFIG_IS_ENABLED(FOO) for TPL Lukasz Majewski
2019-08-13 13:47 ` [U-Boot] [PATCH v2 2/4] spi: Move DM_SPI_FLASH to Kconfig (for NXP's ls1043a) Lukasz Majewski
2019-08-13 13:47 ` [U-Boot] [PATCH v2 3/4] spi: Move DM_SPI_FLASH and SPI_FLASH_DATAFLASH to Kconfig (for ls1021aXXX) Lukasz Majewski
2019-08-13 13:47 ` [U-Boot] [PATCH v2 4/4] spi: Convert CONFIG_DM_SPI* to CONFIG_$(SPL_TPL_)DM_SPI* Lukasz Majewski
2019-08-23 17:58   ` Tom Rini
2019-08-23 21:02     ` Lukasz Majewski
2019-08-23 21:05       ` Tom Rini
2019-09-03 15:56         ` Lukasz Majewski [this message]
2019-09-03 16:52           ` Tom Rini
2019-09-04 14:18             ` Lukasz Majewski

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=20190903175636.4d1d6161@jawa \
    --to=lukma@denx.de \
    --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