On 9/15/2016, Geert Uytterhoeven wrote:
> > + interrupts = <GIC_SPI 268 IRQ_TYPE_LEVEL_HIGH
> > + GIC_SPI 269 IRQ_TYPE_LEVEL_HIGH>;
> The bindings do not say anything about interrupts (hence that should be
I'm sorry, I'm confused...
Are you saying:
A) I forgot to add something?
B) As a general statement, the renesas,mmcif.txt file doesn't say anything
> The driver handles either 1 combined or 2 separate interrupts.
> The datasheet says MMC has 3 interrupt requests, though?
The IP itself has 3 interrupts:
#1. MMC0,299: Card detect
#2. MMC1,300: Status Change
#3. MMC2,301: Error
Many of the 'Linux' SoC devices that use this MMC (SH4, R-Car) are only ever
going to use eMMC, so the card detection portion of the IP was irrelevant. I
agree this is the same case for the RZ/A (who would ever use an MMC card now a
The 'smaller' SoCs kept it in (SH2A, RZ/A1) but the 'bigger' SoCs left it out
The only way to enable that interrupt is to write to the CE_DETECT register
(offset 0x70) which the driver doesn't do.
However....if you look in sh_mmcif.h, you'll see that same offset (0x70) is
#define MMCIF_CE_CLK_CTRL2 0x00000070
Which it only writes to if 'clk_ctrl2_enable' is designated.
sh_mmcif_writel(host->addr, MMCIF_CE_CLK_CTRL2, 0x0F0F0000);
And, I see no Renesas SoC that ever sets that or would ever use it so I can't
even tell you what SoC that was for (SH4, SH-Mobile, ARM)
So after all that ranting...I see no need to support card detect for MMC for
the RZ/A (or any future RZ) so I'd like to just leave it as is.
Do you agree?