Lines Matching defs:hpriv
32 int (*plat_config)(struct ahci_host_priv *hpriv);
36 static void ahci_mvebu_mbus_config(struct ahci_host_priv *hpriv,
42 writel(0, hpriv->mmio + AHCI_WINDOW_CTRL(i));
43 writel(0, hpriv->mmio + AHCI_WINDOW_BASE(i));
44 writel(0, hpriv->mmio + AHCI_WINDOW_SIZE(i));
52 hpriv->mmio + AHCI_WINDOW_CTRL(i));
53 writel(cs->base >> 16, hpriv->mmio + AHCI_WINDOW_BASE(i));
55 hpriv->mmio + AHCI_WINDOW_SIZE(i));
59 static void ahci_mvebu_regret_option(struct ahci_host_priv *hpriv)
66 writel(0x4, hpriv->mmio + AHCI_VENDOR_SPECIFIC_0_ADDR);
67 writel(0x80, hpriv->mmio + AHCI_VENDOR_SPECIFIC_0_DATA);
70 static int ahci_mvebu_armada_380_config(struct ahci_host_priv *hpriv)
77 ahci_mvebu_mbus_config(hpriv, dram);
81 ahci_mvebu_regret_option(hpriv);
86 static int ahci_mvebu_armada_3700_config(struct ahci_host_priv *hpriv)
90 writel(0, hpriv->mmio + AHCI_VENDOR_SPECIFIC_0_ADDR);
92 reg = readl(hpriv->mmio + AHCI_VENDOR_SPECIFIC_0_DATA);
94 writel(reg, hpriv->mmio + AHCI_VENDOR_SPECIFIC_0_DATA);
162 struct ahci_host_priv *hpriv = host->private_data;
163 const struct ahci_mvebu_plat_data *pdata = hpriv->plat_data;
165 pdata->plat_config(hpriv);
188 struct ahci_host_priv *hpriv;
195 hpriv = ahci_platform_get_resources(pdev, 0);
196 if (IS_ERR(hpriv))
197 return PTR_ERR(hpriv);
199 hpriv->flags |= pdata->flags;
200 hpriv->plat_data = (void *)pdata;
202 rc = ahci_platform_enable_resources(hpriv);
206 hpriv->stop_engine = ahci_mvebu_stop_engine;
208 rc = pdata->plat_config(hpriv);
212 rc = ahci_platform_init_host(pdev, hpriv, &ahci_mvebu_port_info,
220 ahci_platform_disable_resources(hpriv);