Re: [RFC] tegra: dpaux: pinctrl proposal

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, May 21, 2015 at 4:03 PM, Thierry Reding
<thierry.reding@xxxxxxxxx> wrote:

>> > I don't see any conceptual reason why the driver that binds to that node
>> > can't register as both a pinctrl driver plus anything else it needs to.
(...)
>> Looking at it there should not be a problem here with regard to the
>> driver_data member of the device struct and so I don't see why the
>> tegra_dpaux_probe() could not call pinctrl_register() to register the
>> device.
>
> Yes, I think that'd be the best solution.

I'm pretty much ready to go to any compromises to get DRM/GPU
drivers to use internal kernel subsystems. The tendency there
is to reimplement all kernel driver frameworks and hammer registers
they need to access.

There are good reasons for. These drivers are usually so complex
that things like probing and power up/down become a nightmare
with cross-subsystem dependencies.

They are a special case. I had a long discussion with Intel's
Daniel Vetter about this and they (Intel) eventually used GPIO
for some stuff where it would fit nicely, but didn't go to use fixed
regulators as I had suggested.

>> However, it does mean that all the pinctrl/pinmux/pinconf ops for this
>> pinctrl device will need to live in drivers/gpu/drm/tegra/dpaux.c which
>> is fine,

Yeah that's cool I already have e.g. GPIO chips all over the map,
including DRM IIRC.

>> but I *believe* that would require moving
>> drivers/pinctrl/pinctrl-utils.h to include/linux/pinctrl/ in order to
>> make use of these functions.

Well I originally intended that to be private and neat, but whatever.
Call it pinctrl-utils-internal.h or something then.

>> May be that is fine too. I could put
>> together a patch series and see what everyone thinks.
>
> I guess it depends mostly on whether Linus (Cc'ed) is willing to have
> drivers outside of drivers/pinctrl implement pin controllers.

For this case: go ahead.

Yours,
Linus Walleij
--
To unsubscribe from this list: send the line "unsubscribe linux-tegra" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [ARM Kernel]     [Linux ARM]     [Linux ARM MSM]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux