[PATCH] arm64: dts: rockchip: Change serial baud rate for Pinephone Pro to 1.5 MB

Javier Martinez Canillas javierm at redhat.com
Tue Apr 4 07:04:53 PDT 2023

Ondřej Jirman <megi at xff.cz> writes:

> On Tue, Apr 04, 2023 at 09:51:11AM +0200, Heiko Stübner wrote:
>> Hi,
>> Am Montag, 3. April 2023, 19:59:37 CEST schrieb Javier Martinez Canillas:
>> > This baud rate is set for the device by mainline u-boot and is also what
>> > is set in the Pinebook Pro Device Tree, which is a device similar to the
>> > PinePhone Pro but with a different form factor.
>> > 
>> > Otherwise, the baud rate of the firmware and Linux don't match by default
>> > and a 'console=ttyS2,1500000n8' kernel command line parameter is required
>> > to have proper output for both.
>> The interesting question is always if this will break someone else's setup.
>> I've never really understood the strange setting of 1.5MBps, but on the
>> other hand it _is_ a reality on most boards.
> Normal users of the phone probably run with UART console disabled, because
> UART is muxed with audio jack output and to enable it they have to add
> console=ttyS2 to the kernel command line and flip a physical switch inside
> the phone.
> Fortunately, not sepcifying stdout-path baud rate in the options part
> of the string, will make the serial driver probe for the baud rate from
> the previous boot stage and make the user happy by keeping whatever was
> already set in the bootloader.

As mentioned in the first email of this thread, I tried that but it didn't
work for me. Either using stdout-path = "serial2"; or stdout-path = &uart2;
gives me no serial output with console=ttyS2, I needed to specify the baud
rate explicitly (i.e: console=ttyS2,1500000n8).

>   https://elixir.bootlin.com/linux/latest/source/drivers/tty/serial/8250/8250_port.c#L3496

Is that helper really used by the serial driver in the PinePhone Pro?
(drivers/tty/serial/8250/8250_dw.c), I was meaning to dig why just ttyS2
was not working but decided that could be a follow-up patch.

Since chaging to 1.5 MBps seemed to have merits on its own, decided to
post this patch anyways in the meantime.

> So we can make the kernel just keep the baudrate setup from the previous
> boot stage by:
> 	stdout-path = "serial2";

Did it work for you? Maybe I'm doing something silly but as mentioned it
didn't work for me with upstream u-boot.

> regards,
> 	o.

Best regards,

Javier Martinez Canillas
Core Platforms
Red Hat

More information about the Linux-rockchip mailing list