Lines Matching refs:aemif
179 struct aemif_device *aemif = platform_get_drvdata(pdev); in aemif_config_abus() local
180 struct aemif_cs_data *data = &aemif->cs_data[csnum]; in aemif_config_abus()
182 unsigned long clk_rate = aemif->clk_rate; in aemif_config_abus()
186 offset = A1CR_OFFSET + (data->cs - aemif->cs_offset) * 4; in aemif_config_abus()
212 val = readl(aemif->base + offset); in aemif_config_abus()
215 writel(val, aemif->base + offset); in aemif_config_abus()
236 struct aemif_device *aemif = platform_get_drvdata(pdev); in aemif_get_hw_params() local
237 struct aemif_cs_data *data = &aemif->cs_data[csnum]; in aemif_get_hw_params()
238 unsigned long clk_rate = aemif->clk_rate; in aemif_get_hw_params()
241 offset = A1CR_OFFSET + (data->cs - aemif->cs_offset) * 4; in aemif_get_hw_params()
242 val = readl(aemif->base + offset); in aemif_get_hw_params()
267 struct aemif_device *aemif = platform_get_drvdata(pdev); in of_aemif_parse_abus_config() local
277 if (cs - aemif->cs_offset >= NUM_CS || cs < aemif->cs_offset) { in of_aemif_parse_abus_config()
282 if (aemif->num_cs >= NUM_CS) { in of_aemif_parse_abus_config()
287 data = &aemif->cs_data[aemif->num_cs]; in of_aemif_parse_abus_config()
291 aemif_get_hw_params(pdev, aemif->num_cs++); in of_aemif_parse_abus_config()
338 struct aemif_device *aemif; in aemif_probe() local
342 aemif = devm_kzalloc(dev, sizeof(*aemif), GFP_KERNEL); in aemif_probe()
343 if (!aemif) in aemif_probe()
349 platform_set_drvdata(pdev, aemif); in aemif_probe()
351 aemif->clk = devm_clk_get(dev, NULL); in aemif_probe()
352 if (IS_ERR(aemif->clk)) { in aemif_probe()
354 return PTR_ERR(aemif->clk); in aemif_probe()
357 ret = clk_prepare_enable(aemif->clk); in aemif_probe()
361 aemif->clk_rate = clk_get_rate(aemif->clk) / MSEC_PER_SEC; in aemif_probe()
364 aemif->cs_offset = 2; in aemif_probe()
366 aemif->cs_offset = pdata->cs_offset; in aemif_probe()
369 aemif->base = devm_ioremap_resource(dev, res); in aemif_probe()
370 if (IS_ERR(aemif->base)) { in aemif_probe()
371 ret = PTR_ERR(aemif->base); in aemif_probe()
388 for (i = 0; i < pdata->num_abus_data; i++, aemif->num_cs++) { in aemif_probe()
389 aemif->cs_data[i].cs = pdata->abus_data[i].cs; in aemif_probe()
394 for (i = 0; i < aemif->num_cs; i++) { in aemif_probe()
398 aemif->cs_data[i].cs); in aemif_probe()
427 clk_disable_unprepare(aemif->clk); in aemif_probe()
433 struct aemif_device *aemif = platform_get_drvdata(pdev); in aemif_remove() local
435 clk_disable_unprepare(aemif->clk); in aemif_remove()