static int __init mipi_dsi_driver_init(void) { int ret; amp_pclk = clk_get(NULL, "amp_pclk"); if (IS_ERR(amp_pclk)) { printk(KERN_ERR "can't find amp_pclk\n"); return PTR_ERR(amp_pclk); } dsi_m_pclk = clk_get(NULL, "dsi_m_pclk"); if (IS_ERR(dsi_m_pclk)) { printk(KERN_ERR "can't find dsi_m_pclk\n"); return PTR_ERR(dsi_m_pclk); } dsi_byte_div_clk = clk_get(NULL, "dsi_byte_div_clk"); if (IS_ERR(dsi_byte_div_clk)) { printk(KERN_ERR "can't find dsi_byte_div_clk\n"); return PTR_ERR(dsi_byte_div_clk); } dsi_esc_clk = clk_get(NULL, "dsi_esc_clk"); if (IS_ERR(dsi_esc_clk)) { printk(KERN_ERR "can't find dsi_byte_div_clk\n"); return PTR_ERR(dsi_byte_div_clk); } ret = mipi_dsi_register_driver(); device_initialize(&dsi_dev); if (ret) { clk_disable(amp_pclk); clk_put(amp_pclk); clk_disable(dsi_m_pclk); clk_put(dsi_m_pclk); clk_disable(dsi_byte_div_clk); clk_put(dsi_byte_div_clk); clk_disable(dsi_esc_clk); clk_put(dsi_esc_clk); printk(KERN_ERR "mipi_dsi_register_driver() failed!\n"); return ret; } return ret; }
static int __init mipi_dsi_driver_init(void) { int ret; mipi_dsi_init(); ret = mipi_dsi_register_driver(); device_initialize(&dsi_dev); if (ret) { pr_err("mipi_dsi_register_driver() failed!\n"); return ret; } return ret; }