int __init dpi_init_port(struct platform_device *pdev, struct device_node *port) { struct device_node *ep; u32 datalines; int r; ep = omapdss_of_get_next_endpoint(port, NULL); if (!ep) return 0; r = of_property_read_u32(ep, "data-lines", &datalines); if (r) { DSSERR("failed to parse datalines\n"); goto err_datalines; } dpi.data_lines = datalines; of_node_put(ep); dpi.pdev = pdev; mutex_init(&dpi.lock); dpi_init_output(pdev); dpi.port_initialized = true; return 0; err_datalines: of_node_put(ep); return r; }
static int omap_dpi_probe(struct platform_device *pdev) { dpi.pdev = pdev; mutex_init(&dpi.lock); dpi_init_output(pdev); return 0; }
static int __init omap_dpi_probe(struct platform_device *pdev) { mutex_init(&dpi.lock); dpi_init_output(pdev); dpi_probe_pdata(pdev); return 0; }
static int omap_dpi_probe(struct platform_device *pdev) { int r; mutex_init(&dpi.lock); dpi_init_output(pdev); r = dpi_probe_pdata(pdev); if (r) { dpi_uninit_output(pdev); return r; } return 0; }