drivers/gpu/drm/openchrome/via_crtc.c | 52 +++++++++++++++++++++++++--------- drivers/gpu/drm/openchrome/via_drv.h | 2 - 2 files changed, 40 insertions(+), 14 deletions(-)
New commits: commit cad4b987d20a7e2313b961121ecdb0747e8fad8b Author: Kevin Brace <kevinbr...@gmx.com> Date: Sun Jan 28 14:24:58 2018 -0800 drm/openchrome: Version bumped to 3.0.66 Display FIFO fixes for PM800 chipset. Signed-off-by: Kevin Brace <kevinbr...@gmx.com> diff --git a/drivers/gpu/drm/openchrome/via_drv.h b/drivers/gpu/drm/openchrome/via_drv.h index bf6ff085bb63..89e312edfe8a 100644 --- a/drivers/gpu/drm/openchrome/via_drv.h +++ b/drivers/gpu/drm/openchrome/via_drv.h @@ -34,7 +34,7 @@ #define DRIVER_MAJOR 3 #define DRIVER_MINOR 0 -#define DRIVER_PATCHLEVEL 65 +#define DRIVER_PATCHLEVEL 66 #include <linux/module.h> commit d9e920d6c81937eb3619035dd38f8375fc0c375c Author: Kevin Brace <kevinbr...@gmx.com> Date: Sun Jan 28 14:15:51 2018 -0800 drm/openchrome: Correcting incorrect K8M800 IGA2 comments Signed-off-by: Kevin Brace <kevinbr...@gmx.com> diff --git a/drivers/gpu/drm/openchrome/via_crtc.c b/drivers/gpu/drm/openchrome/via_crtc.c index be267bcc1f56..da8322b3e7a8 100644 --- a/drivers/gpu/drm/openchrome/via_crtc.c +++ b/drivers/gpu/drm/openchrome/via_crtc.c @@ -915,19 +915,21 @@ static void via_iga2_display_fifo_regs(struct drm_device *dev, break; case PCI_DEVICE_ID_VIA_K8M800: - /* SR17[7:0] */ + /* CR95[7], CR94[7], CR68[7:4] */ iga->fifo_max_depth = 376; - /* SR16[7], SR16[5:0] */ + /* CR95[6:4], CR68[3:0] */ iga->fifo_threshold = 328; - /* SR18[7], SR18[5:0] */ + /* CR95[2:0], CR92[3:0] */ iga->fifo_high_threshold = 296; if ((fb->format->depth == 32) && (mode->hdisplay >= 1400)) { + /* CR94[6:0] */ iga->display_queue_expire_num = 64; } else { + /* CR94[6:0] */ iga->display_queue_expire_num = 128; } commit 7e3482553dfe2aba6c96110a4dc452894728f570 Author: Kevin Brace <kevinbr...@gmx.com> Date: Sun Jan 28 14:07:05 2018 -0800 drm/openchrome: Changing PM800 IGA1 and IGA2 display FIFO parameters The display FIFO parameters came from VIA Technologies Chrome IGP open source DDX device driver. Signed-off-by: Kevin Brace <kevinbr...@gmx.com> diff --git a/drivers/gpu/drm/openchrome/via_crtc.c b/drivers/gpu/drm/openchrome/via_crtc.c index d5cc9ce9ac21..be267bcc1f56 100644 --- a/drivers/gpu/drm/openchrome/via_crtc.c +++ b/drivers/gpu/drm/openchrome/via_crtc.c @@ -684,12 +684,23 @@ static void via_iga1_display_fifo_regs(struct drm_device *dev, break; case PCI_DEVICE_ID_VIA_PM800: - iga->display_queue_expire_num = 128; - iga->fifo_high_threshold = 32; - iga->fifo_threshold = 64; - iga->fifo_max_depth = 96; - break; + /* SR17[7:0] */ + iga->fifo_max_depth = 384; + /* SR16[7], SR16[5:0] */ + iga->fifo_threshold = 128; + + /* SR18[7], SR18[5:0] */ + iga->fifo_high_threshold = 64; + + if ((fb->format->depth == 32) && + (mode->hdisplay >= 1400)) { + iga->display_queue_expire_num = 64; + } else { + iga->display_queue_expire_num = 124; + } + + break; case PCI_DEVICE_ID_VIA_CN700: iga->display_queue_expire_num = 0; iga->fifo_high_threshold = 64; @@ -922,12 +933,25 @@ static void via_iga2_display_fifo_regs(struct drm_device *dev, break; case PCI_DEVICE_ID_VIA_PM800: - iga->display_queue_expire_num = 0; - iga->fifo_high_threshold = 64; - iga->fifo_threshold = 128; - iga->fifo_max_depth = 192; - break; + /* CR95[7], CR94[7], CR68[7:4] */ + iga->fifo_max_depth = 96; + + /* CR95[6:4], CR68[3:0] */ + iga->fifo_threshold = 64; + + /* CR95[2:0], CR92[3:0] */ + iga->fifo_high_threshold = 32; + if ((fb->format->depth == 32) && + (mode->hdisplay >= 1400)) { + /* CR94[6:0] */ + iga->display_queue_expire_num = 64; + } else { + /* CR94[6:0] */ + iga->display_queue_expire_num = 128; + } + + break; case PCI_DEVICE_ID_VIA_CN700: iga->display_queue_expire_num = 128; iga->fifo_high_threshold = 32; _______________________________________________ Openchrome-devel mailing list Openchrome-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/openchrome-devel