[PATCH 4/5] arm: mvebu: Espressobin: Define console env

Pali Rohár pali at kernel.org
Wed Aug 26 16:10:20 CEST 2020


On Wednesday 26 August 2020 16:00:05 Andre Heider wrote:
> On 26/08/2020 15:31, Pali Rohár wrote:
> > On Wednesday 26 August 2020 15:22:26 Andre Heider wrote:
> > > Hi,
> > > 
> > > On 24/08/2020 16:25, Pali Rohár wrote:
> > > > Some distribution bootscripts append console env into boot cmdline.
> > > > So define console env correctly to have early console access.
> > > > 
> > > > Signed-off-by: Pali Rohár <pali at kernel.org>
> > > > ---
> > > >    include/configs/mvebu_armada-37xx.h | 2 ++
> > > >    1 file changed, 2 insertions(+)
> > > > 
> > > > diff --git a/include/configs/mvebu_armada-37xx.h b/include/configs/mvebu_armada-37xx.h
> > > > index 6feceda757..b473072976 100644
> > > > --- a/include/configs/mvebu_armada-37xx.h
> > > > +++ b/include/configs/mvebu_armada-37xx.h
> > > > @@ -17,6 +17,7 @@
> > > >    #define CONFIG_SYS_BAUDRATE_TABLE	{ 9600, 19200, 38400, 57600, \
> > > >    					  115200, 230400, 460800, 921600 }
> > > > +#define CONFIG_DEFAULT_CONSOLE "console=ttyMV0,115200 earlycon=ar3700_uart,0xd0012000"
> > > >    /*
> > > >     * For booting Linux, the board info and command line data
> > > > @@ -99,6 +100,7 @@
> > > >    	"kernel_addr=0x7000000\0"	\
> > > >    	"kernel_addr_r=0x7000000\0"	\
> > > >    	"ramdisk_addr_r=0x8000000\0"	\
> > > > +	"console=" CONFIG_DEFAULT_CONSOLE "\0" \
> > > >    	BOOTENV
> > > >    #endif /* _CONFIG_MVEBU_ARMADA_37XX_H */
> > > > 
> > > 
> > > this breaks booting debian with systemd for me:
> > > [    4.632197] systemd-udevd[90]: Starting version 241
> > > [    4.639324] systemd-udevd[91]: Failed to create udev control event
> > > source: Operation not permitted
> > > 
> > > "env delete console" and it works again.
> > 
> > This is really suspicious. Why systemd has problems with control socket
> > when console= parameter is specified on boot command line? And if
> > console= parameter is problematic on command line, why console output is
> > working fine? For me it looks like this variable controls something
> > different, not (only) console output. Maybe some bootscript sets
> > something more when it see u-boot env ${console} non-empty?
> 
> It sounds like a bug in systemd, this may be related:
> https://github.com/systemd/systemd/issues/13332
> 
> With ugly workarounds like:
> https://github.com/openembedded/openembedded-core/commit/dd6ee0b06cd8df6204cf600050516d15172302ea
> 
> This is easy for to me to work around, but note that this systemd version is
> the one shipping with current debian stable.

But this looks like to be related to command line 'console=null'.

Can you check which parameter is causing problem? console=... or
earlycon=... ? Also do you have /dev/ttyMV0 in your system?


More information about the U-Boot mailing list