mmc: dw_mmc: Use device_property_read instead of of_property_read
authorDavid Woods <dwoods@mellanox.com>
Fri, 26 May 2017 21:53:20 +0000 (17:53 -0400)
committerUlf Hansson <ulf.hansson@linaro.org>
Tue, 20 Jun 2017 08:30:29 +0000 (10:30 +0200)
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 <dwoods@mellanox.com>
Reviewed-by: Chris Metcalf <cmetcalf@mellanox.com>
Cc: stable@vger.linux.org
Acked-by: Jaehoon Chung <jh80.chung@samsung.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
drivers/mmc/host/dw_mmc.c

index 0e2d6f7de469cb27afc65ba8f710cbeaaa96de91..4a0841cee39b83b895a09ee0b5bb22e77075fcd8 100644 (file)
@@ -2723,8 +2723,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 {
@@ -2828,7 +2828,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]
@@ -2889,8 +2888,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;
@@ -2957,7 +2957,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;
@@ -2974,20 +2973,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) {