[U-Boot] [PATCH 1/1] configs: sunxi: enable BLK, DM_MMC, DM_SCSI

Maxime Ripard maxime.ripard at bootlin.com
Tue Mar 20 14:29:15 UTC 2018


On Sun, Mar 18, 2018 at 10:49:57PM +0100, Heinrich Schuchardt wrote:
> On 03/18/2018 10:21 PM, Maxime Ripard wrote:
> > Hi,
> > 
> > On Sun, Mar 18, 2018 at 04:20:06PM +0100, Heinrich Schuchardt wrote:
> >> doc/driver-model/MIGRATION.txt requires to move block drivers to the
> >> the driver model by v2018.05
> >>
> >> So make the switch for the SUNXI block drivers.
> >>
> >> Select BLK, DM_MMC, and DM_SCSI.
> >>
> >> DM_USB dpends on USB but there is no necessity to make it depend on
> >> DISTRO_DEFAULTS.
> > 
> > That should be a separate patch.
> > 
> >> Signed-off-by: Heinrich Schuchardt <xypron.glpk at gmx.de>
> >> ---
> >>  arch/arm/Kconfig | 7 +++++--
> >>  1 file changed, 5 insertions(+), 2 deletions(-)
> >>
> >> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> >> index 2c52ff025a..b608f01beb 100644
> >> --- a/arch/arm/Kconfig
> >> +++ b/arch/arm/Kconfig
> >> @@ -715,13 +715,16 @@ config ARCH_SUNXI
> >>  	select BINMAN
> >>  	select CMD_GPIO
> >>  	select CMD_MMC if MMC
> >> -	select CMD_USB if DISTRO_DEFAULTS
> >> +	select CMD_USB if USB
> >>  	select DM
> >> +	select BLK
> > 
> > You assume here that you always have a block device, which might not
> > be the case (for example if you only have a NAND chip on your board).
> I ran a full Travis test for Sunxi boards and could not see any compile
> error only a time out for one group of boards.
> 
> BLK is used by #ifdefs in code handling block devices. It has no effect
> if the block device code is not built.

Still, you add some completely unnecessary code in such a case.

> > 
> >>  	select DM_ETH
> 
> Here you already select DM_ETH without requiring network. It simply has
> not effect if there is not network driver built.

You're right, it should probably be fixed as well.

> >>  	select DM_GPIO
> >>  	select DM_KEYBOARD
> >> +	select DM_MMC
> > 
> > Ditto.
> 
> DM_MMC only depends on DM not on MMC see drivers/mmc/Kconfig
> If you don't build MMC code it has no effect.

But then, you have some dead code.

> >> +	select DM_SCSI
> > 
> > 
> > Ditto, with SATA.
> 
> If you don't build SCSI or ATA code the flag has no effect.

And same argument here.

Maxime

-- 
Maxime Ripard, Bootlin (formerly Free Electrons)
Embedded Linux and Kernel engineering
https://bootlin.com


More information about the U-Boot mailing list