static int vfe_7x_init(struct msm_vfe_resp *presp, struct platform_device *dev) { int rc = 0; init_waitqueue_head(&stopevent.wait); stopevent.timeout = 200; stopevent.state = 0; if (presp && presp->vfe_resp) resp = presp; else{ CDBG_ERR("vfe_7k_init:fail here presp :0x%p presp->vfe_resp:0x%p\n", presp, presp->vfe_resp); return -EFAULT; } /* Bring up all the required GPIOs and Clocks */ rc = msm_camio_enable(dev); if (rc < 0){ CDBG_ERR("vfe_7k_init:msm_camio_enable fail\n"); return rc; } msm_camio_camif_pad_reg_reset(); extlen = sizeof(struct vfe_frame_extra); extdata = kmalloc(extlen, GFP_ATOMIC); if (!extdata) { rc = -ENOMEM; goto init_fail; } rc = msm_adsp_get("QCAMTASK", &qcam_mod, &vfe_7x_sync, NULL); if (rc) { rc = -EBUSY; CDBG_ERR("vfe_7k_init:faile here %d\n",__LINE__); goto get_qcam_fail; } rc = msm_adsp_get("VFETASK", &vfe_mod, &vfe_7x_sync, NULL); if (rc) { rc = -EBUSY; CDBG_ERR("vfe_7k_init:faile here %d\n",__LINE__); goto get_vfe_fail; } return 0; get_vfe_fail: msm_adsp_put(qcam_mod); get_qcam_fail: kfree(extdata); init_fail: extlen = 0; return rc; }
static int vfe_init(struct msm_vfe_callback *presp, struct platform_device *dev) { int rc = 0; rc = vfe_cmd_init(presp, dev, vfe_syncdata); if (rc < 0) return rc; /* Bring up all the required GPIOs and Clocks */ return msm_camio_enable(dev); }
static int vfe_init(struct msm_vfe_callback *presp, struct platform_device *dev) { int rc = 0; rc = vfe_cmd_init(presp, dev, vfe_syncdata); if (rc < 0) return rc; return msm_camio_enable(dev); }
static int vfe_init(struct msm_vfe_callback *presp, struct platform_device *dev) { int rc = 0; rc = vfe_cmd_init(presp, dev, vfe_syncdata); if (rc < 0) return rc; /* Bring up all the required GPIOs and Clocks */ rc = msm_camio_enable(dev); if (rc < 0) { return rc; } else { rc = request_axi_qos(); if (rc < 0) CDBG("request of axi qos failed\n"); } return rc; }
static int vfe_init(struct msm_vfe_callback *presp, struct platform_device *dev) { int rc = 0; ebi1_clk = clk_get(NULL, clk_name); if (!ebi1_clk) { pr_err("%s: could not get %s\n", __func__, clk_name); return -EIO; } rc = clk_set_rate(ebi1_clk, 128000000); if (rc < 0) { pr_err("%s: clk_set_rate(%s) failed: %d\n", __func__, clk_name, rc); return rc; } rc = vfe_cmd_init(presp, dev, vfe_syncdata); if (rc < 0) return rc; /* Bring up all the required GPIOs and Clocks */ return msm_camio_enable(dev); }