All of lore.kernel.org
 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 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.