[Letux-kernel] [PATCH RFC] dt: gta04: add pinctrl to mmc2 for remuxing dat1 to gpio

H. Nikolaus Schaller hns at goldelico.com
Thu Aug 11 19:13:39 CEST 2016


Hi,

> Am 11.08.2016 um 16:54 schrieb Andreas Kemnade <andreas at kemnade.info>:
> 
> On Thu, 11 Aug 2016 12:32:11 +0200
> "H. Nikolaus Schaller" <hns at goldelico.com> wrote:
> 
>> Hi,
>> 
>>> Am 11.08.2016 um 07:22 schrieb Andreas Kemnade
>>> <andreas at kemnade.info>:
>>> 
>>> The previous solution to have sdio irq on gta04 was to forcre fclk
>>> to be enabled all the time. According to the TRM of the DM3730 there
>>> should be a possibility to have some wakeup mechanism to wake up
>>> mmc2 to aute-enable the fclk and have the system react on sdio irqs
>>> even if fclk is off. But the omap-hsmmc code seems not to touch a
>>> register needed for it.
>>> As a first workaround this patch tries to remux the dat1 line to
>>> gpio
>> 
>> "remux" isn't simple...
>> 
>> The problem is the duplicate definition of MMC2_DAT1.
>> There can only be either one and they are not merged.
>> 
>> This means you have to define the full set of pins for every
>> state ("default", "active", "idle").
>> 
> Then the example at devicetree/bindings/mmc/ti-omap-hsmmc.txt
> is wrong. There explicitly is only one pin given for the idle case. Are
> all the numbers for pins and irq in the patch correct?

I check tomorrow.

> I would think
> that unspecified things keep their state.

But only if the block does not contain the one that is switched.
At least that is what I had found out for similar experiments.

> If that would not be the case
> mmc2 would not work at all with standard setup.

There could be some gpio/pinmux warnings in dmesg.

> I will have a look at
> pinctrl debugfs.

You could also try to devmem2 the pinmux registers to see 
which value they have.

BR,
Nikolaus



More information about the Letux-kernel mailing list