I have an Intel Cherry-Trail based tablet which runs a 4.13 kernel without issue. It has two devices bound to sdhci-acpi - an internal 32GB eMMC (mmc0) and an SD card slot (mmc1).
Booting on 4.16-rc series kernels results in an error -22 on loading sdhci-acpi and so the eMMC is not available and the machine cannot get past the initramfs.
I have tracked this issue down to commit 1b7ba57ecc864173ef42fff7f8c2e9a880b42bd2 :
"mmc: sdhci-acpi: Handle return value of platform_get_irq"
Reverting this change and replacing it with a dev_err to log host->irq reveals that host->irq is being set to zero - however the eMMC works fine despite the apparent lack of IRQ - the machine continues to boot normally and is perfectly usable.
Under the working 4.13 kernel, both mmc0 and mmc1 are listed as using "ADMA" transfer - /proc/interrupts reveals that mmc1 (the slot) does have an interrupt but mmc0 (the on-board eMMC) doesn't.
Is is possible for the eMMC to not require an interrupt? It appears to function fine without one on both the 4.13 kernel and the patched 4.16-rc kernel.
JFYI: I added this report to the list of regressions in 4.16.
A lot of kernel developer do not use bugzilla, thus you shoul report your issue by mail. Best way in this case: Contact the developers that handled 1b7ba57ecc864173ef42fff7f8c2e9a880b42bd2:
Signed-off-by: Arvind Yadav <email@example.com>
Acked-by: Adrian Hunter <firstname.lastname@example.org>
Signed-off-by: Ulf Hansson <email@example.com>
Also CC lkml and firstname.lastname@example.org please.
Created attachment 274833 [details]
Created attachment 274835 [details]
Created attachment 274837 [details]
grep -H . /sys/kernel/irq/0/*
A patch to fix this has been applied to the linux-mmc fixes branch, commit d58ac803cfbb92ede501409dd6afe9abb111d4f1 - "mmc: sdhci-acpi: Fix IRQ 0". I will test this patch (to double-check) in the next day or two.
d58ac803cfbb92ede501409dd6afe9abb111d4f1 verified on the tablet in question.