int32_t sprdfb_dsi_resume(struct sprdfb_device *dev) { dsih_error_t result = OK; dsih_ctrl_t* dsi_instance = &(dsi_ctx.dsi_inst); dphy_t *phy = &(dsi_instance->phy_instance); struct info_mipi * mipi = dev->panel->info.mipi; printk(KERN_INFO "sprdfb: [%s], dev_id = %d\n",__FUNCTION__, dev->dev_id); #if 0 result = mipi_dsih_dphy_open(&(dsi_instance->phy_instance)); if(0 != result){ printk("Jessica: mipi_dsih_dphy_open fail!(%d)\n",result); } udelay(100); #endif // mipi_dsih_dphy_shutdown(&(dsi_instance->phy_instance), 1); mipi_dsih_hal_power(dsi_instance, 1); #if 0 result = mipi_dsih_dphy_configure(phy, mipi->lan_number, mipi->phy_feq); if(OK != result){ printk(KERN_ERR "sprdfb: [%s]: mipi_dsih_dphy_configure fail (%d)!\n", __FUNCTION__, result); return -1; } #endif return 0; }
int32_t sprdfb_dsi_suspend(struct sprdfb_device *dev) { dsih_ctrl_t* dsi_instance = &(dsi_ctx.dsi_inst); printk(KERN_INFO "[DISP] sprdfb: [%s], dev_id = %d\n",__FUNCTION__, dev->dev_id); mipi_dsih_hal_power(dsi_instance, 0); return 0; }
int32_t sprdfb_dsi_suspend(struct sprdfb_device *dev) { dsih_ctrl_t* dsi_instance = &(dsi_ctx.dsi_inst); printk(KERN_INFO "sprdfb: [%s], dev_id = %d\n",__FUNCTION__, dev->dev_id); // sprdfb_dsi_uninit(dev); // mipi_dsih_dphy_close(&(dsi_instance->phy_instance)); // mipi_dsih_dphy_shutdown(&(dsi_instance->phy_instance), 0); mipi_dsih_hal_power(dsi_instance, 0); return 0; }
/** * Close DSI Host driver * - Free up resources and shutdown host * @param instance pointer to structure holding the DSI Host core information * @return dsih_error_t */ dsih_error_t mipi_dsih_close(dsih_ctrl_t * instance) { if (instance == 0) { return ERR_DSI_INVALID_INSTANCE; } if (instance->status != INITIALIZED) { return ERR_DSI_INVALID_INSTANCE; } mipi_dsih_hal_power(instance, 0); return OK; }
/** * Shut down the DSI Host controller * @param instance pointer to structure holding the DSI Host core information * @param shutdown (1) power up (0) */ void mipi_dsih_shutdown_controller(dsih_ctrl_t * instance, int shutdown) { mipi_dsih_hal_power(instance, !shutdown); }
/** * Reset the DSI Host controller * @param instance pointer to structure holding the DSI Host core information */ void mipi_dsih_reset_controller(dsih_ctrl_t * instance) { mipi_dsih_hal_power(instance, 0); mipi_dsih_hal_power(instance, 1); }