* [Qemu-devel] [PATCH v2] omap_lcdc: Remove support for DEPTH != 32
@ 2016-03-29 14:02 Pooja Dhannawat
2016-04-05 6:41 ` Pooja Dhannawat
2016-05-04 14:34 ` Peter Maydell
0 siblings, 2 replies; 3+ messages in thread
From: Pooja Dhannawat @ 2016-03-29 14:02 UTC (permalink / raw)
To: qemu-devel
surface_bits_per_pixel() always returns 32
so, removing other dead code which is
based on DEPTH !== 32
Signed-off-by: Pooja Dhannawat <dhannawatpooja1@gmail.com>
---
v2: As surface_bits_per_pixel() always returns 32,
so instead of relying on array :
draw_line_table2[surface_bits_per_pixel(surface)]
we can use directly :
draw_line2_32 [Eric Blake]
---
hw/display/omap_lcd_template.h | 10 ++-------
hw/display/omap_lcdc.c | 48 +++++-------------------------------------
2 files changed, 7 insertions(+), 51 deletions(-)
diff --git a/hw/display/omap_lcd_template.h b/hw/display/omap_lcd_template.h
index f0ce71f..1025ff3 100644
--- a/hw/display/omap_lcd_template.h
+++ b/hw/display/omap_lcd_template.h
@@ -27,13 +27,7 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-#if DEPTH == 8
-# define BPP 1
-# define PIXEL_TYPE uint8_t
-#elif DEPTH == 15 || DEPTH == 16
-# define BPP 2
-# define PIXEL_TYPE uint16_t
-#elif DEPTH == 32
+#if DEPTH == 32
# define BPP 4
# define PIXEL_TYPE uint32_t
#else
@@ -152,7 +146,7 @@ static void glue(draw_line12_, DEPTH)(void *opaque,
static void glue(draw_line16_, DEPTH)(void *opaque,
uint8_t *d, const uint8_t *s, int width, int deststep)
{
-#if DEPTH == 16 && defined(HOST_WORDS_BIGENDIAN) == defined(TARGET_WORDS_BIGENDIAN)
+#if defined(HOST_WORDS_BIGENDIAN) == defined(TARGET_WORDS_BIGENDIAN)
memcpy(d, s, width * 2);
#else
uint16_t v;
diff --git a/hw/display/omap_lcdc.c b/hw/display/omap_lcdc.c
index ce1058b..07a5eff 100644
--- a/hw/display/omap_lcdc.c
+++ b/hw/display/omap_lcdc.c
@@ -71,47 +71,9 @@ static void omap_lcd_interrupts(struct omap_lcd_panel_s *s)
#define draw_line_func drawfn
-#define DEPTH 8
-#include "omap_lcd_template.h"
-#define DEPTH 15
-#include "omap_lcd_template.h"
-#define DEPTH 16
-#include "omap_lcd_template.h"
#define DEPTH 32
#include "omap_lcd_template.h"
-static draw_line_func draw_line_table2[33] = {
- [0 ... 32] = NULL,
- [8] = draw_line2_8,
- [15] = draw_line2_15,
- [16] = draw_line2_16,
- [32] = draw_line2_32,
-}, draw_line_table4[33] = {
- [0 ... 32] = NULL,
- [8] = draw_line4_8,
- [15] = draw_line4_15,
- [16] = draw_line4_16,
- [32] = draw_line4_32,
-}, draw_line_table8[33] = {
- [0 ... 32] = NULL,
- [8] = draw_line8_8,
- [15] = draw_line8_15,
- [16] = draw_line8_16,
- [32] = draw_line8_32,
-}, draw_line_table12[33] = {
- [0 ... 32] = NULL,
- [8] = draw_line12_8,
- [15] = draw_line12_15,
- [16] = draw_line12_16,
- [32] = draw_line12_32,
-}, draw_line_table16[33] = {
- [0 ... 32] = NULL,
- [8] = draw_line16_8,
- [15] = draw_line16_15,
- [16] = draw_line16_16,
- [32] = draw_line16_32,
-};
-
static void omap_update_display(void *opaque)
{
struct omap_lcd_panel_s *omap_lcd = (struct omap_lcd_panel_s *) opaque;
@@ -143,25 +105,25 @@ static void omap_update_display(void *opaque)
/* Colour depth */
switch ((omap_lcd->palette[0] >> 12) & 7) {
case 1:
- draw_line = draw_line_table2[surface_bits_per_pixel(surface)];
+ draw_line = draw_line2_32;
bpp = 2;
break;
case 2:
- draw_line = draw_line_table4[surface_bits_per_pixel(surface)];
+ draw_line = draw_line4_32;
bpp = 4;
break;
case 3:
- draw_line = draw_line_table8[surface_bits_per_pixel(surface)];
+ draw_line = draw_line8_32;
bpp = 8;
break;
case 4 ... 7:
if (!omap_lcd->tft)
- draw_line = draw_line_table12[surface_bits_per_pixel(surface)];
+ draw_line = draw_line12_32;
else
- draw_line = draw_line_table16[surface_bits_per_pixel(surface)];
+ draw_line = draw_line16_32;
bpp = 16;
break;
--
2.5.0
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [Qemu-devel] [PATCH v2] omap_lcdc: Remove support for DEPTH != 32
2016-03-29 14:02 [Qemu-devel] [PATCH v2] omap_lcdc: Remove support for DEPTH != 32 Pooja Dhannawat
@ 2016-04-05 6:41 ` Pooja Dhannawat
2016-05-04 14:34 ` Peter Maydell
1 sibling, 0 replies; 3+ messages in thread
From: Pooja Dhannawat @ 2016-04-05 6:41 UTC (permalink / raw)
To: QEMU Developers; +Cc: Peter Maydell
[-- Attachment #1: Type: text/plain, Size: 4389 bytes --]
CCing Peter Maydell.
On Tue, Mar 29, 2016 at 7:32 PM, Pooja Dhannawat <dhannawatpooja1@gmail.com>
wrote:
> surface_bits_per_pixel() always returns 32
> so, removing other dead code which is
> based on DEPTH !== 32
>
> Signed-off-by: Pooja Dhannawat <dhannawatpooja1@gmail.com>
> ---
> v2: As surface_bits_per_pixel() always returns 32,
> so instead of relying on array :
>
> draw_line_table2[surface_bits_per_pixel(surface)]
>
> we can use directly :
>
> draw_line2_32 [Eric Blake]
> ---
> hw/display/omap_lcd_template.h | 10 ++-------
> hw/display/omap_lcdc.c | 48
> +++++-------------------------------------
> 2 files changed, 7 insertions(+), 51 deletions(-)
>
> diff --git a/hw/display/omap_lcd_template.h
> b/hw/display/omap_lcd_template.h
> index f0ce71f..1025ff3 100644
> --- a/hw/display/omap_lcd_template.h
> +++ b/hw/display/omap_lcd_template.h
> @@ -27,13 +27,7 @@
> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
> */
>
> -#if DEPTH == 8
> -# define BPP 1
> -# define PIXEL_TYPE uint8_t
> -#elif DEPTH == 15 || DEPTH == 16
> -# define BPP 2
> -# define PIXEL_TYPE uint16_t
> -#elif DEPTH == 32
> +#if DEPTH == 32
> # define BPP 4
> # define PIXEL_TYPE uint32_t
> #else
> @@ -152,7 +146,7 @@ static void glue(draw_line12_, DEPTH)(void *opaque,
> static void glue(draw_line16_, DEPTH)(void *opaque,
> uint8_t *d, const uint8_t *s, int width, int deststep)
> {
> -#if DEPTH == 16 && defined(HOST_WORDS_BIGENDIAN) ==
> defined(TARGET_WORDS_BIGENDIAN)
> +#if defined(HOST_WORDS_BIGENDIAN) == defined(TARGET_WORDS_BIGENDIAN)
> memcpy(d, s, width * 2);
> #else
> uint16_t v;
> diff --git a/hw/display/omap_lcdc.c b/hw/display/omap_lcdc.c
> index ce1058b..07a5eff 100644
> --- a/hw/display/omap_lcdc.c
> +++ b/hw/display/omap_lcdc.c
> @@ -71,47 +71,9 @@ static void omap_lcd_interrupts(struct omap_lcd_panel_s
> *s)
>
> #define draw_line_func drawfn
>
> -#define DEPTH 8
> -#include "omap_lcd_template.h"
> -#define DEPTH 15
> -#include "omap_lcd_template.h"
> -#define DEPTH 16
> -#include "omap_lcd_template.h"
> #define DEPTH 32
> #include "omap_lcd_template.h"
>
> -static draw_line_func draw_line_table2[33] = {
> - [0 ... 32] = NULL,
> - [8] = draw_line2_8,
> - [15] = draw_line2_15,
> - [16] = draw_line2_16,
> - [32] = draw_line2_32,
> -}, draw_line_table4[33] = {
> - [0 ... 32] = NULL,
> - [8] = draw_line4_8,
> - [15] = draw_line4_15,
> - [16] = draw_line4_16,
> - [32] = draw_line4_32,
> -}, draw_line_table8[33] = {
> - [0 ... 32] = NULL,
> - [8] = draw_line8_8,
> - [15] = draw_line8_15,
> - [16] = draw_line8_16,
> - [32] = draw_line8_32,
> -}, draw_line_table12[33] = {
> - [0 ... 32] = NULL,
> - [8] = draw_line12_8,
> - [15] = draw_line12_15,
> - [16] = draw_line12_16,
> - [32] = draw_line12_32,
> -}, draw_line_table16[33] = {
> - [0 ... 32] = NULL,
> - [8] = draw_line16_8,
> - [15] = draw_line16_15,
> - [16] = draw_line16_16,
> - [32] = draw_line16_32,
> -};
> -
> static void omap_update_display(void *opaque)
> {
> struct omap_lcd_panel_s *omap_lcd = (struct omap_lcd_panel_s *)
> opaque;
> @@ -143,25 +105,25 @@ static void omap_update_display(void *opaque)
> /* Colour depth */
> switch ((omap_lcd->palette[0] >> 12) & 7) {
> case 1:
> - draw_line = draw_line_table2[surface_bits_per_pixel(surface)];
> + draw_line = draw_line2_32;
> bpp = 2;
> break;
>
> case 2:
> - draw_line = draw_line_table4[surface_bits_per_pixel(surface)];
> + draw_line = draw_line4_32;
> bpp = 4;
> break;
>
> case 3:
> - draw_line = draw_line_table8[surface_bits_per_pixel(surface)];
> + draw_line = draw_line8_32;
> bpp = 8;
> break;
>
> case 4 ... 7:
> if (!omap_lcd->tft)
> - draw_line =
> draw_line_table12[surface_bits_per_pixel(surface)];
> + draw_line = draw_line12_32;
> else
> - draw_line =
> draw_line_table16[surface_bits_per_pixel(surface)];
> + draw_line = draw_line16_32;
> bpp = 16;
> break;
>
> --
> 2.5.0
>
>
[-- Attachment #2: Type: text/html, Size: 5579 bytes --]
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [Qemu-devel] [PATCH v2] omap_lcdc: Remove support for DEPTH != 32
2016-03-29 14:02 [Qemu-devel] [PATCH v2] omap_lcdc: Remove support for DEPTH != 32 Pooja Dhannawat
2016-04-05 6:41 ` Pooja Dhannawat
@ 2016-05-04 14:34 ` Peter Maydell
1 sibling, 0 replies; 3+ messages in thread
From: Peter Maydell @ 2016-05-04 14:34 UTC (permalink / raw)
To: Pooja Dhannawat; +Cc: QEMU Developers
On 29 March 2016 at 15:02, Pooja Dhannawat <dhannawatpooja1@gmail.com> wrote:
> surface_bits_per_pixel() always returns 32
> so, removing other dead code which is
> based on DEPTH !== 32
>
> Signed-off-by: Pooja Dhannawat <dhannawatpooja1@gmail.com>
> ---
Thanks; I have applied this patch to target-arm.next.
-- PMM
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2016-05-04 14:35 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-03-29 14:02 [Qemu-devel] [PATCH v2] omap_lcdc: Remove support for DEPTH != 32 Pooja Dhannawat
2016-04-05 6:41 ` Pooja Dhannawat
2016-05-04 14:34 ` Peter Maydell
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).