* [PATCH 0/4] Initial patches for MSM display update @ 2011-03-02 21:15 Carl Vanderlip 2011-03-02 21:16 ` [PATCH 1/4] video: msmfb: Put the partial update magic value into the fix_screen struct Carl Vanderlip ` (3 more replies) 0 siblings, 4 replies; 7+ messages in thread From: Carl Vanderlip @ 2011-03-02 21:15 UTC (permalink / raw) To: linux-arm-kernel These are the first series of a set of patches to update the MSM display drivers to support newer MDP versions and display modes (while also providing a base for future display development). The original source for these patches is the Google Android kernel tree located here: http://android.git.kernel.org/kernel/msm.git Arve Hjønnevåg (1): [ARM] msm_fb: Fix framebuffer console Dima Zavin (3): video: msmfb: Put the partial update magic value into the fix_screen struct. [ARM] msm: mdp: Add support for RGBX 8888 image format. [ARM] msm: mdp: Set the correct pack pattern for XRGB/ARGB drivers/video/msm/mdp_hw.h | 11 +++++++++-- drivers/video/msm/mdp_ppp.c | 1 + drivers/video/msm/msm_fb.c | 16 ++++++++++++++-- include/linux/msm_mdp.h | 1 + 4 files changed, 25 insertions(+), 4 deletions(-) -- Sent by an employee of the Qualcomm Innovation Center, Inc. The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum. ^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH 1/4] video: msmfb: Put the partial update magic value into the fix_screen struct. 2011-03-02 21:15 [PATCH 0/4] Initial patches for MSM display update Carl Vanderlip @ 2011-03-02 21:16 ` Carl Vanderlip 2011-03-02 21:17 ` [PATCH 2/4] [ARM] msm: mdp: Add support for RGBX 8888 image format Carl Vanderlip ` (2 subsequent siblings) 3 siblings, 0 replies; 7+ messages in thread From: Carl Vanderlip @ 2011-03-02 21:16 UTC (permalink / raw) To: linux-arm-kernel From: Dima Zavin <dima@android.com> This can then be tested by userspace to see if the capability is supported. Userspace cannot rely on that value being left in var_screen, since userspace itself can change it. Signed-off-by: Dima Zavin <dima@android.com> Signed-off-by: Carl Vanderlip <carlv@codeaurora.org> --- drivers/video/msm/msm_fb.c | 12 ++++++++++++ 1 files changed, 12 insertions(+), 0 deletions(-) diff --git a/drivers/video/msm/msm_fb.c b/drivers/video/msm/msm_fb.c index 5436aeb..fe5efe5 100644 --- a/drivers/video/msm/msm_fb.c +++ b/drivers/video/msm/msm_fb.c @@ -469,6 +469,18 @@ static void setup_fb_info(struct msmfb_info *msmfb) fb_info->var.yoffset = 0; if (msmfb->panel->caps & MSMFB_CAP_PARTIAL_UPDATES) { + /* + * Set the param in the fixed screen, so userspace can't + * change it. This will be used to check for the + * capability. + */ + fb_info->fix.reserved[0] = 0x5444; + fb_info->fix.reserved[1] = 0x5055; + + /* + * This preloads the value so that if userspace doesn't + * change it, it will be a full update + */ fb_info->var.reserved[0] = 0x54445055; fb_info->var.reserved[1] = 0; fb_info->var.reserved[2] = (uint16_t)msmfb->xres | -- Sent by an employee of the Qualcomm Innovation Center, Inc. The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum. ^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH 2/4] [ARM] msm: mdp: Add support for RGBX 8888 image format. 2011-03-02 21:15 [PATCH 0/4] Initial patches for MSM display update Carl Vanderlip 2011-03-02 21:16 ` [PATCH 1/4] video: msmfb: Put the partial update magic value into the fix_screen struct Carl Vanderlip @ 2011-03-02 21:17 ` Carl Vanderlip 2011-03-02 21:17 ` [PATCH 3/4] [ARM] msm_fb: Fix framebuffer console Carl Vanderlip 2011-03-02 21:18 ` [PATCH 4/4] [ARM] msm: mdp: Set the correct pack pattern for XRGB/ARGB Carl Vanderlip 3 siblings, 0 replies; 7+ messages in thread From: Carl Vanderlip @ 2011-03-02 21:17 UTC (permalink / raw) To: linux-arm-kernel From: Dima Zavin <dima@android.com> Signed-off-by: Dima Zavin <dima@android.com> Signed-off-by: Carl Vanderlip <carlv@codeaurora.org> --- drivers/video/msm/mdp_hw.h | 9 ++++++++- drivers/video/msm/mdp_ppp.c | 1 + include/linux/msm_mdp.h | 1 + 3 files changed, 10 insertions(+), 1 deletions(-) diff --git a/drivers/video/msm/mdp_hw.h b/drivers/video/msm/mdp_hw.h index 4e3deb4..9e1e92e 100644 --- a/drivers/video/msm/mdp_hw.h +++ b/drivers/video/msm/mdp_hw.h @@ -449,6 +449,7 @@ int mdp_ppp_blit(const struct mdp_info *mdp, struct mdp_blit_req *req, #define PPP_CFG_MDP_XRGB_8888(dir) PPP_CFG_MDP_ARGB_8888(dir) #define PPP_CFG_MDP_RGBA_8888(dir) PPP_CFG_MDP_ARGB_8888(dir) #define PPP_CFG_MDP_BGRA_8888(dir) PPP_CFG_MDP_ARGB_8888(dir) +#define PPP_CFG_MDP_RGBX_8888(dir) PPP_CFG_MDP_ARGB_8888(dir) #define PPP_CFG_MDP_Y_CBCR_H2V2(dir) (PPP_##dir##_C2R_8BIT | \ PPP_##dir##_C0G_8BIT | \ @@ -494,6 +495,8 @@ int mdp_ppp_blit(const struct mdp_info *mdp, struct mdp_blit_req *req, MDP_GET_PACK_PATTERN(CLR_ALPHA, CLR_B, CLR_G, CLR_R, 8) #define PPP_PACK_PATTERN_MDP_BGRA_8888 \ MDP_GET_PACK_PATTERN(CLR_ALPHA, CLR_R, CLR_G, CLR_B, 8) +#define PPP_PACK_PATTERN_MDP_RGBX_8888 \ + MDP_GET_PACK_PATTERN(CLR_ALPHA, CLR_B, CLR_G, CLR_R, 8) #define PPP_PACK_PATTERN_MDP_Y_CBCR_H2V1 \ MDP_GET_PACK_PATTERN(0, 0, CLR_CB, CLR_CR, 8) #define PPP_PACK_PATTERN_MDP_Y_CBCR_H2V2 PPP_PACK_PATTERN_MDP_Y_CBCR_H2V1 @@ -509,6 +512,7 @@ int mdp_ppp_blit(const struct mdp_info *mdp, struct mdp_blit_req *req, #define PPP_CHROMA_SAMP_MDP_ARGB_8888(dir) PPP_OP_##dir##_CHROMA_RGB #define PPP_CHROMA_SAMP_MDP_RGBA_8888(dir) PPP_OP_##dir##_CHROMA_RGB #define PPP_CHROMA_SAMP_MDP_BGRA_8888(dir) PPP_OP_##dir##_CHROMA_RGB +#define PPP_CHROMA_SAMP_MDP_RGBX_8888(dir) PPP_OP_##dir##_CHROMA_RGB #define PPP_CHROMA_SAMP_MDP_Y_CBCR_H2V1(dir) PPP_OP_##dir##_CHROMA_H2V1 #define PPP_CHROMA_SAMP_MDP_Y_CBCR_H2V2(dir) PPP_OP_##dir##_CHROMA_420 #define PPP_CHROMA_SAMP_MDP_Y_CRCB_H2V1(dir) PPP_OP_##dir##_CHROMA_H2V1 @@ -523,6 +527,7 @@ int mdp_ppp_blit(const struct mdp_info *mdp, struct mdp_blit_req *req, [MDP_ARGB_8888] = PPP_##name##_MDP_ARGB_8888,\ [MDP_RGBA_8888] = PPP_##name##_MDP_RGBA_8888,\ [MDP_BGRA_8888] = PPP_##name##_MDP_BGRA_8888,\ + [MDP_RGBX_8888] = PPP_##name##_MDP_RGBX_8888,\ [MDP_Y_CBCR_H2V1] = PPP_##name##_MDP_Y_CBCR_H2V1,\ [MDP_Y_CBCR_H2V2] = PPP_##name##_MDP_Y_CBCR_H2V2,\ [MDP_Y_CRCB_H2V1] = PPP_##name##_MDP_Y_CRCB_H2V1,\ @@ -536,6 +541,7 @@ int mdp_ppp_blit(const struct mdp_info *mdp, struct mdp_blit_req *req, [MDP_ARGB_8888] = PPP_##name##_MDP_ARGB_8888(dir),\ [MDP_RGBA_8888] = PPP_##name##_MDP_RGBA_8888(dir),\ [MDP_BGRA_8888] = PPP_##name##_MDP_BGRA_8888(dir),\ + [MDP_RGBX_8888] = PPP_##name##_MDP_RGBX_8888(dir),\ [MDP_Y_CBCR_H2V1] = PPP_##name##_MDP_Y_CBCR_H2V1(dir),\ [MDP_Y_CBCR_H2V2] = PPP_##name##_MDP_Y_CBCR_H2V2(dir),\ [MDP_Y_CRCB_H2V1] = PPP_##name##_MDP_Y_CRCB_H2V1(dir),\ @@ -547,7 +553,8 @@ int mdp_ppp_blit(const struct mdp_info *mdp, struct mdp_blit_req *req, (img = MDP_YCRYCB_H2V1)) #define IS_RGB(img) ((img = MDP_RGB_565) | (img = MDP_RGB_888) | \ (img = MDP_ARGB_8888) | (img = MDP_RGBA_8888) | \ - (img = MDP_XRGB_8888) | (img = MDP_BGRA_8888)) + (img = MDP_XRGB_8888) | (img = MDP_BGRA_8888) | \ + (img = MDP_RGBX_8888)) #define HAS_ALPHA(img) ((img = MDP_ARGB_8888) | (img = MDP_RGBA_8888) | \ (img = MDP_BGRA_8888)) diff --git a/drivers/video/msm/mdp_ppp.c b/drivers/video/msm/mdp_ppp.c index 4ff001f..2b6564e 100644 --- a/drivers/video/msm/mdp_ppp.c +++ b/drivers/video/msm/mdp_ppp.c @@ -69,6 +69,7 @@ static uint32_t bytes_per_pixel[] = { [MDP_ARGB_8888] = 4, [MDP_RGBA_8888] = 4, [MDP_BGRA_8888] = 4, + [MDP_RGBX_8888] = 4, [MDP_Y_CBCR_H2V1] = 1, [MDP_Y_CBCR_H2V2] = 1, [MDP_Y_CRCB_H2V1] = 1, diff --git a/include/linux/msm_mdp.h b/include/linux/msm_mdp.h index d11fe0f..fe722c1 100644 --- a/include/linux/msm_mdp.h +++ b/include/linux/msm_mdp.h @@ -32,6 +32,7 @@ enum { MDP_Y_CBCR_H2V1, /* Y and CrCb, pseduo planar w/ Cr is in MSB */ MDP_RGBA_8888, /* ARGB 888 */ MDP_BGRA_8888, /* ABGR 888 */ + MDP_RGBX_8888, /* RGBX 888 */ MDP_IMGTYPE_LIMIT /* Non valid image type after this enum */ }; -- Sent by an employee of the Qualcomm Innovation Center, Inc. The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum. ^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH 3/4] [ARM] msm_fb: Fix framebuffer console 2011-03-02 21:15 [PATCH 0/4] Initial patches for MSM display update Carl Vanderlip 2011-03-02 21:16 ` [PATCH 1/4] video: msmfb: Put the partial update magic value into the fix_screen struct Carl Vanderlip 2011-03-02 21:17 ` [PATCH 2/4] [ARM] msm: mdp: Add support for RGBX 8888 image format Carl Vanderlip @ 2011-03-02 21:17 ` Carl Vanderlip 2011-03-02 21:26 ` Carl Vanderlip 2011-03-02 21:18 ` [PATCH 4/4] [ARM] msm: mdp: Set the correct pack pattern for XRGB/ARGB Carl Vanderlip 3 siblings, 1 reply; 7+ messages in thread From: Carl Vanderlip @ 2011-03-02 21:17 UTC (permalink / raw) To: linux-arm-kernel From: Arve Hjønnevåg <arve@android.com> Don't allow non panning updates to bypass the wait for the panel to turn on. Signed-off-by: Carl Vanderlip <carlv@codeaurora.org> --- drivers/video/msm/msm_fb.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/video/msm/msm_fb.c b/drivers/video/msm/msm_fb.c index fe5efe5..ec35130 100644 --- a/drivers/video/msm/msm_fb.c +++ b/drivers/video/msm/msm_fb.c @@ -219,8 +219,8 @@ restart: sleeping = msmfb->sleeping; /* on a full update, if the last frame has not completed, wait for it */ - if (pan_display && (msmfb->frame_requested != msmfb->frame_done || - sleeping = UPDATING)) { + if ((pan_display && msmfb->frame_requested != msmfb->frame_done) || + sleeping = UPDATING) { int ret; spin_unlock_irqrestore(&msmfb->update_lock, irq_flags); ret = wait_event_interruptible_timeout(msmfb->frame_wq, -- Sent by an employee of the Qualcomm Innovation Center, Inc. The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum. ^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH 3/4] [ARM] msm_fb: Fix framebuffer console 2011-03-02 21:17 ` [PATCH 3/4] [ARM] msm_fb: Fix framebuffer console Carl Vanderlip @ 2011-03-02 21:26 ` Carl Vanderlip 2011-03-04 23:03 ` Arve Hjønnevåg 0 siblings, 1 reply; 7+ messages in thread From: Carl Vanderlip @ 2011-03-02 21:26 UTC (permalink / raw) To: linux-arm-kernel On Wed, 2011-03-02 at 13:17 -0800, Carl Vanderlip wrote: > From: Arve Hjønnevåg <arve@android.com> > > Don't allow non panning updates to bypass the wait for the panel to turn on. > > Signed-off-by: Carl Vanderlip <carlv@codeaurora.org> Arve, This patch did not have a SOB from you. Would you sign off on this patch? -Carl V. ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 3/4] [ARM] msm_fb: Fix framebuffer console 2011-03-02 21:26 ` Carl Vanderlip @ 2011-03-04 23:03 ` Arve Hjønnevåg 0 siblings, 0 replies; 7+ messages in thread From: Arve Hjønnevåg @ 2011-03-04 23:03 UTC (permalink / raw) To: linux-arm-kernel On Wed, Mar 2, 2011 at 1:26 PM, Carl Vanderlip <carlv@codeaurora.org> wrote: > On Wed, 2011-03-02 at 13:17 -0800, Carl Vanderlip wrote: >> From: Arve Hjønnevåg <arve@android.com> >> >> Don't allow non panning updates to bypass the wait for the panel to turn > on. >> >> Signed-off-by: Carl Vanderlip <carlv@codeaurora.org> > > Arve, > > This patch did not have a SOB from you. Would you sign off on this patch? > Yes, you can add a sign-off and/or ack by me. -- Arve Hjønnevåg ^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH 4/4] [ARM] msm: mdp: Set the correct pack pattern for XRGB/ARGB 2011-03-02 21:15 [PATCH 0/4] Initial patches for MSM display update Carl Vanderlip ` (2 preceding siblings ...) 2011-03-02 21:17 ` [PATCH 3/4] [ARM] msm_fb: Fix framebuffer console Carl Vanderlip @ 2011-03-02 21:18 ` Carl Vanderlip 3 siblings, 0 replies; 7+ messages in thread From: Carl Vanderlip @ 2011-03-02 21:18 UTC (permalink / raw) To: linux-arm-kernel From: Dima Zavin <dima@android.com> Signed-off-by: Dima Zavin <dima@android.com> Signed-off-by: Carl Vanderlip <carlv@codeaurora.org> --- drivers/video/msm/mdp_hw.h | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/drivers/video/msm/mdp_hw.h b/drivers/video/msm/mdp_hw.h index 9e1e92e..d804774 100644 --- a/drivers/video/msm/mdp_hw.h +++ b/drivers/video/msm/mdp_hw.h @@ -489,7 +489,7 @@ int mdp_ppp_blit(const struct mdp_info *mdp, struct mdp_blit_req *req, MDP_GET_PACK_PATTERN(0, CLR_R, CLR_G, CLR_B, 8) #define PPP_PACK_PATTERN_MDP_RGB_888 PPP_PACK_PATTERN_MDP_RGB_565 #define PPP_PACK_PATTERN_MDP_XRGB_8888 \ - MDP_GET_PACK_PATTERN(CLR_ALPHA, CLR_R, CLR_G, CLR_B, 8) + MDP_GET_PACK_PATTERN(CLR_B, CLR_G, CLR_R, CLR_ALPHA, 8) #define PPP_PACK_PATTERN_MDP_ARGB_8888 PPP_PACK_PATTERN_MDP_XRGB_8888 #define PPP_PACK_PATTERN_MDP_RGBA_8888 \ MDP_GET_PACK_PATTERN(CLR_ALPHA, CLR_B, CLR_G, CLR_R, 8) -- Sent by an employee of the Qualcomm Innovation Center, Inc. The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum. ^ permalink raw reply related [flat|nested] 7+ messages in thread
end of thread, other threads:[~2011-03-04 23:03 UTC | newest] Thread overview: 7+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2011-03-02 21:15 [PATCH 0/4] Initial patches for MSM display update Carl Vanderlip 2011-03-02 21:16 ` [PATCH 1/4] video: msmfb: Put the partial update magic value into the fix_screen struct Carl Vanderlip 2011-03-02 21:17 ` [PATCH 2/4] [ARM] msm: mdp: Add support for RGBX 8888 image format Carl Vanderlip 2011-03-02 21:17 ` [PATCH 3/4] [ARM] msm_fb: Fix framebuffer console Carl Vanderlip 2011-03-02 21:26 ` Carl Vanderlip 2011-03-04 23:03 ` Arve Hjønnevåg 2011-03-02 21:18 ` [PATCH 4/4] [ARM] msm: mdp: Set the correct pack pattern for XRGB/ARGB Carl Vanderlip
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).