On Fri, Jun 23, 2023 at 11:52:25AM +0100, Bryan O'Donoghue wrote: > On 23/06/2023 11:47, Lin, Meng-Bo wrote: > > On Friday, June 23rd, 2023 at 10:27 AM, Bryan O'Donoghue <bryan.odonoghue@xxxxxxxxxx> wrote: > > > > > > +++ b/arch/arm64/boot/dts/qcom/msm8939-samsung-a7.dts > > > > @@ -0,0 +1,495 @@ > > > > +// SPDX-License-Identifier: GPL-2.0-only > > > > + > > > > +/dts-v1/; > > > > + > > > > +#include "msm8939-pm8916.dtsi" > > > > + > > > > +#include <dt-bindings/gpio/gpio.h> > > > > +#include <dt-bindings/input/input.h> > > > > +#include <dt-bindings/interrupt-controller/irq.h> > > > > + > > > > +/ { > > > > + model = "Samsung Galaxy A7 (2015)"; > > > > + compatible = "samsung,a7", "qcom,msm8939"; > > > > + chassis-type = "handset"; > > > > > > > > > Will the downstream bootloader accept this dts without > > > > > > // This is used by the bootloader to find the correct DTB > > > qcom,msm-id = <239 0>; > > > > > > qcom,board-id = <0xEF08FF1 1>; > > > > > > > > > ? > > > > > > https://github.com/msm8916-mainline/lk2nd/blob/master/dts/msm8916/msm8939-samsung-r01.dts#L10 > > > > > > > Similar to A3 and A5, and the other msm8916 devices, with lk2nd, > > "qcom,msm-id" or "qcom,board-id" are not required in mainline to boot > > this dts. > > If I understand correctly, lk2nd will attempt to boot an image with any > > qcdt appended. > > > > https://github.com/torvalds/linux/blob/master/arch/arm64/boot/dts/qcom/msm8916-samsung-a3u-eur.dts > > https://github.com/torvalds/linux/blob/master/arch/arm64/boot/dts/qcom/msm8916-samsung-a5u-eur.dts > > I understand. > > IMO the upstream DTS should work without depending on lk2nd. > > I'd add the board and msm id to the DTS for that reason. > > If not then I'd put a comment into the DTS explaining the dependency. > > For preference the upstream dts should *just work* as much as possible > without requiring churning of bootloader. > Is it really worth it to support a half-working bootloader though? No one will ever be able to use this properly without fixing the bootloader. SMP doesn't work with the stock bootloader, many devices need display panel selection in the bootloader and on some Samsung devices there is not even USB and UART without special fixes in the bootloader. In most cases it's easy to just add the qcom,msm-id/qcom,board-id but there are also some cases with particularly weird bootloaders that are more complicated. I would just like to avoid forcing everyone to waste time testing with the half-working or entirely broken stock bootloaders. We could add the (guessed) properties without testing but I'm not sure if that's useful. Thanks, Stephan