Message ID | 20231130231657.12715-1-francesco@dolcini.it (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | arm64: defconfig: increase SERIAL_8250_NR_UARTS | expand |
* Francesco Dolcini <francesco@dolcini.it> [231130 23:17]: > Increase CONFIG_SERIAL_8250_NR_UARTS from 4 to 8, the current legacy value > is not adequate for embedded systems that use SoCs where it's common to > have a large number of serial ports. > > No need to change CONFIG_SERIAL_8250_RUNTIME_UARTS, see commit 9d86719f8769 > ("serial: 8250: Allow using ports higher than SERIAL_8250_RUNTIME_UARTS"). > > This enables using the UART connected Bluetooth device on Verdin AM62 > board. OK makes sense for distro use. Disabling unused ports leads into port names shifting, which we still can't easily tolerate until we have the DEVNAME:0.0 style addressing available for ports. So for now we still depend CONFIG_SERIAL_8250_NR_UARTS, eventually that too should become just a legacy ISA port array.. Meanwhile: Reviewed-by: Tony Lindgren <tony@atomide.com>
On 08:03-20231201, Tony Lindgren wrote: > * Francesco Dolcini <francesco@dolcini.it> [231130 23:17]: > > Increase CONFIG_SERIAL_8250_NR_UARTS from 4 to 8, the current legacy value > > is not adequate for embedded systems that use SoCs where it's common to > > have a large number of serial ports. > > > > No need to change CONFIG_SERIAL_8250_RUNTIME_UARTS, see commit 9d86719f8769 > > ("serial: 8250: Allow using ports higher than SERIAL_8250_RUNTIME_UARTS"). > > > > This enables using the UART connected Bluetooth device on Verdin AM62 > > board. > > OK makes sense for distro use. > > Disabling unused ports leads into port names shifting, which we still can't > easily tolerate until we have the DEVNAME:0.0 style addressing available for > ports. So for now we still depend CONFIG_SERIAL_8250_NR_UARTS, eventually > that too should become just a legacy ISA port array.. Meanwhile: > > Reviewed-by: Tony Lindgren <tony@atomide.com> I'd prefer to get Arnd's view on the topic as well (I kind of recollect some historic discussion which I am not failing to trace that there usage model doesn't exceed 4 and aliases could be used to map these as required for the platform). The 8250 debate has been popping on and off over the years.. Sigh.. memories of [1] still haunt me. I assume you are talking of arch/arm64/boot/dts/ti/k3-am62-verdin-wifi.dtsi which in turn uses arch/arm64/boot/dts/ti/k3-am62-verdin.dtsi (5 uarts) and that is where the increase in serial port is coming from. Now 8 or 5 (which seems to be the relevant need) is subjective :( [1] https://lore.kernel.org/linux-arm-kernel/Y3x%2FcGYWLLB+J2zU@atomide.com/
On Fri, Dec 01, 2023 at 12:49:19AM -0600, Nishanth Menon wrote: > On 08:03-20231201, Tony Lindgren wrote: > > * Francesco Dolcini <francesco@dolcini.it> [231130 23:17]: > > > Increase CONFIG_SERIAL_8250_NR_UARTS from 4 to 8, the current legacy value > > > is not adequate for embedded systems that use SoCs where it's common to > > > have a large number of serial ports. > > > > > > No need to change CONFIG_SERIAL_8250_RUNTIME_UARTS, see commit 9d86719f8769 > > > ("serial: 8250: Allow using ports higher than SERIAL_8250_RUNTIME_UARTS"). > > > > > > This enables using the UART connected Bluetooth device on Verdin AM62 > > > board. > > > > OK makes sense for distro use. > > > > Disabling unused ports leads into port names shifting, which we still can't > > easily tolerate until we have the DEVNAME:0.0 style addressing available for > > ports. So for now we still depend CONFIG_SERIAL_8250_NR_UARTS, eventually > > that too should become just a legacy ISA port array.. Meanwhile: > > > > Reviewed-by: Tony Lindgren <tony@atomide.com> > > I'd prefer to get Arnd's view on the topic as well (I kind of > recollect some historic discussion which I am not failing to trace > that there usage model doesn't exceed 4 and aliases could be used to > map these as required for the platform). The usage model that triggered this change exceed 4, we >4 uart in use at the same time. And the issue is not really "distro use", and I do not think anything about aliases matter (the BT device is described as a child of the uart in the DT). &main_uart5 { bluetooth { compatible = "nxp,88w8987-bt"; }; }; The change here is required to have basic hardware functionalities working for kernel development and debugging using the in-tree defconfig. > Now 8 or 5 (which seems to be the relevant need) is subjective :( Correct. Francesco
On 09:48-20231201, Francesco Dolcini wrote: > On Fri, Dec 01, 2023 at 12:49:19AM -0600, Nishanth Menon wrote: > > On 08:03-20231201, Tony Lindgren wrote: > > > * Francesco Dolcini <francesco@dolcini.it> [231130 23:17]: > > > > Increase CONFIG_SERIAL_8250_NR_UARTS from 4 to 8, the current legacy value > > > > is not adequate for embedded systems that use SoCs where it's common to > > > > have a large number of serial ports. > > > > > > > > No need to change CONFIG_SERIAL_8250_RUNTIME_UARTS, see commit 9d86719f8769 > > > > ("serial: 8250: Allow using ports higher than SERIAL_8250_RUNTIME_UARTS"). > > > > > > > > This enables using the UART connected Bluetooth device on Verdin AM62 > > > > board. > > > > > > OK makes sense for distro use. > > > > > > Disabling unused ports leads into port names shifting, which we still can't > > > easily tolerate until we have the DEVNAME:0.0 style addressing available for > > > ports. So for now we still depend CONFIG_SERIAL_8250_NR_UARTS, eventually > > > that too should become just a legacy ISA port array.. Meanwhile: > > > > > > Reviewed-by: Tony Lindgren <tony@atomide.com> > > > > I'd prefer to get Arnd's view on the topic as well (I kind of > > recollect some historic discussion which I am not failing to trace > > that there usage model doesn't exceed 4 and aliases could be used to > > map these as required for the platform). > > The usage model that triggered this change exceed 4, we >4 uart in > use at the same time. > > And the issue is not really "distro use", and I do not think anything > about aliases matter (the BT device is described as a child of the uart > in the DT). > > &main_uart5 { > bluetooth { > compatible = "nxp,88w8987-bt"; > }; > }; > > The change here is required to have basic hardware functionalities > working for kernel development and debugging using the in-tree > defconfig. > > > > Now 8 or 5 (which seems to be the relevant need) is subjective :( > I'd suggest to elaborate on "This enables using the UART connected Bluetooth device on Verdin AM62 board." Commit message a bit more to indicate what each of the uarts are used for - this will help explain that we have a real platform that needs more than 4 uarts simultaneously. we seem to have survived quite a few years with count of 4.. so we need to defend why this change now and why it helps the ecosystem.. just my 2 cents. Yes, I did indeed look and found the case you are indicating, but for rest of the community, commit message should indicate why (it will help if other boards benefit as well, but I personally feel this case, if elaborated is sufficient enough reason by itself).
On Fri, Dec 01, 2023 at 02:59:57AM -0600, Nishanth Menon wrote: > On 09:48-20231201, Francesco Dolcini wrote: > > On Fri, Dec 01, 2023 at 12:49:19AM -0600, Nishanth Menon wrote: > > > On 08:03-20231201, Tony Lindgren wrote: > > > > * Francesco Dolcini <francesco@dolcini.it> [231130 23:17]: > > > > > Increase CONFIG_SERIAL_8250_NR_UARTS from 4 to 8, the current legacy value > > > > > is not adequate for embedded systems that use SoCs where it's common to > > > > > have a large number of serial ports. > > > > > > > > > > No need to change CONFIG_SERIAL_8250_RUNTIME_UARTS, see commit 9d86719f8769 > > > > > ("serial: 8250: Allow using ports higher than SERIAL_8250_RUNTIME_UARTS"). > > > > > > > > > > This enables using the UART connected Bluetooth device on Verdin AM62 > > > > > board. > > > > > > I'd prefer to get Arnd's view on the topic as well (I kind of > > > recollect some historic discussion which I am not failing to trace > > > that there usage model doesn't exceed 4 and aliases could be used to > > > map these as required for the platform). > > > > The usage model that triggered this change exceed 4, we >4 uart in > > use at the same time. > > > > And the issue is not really "distro use", and I do not think anything > > about aliases matter (the BT device is described as a child of the uart > > in the DT). > > > > &main_uart5 { > > bluetooth { > > compatible = "nxp,88w8987-bt"; > > }; > > }; > > > > The change here is required to have basic hardware functionalities > > working for kernel development and debugging using the in-tree > > defconfig. > > I'd suggest to elaborate on "This enables using the UART connected > Bluetooth device on Verdin AM62 board." I can do this, of course, I'll wait for some more feedback in the coming days as you somehow already suggested. Francesco
On Fri, Dec 1, 2023, at 07:49, Nishanth Menon wrote: > On 08:03-20231201, Tony Lindgren wrote: >> * Francesco Dolcini <francesco@dolcini.it> [231130 23:17]: >> > Increase CONFIG_SERIAL_8250_NR_UARTS from 4 to 8, the current legacy value >> > is not adequate for embedded systems that use SoCs where it's common to >> > have a large number of serial ports. >> > >> > No need to change CONFIG_SERIAL_8250_RUNTIME_UARTS, see commit 9d86719f8769 >> > ("serial: 8250: Allow using ports higher than SERIAL_8250_RUNTIME_UARTS"). >> > >> > This enables using the UART connected Bluetooth device on Verdin AM62 >> > board. >> >> OK makes sense for distro use. >> >> Disabling unused ports leads into port names shifting, which we still can't >> easily tolerate until we have the DEVNAME:0.0 style addressing available for >> ports. So for now we still depend CONFIG_SERIAL_8250_NR_UARTS, eventually >> that too should become just a legacy ISA port array.. Meanwhile: >> >> Reviewed-by: Tony Lindgren <tony@atomide.com> > > I'd prefer to get Arnd's view on the topic as well (I kind of > recollect some historic discussion which I am not failing to trace > that there usage model doesn't exceed 4 and aliases could be used to > map these as required for the platform). The 8250 debate has been > popping on and off over the years.. Sigh.. memories of [1] still haunt > me. I don't recall any reason to have the limit set to the default of 4, other than possibly using excessive amounts of .data in vmlinux, but we have other serial port drivers that just hardcode a much larger value. Arnd
On 16:31-20231201, Arnd Bergmann wrote: > On Fri, Dec 1, 2023, at 07:49, Nishanth Menon wrote: > > On 08:03-20231201, Tony Lindgren wrote: > >> * Francesco Dolcini <francesco@dolcini.it> [231130 23:17]: > >> > Increase CONFIG_SERIAL_8250_NR_UARTS from 4 to 8, the current legacy value > >> > is not adequate for embedded systems that use SoCs where it's common to > >> > have a large number of serial ports. > >> > > >> > No need to change CONFIG_SERIAL_8250_RUNTIME_UARTS, see commit 9d86719f8769 > >> > ("serial: 8250: Allow using ports higher than SERIAL_8250_RUNTIME_UARTS"). > >> > > >> > This enables using the UART connected Bluetooth device on Verdin AM62 > >> > board. > >> > >> OK makes sense for distro use. > >> > >> Disabling unused ports leads into port names shifting, which we still can't > >> easily tolerate until we have the DEVNAME:0.0 style addressing available for > >> ports. So for now we still depend CONFIG_SERIAL_8250_NR_UARTS, eventually > >> that too should become just a legacy ISA port array.. Meanwhile: > >> > >> Reviewed-by: Tony Lindgren <tony@atomide.com> > > > > I'd prefer to get Arnd's view on the topic as well (I kind of > > recollect some historic discussion which I am not failing to trace > > that there usage model doesn't exceed 4 and aliases could be used to > > map these as required for the platform). The 8250 debate has been > > popping on and off over the years.. Sigh.. memories of [1] still haunt > > me. > > I don't recall any reason to have the limit set to the default > of 4, other than possibly using excessive amounts of .data in > vmlinux, but we have other serial port drivers that just hardcode > a much larger value. Thanks Arnd, we will queue this up. Francesco: Could you respin with a more clear commit message to indicate actual board usage instance.
diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig index b60aa1f89343..ecd365cd1d87 100644 --- a/arch/arm64/configs/defconfig +++ b/arch/arm64/configs/defconfig @@ -448,6 +448,7 @@ CONFIG_SERIO_AMBAKMI=y CONFIG_LEGACY_PTY_COUNT=16 CONFIG_SERIAL_8250=y CONFIG_SERIAL_8250_CONSOLE=y +CONFIG_SERIAL_8250_NR_UARTS=8 CONFIG_SERIAL_8250_EXTENDED=y CONFIG_SERIAL_8250_SHARE_IRQ=y CONFIG_SERIAL_8250_BCM2835AUX=y
Increase CONFIG_SERIAL_8250_NR_UARTS from 4 to 8, the current legacy value is not adequate for embedded systems that use SoCs where it's common to have a large number of serial ports. No need to change CONFIG_SERIAL_8250_RUNTIME_UARTS, see commit 9d86719f8769 ("serial: 8250: Allow using ports higher than SERIAL_8250_RUNTIME_UARTS"). This enables using the UART connected Bluetooth device on Verdin AM62 board. Cc: Tony Lindgren <tony@atomide.com> Signed-off-by: Francesco Dolcini <francesco@dolcini.it> --- arch/arm64/configs/defconfig | 1 + 1 file changed, 1 insertion(+)