[PATCH v10 1/2] dt-bindings: pinctrl: mt8195: add rsel define
zhiyong.tao
zhiyong.tao at mediatek.com
Wed Aug 18 18:49:08 PDT 2021
On Wed, 2021-08-18 at 14:25 +0800, Chen-Yu Tsai wrote:
> On Wed, Aug 18, 2021 at 4:09 AM Linus Walleij <
> linus.walleij at linaro.org> wrote:
> >
> > On Tue, Aug 17, 2021 at 9:51 AM zhiyong.tao <
> > zhiyong.tao at mediatek.com> wrote:
> >
> > > In one chip, If GPIO is different, the MTXXXX_PULL_UP_RSEL_001
> > > may
> > > means different actual bias resistance setting.
> > >
> > > For example,
> > >
> > > KPROW IO
> > > Paramters Descriptions Min Typ M
> > > ax
> > > UNIT
> > > Rpd Input pull-down
> > > resistance 40 75 190 Kohm
> > > Rpu Input pull-up
> > > resistance 40 75 190 Kohm
> > > Rpd Input pull-down
> > > resistance 0.8 1.6 2 Kohm
> > > Rpu Input pull-up
> > > resistance 0.8 1.6 2 Kohm
> >
> > This is exactly why we should try to use SI units in the device
> > tree.
> > I assume that the software can eventually configure which
> > resistance
> > it gets?
> >
> > The electronics people will say make sure it is pulled down by
> > around
> > 80 kOhm, they can put that on the device tree and your code can
> > say, "hm 40 < 80 < 190 this is OK" and let the value pass.
> >
> > We do not define these exact semantics, it is up to the driver code
> > to decide what to do with the Ohm value 80000 in this case, but
> > it makes perfect sent for me to let it pass and fail if someone
> > for example requests 20 kOhm, or at least print a helpful warning:
> >
> > dev_warn(dev, "the requested resistance %d is out of range,
> > supported
> > range %d to %d kOhm\n",
> > val, low, high);
> >
> > This is what makes the SI units really helpful for people writing
> > device
> > trees: solve real integration tasks and make it easy to do the
> > right thing.
>
> I think this makes a lot of sense. The driver could select the
> closest
> setting. And from what Zhiyong mentioned offline, the resistor values
> aren't exact as specified in the datasheet. I suppose this is
> expected
> with any electronics. So the hardware integration will say to pull up
> or down by some value, and the driver will do its best to fulfill
> that
> request. That precludes DT schema checking for the values used, but I
> think that is a good compromise.
>
> Zhiyong also mentioned that some of their downstream integrators
> might
> not be able to deal with actual values, and would prefer symbols tied
> to specific RSEL values. I think that would be doable together using
> some _magic_ values, but I would prefer not to if it were avoidable.
>
>
> Regards
> ChenYu
Hi chenyu & Linus,
Thanks for your suggestion.
we will try to update a new version to use SI units in the device tree
in the rsel feature patch.
Thanks
More information about the Linux-mediatek
mailing list