Loading drivers/gpu/drm/msm/dsi-staging/dsi_display.c +6 −0 Original line number Diff line number Diff line Loading @@ -3027,6 +3027,12 @@ int dsi_display_prepare(struct dsi_display *display) return rc; } int dsi_display_pre_kickoff(struct dsi_display *display, struct msm_display_kickoff_params *params) { return 0; } int dsi_display_enable(struct dsi_display *display) { int rc = 0; Loading drivers/gpu/drm/msm/dsi-staging/dsi_display.h +10 −0 Original line number Diff line number Diff line Loading @@ -417,4 +417,14 @@ int dsi_display_set_backlight(void *display, u32 bl_lvl); * Return: error code */ int dsi_display_soft_reset(void *display); /* * dsi_display_pre_kickoff - program kickoff-time features * @display: Pointer to private display structure * @params: Parameters for kickoff-time programming * Returns: Zero on success */ int dsi_display_pre_kickoff(struct dsi_display *display, struct msm_display_kickoff_params *params); #endif /* _DSI_DISPLAY_H_ */ drivers/gpu/drm/msm/dsi-staging/dsi_drm.c +12 −0 Original line number Diff line number Diff line Loading @@ -475,6 +475,18 @@ enum drm_mode_status dsi_conn_mode_valid(struct drm_connector *connector, return MODE_OK; } int dsi_conn_pre_kickoff(struct drm_connector *connector, void *display, struct msm_display_kickoff_params *params) { if (!connector || !display || !params) { pr_err("Invalid params\n"); return -EINVAL; } return dsi_display_pre_kickoff(display, params); } struct dsi_bridge *dsi_drm_bridge_init(struct dsi_display *display, struct drm_device *dev, struct drm_encoder *encoder) Loading drivers/gpu/drm/msm/dsi-staging/dsi_drm.h +12 −1 Original line number Diff line number Diff line /* * Copyright (c) 2016, The Linux Foundation. All rights reserved. * Copyright (c) 2016-2017, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and Loading Loading @@ -80,4 +80,15 @@ struct dsi_bridge *dsi_drm_bridge_init(struct dsi_display *display, void dsi_drm_bridge_cleanup(struct dsi_bridge *bridge); /** * dsi_display_pre_kickoff - program kickoff-time features * @connector: Pointer to drm connector structure * @display: Pointer to private display structure * @params: Parameters for kickoff-time programming * Returns: Zero on success */ int dsi_conn_pre_kickoff(struct drm_connector *connector, void *display, struct msm_display_kickoff_params *params); #endif /* _DSI_DRM_H_ */ drivers/gpu/drm/msm/msm_drv.h +23 −0 Original line number Diff line number Diff line Loading @@ -363,6 +363,29 @@ struct msm_display_info { struct msm_compression_info comp_info; }; #define MSM_MAX_ROI 4 /** * struct msm_roi_mapping - Regions of interest structure for mapping CRTC to * Connector output * @num_rects: number of valid rectangles in src and dst arrays * @src: source roi rectangle * @dst: destination roi rectangle */ struct msm_roi_mapping { uint32_t num_rects; struct drm_clip_rect src[MSM_MAX_ROI]; struct drm_clip_rect dst[MSM_MAX_ROI]; }; /** * struct - msm_display_kickoff_params - info for display features at kickoff * @rois: Regions of interest structure for mapping CRTC to Connector output */ struct msm_display_kickoff_params { struct msm_roi_mapping *rois; }; /** * struct msm_drm_event - defines custom event notification struct * @base: base object required for event notification by DRM framework. Loading Loading
drivers/gpu/drm/msm/dsi-staging/dsi_display.c +6 −0 Original line number Diff line number Diff line Loading @@ -3027,6 +3027,12 @@ int dsi_display_prepare(struct dsi_display *display) return rc; } int dsi_display_pre_kickoff(struct dsi_display *display, struct msm_display_kickoff_params *params) { return 0; } int dsi_display_enable(struct dsi_display *display) { int rc = 0; Loading
drivers/gpu/drm/msm/dsi-staging/dsi_display.h +10 −0 Original line number Diff line number Diff line Loading @@ -417,4 +417,14 @@ int dsi_display_set_backlight(void *display, u32 bl_lvl); * Return: error code */ int dsi_display_soft_reset(void *display); /* * dsi_display_pre_kickoff - program kickoff-time features * @display: Pointer to private display structure * @params: Parameters for kickoff-time programming * Returns: Zero on success */ int dsi_display_pre_kickoff(struct dsi_display *display, struct msm_display_kickoff_params *params); #endif /* _DSI_DISPLAY_H_ */
drivers/gpu/drm/msm/dsi-staging/dsi_drm.c +12 −0 Original line number Diff line number Diff line Loading @@ -475,6 +475,18 @@ enum drm_mode_status dsi_conn_mode_valid(struct drm_connector *connector, return MODE_OK; } int dsi_conn_pre_kickoff(struct drm_connector *connector, void *display, struct msm_display_kickoff_params *params) { if (!connector || !display || !params) { pr_err("Invalid params\n"); return -EINVAL; } return dsi_display_pre_kickoff(display, params); } struct dsi_bridge *dsi_drm_bridge_init(struct dsi_display *display, struct drm_device *dev, struct drm_encoder *encoder) Loading
drivers/gpu/drm/msm/dsi-staging/dsi_drm.h +12 −1 Original line number Diff line number Diff line /* * Copyright (c) 2016, The Linux Foundation. All rights reserved. * Copyright (c) 2016-2017, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and Loading Loading @@ -80,4 +80,15 @@ struct dsi_bridge *dsi_drm_bridge_init(struct dsi_display *display, void dsi_drm_bridge_cleanup(struct dsi_bridge *bridge); /** * dsi_display_pre_kickoff - program kickoff-time features * @connector: Pointer to drm connector structure * @display: Pointer to private display structure * @params: Parameters for kickoff-time programming * Returns: Zero on success */ int dsi_conn_pre_kickoff(struct drm_connector *connector, void *display, struct msm_display_kickoff_params *params); #endif /* _DSI_DRM_H_ */
drivers/gpu/drm/msm/msm_drv.h +23 −0 Original line number Diff line number Diff line Loading @@ -363,6 +363,29 @@ struct msm_display_info { struct msm_compression_info comp_info; }; #define MSM_MAX_ROI 4 /** * struct msm_roi_mapping - Regions of interest structure for mapping CRTC to * Connector output * @num_rects: number of valid rectangles in src and dst arrays * @src: source roi rectangle * @dst: destination roi rectangle */ struct msm_roi_mapping { uint32_t num_rects; struct drm_clip_rect src[MSM_MAX_ROI]; struct drm_clip_rect dst[MSM_MAX_ROI]; }; /** * struct - msm_display_kickoff_params - info for display features at kickoff * @rois: Regions of interest structure for mapping CRTC to Connector output */ struct msm_display_kickoff_params { struct msm_roi_mapping *rois; }; /** * struct msm_drm_event - defines custom event notification struct * @base: base object required for event notification by DRM framework. Loading