diff options
Diffstat (limited to 'recipes-kernel/linux/linux-at91-4.9.87/mtr/fix-atmel-mci-reg-overloading.patch')
-rw-r--r-- | recipes-kernel/linux/linux-at91-4.9.87/mtr/fix-atmel-mci-reg-overloading.patch | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/recipes-kernel/linux/linux-at91-4.9.87/mtr/fix-atmel-mci-reg-overloading.patch b/recipes-kernel/linux/linux-at91-4.9.87/mtr/fix-atmel-mci-reg-overloading.patch new file mode 100644 index 0000000..f5b844c --- /dev/null +++ b/recipes-kernel/linux/linux-at91-4.9.87/mtr/fix-atmel-mci-reg-overloading.patch @@ -0,0 +1,19 @@ +diff --git a/drivers/mmc/host/atmel-mci.c b/drivers/mmc/host/atmel-mci.c +index 0ad8ef56..e288f423 100644 +--- a/drivers/mmc/host/atmel-mci.c ++++ b/drivers/mmc/host/atmel-mci.c +@@ -673,8 +673,12 @@ atmci_of_init(struct platform_device *pdev) + } + + for_each_child_of_node(np, cnp) { +- if (of_property_read_u32(cnp, "reg", &slot_id)) { +- dev_warn(&pdev->dev, "reg property is missing for %s\n", ++ /* Multi-Tech patch here. The original driver went through each child ++ device, and interprets 'reg' as slot ID. All other devices treat 'reg' ++ as function. We correct the driver here to take a 'slot-id' parameter ++ from OF for slot. MN */ ++ if (of_property_read_u32(cnp, "slot-id", &slot_id)) { ++ dev_warn(&pdev->dev, "slot-id property is missing for %s\n", + cnp->full_name); + continue; + } |