public inbox for openembedded-core@lists.openembedded.org
 help / color / mirror / Atom feed
From: Quentin Schulz <quentin.schulz@cherry.de>
To: jdmason@kudzu.us, openembedded-core@lists.openembedded.org
Subject: Re: [OE-core] [PATCH v2] default-distrovars: Have KERNEL_CONSOLE reference SERIAL_CONSOLES
Date: Fri, 30 Aug 2024 16:07:56 +0200	[thread overview]
Message-ID: <ccc0aa94-6233-4675-bd9f-248a40920724@cherry.de> (raw)
In-Reply-To: <20240829214144.2947418-1-jdmason@kudzu.us>

Hi Jon,

On 8/29/24 11:41 PM, Jon Mason via lists.openembedded.org wrote:
> Currently, KERNEL_CONSOLE has a default value of "ttyS0".  However, Arm
> machines and those using virtio serial prefer to use "ttyAMA0" or "hvc0"
> (or something else).  These are usually defined by the machine config
> file as SERIAL_CONSOLES, which has one or more entries.  Take the first
> one of those instead of ttyS0, but default back to ttyS0 if nothing is
> set.
> 
> Also, use this variable in the efi wic file instead of "ttyS0".
> 
> Signed-off-by: Jon Mason <jdmason@kudzu.us>
> ---
>   meta/conf/distro/include/default-distrovars.inc | 3 ++-
>   scripts/lib/wic/canned-wks/mkefidisk.wks        | 2 +-
>   2 files changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/meta/conf/distro/include/default-distrovars.inc b/meta/conf/distro/include/default-distrovars.inc
> index 7554081e8b1a..976ff4adc526 100644
> --- a/meta/conf/distro/include/default-distrovars.inc
> +++ b/meta/conf/distro/include/default-distrovars.inc
> @@ -1,7 +1,8 @@
>   QA_LOGFILE = "${TMPDIR}/qa.log"
>   
>   OEINCLUDELOGS ?= "yes"
> -KERNEL_CONSOLE ?= "ttyS0"
> +# if SERIAL_CONSOLES is set, take the first device entry.  Otherwise use ttyS0 as the default
> +KERNEL_CONSOLE ?= "${@d.getVar('SERIAL_CONSOLES').split(' ')[0].split(';')[1]},${@d.getVar('SERIAL_CONSOLES').split(' ')[0].split(';')[0] or 'ttyS0'}"

I believe this won't work if SERIAL_CONSOLES is the empty string (which 
is the default value in bitbake.conf). I believe we need to check if 
SERIAL_CONSOLES is not empty. I assume we don't need to check if a ';' 
character is present and can be assumed present if non-empty?

Also, because I was curious, the following may work too:

",".join(d.getVar('SERIAL_CONSOLES').split(' ')[0].split(';')[::-1])

would construct the same string with only one d.getVar call, and added 
bonus it works if SERIAL_CONSOLES is empty.

>   KEEPUIMAGE ??= "yes"
>   
>   DEFAULT_IMAGE_LINGUAS = "en-us en-gb"
> diff --git a/scripts/lib/wic/canned-wks/mkefidisk.wks b/scripts/lib/wic/canned-wks/mkefidisk.wks
> index 9f534fe18471..5fa6682a9e10 100644
> --- a/scripts/lib/wic/canned-wks/mkefidisk.wks
> +++ b/scripts/lib/wic/canned-wks/mkefidisk.wks
> @@ -8,4 +8,4 @@ part / --source rootfs --ondisk sda --fstype=ext4 --label platform --align 1024
>   
>   part swap --ondisk sda --size 44 --label swap1 --fstype=swap
>   
> -bootloader --ptable gpt --timeout=5 --append="rootfstype=ext4 console=ttyS0,115200 console=tty0"
> +bootloader --ptable gpt --timeout=5 --append="rootfstype=ext4 console=${KERNEL_CONSOLE} console=tty0"
> 

I think we need to add this variable to WICVARS?

c.f. 
https://git.openembedded.org/openembedded-core/tree/meta/classes-recipe/image_types_wic.bbclass#n7
https://git.openembedded.org/openembedded-core/tree/meta/classes-recipe/image_types_wic.bbclass#n99
https://git.openembedded.org/openembedded-core/tree/meta/classes-recipe/image_types_wic.bbclass#n207

Cheers,
Quentin


      parent reply	other threads:[~2024-08-30 14:08 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-08-29 21:41 [PATCH v2] default-distrovars: Have KERNEL_CONSOLE reference SERIAL_CONSOLES Jon Mason
2024-08-30 10:24 ` [OE-core] " Mikko Rapeli
2024-08-30 13:39   ` Jon Mason
2024-08-30 14:07 ` Quentin Schulz [this message]

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=ccc0aa94-6233-4675-bd9f-248a40920724@cherry.de \
    --to=quentin.schulz@cherry.de \
    --cc=jdmason@kudzu.us \
    --cc=openembedded-core@lists.openembedded.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox