More SM501 improvements
cover More SM501 improvements
Two simple patches to add some more registers that were found to be accessed by some guests.
BALATON Zoltan (3):
sm501: Add panel hardware cursor registers also to read function
sm501: Add some more unimplemented registers
PATCH 1/2 sm501: Add panel hardware cursor registers also to read function
These were forgotten when adding panel layer support.
--- hw/display/sm501.c | 13 +++++++++++++ 1 file changed, 13 insertions(+)
hw/display/sm501.c +13 -0
@@ -956,6 +956,19 @@ static uint64_t sm501_disp_ctrl_read(void *opaque, hwaddr addr, ret = s->dc_panel_v_sync;break ; +case SM501_DC_PANEL_HWC_ADDR : + ret = s->dc_panel_hwc_addr; +break ; +case SM501_DC_PANEL_HWC_LOC : + ret = s->dc_panel_hwc_location; +break ; +case SM501_DC_PANEL_HWC_COLOR_1_2 : + ret = s->dc_panel_hwc_color_1_2; +break ; +case SM501_DC_PANEL_HWC_COLOR_3 : + ret = s->dc_panel_hwc_color_3; +break ; +case SM501_DC_VIDEO_CONTROL : ret = s->dc_video_control;break ;
Signature · 1 line
2.7.6
Re: [Qemu-devel] [Qemu-trivial] [PATCH 1/2] sm501: Add panel hardware cursor registers also to read function
Quoted 1 line · BALATON Zoltan
These were forgotten when adding panel layer support.
... in ffd39257018.
Quoted 2 lines
Signed-off-by BALATON Zoltan <[email protected]>
with reference to commit:
Quoted 29 lines
--- hw/display/sm501.c | 13 +++++++++++++ 1 file changed, 13 insertions(+)hw/display/sm501.c +13
-0@@ -956,6 +956,19 @@ static uint64_t sm501_disp_ctrl_read(void *opaque, hwaddr addr, ret = s->dc_panel_v_sync;break ; +case SM501_DC_PANEL_HWC_ADDR : + ret = s->dc_panel_hwc_addr; +break ; +case SM501_DC_PANEL_HWC_LOC : + ret = s->dc_panel_hwc_location; +break ; +case SM501_DC_PANEL_HWC_COLOR_1_2 : + ret = s->dc_panel_hwc_color_1_2; +break ; +case SM501_DC_PANEL_HWC_COLOR_3 : + ret = s->dc_panel_hwc_color_3; +break ; +case SM501_DC_VIDEO_CONTROL : ret = s->dc_video_control;break ;
PATCH 2/2 sm501: Add some more unimplemented registers
In reply to BALATON ZoltanThese are not really implemented (just return zero or default values) but add these so guests accessing them can run.
--- hw/display/sm501.c | 17 +++++++++++++++++ 1 file changed, 17 insertions(+)
hw/display/sm501.c +17 -0
@@ -795,6 +795,8 @@ static uint64_t sm501_system_config_read(void *opaque, hwaddr addr,case SM501_ARBTRTN_CONTROL : ret = s->arbitration_control;break ; +case SM501_COMMAND_LIST_STATUS : + ret =0x00180002 ;/* FIFOs are empty, everything idle */ case SM501_IRQ_MASK : ret = s->irq_mask;break ;
@@ -812,6 +814,9 @@ static uint64_t sm501_system_config_read(void *opaque, hwaddr addr,case SM501_POWER_MODE_CONTROL : ret = s->power_mode_control;break ; +case SM501_ENDIAN_CONTROL : + ret =0 ;/* Only default little endian mode is supported */ +break ;default : printf("sm501 system config : not implemented register read."
@@ -865,6 +870,12 @@ static void sm501_system_config_write(void *opaque, hwaddr addr,case SM501_POWER_MODE_CONTROL : s->power_mode_control = value &0x00000003 ;break ; +case SM501_ENDIAN_CONTROL : +if (value &0x00000001 ) { +printf ("sm501 system config : big endian mode not implemented.\n" ); +abort (); + } +break ;default : printf("sm501 system config : not implemented register write."
@@ -924,6 +935,9 @@ static uint64_t sm501_disp_ctrl_read(void *opaque, hwaddr addr,case SM501_DC_PANEL_PANNING_CONTROL : ret = s->dc_panel_panning_control;break ; +case SM501_DC_PANEL_COLOR_KEY : +/* Not implemented yet */ +break ;case SM501_DC_PANEL_FB_ADDR : ret = s->dc_panel_fb_addr;break ;
@@ -1035,6 +1049,9 @@ static void sm501_disp_ctrl_write(void *opaque, hwaddr addr,case SM501_DC_PANEL_PANNING_CONTROL : s->dc_panel_panning_control = value &0xFF3FFF3F ;break ; +case SM501_DC_PANEL_COLOR_KEY : +/* Not implemented yet */ +break ;case SM501_DC_PANEL_FB_ADDR : s->dc_panel_fb_addr = value &0x8FFFFFF0 ;break ;
Signature · 1 line
2.7.6
David Gibson
AppliedQuoted 7 lines · BALATON Zoltan
Two simple patches to add some more registers that were found to be accessed by some guests.
BALATON Zoltan (3):
sm501: Add panel hardware cursor registers also to read function
sm501: Add some more unimplemented registers
Applied to ppc-for-2.12, with Philippe's suggested addition to the commit message.
Signature · 4 lines
David Gibson | I'll have my music baroque, and my code david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_ | _way_ _around_! http://www.ozlabs.org/~dgibson