On 16/10/2023 13:47, Nia Espera wrote: > Device tree files for OnePlus 9 and 9 Pro. Details of supported features > mentioned in the cover letter for this patch series, but for > accessibility also repeated here: > > - USB OTG > - UFS > - Framebuffer display > - Touchscreen (for lemonade) > - Power & volume down keys > - Battery reading > - Modem, IPA, and remoteproc bringup > > Steps to get booting: > > - Wipe dtbo partition > - Flash vbmeta with disabled verity bit > - Flash kernel and initfs to boot partition with CLI args pd_ignore_unused > and clk_ignore_unused > - Flash rootfs to some other partition (probably super or userdata) > > Signed-off-by: Nia Espera <nespera@xxxxxxxxxx> Small comment below, for the next revision: Reviewed-by: Caleb Connolly <caleb.connolly@xxxxxxxxxx> > --- > arch/arm64/boot/dts/qcom/Makefile | 2 + > .../arm64/boot/dts/qcom/sm8350-oneplus-common.dtsi | 1247 ++++++++++++++++++++ > .../boot/dts/qcom/sm8350-oneplus-lemonade.dts | 82 ++ > .../boot/dts/qcom/sm8350-oneplus-lemonadep.dts | 37 + > 4 files changed, 1368 insertions(+) > > diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/Makefile > index 2cca20563a1d..369ad4721b29 100644 > --- a/arch/arm64/boot/dts/qcom/Makefile > +++ b/arch/arm64/boot/dts/qcom/Makefile > @@ -211,6 +211,8 @@ dtb-$(CONFIG_ARCH_QCOM) += sm8250-xiaomi-elish-csot.dtb > dtb-$(CONFIG_ARCH_QCOM) += sm8350-hdk.dtb > dtb-$(CONFIG_ARCH_QCOM) += sm8350-microsoft-surface-duo2.dtb > dtb-$(CONFIG_ARCH_QCOM) += sm8350-mtp.dtb > +dtb-$(CONFIG_ARCH_QCOM) += sm8350-oneplus-lemonade.dtb > +dtb-$(CONFIG_ARCH_QCOM) += sm8350-oneplus-lemonadep.dtb > dtb-$(CONFIG_ARCH_QCOM) += sm8350-sony-xperia-sagami-pdx214.dtb > dtb-$(CONFIG_ARCH_QCOM) += sm8350-sony-xperia-sagami-pdx215.dtb > dtb-$(CONFIG_ARCH_QCOM) += sm8450-hdk.dtb > diff --git a/arch/arm64/boot/dts/qcom/sm8350-oneplus-common.dtsi b/arch/arm64/boot/dts/qcom/sm8350-oneplus-common.dtsi > new file mode 100644 > index 000000000000..2f6768f35259 > --- /dev/null > +++ b/arch/arm64/boot/dts/qcom/sm8350-oneplus-common.dtsi > @@ -0,0 +1,1247 @@ > +// SPDX-License-Identifier: BSD-3-Clause > +/* > + * Copyright (c) 2023 Caleb Connolly <caleb.connolly@xxxxxxxxxx> This is loosely based on some initial work I did, but not to the degree where this copyright is necessary, feel free to drop it on the next revision. > + * > + * Copyright (c) 2023 Igalia S.L. > + * Authors: > + * Nia Espera <nespera@xxxxxxxxxx> > + */ > + > +#include <dt-bindings/iio/qcom,spmi-adc7-pm8350.h> > +#include <dt-bindings/iio/qcom,spmi-adc7-pm8350b.h> > +#define SMB139x_1_SID 0x0b > +#define SMB139x_2_SID 0x0c > +#include <dt-bindings/iio/qcom,spmi-adc7-smb139x.h> > +#include <dt-bindings/pinctrl/qcom,pmic-gpio.h> > +#include <dt-bindings/regulator/qcom,rpmh-regulator.h> > +#include "sm8350.dtsi" > +#include "pm8350.dtsi" > +#include "pm8350b.dtsi" > +#include "pm8350c.dtsi" > +#include "pmk8350.dtsi" > +#include "pmr735a.dtsi" > +#include "pmr735b.dtsi" > + > +/ { > + /* As with the Sony devices, msm-id and board-id aren't needed here */ > + chassis-type = "handset"; > + interrupt-parent = <&intc>; > + [...] > + > + /* > + * Hack; OP9 bootloader specifically checks that the timer node has > + * this label. > + */ > + arch_timer: timer {}; For this to work you also need to build the DTB with labels (the -@ flag to dtc), otherwise this board won't boot. You can add the following to the Makefile: DTC_FLAGS_sm8350-oneplus-lemonade := -@ DTC_FLAGS_sm8350-oneplus-lemonadep := -@ See for reference: https://lore.kernel.org/linux-arm-msm/20231009172717.2695854-1-dmitry.baryshkov@xxxxxxxxxx/ Regards, -- // Caleb (they/them)