From: Archit Taneja <archit@ti.com> To: tomi.valkeinen@ti.com Cc: linux-omap@vger.kernel.org, linux-fbdev@vger.kernel.org, Archit Taneja <archit@ti.com> Subject: [PATCH v2 14/18] OMAPDSS: DISPC: Configure overlay-like parameters in dispc_wb_setup Date: Tue, 25 Sep 2012 06:31:49 +0000 [thread overview] Message-ID: <1348553993-8083-15-git-send-email-archit@ti.com> (raw) In-Reply-To: <1348553993-8083-1-git-send-email-archit@ti.com> Create struct omap_dss_writeback_info, this is similar to omap_overlay_info, the major difference is that there is no parameter which describes the input size to writeback, this is because this is always fixed, and decided by the connected overlay or overlay manager. One more difference is that screen_width is renamed to buf_width, to give the value of stride the writeback buffer has. Call dispc_ovl_setup_common() through dispc_wb_setup() to configure overlay-like parameters. The parameters in dispc_ovl_setup_common() which do not hold for writeback are filled passed as zeroes or false, the code takes care of not configuring them as they won't possess the needed overlay caps. Signed-off-by: Archit Taneja <archit@ti.com> --- drivers/video/omap2/dss/dispc.c | 27 +++++++++++++++++++++++++++ drivers/video/omap2/dss/dss.h | 2 ++ include/video/omapdss.h | 13 +++++++++++++ 3 files changed, 42 insertions(+) diff --git a/drivers/video/omap2/dss/dispc.c b/drivers/video/omap2/dss/dispc.c index 6d482f5..2e5f033 100644 --- a/drivers/video/omap2/dss/dispc.c +++ b/drivers/video/omap2/dss/dispc.c @@ -2479,6 +2479,33 @@ int dispc_ovl_setup(enum omap_plane plane, const struct omap_overlay_info *oi, return r; } +int dispc_wb_setup(const struct omap_dss_writeback_info *wi, + const struct omap_video_timings *mgr_timings) +{ + int r; + enum omap_plane plane = OMAP_DSS_WB; + const int pos_x = 0, pos_y = 0; + const u8 zorder = 0, global_alpha = 0; + const bool replication = false; + int in_width = mgr_timings->x_res; + int in_height = mgr_timings->y_res; + enum omap_overlay_caps caps + OMAP_DSS_OVL_CAP_SCALE | OMAP_DSS_OVL_CAP_PRE_MULT_ALPHA; + + DSSDBG("dispc_wb_setup, pa %x, pa_uv %x, %d,%d -> %dx%d, cmode %x, " + "rot %d, mir %d\n", wi->paddr, wi->p_uv_addr, in_width, + in_height, wi->width, wi->height, wi->color_mode, wi->rotation, + wi->mirror); + + r = dispc_ovl_setup_common(plane, caps, wi->paddr, wi->p_uv_addr, + wi->buf_width, pos_x, pos_y, in_width, in_height, wi->width, + wi->height, wi->color_mode, wi->rotation, wi->mirror, zorder, + wi->pre_mult_alpha, global_alpha, wi->rotation_type, + replication, mgr_timings, false); + + return r; +} + int dispc_ovl_enable(enum omap_plane plane, bool enable) { DSSDBG("dispc_enable_plane %d, %d\n", plane, enable); diff --git a/drivers/video/omap2/dss/dss.h b/drivers/video/omap2/dss/dss.h index 872e420..1a09f00 100644 --- a/drivers/video/omap2/dss/dss.h +++ b/drivers/video/omap2/dss/dss.h @@ -483,6 +483,8 @@ void dispc_mgr_setup(enum omap_channel channel, struct omap_overlay_manager_info *info); void dispc_wb_set_channel_in(enum dss_writeback_channel channel); +int dispc_wb_setup(const struct omap_dss_writeback_info *wi, + const struct omap_video_timings *timings); /* VENC */ #ifdef CONFIG_OMAP2_DSS_VENC diff --git a/include/video/omapdss.h b/include/video/omapdss.h index 46097bd..3729173 100644 --- a/include/video/omapdss.h +++ b/include/video/omapdss.h @@ -510,6 +510,19 @@ struct omap_dsi_pin_config { int pins[OMAP_DSS_MAX_DSI_PINS]; }; +struct omap_dss_writeback_info { + u32 paddr; + u32 p_uv_addr; + u16 buf_width; + u16 width; + u16 height; + enum omap_color_mode color_mode; + u8 rotation; + enum omap_dss_rotation_type rotation_type; + bool mirror; + u8 pre_mult_alpha; +}; + struct omap_dss_output { struct list_head list; -- 1.7.9.5
WARNING: multiple messages have this Message-ID (diff)
From: Archit Taneja <archit@ti.com> To: tomi.valkeinen@ti.com Cc: linux-omap@vger.kernel.org, linux-fbdev@vger.kernel.org, Archit Taneja <archit@ti.com> Subject: [PATCH v2 14/18] OMAPDSS: DISPC: Configure overlay-like parameters in dispc_wb_setup Date: Tue, 25 Sep 2012 11:49:49 +0530 [thread overview] Message-ID: <1348553993-8083-15-git-send-email-archit@ti.com> (raw) In-Reply-To: <1348553993-8083-1-git-send-email-archit@ti.com> Create struct omap_dss_writeback_info, this is similar to omap_overlay_info, the major difference is that there is no parameter which describes the input size to writeback, this is because this is always fixed, and decided by the connected overlay or overlay manager. One more difference is that screen_width is renamed to buf_width, to give the value of stride the writeback buffer has. Call dispc_ovl_setup_common() through dispc_wb_setup() to configure overlay-like parameters. The parameters in dispc_ovl_setup_common() which do not hold for writeback are filled passed as zeroes or false, the code takes care of not configuring them as they won't possess the needed overlay caps. Signed-off-by: Archit Taneja <archit@ti.com> --- drivers/video/omap2/dss/dispc.c | 27 +++++++++++++++++++++++++++ drivers/video/omap2/dss/dss.h | 2 ++ include/video/omapdss.h | 13 +++++++++++++ 3 files changed, 42 insertions(+) diff --git a/drivers/video/omap2/dss/dispc.c b/drivers/video/omap2/dss/dispc.c index 6d482f5..2e5f033 100644 --- a/drivers/video/omap2/dss/dispc.c +++ b/drivers/video/omap2/dss/dispc.c @@ -2479,6 +2479,33 @@ int dispc_ovl_setup(enum omap_plane plane, const struct omap_overlay_info *oi, return r; } +int dispc_wb_setup(const struct omap_dss_writeback_info *wi, + const struct omap_video_timings *mgr_timings) +{ + int r; + enum omap_plane plane = OMAP_DSS_WB; + const int pos_x = 0, pos_y = 0; + const u8 zorder = 0, global_alpha = 0; + const bool replication = false; + int in_width = mgr_timings->x_res; + int in_height = mgr_timings->y_res; + enum omap_overlay_caps caps = + OMAP_DSS_OVL_CAP_SCALE | OMAP_DSS_OVL_CAP_PRE_MULT_ALPHA; + + DSSDBG("dispc_wb_setup, pa %x, pa_uv %x, %d,%d -> %dx%d, cmode %x, " + "rot %d, mir %d\n", wi->paddr, wi->p_uv_addr, in_width, + in_height, wi->width, wi->height, wi->color_mode, wi->rotation, + wi->mirror); + + r = dispc_ovl_setup_common(plane, caps, wi->paddr, wi->p_uv_addr, + wi->buf_width, pos_x, pos_y, in_width, in_height, wi->width, + wi->height, wi->color_mode, wi->rotation, wi->mirror, zorder, + wi->pre_mult_alpha, global_alpha, wi->rotation_type, + replication, mgr_timings, false); + + return r; +} + int dispc_ovl_enable(enum omap_plane plane, bool enable) { DSSDBG("dispc_enable_plane %d, %d\n", plane, enable); diff --git a/drivers/video/omap2/dss/dss.h b/drivers/video/omap2/dss/dss.h index 872e420..1a09f00 100644 --- a/drivers/video/omap2/dss/dss.h +++ b/drivers/video/omap2/dss/dss.h @@ -483,6 +483,8 @@ void dispc_mgr_setup(enum omap_channel channel, struct omap_overlay_manager_info *info); void dispc_wb_set_channel_in(enum dss_writeback_channel channel); +int dispc_wb_setup(const struct omap_dss_writeback_info *wi, + const struct omap_video_timings *timings); /* VENC */ #ifdef CONFIG_OMAP2_DSS_VENC diff --git a/include/video/omapdss.h b/include/video/omapdss.h index 46097bd..3729173 100644 --- a/include/video/omapdss.h +++ b/include/video/omapdss.h @@ -510,6 +510,19 @@ struct omap_dsi_pin_config { int pins[OMAP_DSS_MAX_DSI_PINS]; }; +struct omap_dss_writeback_info { + u32 paddr; + u32 p_uv_addr; + u16 buf_width; + u16 width; + u16 height; + enum omap_color_mode color_mode; + u8 rotation; + enum omap_dss_rotation_type rotation_type; + bool mirror; + u8 pre_mult_alpha; +}; + struct omap_dss_output { struct list_head list; -- 1.7.9.5
next prev parent reply other threads:[~2012-09-25 6:31 UTC|newest] Thread overview: 118+ messages / expand[flat|nested] mbox.gz Atom feed top 2012-09-13 12:14 [PATCH 00/21] OMAPDSS: DISPC changes for writeback pipeline Archit Taneja 2012-09-13 12:26 ` Archit Taneja 2012-09-13 12:14 ` [PATCH 01/21] OMAPDSS: DISPC: Constify omap_overlay_info in dispc_ovl_setup() Archit Taneja 2012-09-13 12:26 ` Archit Taneja 2012-09-13 12:14 ` [PATCH 02/21] OMAPDSS: DISPC: Rename scalar related functions from dispc_ovl_* to dispc_plane_* Archit Taneja 2012-09-13 12:26 ` Archit Taneja 2012-09-13 12:14 ` [PATCH 03/21] OMAPDSS: DISPC: Rename fifo/burst " Archit Taneja 2012-09-13 12:26 ` Archit Taneja 2012-09-13 12:14 ` [PATCH 04/21] OMAPDSS: DISPC: Rename misc " Archit Taneja 2012-09-13 12:26 ` Archit Taneja 2012-09-13 12:14 ` [PATCH 05/21] OMAPDSS: DISPC: Simplify function names for setting pipeline input and output sizes Archit Taneja 2012-09-13 12:26 ` Archit Taneja 2012-09-13 12:14 ` [PATCH 06/21] OMAPDSS: DISPC: Pass overlay caps as a parameter to dispc plane functions Archit Taneja 2012-09-13 12:26 ` Archit Taneja 2012-09-13 12:14 ` [PATCH 07/21] OMAPDSS: OVERLAY: Add position and replication as overlay caps Archit Taneja 2012-09-13 12:26 ` Archit Taneja 2012-09-13 12:14 ` [PATCH 08/21] OMAPDSS: DISPC: Make dispc_ovl_setup call dispc_plane_setup Archit Taneja 2012-09-13 12:26 ` Archit Taneja 2012-09-13 12:14 ` [PATCH 09/21] OMAPDSS: DISPC: Calculate scaling limits in a more generic way Archit Taneja 2012-09-13 12:26 ` Archit Taneja 2012-09-14 8:53 ` Tomi Valkeinen 2012-09-14 8:53 ` Tomi Valkeinen 2012-09-14 9:13 ` Archit Taneja 2012-09-14 9:25 ` Archit Taneja 2012-09-14 9:49 ` Tomi Valkeinen 2012-09-14 9:49 ` Tomi Valkeinen 2012-09-14 10:03 ` Archit Taneja 2012-09-14 10:15 ` Archit Taneja 2012-09-14 10:18 ` Tomi Valkeinen 2012-09-14 10:18 ` Tomi Valkeinen 2012-09-13 12:14 ` [PATCH 10/21] OMAPDSS: DISPC: Allow both upscaling and downscaling of chroma Archit Taneja 2012-09-13 12:26 ` Archit Taneja 2012-09-13 12:14 ` [PATCH 11/21] OMAPDSS: DISPC: Add writeback register offsets and dss features structs Archit Taneja 2012-09-13 12:26 ` Archit Taneja 2012-09-13 12:14 ` [PATCH 12/21] OMAPDSS: DISPC: Configure input and output sizes for writeback Archit Taneja 2012-09-13 12:26 ` Archit Taneja 2012-09-13 12:14 ` [PATCH 13/21] OMAPDSS: DISPC: Pass dummy scalar output rates for writeback pipeline Archit Taneja 2012-09-13 12:26 ` Archit Taneja 2012-09-13 12:14 ` [PATCH 14/21] OMAPDSS: DISPC: Downscale chroma if plane is writeback Archit Taneja 2012-09-13 12:26 ` Archit Taneja 2012-09-13 12:14 ` [PATCH 15/21] OMAPDSS: DISPC: Don't set chroma resampling bit for writeback Archit Taneja 2012-09-13 12:26 ` Archit Taneja 2012-09-13 12:15 ` [PATCH 16/21] OMAPDSS: DISPC: Add function to set channel in " Archit Taneja 2012-09-13 12:27 ` Archit Taneja 2012-09-13 12:15 ` [PATCH 17/21] OMAPDSS: DISPC: Configure overlay-like parameters in dispc_wb_setup Archit Taneja 2012-09-13 12:27 ` Archit Taneja 2012-09-13 12:15 ` [PATCH 18/21] OMAPDSS: DISPC: Configure writeback specific parameters in dispc_wb_setup() Archit Taneja 2012-09-13 12:27 ` Archit Taneja 2012-09-13 12:15 ` [PATCH 19/21] OMAPDSS: DISPC: Configure writeback FIFOs Archit Taneja 2012-09-13 12:27 ` Archit Taneja 2012-09-13 12:15 ` [PATCH 20/21] OMAPDSS: DISPC: Add manager like functions for writeback Archit Taneja 2012-09-13 12:27 ` Archit Taneja 2012-09-13 12:15 ` [PATCH 21/21] OMAPDSS: DISPC: Configure color conversion coefficients " Archit Taneja 2012-09-13 12:27 ` Archit Taneja 2012-09-14 9:07 ` Tomi Valkeinen 2012-09-14 9:07 ` Tomi Valkeinen 2012-09-14 8:27 ` [PATCH 00/21] OMAPDSS: DISPC changes for writeback pipeline Tomi Valkeinen 2012-09-14 8:27 ` Tomi Valkeinen 2012-09-14 8:46 ` Tomi Valkeinen 2012-09-14 8:46 ` Tomi Valkeinen 2012-09-14 10:24 ` Archit Taneja 2012-09-14 10:36 ` Archit Taneja 2012-09-14 10:57 ` Tomi Valkeinen 2012-09-14 10:57 ` Tomi Valkeinen 2012-09-14 10:13 ` Archit Taneja 2012-09-14 10:25 ` Archit Taneja 2012-09-14 10:53 ` Tomi Valkeinen 2012-09-14 10:53 ` Tomi Valkeinen 2012-09-25 6:18 ` [PATCH v2 00/18] " Archit Taneja 2012-09-25 6:30 ` Archit Taneja 2012-09-25 6:19 ` Archit Taneja 2012-09-25 6:31 ` Archit Taneja 2012-09-25 6:19 ` [PATCH v2 01/18] OMAPDSS: DISPC: Constify omap_overlay_info in dispc_ovl_setup() Archit Taneja 2012-09-25 6:31 ` Archit Taneja 2012-09-25 6:19 ` [PATCH v2 02/18] OMAPDSS: DISPC: Simplify function names for setting pipeline input and output sizes Archit Taneja 2012-09-25 6:31 ` Archit Taneja 2012-09-25 6:19 ` [PATCH v2 03/18] OMAPDSS: DISPC: Pass overlay caps as a parameter to dispc plane functions Archit Taneja 2012-09-25 6:31 ` Archit Taneja 2012-09-25 6:19 ` [PATCH v2 04/18] OMAPDSS: OVERLAY: Add position and replication as overlay caps Archit Taneja 2012-09-25 6:31 ` Archit Taneja 2012-09-25 6:19 ` [PATCH v2 05/18] OMAPDSS: DISPC: Make dispc_ovl_setup call dispc_ovl_setup_common Archit Taneja 2012-09-25 6:31 ` Archit Taneja 2012-09-25 6:19 ` [PATCH v2 06/18] OMAPDSS: DISPC: Don't pass channel out when configuring overlays Archit Taneja 2012-09-25 6:31 ` Archit Taneja 2012-09-25 6:19 ` [PATCH v2 07/18] OMAPDSS: DIPSC: Relax scaling limitations when in memory to memory mode Archit Taneja 2012-09-25 6:31 ` Archit Taneja 2012-09-25 6:19 ` [PATCH v2 08/18] OMAPDSS: DISPC: Allow both upscaling and downscaling of chroma Archit Taneja 2012-09-25 6:31 ` Archit Taneja 2012-09-25 6:19 ` [PATCH v2 09/18] OMAPDSS: DISPC: Add writeback register offsets and dss features structs Archit Taneja 2012-09-25 6:31 ` Archit Taneja 2012-09-25 6:19 ` [PATCH v2 10/18] OMAPDSS: DISPC: Configure input and output sizes for writeback Archit Taneja 2012-09-25 6:31 ` Archit Taneja 2012-09-25 14:33 ` Tomi Valkeinen 2012-09-25 14:33 ` Tomi Valkeinen 2012-09-26 6:22 ` Archit Taneja 2012-09-26 6:34 ` Archit Taneja 2012-09-26 6:34 ` Tomi Valkeinen 2012-09-26 6:34 ` Tomi Valkeinen 2012-09-25 6:19 ` [PATCH v2 11/18] OMAPDSS: DISPC: Downscale chroma if plane is writeback Archit Taneja 2012-09-25 6:31 ` Archit Taneja 2012-09-25 6:19 ` [PATCH v2 12/18] OMAPDSS: DISPC: Don't set chroma resampling bit for writeback Archit Taneja 2012-09-25 6:31 ` Archit Taneja 2012-09-25 6:19 ` [PATCH v2 13/18] OMAPDSS: DISPC: Add function to set channel in " Archit Taneja 2012-09-25 6:31 ` Archit Taneja 2012-09-25 6:19 ` Archit Taneja [this message] 2012-09-25 6:31 ` [PATCH v2 14/18] OMAPDSS: DISPC: Configure overlay-like parameters in dispc_wb_setup Archit Taneja 2012-09-25 6:19 ` [PATCH v2 15/18] OMAPDSS: DISPC: Configure writeback specific parameters in dispc_wb_setup() Archit Taneja 2012-09-25 6:31 ` Archit Taneja 2012-09-25 6:19 ` [PATCH v2 16/18] OMAPDSS: DISPC: Configure writeback FIFOs Archit Taneja 2012-09-25 6:31 ` Archit Taneja 2012-09-25 14:50 ` Tomi Valkeinen 2012-09-25 14:50 ` Tomi Valkeinen 2012-09-26 5:31 ` Archit Taneja 2012-09-26 5:43 ` Archit Taneja 2012-09-25 6:19 ` [PATCH v2 17/18] OMAPDSS: DISPC: Add manager like functions for writeback Archit Taneja 2012-09-25 6:31 ` Archit Taneja 2012-09-25 6:19 ` [PATCH v2 18/18] OMAPDSS: DISPC: Configure color conversion coefficients " Archit Taneja 2012-09-25 6:31 ` Archit Taneja
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=1348553993-8083-15-git-send-email-archit@ti.com \ --to=archit@ti.com \ --cc=linux-fbdev@vger.kernel.org \ --cc=linux-omap@vger.kernel.org \ --cc=tomi.valkeinen@ti.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.