All of lore.kernel.org
 help / color / mirror / Atom feed
From: Tom Rini <trini@konsulko.com>
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: Fri, 23 Aug 2019 17:05:18 -0400	[thread overview]
Message-ID: <20190823210518.GB26850@bill-the-cat> (raw)
In-Reply-To: <20190823230227.0f3bc971@jawa>

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.

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20190823/e282208e/attachment.sig>

  reply	other threads:[~2019-08-23 21:05 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 [this message]
2019-09-03 15:56         ` Lukasz Majewski
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=20190823210518.GB26850@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 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.