On 17/11/2022 18:01, Michael Riesch wrote: > Hi Krzysztof, > > On 11/17/22 17:17, Krzysztof Kozlowski wrote: >> On 17/11/2022 17:12, Gerald Loacker wrote: >>>> >>>>> + >>>>> + compatible: >>>>> + const: ti,tmag5273 >>>>> + >>>>> + reg: >>>>> + maxItems: 1 >>>>> + >>>>> + "#io-channel-cells": >>>>> + const: 1 >>>>> + >>>>> + ti,angle-enable: >>>>> + description: >>>>> + Enables angle measurement in the selected plane. >>>>> + 0 = OFF >>>>> + 1 = X-Y (default) >>>>> + 2 = Y-Z >>>>> + 3 = X-Z >>>> >>>> This feels like something we should be configuring at runtime rather that >>>> DT, or is it driven by board design or similar? >>>> >>> >>> We use this sensor for a zoom wheel application, there is an EVM from TI >>> for this as well. So this is for setting the mounting position of the wheel. >> >> That's ok, but does not explain why choice of angle measurement should >> be a property of the hardware. I could imagine configuring device to >> measure sometimes X-Y and sometimes X-Z, depending on the use case. Use >> case can change runtime. > > If I may chime in here: in our use case the angle channel is used > directly as an input to adc-joystick, so that the combination of the two > is an input device. We feel that in this scenario this angle measurement > setting *has* to be a hardware property because the correct function of > the input device depends on the correct choice of the angle property > (which does not change during runtime, of course). > > If we were to create a different input device in which the magnetometer > was tilted by 90° (for example), then the angle property could be easily > changed in the device tree. The user space, on the other hand, couldn't > possibly know the correct angle property. > > That said, I agree that there may be use cases in which the angle > property should be changed during runtime. Would it be acceptable to > create an IIO property that is initialized by the device tree property? > (Please note that the implementation of the IIO property may not be in > our scope, though) It's fine. Thanks for the explanations. For runtime-configurable setups this still can be changed via some other interface. Best regards, Krzysztof