On 17/06/13 11:40, Igor Grinberg wrote: > Yes, the reason for this is the sb-t35 (the baseboard) which has the TFP410 > in 3.3V domain, but the cm-t3530/3730 are in 1.8V domain. > This means that the line must be shifted. > Now for some reason hardware guys used an inverter as the level shifter > instead of a simple buffer. So now it is shifted and inverted... Sigh =). >> There seems to be OF_GPIO_ACTIVE_LOW, but I'm not sure how it should be >> used, as I don't see anyone setting that flag... And supporting that >> would mean, in principle, that every driver should support inverting the >> gpio with every gpio they have. > > Might be worth to consider adding this functionality to the GPIOLIB? > Meanwhile, I think the simplest way would be to add a boolean > like OF_GPIO_ACTIVE_LOW, as we have hardware that needs it. > > If you think the patches are conceptually fine, > I can rebase them on top of your tree with the new drivers and > submit properly. Yes, the patches look conceptually fine. I don't like it that the TFP410 driver has to have extra functionality to handle board oddities, but then again, it's just a few lines of code and I don't have any better idea how to solve it. A gpiochip driver that handles the inversion sounds a bit overkill... The 3.11 kernel will have two versions of tfp410 driver, the old one and the one using the new dss device model. If possible, I'd like to have the modifications only for the new one. Tomi
Attachment:
signature.asc
Description: OpenPGP digital signature