Lines Matching refs:pdev

67 static void dw_i2c_acpi_params(struct platform_device *pdev, char method[],  in dw_i2c_acpi_params()  argument
71 acpi_handle handle = ACPI_HANDLE(&pdev->dev); in dw_i2c_acpi_params()
93 static int dw_i2c_acpi_configure(struct platform_device *pdev) in dw_i2c_acpi_configure() argument
95 struct dw_i2c_dev *dev = platform_get_drvdata(pdev); in dw_i2c_acpi_configure()
106 dw_i2c_acpi_params(pdev, "SSCN", &dev->ss_hcnt, &dev->ss_lcnt, NULL); in dw_i2c_acpi_configure()
107 dw_i2c_acpi_params(pdev, "FMCN", &dev->fs_hcnt, &dev->fs_lcnt, in dw_i2c_acpi_configure()
110 id = acpi_match_device(pdev->dev.driver->acpi_match_table, &pdev->dev); in dw_i2c_acpi_configure()
129 static inline int dw_i2c_acpi_configure(struct platform_device *pdev) in dw_i2c_acpi_configure() argument
135 static int dw_i2c_plat_probe(struct platform_device *pdev) in dw_i2c_plat_probe() argument
144 irq = platform_get_irq(pdev, 0); in dw_i2c_plat_probe()
148 dev = devm_kzalloc(&pdev->dev, sizeof(struct dw_i2c_dev), GFP_KERNEL); in dw_i2c_plat_probe()
152 mem = platform_get_resource(pdev, IORESOURCE_MEM, 0); in dw_i2c_plat_probe()
153 dev->base = devm_ioremap_resource(&pdev->dev, mem); in dw_i2c_plat_probe()
157 dev->dev = &pdev->dev; in dw_i2c_plat_probe()
159 platform_set_drvdata(pdev, dev); in dw_i2c_plat_probe()
164 if (has_acpi_companion(&pdev->dev)) { in dw_i2c_plat_probe()
165 dw_i2c_acpi_configure(pdev); in dw_i2c_plat_probe()
166 } else if (pdev->dev.of_node) { in dw_i2c_plat_probe()
167 of_property_read_u32(pdev->dev.of_node, in dw_i2c_plat_probe()
170 of_property_read_u32(pdev->dev.of_node, in dw_i2c_plat_probe()
173 of_property_read_u32(pdev->dev.of_node, in dw_i2c_plat_probe()
177 of_property_read_u32(pdev->dev.of_node, "clock-frequency", in dw_i2c_plat_probe()
184 dev_err(&pdev->dev, "Only 100kHz and 400kHz supported"); in dw_i2c_plat_probe()
188 pdata = dev_get_platdata(&pdev->dev); in dw_i2c_plat_probe()
211 dev->clk = devm_clk_get(&pdev->dev, NULL); in dw_i2c_plat_probe()
229 dev->adapter.nr = pdev->id; in dw_i2c_plat_probe()
235 ACPI_COMPANION_SET(&adap->dev, ACPI_COMPANION(&pdev->dev)); in dw_i2c_plat_probe()
236 adap->dev.of_node = pdev->dev.of_node; in dw_i2c_plat_probe()
239 pm_runtime_forbid(&pdev->dev); in dw_i2c_plat_probe()
241 pm_runtime_set_autosuspend_delay(&pdev->dev, 1000); in dw_i2c_plat_probe()
242 pm_runtime_use_autosuspend(&pdev->dev); in dw_i2c_plat_probe()
243 pm_runtime_set_active(&pdev->dev); in dw_i2c_plat_probe()
244 pm_runtime_enable(&pdev->dev); in dw_i2c_plat_probe()
249 pm_runtime_disable(&pdev->dev); in dw_i2c_plat_probe()
254 static int dw_i2c_plat_remove(struct platform_device *pdev) in dw_i2c_plat_remove() argument
256 struct dw_i2c_dev *dev = platform_get_drvdata(pdev); in dw_i2c_plat_remove()
258 pm_runtime_get_sync(&pdev->dev); in dw_i2c_plat_remove()
264 pm_runtime_dont_use_autosuspend(&pdev->dev); in dw_i2c_plat_remove()
265 pm_runtime_put_sync(&pdev->dev); in dw_i2c_plat_remove()
267 pm_runtime_disable(&pdev->dev); in dw_i2c_plat_remove()
299 struct platform_device *pdev = to_platform_device(dev); in dw_i2c_plat_suspend() local
300 struct dw_i2c_dev *i_dev = platform_get_drvdata(pdev); in dw_i2c_plat_suspend()
310 struct platform_device *pdev = to_platform_device(dev); in dw_i2c_plat_resume() local
311 struct dw_i2c_dev *i_dev = platform_get_drvdata(pdev); in dw_i2c_plat_resume()