Commit 852ff5fe authored by David Woods's avatar David Woods Committed by Ulf Hansson
Browse files

mmc: dw_mmc: Use device_property_read instead of of_property_read



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: default avatarDavid Woods <dwoods@mellanox.com>
Reviewed-by: default avatarChris Metcalf <cmetcalf@mellanox.com>
Cc: stable@vger.linux.org
Acked-by: default avatarJaehoon Chung <jh80.chung@samsung.com>
Signed-off-by: default avatarUlf Hansson <ulf.hansson@linaro.org>
parent 55d4d1e3
Loading
Loading
Loading
Loading
+12 −12
Original line number Diff line number Diff line
@@ -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) {