[Letux-kernel] LetuxOS: kernel: letux-5.5-rc1

H. Nikolaus Schaller hns at goldelico.com
Sat Dec 14 09:05:13 CET 2019


Hi Andreas,
before I point fingers on the specific patch, could you
please confirm independently from my compiler setup:

1. test

git checkout v5.5-rc1
make omap2plus_defconfig

=> boots OMAP device

2. test

( echo CONFIG_ARCH_BCM2835=y; echo CONFIG_ARCH_BCM=y ) >>arch/arm/configs/omap2plus_defconfig
make omap2plus_defconfig

=> fails to boot OMAP device

3.test

git revert 781fa0a954240c8487683ddf837fb2c4ede8e7ca
make omap2plus_defconfig

=> boots OMAP device

If that works, I'll take the git revert into our letux/hacks patch
so that I can publish letux-5.5-rc1 and write a BUG report to the
author.

BR and thanks,
Nikolaus


> Am 13.12.2019 um 17:23 schrieb H. Nikolaus Schaller <hns at goldelico.com>:
> 
> 
>> Am 12.12.2019 um 16:27 schrieb H. Nikolaus Schaller <hns at goldelico.com>:
>> 
>>> 
>>> So I'll try again to disable CONFIG_ARCH_BCM && CONFIG_ARCH_BCM2835.
>> 
>> Yes, looks like I did a mistake with my initial attempt.
> 
> Even deeper analysis shows that CONFIG_ARCH_BCM=y doesn't break the kernel
> but CONFIG_ARCH_BCM2835=y does.
> 
> Just adding the latter makes all kernel files recompile with e.g.
> 
>  CC      arch/arm/mach-omap2/omap_hwmod.o - due to: include/config/zone/dma.h include/generated/bounds.h
> 
> So I assume there is some SELECT in the Kconfig for CONFIG_ARCH_BCM2835
> which changes a parameter in zone DMA (whatever this is) and/or bounds.
> 
> And that change is broken.
> 
> Here is the diff of setting CONFIG_ARCH_BCM2835=y:
> 
> iMac:master hns$ git diff | fgrep =y | egrep '^(\+|\-)'
> +CONFIG_ZONE_DMA=y
> +CONFIG_ARCH_BCM2835=y
> +CONFIG_ARM_AMBA=y
> +CONFIG_HW_RANDOM_BCM2835=y
> +CONFIG_PINCTRL_BCM2835=y
> +CONFIG_CLK_BCM2835=y
> +CONFIG_BCM2835_TIMER=y
> +CONFIG_ARM_TIMER_SP804=y
> +CONFIG_BCM2835_POWER=y
> +CONFIG_PL353_SMC=y
> iMac:master hns$ 
> 
> There are indeed two CONFIGs which may affect ARM in general:
> 
> CONFIG_ZONE_DMA=y
> CONFIG_ARM_AMBA=y
> 
> Either these subsystems are generally broken since v5.5-rc1
> or OMAP and iMX6 have become incompatible.
> 
> Yes, they are automatically selected:
> 
> arch/arm/mach-bcm/Kconfig:
> config ARCH_BCM2835
> 	bool "Broadcom BCM2835 family"
> 	depends on ARCH_MULTI_V6 || ARCH_MULTI_V7
> 	select GPIOLIB
> 	select ARM_AMBA
> 	select ARM_ERRATA_411920 if ARCH_MULTI_V6
> 	select ARM_GIC if ARCH_MULTI_V7
> 	select ZONE_DMA if ARCH_MULTI_V7
> 	select ARM_TIMER_SP804
> 	select HAVE_ARM_ARCH_TIMER if ARCH_MULTI_V7
> 
> and
> 
> arch/arm/mach-bcm/Kconfig:
> config ARCH_BCM2835
> 	bool "Broadcom BCM2835 family"
> 	depends on ARCH_MULTI_V6 || ARCH_MULTI_V7
> 	select GPIOLIB
> 	select ARM_AMBA
> 
> Now let's consult git blame when they were introduced:
> 
> ARM_AMBA is old - since 2014.
> But "select ZONE_DMA if ARCH_MULTI_V7" is new (Sept 2019):
> 
> 781fa0a954240c8487683ddf837fb2c4ede8e7ca
> 
> So that may the issue, that OMAP doesn't like ZONE_DMA which
> is force-set by ARCH_BCM2835?
> 
> BR,
> Nikolaus
> 
> 
> 
> _______________________________________________
> http://projects.goldelico.com/p/gta04-kernel/
> Letux-kernel mailing list
> Letux-kernel at openphoenux.org
> http://lists.goldelico.com/mailman/listinfo.cgi/letux-kernel



More information about the Letux-kernel mailing list