Skip to content

Add support for OnePlus Nord N10 (billie)#8

Open
danascape wants to merge 8 commits into
sm6350-mainline:sm6350-6.19.yfrom
stormbreaker-project:sm6350-6.19.y
Open

Add support for OnePlus Nord N10 (billie)#8
danascape wants to merge 8 commits into
sm6350-mainline:sm6350-6.19.yfrom
stormbreaker-project:sm6350-6.19.y

Conversation

@danascape
Copy link
Copy Markdown

No description provided.

danascape added 3 commits May 16, 2026 22:54
Add a compatible for OnePlus Nord N10 5G (billie)

Signed-off-by: Saalim Quadri <danascape@gmail.com>
Add initial device tree support for OnePlus Nord N10.
The device successfully boots to framebuffer console.

The initial bring-up work was done by Henri Dellal. This version was
rewritten and independently implemented with incremental testing during
bring-up.

Co-developed-by: Anri Dellal <anridellal@yandex.ru>
Signed-off-by: Saalim Quadri <danascape@gmail.com>
Include pm6350 to inherit its GPIO and button configuration, and
configure "resin" to serve as volume up, and gpio2 as volume down.

Signed-off-by: Saalim Quadri <danascape@gmail.com>
@danascape
Copy link
Copy Markdown
Author

danascape commented May 16, 2026

  • Till the latest commit, the device successfully boots on PostmarketOS phosh/plasma-mobile with USB and display working

danascape and others added 5 commits May 17, 2026 02:02
This regulator configuration was adopted from downstream, and is
identical to the sm7225 FairPhone 4 and Sony Xperia 10 III.

Signed-off-by: Saalim Quadri <danascape@gmail.com>
Enable QUP and GPI DMA hardware to be able to add functioning I2C nodes
later.

Signed-off-by: Marijn Suijten <marijn.suijten@somainline.org>
Signed-off-by: Saalim Quadri <danascape@gmail.com>
Add device tree bindings for Himax HX83112F-based DSI display panels,
such as the Tianma FHD panel used in the OnePlus Nord N10 5G.

Signed-off-by: Saalim Quadri <danascape@gmail.com>
Signed-off-by: Saalim Quadri <danascape@gmail.com>
Add required nodes to enable panel and GPU on OnePlus Nord N10

Signed-off-by: Saalim Quadri <danascape@gmail.com>
qcom,msm-id = <434 0x10000>, <459 0x10000>;
qcom,board-id = <0x1000b 0>;

lcdb_dummy: regulator-lcdb-dummy {
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

sort the nodes alphabetically, regulator-* comes after chosen for example

gpio-keys {
compatible = "gpio-keys";
pinctrl-names = "default";
pinctrl-0 = <&key_vol_down_default>;
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

pinctrl-0, then pinctrl-names


&dispcc {
status = "okay";
};
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is enabled by default, you can drop these 3 lines

};

&gpu_zap_shader {
firmware-name = "qcom/sm6350/billie/a615_zap.mbn";
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

qcom/sm6350/OnePlus/billie/foo


status = "okay";

dsi_panel: panel@0 {
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

no need for the dsi_panel label I think?

vsn-supply = <&lcdb_dummy>;

pinctrl-names = "default";
pinctrl-0 = <&panel_reset_pin &te_gpio>;
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

pinctrl-0, then pinctrl-names


&pm6350_resin {
linux,code = <KEY_VOLUMEUP>;
status = "okay";
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

empty line before status

};

&sdhc_2 {
status = "okay";
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

status should be the last property

};

&tlmm {
gpio-reserved-ranges = <13 4>, <56 2>;
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I guess this comment was in the previous PR already, but if you know what pins these are, it'd be good to add a comment

Copy link
Copy Markdown
Author

@danascape danascape May 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I will, one is NFC, other is FP iir, Ill confirm and add comments as needed


&ufs_mem_phy {
status = "okay";
};
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So UFS works on this device?

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes it does, I am flashing the image to userdata/super partition to test and it works with no issues

dtb-$(CONFIG_ARCH_QCOM) += sm6125-sony-xperia-seine-pdx201.dtb
dtb-$(CONFIG_ARCH_QCOM) += sm6125-xiaomi-ginkgo.dtb
dtb-$(CONFIG_ARCH_QCOM) += sm6125-xiaomi-laurel-sprout.dtb
dtb-$(CONFIG_ARCH_QCOM) += sm6350-oneplus-nord-billie.dtb
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why is nord in the filename? Not just sm6350-oneplus-billie.dt[bs]?

@z3ntu
Copy link
Copy Markdown
Member

z3ntu commented May 27, 2026

Please run make CHECK_DTBS=1 qcom/sm6350-oneplus-nord-billie.dtb and fix the issues there.

@danascape
Copy link
Copy Markdown
Author

Please run make CHECK_DTBS=1 qcom/sm6350-oneplus-nord-billie.dtb and fix the issues there.

I literally forgot the command, yes I will update and tag.

thanks

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants