Lines Matching refs:imx6_pcie

32 #define to_imx6_pcie(x)	container_of(x, struct imx6_pcie, pp)
34 struct imx6_pcie { struct
214 struct imx6_pcie *imx6_pcie = to_imx6_pcie(pp); in imx6_pcie_assert_core_reset() local
228 regmap_read(imx6_pcie->iomuxc_gpr, IOMUXC_GPR1, &gpr1); in imx6_pcie_assert_core_reset()
229 regmap_read(imx6_pcie->iomuxc_gpr, IOMUXC_GPR12, &gpr12); in imx6_pcie_assert_core_reset()
238 regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR12, in imx6_pcie_assert_core_reset()
242 regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR1, in imx6_pcie_assert_core_reset()
244 regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR1, in imx6_pcie_assert_core_reset()
252 struct imx6_pcie *imx6_pcie = to_imx6_pcie(pp); in imx6_pcie_deassert_core_reset() local
255 ret = clk_prepare_enable(imx6_pcie->pcie_phy); in imx6_pcie_deassert_core_reset()
261 ret = clk_prepare_enable(imx6_pcie->pcie_bus); in imx6_pcie_deassert_core_reset()
267 ret = clk_prepare_enable(imx6_pcie->pcie); in imx6_pcie_deassert_core_reset()
274 regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR1, in imx6_pcie_deassert_core_reset()
283 regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR1, in imx6_pcie_deassert_core_reset()
290 if (gpio_is_valid(imx6_pcie->reset_gpio)) { in imx6_pcie_deassert_core_reset()
291 gpio_set_value(imx6_pcie->reset_gpio, 0); in imx6_pcie_deassert_core_reset()
293 gpio_set_value(imx6_pcie->reset_gpio, 1); in imx6_pcie_deassert_core_reset()
298 clk_disable_unprepare(imx6_pcie->pcie_bus); in imx6_pcie_deassert_core_reset()
300 clk_disable_unprepare(imx6_pcie->pcie_phy); in imx6_pcie_deassert_core_reset()
308 struct imx6_pcie *imx6_pcie = to_imx6_pcie(pp); in imx6_pcie_init_phy() local
310 regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR12, in imx6_pcie_init_phy()
314 regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR12, in imx6_pcie_init_phy()
316 regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR12, in imx6_pcie_init_phy()
319 regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR8, in imx6_pcie_init_phy()
321 regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR8, in imx6_pcie_init_phy()
323 regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR8, in imx6_pcie_init_phy()
325 regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR8, in imx6_pcie_init_phy()
327 regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR8, in imx6_pcie_init_phy()
374 struct imx6_pcie *imx6_pcie = to_imx6_pcie(pp); in imx6_pcie_establish_link() local
389 regmap_update_bits(imx6_pcie->iomuxc_gpr, IOMUXC_GPR12, in imx6_pcie_establish_link()
562 struct imx6_pcie *imx6_pcie; in imx6_pcie_probe() local
568 imx6_pcie = devm_kzalloc(&pdev->dev, sizeof(*imx6_pcie), GFP_KERNEL); in imx6_pcie_probe()
569 if (!imx6_pcie) in imx6_pcie_probe()
572 pp = &imx6_pcie->pp; in imx6_pcie_probe()
585 imx6_pcie->reset_gpio = of_get_named_gpio(np, "reset-gpio", 0); in imx6_pcie_probe()
586 if (gpio_is_valid(imx6_pcie->reset_gpio)) { in imx6_pcie_probe()
587 ret = devm_gpio_request_one(&pdev->dev, imx6_pcie->reset_gpio, in imx6_pcie_probe()
596 imx6_pcie->pcie_phy = devm_clk_get(&pdev->dev, "pcie_phy"); in imx6_pcie_probe()
597 if (IS_ERR(imx6_pcie->pcie_phy)) { in imx6_pcie_probe()
600 return PTR_ERR(imx6_pcie->pcie_phy); in imx6_pcie_probe()
603 imx6_pcie->pcie_bus = devm_clk_get(&pdev->dev, "pcie_bus"); in imx6_pcie_probe()
604 if (IS_ERR(imx6_pcie->pcie_bus)) { in imx6_pcie_probe()
607 return PTR_ERR(imx6_pcie->pcie_bus); in imx6_pcie_probe()
610 imx6_pcie->pcie = devm_clk_get(&pdev->dev, "pcie"); in imx6_pcie_probe()
611 if (IS_ERR(imx6_pcie->pcie)) { in imx6_pcie_probe()
614 return PTR_ERR(imx6_pcie->pcie); in imx6_pcie_probe()
618 imx6_pcie->iomuxc_gpr = in imx6_pcie_probe()
620 if (IS_ERR(imx6_pcie->iomuxc_gpr)) { in imx6_pcie_probe()
622 return PTR_ERR(imx6_pcie->iomuxc_gpr); in imx6_pcie_probe()
629 platform_set_drvdata(pdev, imx6_pcie); in imx6_pcie_probe()
635 struct imx6_pcie *imx6_pcie = platform_get_drvdata(pdev); in imx6_pcie_shutdown() local
638 imx6_pcie_assert_core_reset(&imx6_pcie->pp); in imx6_pcie_shutdown()