On Wed Jun 25, 2025 at 4:38 PM CEST, Konrad Dybcio wrote: > On 6/25/25 11:23 AM, Luca Weiss wrote: >> Add a devicetree for The Fairphone (Gen. 6) smartphone, which is based >> on the SM7635 SoC. > > [...] > >> + /* Dummy panel for simple-framebuffer dimension info */ >> + panel: panel { >> + compatible = "boe,bj631jhm-t71-d900"; >> + width-mm = <65>; >> + height-mm = <146>; >> + }; > > I haven't ran through all the prerequisite-xx-id, but have > you submitted a binding for this?
Actually not, kind of forgot about this. I believe I can create a (mostly?) complete binding for the panel, but this simple description for only width-mm & height-mm will differ from the final one, which will have the DSI port, pinctrl, reset-gpios and various supplies. I think I'll just drop it from v2 and keep it locally only, to get the simpledrm scaling right. > > [...] > >> + reserved-memory { >> + /* >> + * ABL is powering down display and controller if this node is >> + * not named exactly "splash_region". >> + */ >> + splash_region@e3940000 { >> + reg = <0x0 0xe3940000 0x0 0x2b00000>; >> + no-map; >> + }; >> + }; > > :/ maybe we can convince ABL not to do it.. Yes, we talked about that. I will look into getting "splash-region" and "splash" also into the ABL (edk2) build for the phone. Still won't resolve that for any other brand of devices. > > [...] > >> + vreg_l12b: ldo12 { >> + regulator-name = "vreg_l12b"; >> + /* >> + * Skip voltage voting for UFS VCC. >> + */ > > Why so? >From downstream: /* * This is for UFS Peripheral,which supports 2 variants * UFS 3.1 ,and UFS 2.2 both require different voltages. * Hence preventing voltage voting as per previous targets. */ I haven't (successfully) brought up UFS yet, so I haven't looked more into that. The storage on FP6 is UFS 3.1 though fwiw. > > [...] > >> +&gpi_dma0 { >> + status = "okay"; >> +}; >> + >> +&gpi_dma1 { >> + status = "okay"; >> +}; > > These can be enabled in SoC DTSI.. it's possible that the secure > configuration forbids access to one, but these are generally made > per-platform Ack > > [...] > >> +&pm8550vs_d { >> + status = "disabled"; >> +}; >> + >> +&pm8550vs_e { >> + status = "disabled"; >> +}; >> + >> +&pm8550vs_g { >> + status = "disabled"; >> +}; > > Hm... perhaps we should disable these by deafult Do you want me to do this in this patchset, or we clean this up later at some point? I'd prefer not adding even more dependencies to my patch collection right now. > > [...] > >> +&pmr735b_gpios { >> + pm8008_reset_n_default: pm8008-reset-n-default-state { >> + pins = "gpio3"; >> + function = PMIC_GPIO_FUNC_NORMAL; >> + bias-pull-down; >> + }; >> + >> + s1j_enable_default: s1j-enable-default-state { >> + pins = "gpio1"; >> + function = PMIC_GPIO_FUNC_NORMAL; >> + power-source = <0>; >> + bias-disable; >> + output-low; >> + }; > > ordering by pin ID makes more sense, here and in tlmm > > (and is actually written down) > https://docs.kernel.org/devicetree/bindings/dts-coding-style.html#order-of-nodes Ah, that's news to me. Thanks! > > [...] > >> +&pon_resin { >> + linux,code = <KEY_VOLUMEDOWN>; >> + status = "okay"; > > \n before status consistently, please Ack > > [...] > >> +&tlmm { >> + /* >> + * 8-11: Fingerprint SPI >> + * 13: NC >> + * 63-64: WLAN UART >> + */ >> + gpio-reserved-ranges = <8 4>, <13 1>, <63 2>; > > Please match the style in x1-crd.dtsi Ack > > [...] > >> +&usb_1 { >> + dr_mode = "otg"; >> + >> + /* USB 2.0 only */ > > Because there's no usb3phy description yet, or due to hw design? HW design. Funnily enough with clk_ignore_unused this property is not needed, and USB(2.0) works fine then. Just when (I assume) the USB3 clock is turned off which the bootloader has enabled, USB stops working. Regards Luca > > Konrad