Using the device_property interfaces allows the dw_mmc driver to work
on platforms which run on either device tree or ACPI.

Signed-off-by: David Woods <dwo...@mellanox.com>
Reviewed-by: Chris Metcalf <cmetc...@mellanox.com>
Cc: sta...@vger.linux.org
---
 drivers/mmc/host/dw_mmc.c | 24 ++++++++++++------------
 1 file changed, 12 insertions(+), 12 deletions(-)

diff --git a/drivers/mmc/host/dw_mmc.c b/drivers/mmc/host/dw_mmc.c
index e45129f..efde0f2 100644
--- a/drivers/mmc/host/dw_mmc.c
+++ b/drivers/mmc/host/dw_mmc.c
@@ -2707,8 +2707,8 @@ static int dw_mci_init_slot(struct dw_mci *host, unsigned 
int id)
        host->slot[id] = slot;
 
        mmc->ops = &dw_mci_ops;
-       if (of_property_read_u32_array(host->dev->of_node,
-                                      "clock-freq-min-max", freq, 2)) {
+       if (device_property_read_u32_array(host->dev, "clock-freq-min-max",
+                                          freq, 2)) {
                mmc->f_min = DW_MCI_FREQ_MIN;
                mmc->f_max = DW_MCI_FREQ_MAX;
        } else {
@@ -2808,7 +2808,6 @@ static void dw_mci_init_dma(struct dw_mci *host)
 {
        int addr_config;
        struct device *dev = host->dev;
-       struct device_node *np = dev->of_node;
 
        /*
        * Check tansfer mode from HCON[17:16]
@@ -2869,8 +2868,9 @@ static void dw_mci_init_dma(struct dw_mci *host)
                dev_info(host->dev, "Using internal DMA controller.\n");
        } else {
                /* TRANS_MODE_EDMAC: check dma bindings again */
-               if ((of_property_count_strings(np, "dma-names") < 0) ||
-                   (!of_find_property(np, "dmas", NULL))) {
+               if ((device_property_read_string_array(dev, "dma-names",
+                                                      NULL, 0) < 0) ||
+                   !device_property_present(dev, "dmas")) {
                        goto no_dma;
                }
                host->dma_ops = &dw_mci_edmac_ops;
@@ -2937,7 +2937,6 @@ static struct dw_mci_board *dw_mci_parse_dt(struct dw_mci 
*host)
 {
        struct dw_mci_board *pdata;
        struct device *dev = host->dev;
-       struct device_node *np = dev->of_node;
        const struct dw_mci_drv_data *drv_data = host->drv_data;
        int ret;
        u32 clock_frequency;
@@ -2954,20 +2953,21 @@ static struct dw_mci_board *dw_mci_parse_dt(struct 
dw_mci *host)
        }
 
        /* find out number of slots supported */
-       of_property_read_u32(np, "num-slots", &pdata->num_slots);
+       device_property_read_u32(dev, "num-slots", &pdata->num_slots);
 
-       if (of_property_read_u32(np, "fifo-depth", &pdata->fifo_depth))
+       if (device_property_read_u32(dev, "fifo-depth", &pdata->fifo_depth))
                dev_info(dev,
                         "fifo-depth property not found, using value of FIFOTH 
register as default\n");
 
-       of_property_read_u32(np, "card-detect-delay", &pdata->detect_delay_ms);
+       device_property_read_u32(dev, "card-detect-delay",
+                                &pdata->detect_delay_ms);
 
-       of_property_read_u32(np, "data-addr", &host->data_addr_override);
+       device_property_read_u32(dev, "data-addr", &host->data_addr_override);
 
-       if (of_get_property(np, "fifo-watermark-aligned", NULL))
+       if (device_property_present(dev, "fifo-watermark-aligned"))
                host->wm_aligned = true;
 
-       if (!of_property_read_u32(np, "clock-frequency", &clock_frequency))
+       if (!device_property_read_u32(dev, "clock-frequency", &clock_frequency))
                pdata->bus_hz = clock_frequency;
 
        if (drv_data && drv_data->parse_dt) {
-- 
2.7.2

Reply via email to