On Wed, Aug 20, 2025 at 10:42:09AM +0200, Luca Weiss wrote: > Hi Konrad, > > On Sat Aug 2, 2025 at 2:04 PM CEST, Konrad Dybcio wrote: > > On 7/29/25 8:49 AM, Luca Weiss wrote: > >> Hi Konrad, > >> > >> On Thu Jul 17, 2025 at 11:46 AM CEST, Luca Weiss wrote: > >>> Hi Konrad, > >>> > >>> On Thu Jul 17, 2025 at 10:29 AM CEST, Luca Weiss wrote: > >>>> On Mon Jul 14, 2025 at 1:06 PM CEST, Konrad Dybcio wrote: > >>>>> On 7/13/25 10:05 AM, Luca Weiss wrote: > >>>>>> Add a devicetree description for the Milos SoC, which is for example > >>>>>> Snapdragon 7s Gen 3 (SM7635). > >>>>>> > >>>>>> Signed-off-by: Luca Weiss <luca.we...@fairphone.com> > >>>>>> --- > >>>>> > >>>>> [...] > >>>>>> + > >>>>>> + spmi_bus: spmi@c400000 { > >>>>>> + compatible = "qcom,spmi-pmic-arb"; > >>>>> > >>>>> There's two bus instances on this platform, check out the x1e binding > >>>> > >>>> Will do > >>> > >>> One problem: If we make the labels spmi_bus0 and spmi_bus1 then we can't > >>> reuse the existing PMIC dtsi files since they all reference &spmi_bus. > >>> > >>> On FP6 everything's connected to PMIC_SPMI0_*, and PMIC_SPMI1_* is not > >>> connected to anything so just adding the label spmi_bus on spmi_bus0 > >>> would be fine. > >>> > >>> Can I add this to the device dts? Not going to be pretty though... > >>> > >>> diff --git a/arch/arm64/boot/dts/qcom/milos-fairphone-fp6.dts > >>> b/arch/arm64/boot/dts/qcom/milos-fairphone-fp6.dts > >>> index d12eaa585b31..69605c9ed344 100644 > >>> --- a/arch/arm64/boot/dts/qcom/milos-fairphone-fp6.dts > >>> +++ b/arch/arm64/boot/dts/qcom/milos-fairphone-fp6.dts > >>> @@ -11,6 +11,9 @@ > >>> #include <dt-bindings/pinctrl/qcom,pmic-gpio.h> > >>> #include <dt-bindings/regulator/qcom,rpmh-regulator.h> > >>> #include "milos.dtsi" > >>> + > >>> +spmi_bus: &spmi_bus0 {}; > >>> + > >>> #include "pm7550.dtsi" > >>> #include "pm8550vs.dtsi" > >>> #include "pmiv0104.dtsi" /* PMIV0108 */ > >>> > >>> Or I can add a second label for the spmi_bus0 as 'spmi_bus'. Not sure > >>> other designs than SM7635 recommend using spmi_bus1 for some stuff. > >>> > >>> But I guess longer term we'd need to figure out a solution to this, how > >>> to place a PMIC on a given SPMI bus, if reference designs start to > >>> recommend putting different PMIC on the separate busses. > >> > >> Any feedback on this regarding the spmi_bus label? > > > > I had an offline chat with Bjorn and we only came up with janky > > solutions :) > > > > What you propose works well if the PMICs are all on bus0, which is > > not the case for the newest platforms. If some instances are on bus0 > > and others are on bus1, things get ugly really quick and we're going > > to drown in #ifdefs. > > > > > > An alternative that I've seen downstream is to define PMIC nodes in > > the root of a dtsi file (not in the root of DT, i.e. NOT under / { }) > > and do the following: > > > > &spmi_busN { > > #include "pmABCDX.dtsi" > > }; > > > > Which is "okay", but has the visible downside of having to define the > > temp alarm thermal zone in each board's DT separately (and doing > > mid-file includes which is.. fine I guess, but also something we avoided > > upstream for the longest time) > > > > > > Both are less than ideal when it comes to altering the SID under > > "interrupts", fixing that would help immensely. We were hoping to > > leverage something like Johan's work on drivers/mfd/qcom-pm8008.c, > > but that seems like a longer term project. > > > > Please voice your opinions > > Since nobody else jumped in, how can we continue? > > One janky solution in my mind is somewhat similar to the PMxxxx_SID > defines, doing something like "#define PM7550_SPMI spmi_bus0" and then > using "&PM7550_SPMI {}" in the dtsi. I didn't try it so not sure that > actually works but something like this should I imagine. > > But fortunately my Milos device doesn't have the problem that it > actually uses both SPMI busses for different PMICs, so similar to other > SoCs that already have two SPMI busses, I could somewhat ignore the > problem and let someone else figure out how to actually place PMICs on > spmi_bus0 and spmi_bus1 if they have such a hardware.
I'd say, ignore it for now. > > Regards > Luca > > > > > Konrad > -- With best wishes Dmitry