[Letux-kernel] omap_hsmmc_init/omap_hsmmc_late_init

Grazvydas Ignotas notasas at gmail.com
Sun Sep 10 15:35:38 CEST 2017


On Fri, Sep 8, 2017 at 7:50 PM, H. Nikolaus Schaller <hns at goldelico.com> wrote:
>> Am 08.09.2017 um 18:00 schrieb Tony Lindgren <tony at atomide.com>:
>> Hmm it might be possible to just init the MMC_QUIRK_NONSTD_SDIO
>> in omap_hsmmc.c driver directly based on a custom compatible
>> like "ti,omap4-hsmmc-wl1251".
>
> Ah, that could be a simple addition. We do have others like
> ti,non-removable or ti,needs-special-reset.
>
>> But maybe there's some better
>> solution that would be more future proof with the SDHCI driver
>> work progressing nicely.
>>
>> Anyways, getting rid of the platform_data for hsmmc sure
>> would make things simpler.
>
> To me it looks as if the key activity which makes it non-standard
> is to call pandora_wl1251_init_card() after starting sdio.
>
> And registering the wl1251 platform driver without DT (sdio subnode
> support).
>
> @notaz: what is your opinions?

The reason NONSTD_SDIO was needed is because wl1251 lacks standard
SDIO registers that identify the chip and it's SDIO functions (only
later TI chips have that). There was no way to pass that data through
DT, so mmc3 was disabled in DT and started through platform_data with
the data passed through using a quirk.

I haven't followed the development for years now, so have no idea how
to solve it best in current kernel. As there are no mainline users
(nobody noticed the breakage for more than a year) and it's broken
without a known fix, it might make sense to just remove wl1251
support.

Gražvydas


More information about the Letux-kernel mailing list