Re: [PATCH v1 2/5] dt-bindings: soc: hpe: Add hpe,gxp-plreg

From: Krzysztof Kozlowski
Date: Tue Oct 25 2022 - 15:33:50 EST


On 25/10/2022 15:26, Hawkins, Nick wrote:
>
>> I don't know exactly what type of devices you represent in that plreg, but in general the fan device would be the respective plreg. The same with other pieces like hwmon, power supply.
> We were primarily representing the registers that translate to the CPLD input/outputs from our platforms as well as handling the interrupts associated with those inputs/outputs.

So basically each register (or set of registers) is a device? How is it
different than any other multi-functional device? Why do you want to
model it differently?

> When you say "would be the respective plreg" do you mean that each device/controller would need to perform the actions plreg does individually? In that case how should we get information for that register/memory region and interrupts from the dts? Could it be something like this:
>
> plreg: plreg@d1000000 {
> compatible = "hpe,gxp-plreg";
> reg = <0xd1000000 0xFF>;
> interrupts = <26>;
> interrupt-parent = <&vic0>;
> };
>
> fanctrl: fanctrl@c1000c00 {
> compatible = "hpe,gxp-fan-ctrl";
> reg = <0xc1000c00 0x200>;
> plreg_handle = <&plreg>;
> };
>

No, rather these are one node.

You insist to represent this all as programmable logic, but why? CPLD,
FPGA, ASIC, dedicated IC - all are just implementations and for us
what's matter are the interfaces, inputs and outputs.

Best regards,
Krzysztof