+//zyc
+static void request_cmmb_gpio()
+{
+#if 0
+ int ret;
+ ret = gpio_request(CMMB_1186_POWER_RESET, NULL);
+ if (ret) {
+ printk("%s:failed to request CMMB_1186_POWER_RESET\n",__FUNCTION__);
+ //return ret;
+ }
+
+ ret = gpio_request(CMMB_1186_POWER_DOWN, NULL);
+ if (ret) {
+ printk("%s:failed to request CMMB_1186_POWER_DOWN\n",__FUNCTION__);
+ //return ret;
+ }
+
+
+ ret = gpio_request(CMMB_1186_POWER_ENABLE, NULL);
+ if (ret) {
+ printk("%s:failed to request CMMB_1186_POWER_ENABLE\n",__FUNCTION__);
+ //return ret;
+ }
+
+ rk2818_mux_api_set(GPIOA6_FLASHCS2_SEL_NAME, 0);
+ ret = gpio_request(CMMB_1186_SPIIRQ,"cmmb irq");
+ if (ret) {
+ //dev_err(&pdev->dev, "failed to request play key gpio\n");
+ //goto free_gpio;
+ printk("gpio request error\n");
+ }
+
+ //ret = request_gpio_irq(CMMB_1186_SPIIRQ, spibus_interrupt, GPIOEdgelRising, spiphy_dev);//
+ gpio_pull_updown(CMMB_1186_SPIIRQ,GPIOPullUp);
+ printk("leave the request_cmmb_gpio\n");
+ #endif
+
+ int ret;
+
+ if(cmmb_io_ctrl)
+ {
+ ret = gpio_request(cmmb_io_ctrl->cmmb_pw_rst, NULL);
+ if (ret) {
+ printk("%s:failed to request CMMB_1186_POWER_RESET\n",__FUNCTION__);
+ //return ret;
+ }
+
+ ret = gpio_request(cmmb_io_ctrl->cmmb_pw_dwn, NULL);
+ if (ret) {
+ printk("%s:failed to request CMMB_1186_POWER_DOWN\n",__FUNCTION__);
+ //return ret;
+ }
+
+
+ ret = gpio_request(cmmb_io_ctrl->cmmb_pw_en, NULL);
+ if (ret) {
+ printk("%s:failed to request CMMB_1186_POWER_ENABLE\n",__FUNCTION__);
+ //return ret;
+ }
+
+ rk2818_mux_api_set(GPIOA6_FLASHCS2_SEL_NAME, 0);
+ ret = gpio_request(cmmb_io_ctrl->cmmb_irq,"cmmb irq");
+ if (ret) {
+ //dev_err(&pdev->dev, "failed to request play key gpio\n");
+ //goto free_gpio;
+ printk("gpio request error\n");
+ }
+
+ //ret = request_gpio_irq(CMMB_1186_SPIIRQ, spibus_interrupt, GPIOEdgelRising, spiphy_dev);//
+ gpio_pull_updown(cmmb_io_ctrl->cmmb_irq,GPIOPullUp);
+ printk("leave the request_cmmb_gpio\n");
+ }
+
+}
+
+static void release_cmmb_gpio()
+{
+ if(cmmb_io_ctrl)
+ {
+ gpio_free(cmmb_io_ctrl->cmmb_pw_rst);
+ gpio_free(cmmb_io_ctrl->cmmb_pw_dwn);
+ gpio_free(cmmb_io_ctrl->cmmb_pw_en);
+ gpio_free(cmmb_io_ctrl->cmmb_irq);
+ cmmb_io_ctrl = NULL;
+ printk("leave the release_cmmb_gpio\n");
+ }
+
+
+}
+