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; }