All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mark Kettenis <mark.kettenis@xs4all.nl>
To: Akihiko Odaki <akihiko.odaki@daynix.com>
Cc: linux-kernel@vger.kernel.org, devicetree@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org, asahi@lists.linux.dev,
	krzysztof.kozlowski+dt@linaro.org, robh+dt@kernel.org,
	alyssa@rosenzweig.io, sven@svenpeter.dev, marcan@marcan.st,
	akihiko.odaki@daynix.com
Subject: Re: [PATCH] arch: arm64: dts: apple: Remove stdout-path
Date: Thu, 01 Dec 2022 15:25:15 +0100	[thread overview]
Message-ID: <877czb42wk.fsf@bloch.sibelius.xs4all.nl> (raw)
In-Reply-To: <20221201103651.27807-1-akihiko.odaki@daynix.com> (message from Akihiko Odaki on Thu, 1 Dec 2022 19:36:51 +0900)

> From: Akihiko Odaki <akihiko.odaki@daynix.com>
> Date: Thu,  1 Dec 2022 19:36:51 +0900
> 
> u-boot overrides stdout-path so that it points to /chosen/framebuffer
> with some condition.
> > arm: apple: Point stdout-path to framebuffer when keyboard present
> >
> > Unless you have a spare Apple Silicon machine, getting access to
> > the serial port on Apple Silicon machines requires special
> > hardware. Given that most machines come with a built-in screen
> > the framebuffer is likely to be the most convenient output device
> > for most users. While U-Boot will output to both serial and
> > framebuffer, OSes might not. Therefore set stdout-path to point
> > at /chosen/framebuffer when a keyboard is connected to the machine.
> https://github.com/AsahiLinux/u-boot/commit/a609353e82fd757b7635d18ed6a0828fff657d59
> 
> Perhaps it made sense to specify serial0 as stdout-path when the
> framebuffer and keyboard support was inmature, but today it is
> preferrable to use /chosen/framebuffer instead of serial0 for the
> console in the most cases as the u-boot change states.
> 
> Remove stdout-path to allow the kernel to choose the appropriate
> console. For Linux, it will be VT, which will be eventually backed by
> the framebuffer, if it is enabled. Otherwise, it will fall back to the
> serial.

U-Boot still relies on serial being the default.  It will not touch
stdout-out when running under the m1n1 hypervisor for example.  The
m1n1 hypervisor emulates the serial port hardware and developers rely
on this quite heavily.  Also, U-boot will only switch to the
framebuffer if a keyboard is connected.  This is currently disabled in
the builds for Asahi Linux because the type-A USB ports are not
supported yet in U-Boot.  But the plan is to fix that eventually.

So as far as I am concerted NAK.

> Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
> ---
>  arch/arm64/boot/dts/apple/t600x-j314-j316.dtsi | 2 --
>  arch/arm64/boot/dts/apple/t600x-j375.dtsi      | 2 --
>  arch/arm64/boot/dts/apple/t8103-jxxx.dtsi      | 2 --
>  arch/arm64/boot/dts/apple/t8112-jxxx.dtsi      | 2 --
>  4 files changed, 8 deletions(-)
> 
> diff --git a/arch/arm64/boot/dts/apple/t600x-j314-j316.dtsi b/arch/arm64/boot/dts/apple/t600x-j314-j316.dtsi
> index 5547f5e7ac5a..14b6bf234f82 100644
> --- a/arch/arm64/boot/dts/apple/t600x-j314-j316.dtsi
> +++ b/arch/arm64/boot/dts/apple/t600x-j314-j316.dtsi
> @@ -30,8 +30,6 @@ chosen {
>  		#size-cells = <2>;
>  		ranges;
>  
> -		stdout-path = "serial0";
> -
>  		framebuffer0: framebuffer@0 {
>  			compatible = "apple,simple-framebuffer", "simple-framebuffer";
>  			reg = <0 0 0 0>; /* To be filled by loader */
> diff --git a/arch/arm64/boot/dts/apple/t600x-j375.dtsi b/arch/arm64/boot/dts/apple/t600x-j375.dtsi
> index 7c207b1df949..22e96b436bf2 100644
> --- a/arch/arm64/boot/dts/apple/t600x-j375.dtsi
> +++ b/arch/arm64/boot/dts/apple/t600x-j375.dtsi
> @@ -28,8 +28,6 @@ chosen {
>  		#size-cells = <2>;
>  		ranges;
>  
> -		stdout-path = "serial0";
> -
>  		framebuffer0: framebuffer@0 {
>  			compatible = "apple,simple-framebuffer", "simple-framebuffer";
>  			reg = <0 0 0 0>; /* To be filled by loader */
> diff --git a/arch/arm64/boot/dts/apple/t8103-jxxx.dtsi b/arch/arm64/boot/dts/apple/t8103-jxxx.dtsi
> index 3c5da0e5a41d..d2483f618d44 100644
> --- a/arch/arm64/boot/dts/apple/t8103-jxxx.dtsi
> +++ b/arch/arm64/boot/dts/apple/t8103-jxxx.dtsi
> @@ -27,8 +27,6 @@ chosen {
>  		#size-cells = <2>;
>  		ranges;
>  
> -		stdout-path = "serial0";
> -
>  		framebuffer0: framebuffer@0 {
>  			compatible = "apple,simple-framebuffer", "simple-framebuffer";
>  			reg = <0 0 0 0>; /* To be filled by loader */
> diff --git a/arch/arm64/boot/dts/apple/t8112-jxxx.dtsi b/arch/arm64/boot/dts/apple/t8112-jxxx.dtsi
> index b6b815d93c3e..af4153dcb55d 100644
> --- a/arch/arm64/boot/dts/apple/t8112-jxxx.dtsi
> +++ b/arch/arm64/boot/dts/apple/t8112-jxxx.dtsi
> @@ -22,8 +22,6 @@ chosen {
>  		#size-cells = <2>;
>  		ranges;
>  
> -		stdout-path = "serial0";
> -
>  		framebuffer0: framebuffer@0 {
>  			compatible = "apple,simple-framebuffer", "simple-framebuffer";
>  			reg = <0 0 0 0>; /* To be filled by loader */
> -- 
> 2.38.1
> 
> 
> 

WARNING: multiple messages have this Message-ID (diff)
From: Mark Kettenis <mark.kettenis@xs4all.nl>
To: Akihiko Odaki <akihiko.odaki@daynix.com>
Cc: linux-kernel@vger.kernel.org, devicetree@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org, asahi@lists.linux.dev,
	krzysztof.kozlowski+dt@linaro.org, robh+dt@kernel.org,
	alyssa@rosenzweig.io, sven@svenpeter.dev, marcan@marcan.st,
	akihiko.odaki@daynix.com
Subject: Re: [PATCH] arch: arm64: dts: apple: Remove stdout-path
Date: Thu, 01 Dec 2022 15:25:15 +0100	[thread overview]
Message-ID: <877czb42wk.fsf@bloch.sibelius.xs4all.nl> (raw)
In-Reply-To: <20221201103651.27807-1-akihiko.odaki@daynix.com> (message from Akihiko Odaki on Thu, 1 Dec 2022 19:36:51 +0900)

> From: Akihiko Odaki <akihiko.odaki@daynix.com>
> Date: Thu,  1 Dec 2022 19:36:51 +0900
> 
> u-boot overrides stdout-path so that it points to /chosen/framebuffer
> with some condition.
> > arm: apple: Point stdout-path to framebuffer when keyboard present
> >
> > Unless you have a spare Apple Silicon machine, getting access to
> > the serial port on Apple Silicon machines requires special
> > hardware. Given that most machines come with a built-in screen
> > the framebuffer is likely to be the most convenient output device
> > for most users. While U-Boot will output to both serial and
> > framebuffer, OSes might not. Therefore set stdout-path to point
> > at /chosen/framebuffer when a keyboard is connected to the machine.
> https://github.com/AsahiLinux/u-boot/commit/a609353e82fd757b7635d18ed6a0828fff657d59
> 
> Perhaps it made sense to specify serial0 as stdout-path when the
> framebuffer and keyboard support was inmature, but today it is
> preferrable to use /chosen/framebuffer instead of serial0 for the
> console in the most cases as the u-boot change states.
> 
> Remove stdout-path to allow the kernel to choose the appropriate
> console. For Linux, it will be VT, which will be eventually backed by
> the framebuffer, if it is enabled. Otherwise, it will fall back to the
> serial.

U-Boot still relies on serial being the default.  It will not touch
stdout-out when running under the m1n1 hypervisor for example.  The
m1n1 hypervisor emulates the serial port hardware and developers rely
on this quite heavily.  Also, U-boot will only switch to the
framebuffer if a keyboard is connected.  This is currently disabled in
the builds for Asahi Linux because the type-A USB ports are not
supported yet in U-Boot.  But the plan is to fix that eventually.

So as far as I am concerted NAK.

> Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
> ---
>  arch/arm64/boot/dts/apple/t600x-j314-j316.dtsi | 2 --
>  arch/arm64/boot/dts/apple/t600x-j375.dtsi      | 2 --
>  arch/arm64/boot/dts/apple/t8103-jxxx.dtsi      | 2 --
>  arch/arm64/boot/dts/apple/t8112-jxxx.dtsi      | 2 --
>  4 files changed, 8 deletions(-)
> 
> diff --git a/arch/arm64/boot/dts/apple/t600x-j314-j316.dtsi b/arch/arm64/boot/dts/apple/t600x-j314-j316.dtsi
> index 5547f5e7ac5a..14b6bf234f82 100644
> --- a/arch/arm64/boot/dts/apple/t600x-j314-j316.dtsi
> +++ b/arch/arm64/boot/dts/apple/t600x-j314-j316.dtsi
> @@ -30,8 +30,6 @@ chosen {
>  		#size-cells = <2>;
>  		ranges;
>  
> -		stdout-path = "serial0";
> -
>  		framebuffer0: framebuffer@0 {
>  			compatible = "apple,simple-framebuffer", "simple-framebuffer";
>  			reg = <0 0 0 0>; /* To be filled by loader */
> diff --git a/arch/arm64/boot/dts/apple/t600x-j375.dtsi b/arch/arm64/boot/dts/apple/t600x-j375.dtsi
> index 7c207b1df949..22e96b436bf2 100644
> --- a/arch/arm64/boot/dts/apple/t600x-j375.dtsi
> +++ b/arch/arm64/boot/dts/apple/t600x-j375.dtsi
> @@ -28,8 +28,6 @@ chosen {
>  		#size-cells = <2>;
>  		ranges;
>  
> -		stdout-path = "serial0";
> -
>  		framebuffer0: framebuffer@0 {
>  			compatible = "apple,simple-framebuffer", "simple-framebuffer";
>  			reg = <0 0 0 0>; /* To be filled by loader */
> diff --git a/arch/arm64/boot/dts/apple/t8103-jxxx.dtsi b/arch/arm64/boot/dts/apple/t8103-jxxx.dtsi
> index 3c5da0e5a41d..d2483f618d44 100644
> --- a/arch/arm64/boot/dts/apple/t8103-jxxx.dtsi
> +++ b/arch/arm64/boot/dts/apple/t8103-jxxx.dtsi
> @@ -27,8 +27,6 @@ chosen {
>  		#size-cells = <2>;
>  		ranges;
>  
> -		stdout-path = "serial0";
> -
>  		framebuffer0: framebuffer@0 {
>  			compatible = "apple,simple-framebuffer", "simple-framebuffer";
>  			reg = <0 0 0 0>; /* To be filled by loader */
> diff --git a/arch/arm64/boot/dts/apple/t8112-jxxx.dtsi b/arch/arm64/boot/dts/apple/t8112-jxxx.dtsi
> index b6b815d93c3e..af4153dcb55d 100644
> --- a/arch/arm64/boot/dts/apple/t8112-jxxx.dtsi
> +++ b/arch/arm64/boot/dts/apple/t8112-jxxx.dtsi
> @@ -22,8 +22,6 @@ chosen {
>  		#size-cells = <2>;
>  		ranges;
>  
> -		stdout-path = "serial0";
> -
>  		framebuffer0: framebuffer@0 {
>  			compatible = "apple,simple-framebuffer", "simple-framebuffer";
>  			reg = <0 0 0 0>; /* To be filled by loader */
> -- 
> 2.38.1
> 
> 
> 

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  reply	other threads:[~2022-12-01 14:26 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-12-01 10:36 [PATCH] arch: arm64: dts: apple: Remove stdout-path Akihiko Odaki
2022-12-01 10:36 ` Akihiko Odaki
2022-12-01 10:36 ` Akihiko Odaki
2022-12-01 14:25 ` Mark Kettenis [this message]
2022-12-01 14:25   ` Mark Kettenis
2022-12-01 15:19   ` Akihiko Odaki
2022-12-01 15:19     ` Akihiko Odaki
2022-12-01 15:46     ` Hector Martin
2022-12-01 15:46       ` Hector Martin
2022-12-01 16:38       ` Akihiko Odaki
2022-12-01 16:38         ` Akihiko Odaki
2022-12-01 17:46         ` Hector Martin
2022-12-01 17:46           ` Hector Martin
2022-12-01 18:14           ` Akihiko Odaki
2022-12-01 18:14             ` Akihiko Odaki

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=877czb42wk.fsf@bloch.sibelius.xs4all.nl \
    --to=mark.kettenis@xs4all.nl \
    --cc=akihiko.odaki@daynix.com \
    --cc=alyssa@rosenzweig.io \
    --cc=asahi@lists.linux.dev \
    --cc=devicetree@vger.kernel.org \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=marcan@marcan.st \
    --cc=robh+dt@kernel.org \
    --cc=sven@svenpeter.dev \
    /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.