drivers/gpu/drm/openchrome/openchrome_display.c | 178 ------------------------ drivers/gpu/drm/openchrome/openchrome_drv.h | 7 drivers/gpu/drm/openchrome/openchrome_hdmi.c | 3 3 files changed, 2 insertions(+), 186 deletions(-)
New commits: commit 8fa71d63b91c461812972df4b4f9cc36b8aab1fd Author: Kevin Brace <kevinbr...@gmx.com> Date: Fri Jan 7 18:53:40 2022 -0600 drm/openchrome: Version bumped to 3.4.12 Signed-off-by: Kevin Brace <kevinbr...@gmx.com> diff --git a/drivers/gpu/drm/openchrome/openchrome_drv.h b/drivers/gpu/drm/openchrome/openchrome_drv.h index 99ad3c533c3d..d1c5f72130b2 100644 --- a/drivers/gpu/drm/openchrome/openchrome_drv.h +++ b/drivers/gpu/drm/openchrome/openchrome_drv.h @@ -60,10 +60,10 @@ #define DRIVER_MAJOR 3 #define DRIVER_MINOR 4 -#define DRIVER_PATCHLEVEL 11 +#define DRIVER_PATCHLEVEL 12 #define DRIVER_NAME "openchrome" #define DRIVER_DESC "OpenChrome DRM for VIA Technologies Chrome IGP" -#define DRIVER_DATE "20220104" +#define DRIVER_DATE "20220107" #define DRIVER_AUTHOR "OpenChrome Project" commit d7e6857544e3c540a15a0ee8c0fe6d9c5be41b56 Author: Kevin Brace <kevinbr...@gmx.com> Date: Fri Jan 7 18:49:58 2022 -0600 drm/openchrome: Remove via_encoder_prepare() Only VX900 chipset integrated HDMI / DVI code uses it, and it does not really do anything relevant for VX900 chipset integrated HDMI / DVI code. Signed-off-by: Kevin Brace <kevinbr...@gmx.com> diff --git a/drivers/gpu/drm/openchrome/openchrome_display.c b/drivers/gpu/drm/openchrome/openchrome_display.c index 44db0fff1c78..8dd0725c3fda 100644 --- a/drivers/gpu/drm/openchrome/openchrome_display.c +++ b/drivers/gpu/drm/openchrome/openchrome_display.c @@ -72,12 +72,6 @@ via_set_sync_polarity(struct drm_encoder *encoder, struct drm_display_mode *mode } } -void -via_encoder_prepare(struct drm_encoder *encoder) -{ - encoder->helper_private->dpms(encoder, DRM_MODE_DPMS_OFF); -} - void via_encoder_cleanup(struct drm_encoder *encoder) { struct via_encoder *enc = container_of(encoder, struct via_encoder, base); diff --git a/drivers/gpu/drm/openchrome/openchrome_drv.h b/drivers/gpu/drm/openchrome/openchrome_drv.h index c1a6e5cb5fa3..99ad3c533c3d 100644 --- a/drivers/gpu/drm/openchrome/openchrome_drv.h +++ b/drivers/gpu/drm/openchrome/openchrome_drv.h @@ -457,7 +457,6 @@ extern void via_set_sync_polarity(struct drm_encoder *encoder, struct drm_display_mode *mode, struct drm_display_mode *adjusted_mode); extern void via_encoder_cleanup(struct drm_encoder *encoder); -extern void via_encoder_prepare(struct drm_encoder *encoder); /* connectors */ extern int via_connector_mode_valid(struct drm_connector *connector, diff --git a/drivers/gpu/drm/openchrome/openchrome_hdmi.c b/drivers/gpu/drm/openchrome/openchrome_hdmi.c index 958c716e566a..5332a564426c 100644 --- a/drivers/gpu/drm/openchrome/openchrome_hdmi.c +++ b/drivers/gpu/drm/openchrome/openchrome_hdmi.c @@ -389,7 +389,6 @@ static const struct drm_encoder_helper_funcs via_hdmi_enc_helper_funcs = { .dpms = via_hdmi_enc_dpms, .mode_fixup = via_hdmi_enc_mode_fixup, .mode_set = via_hdmi_enc_mode_set, - .prepare = via_encoder_prepare, }; static unsigned int via_check_hdmi_i2c_status( commit d3491a81091f66396d06dee28374178c348a5af2 Author: Kevin Brace <kevinbr...@gmx.com> Date: Fri Jan 7 18:30:49 2022 -0600 drm/openchrome: Remove via_encoder_disable() Only VX900 chipset integrated HDMI / DVI code uses it, and it does not really do anything relevant for VX900 chipset integrated HDMI / DVI code. Signed-off-by: Kevin Brace <kevinbr...@gmx.com> diff --git a/drivers/gpu/drm/openchrome/openchrome_display.c b/drivers/gpu/drm/openchrome/openchrome_display.c index c15c71f1f29a..44db0fff1c78 100644 --- a/drivers/gpu/drm/openchrome/openchrome_display.c +++ b/drivers/gpu/drm/openchrome/openchrome_display.c @@ -28,57 +28,6 @@ #include "openchrome_drv.h" -void -via_encoder_disable(struct drm_encoder *encoder) -{ - struct via_encoder *enc = container_of(encoder, struct via_encoder, base); - struct openchrome_drm_private *dev_private = - encoder->dev->dev_private; - - /* First turn off the display */ - encoder->helper_private->dpms(encoder, DRM_MODE_DPMS_OFF); - - switch (enc->di_port) { - case VIA_DI_PORT_DVP0: - svga_wseq_mask(VGABASE, 0x1E, 0x00, BIT(7) | BIT(6)); - break; - - case VIA_DI_PORT_DVP1: - svga_wseq_mask(VGABASE, 0x1E, 0x00, BIT(5) | BIT(4)); - break; - - case VIA_DI_PORT_DFPH: - svga_wseq_mask(VGABASE, 0x2A, 0x00, BIT(3) | BIT(2)); - break; - - case VIA_DI_PORT_DFPL: - svga_wseq_mask(VGABASE, 0x2A, 0x00, BIT(1) | BIT(0)); - break; - - case VIA_DI_PORT_DFP: - svga_wseq_mask(VGABASE, 0x2A, 0x00, - BIT(3) | BIT(2) | BIT(1) | BIT(0)); - break; - - /* TTL LCD, Quanta case */ - case VIA_DI_PORT_DFPL + VIA_DI_PORT_DVP1: - svga_wseq_mask(VGABASE, 0x1E, 0x00, BIT(5) | BIT(4)); - svga_wseq_mask(VGABASE, 0x2A, 0x00, BIT(1) | BIT(0)); - break; - - case VIA_DI_PORT_DFPH + VIA_DI_PORT_DFPL + VIA_DI_PORT_DVP1: - svga_wseq_mask(VGABASE, 0x1E, 0x00, BIT(5) | BIT(4)); - svga_wseq_mask(VGABASE, 0x2A, 0x00, - BIT(3) | BIT(2) | BIT(1) | BIT(0)); - break; - - case VIA_DI_PORT_NONE: - default: - DRM_ERROR("Unsupported DIPort.\n"); - break; - } -} - void via_set_sync_polarity(struct drm_encoder *encoder, struct drm_display_mode *mode, struct drm_display_mode *adjusted_mode) diff --git a/drivers/gpu/drm/openchrome/openchrome_drv.h b/drivers/gpu/drm/openchrome/openchrome_drv.h index dac22937fc89..c1a6e5cb5fa3 100644 --- a/drivers/gpu/drm/openchrome/openchrome_drv.h +++ b/drivers/gpu/drm/openchrome/openchrome_drv.h @@ -458,7 +458,6 @@ extern void via_set_sync_polarity(struct drm_encoder *encoder, struct drm_display_mode *adjusted_mode); extern void via_encoder_cleanup(struct drm_encoder *encoder); extern void via_encoder_prepare(struct drm_encoder *encoder); -extern void via_encoder_disable(struct drm_encoder *encoder); /* connectors */ extern int via_connector_mode_valid(struct drm_connector *connector, diff --git a/drivers/gpu/drm/openchrome/openchrome_hdmi.c b/drivers/gpu/drm/openchrome/openchrome_hdmi.c index 3814226b6386..958c716e566a 100644 --- a/drivers/gpu/drm/openchrome/openchrome_hdmi.c +++ b/drivers/gpu/drm/openchrome/openchrome_hdmi.c @@ -390,7 +390,6 @@ static const struct drm_encoder_helper_funcs via_hdmi_enc_helper_funcs = { .mode_fixup = via_hdmi_enc_mode_fixup, .mode_set = via_hdmi_enc_mode_set, .prepare = via_encoder_prepare, - .disable = via_encoder_disable, }; static unsigned int via_check_hdmi_i2c_status( commit 14cfec705a4f474d934c1803dac9a3a505957436 Author: Kevin Brace <kevinbr...@gmx.com> Date: Fri Jan 7 17:47:11 2022 -0600 drm/openchrome: Remove via_encoder_commit() Only VX900 chipset integrated HDMI / DVI code uses it, and it does not really do anything relevant for VX900 chipset integrated HDMI / DVI code. Signed-off-by: Kevin Brace <kevinbr...@gmx.com> diff --git a/drivers/gpu/drm/openchrome/openchrome_display.c b/drivers/gpu/drm/openchrome/openchrome_display.c index 5d4e827b5f4d..c15c71f1f29a 100644 --- a/drivers/gpu/drm/openchrome/openchrome_display.c +++ b/drivers/gpu/drm/openchrome/openchrome_display.c @@ -28,127 +28,6 @@ #include "openchrome_drv.h" -/* - * Shared encoder routines. - */ -void -via_encoder_commit(struct drm_encoder *encoder) -{ - struct via_encoder *enc = container_of(encoder, struct via_encoder, base); - struct openchrome_drm_private *dev_private = - encoder->dev->dev_private; - struct drm_device *dev = encoder->dev; - struct pci_dev *pdev = to_pci_dev(dev->dev); - struct via_crtc *iga = NULL; - u8 value = 0; - - if (encoder->crtc == NULL) - return; - - iga = container_of(encoder->crtc, struct via_crtc, base); - if (iga->index) - value = BIT(4); - - /* Set IGA source and turn on DI port clock */ - switch (enc->di_port) { - case VIA_DI_PORT_DVP0: - /* DVP0 Data Source Selection. */ - svga_wcrt_mask(VGABASE, 0x96, value, BIT(4)); - /* enable DVP0 under CX700 */ - if (pdev->device == PCI_DEVICE_ID_VIA_VT3157) - svga_wcrt_mask(VGABASE, 0x91, BIT(5), BIT(5)); - /* Turn on DVP0 clk */ - svga_wseq_mask(VGABASE, 0x1E, 0xC0, BIT(7) | BIT(6)); - break; - - case VIA_DI_PORT_DVP1: - svga_wcrt_mask(VGABASE, 0x9B, value, BIT(4)); - /* enable DVP1 under these chipset. Does DVI exist - * for pre CX700 hardware */ - if ((pdev->device == PCI_DEVICE_ID_VIA_VT3157) || - (pdev->device == PCI_DEVICE_ID_VIA_VT1122) || - (pdev->device == PCI_DEVICE_ID_VIA_VX875) || - (pdev->device == PCI_DEVICE_ID_VIA_VX900_VGA)) - svga_wcrt_mask(VGABASE, 0xD3, 0x00, BIT(5)); - /* Turn on DVP1 clk */ - svga_wseq_mask(VGABASE, 0x1E, 0x30, BIT(5) | BIT(4)); - break; - - case VIA_DI_PORT_DFPH: - /* Port 96 is used on older hardware for the DVP0 */ - if ((pdev->device != PCI_DEVICE_ID_VIA_VT3157) && - (pdev->device != PCI_DEVICE_ID_VIA_VT1122) && - (pdev->device != PCI_DEVICE_ID_VIA_VX875) && - (pdev->device != PCI_DEVICE_ID_VIA_VX900_VGA)) - svga_wcrt_mask(VGABASE, 0x96, value, BIT(4)); - - svga_wcrt_mask(VGABASE, 0x97, value, BIT(4)); - /* Turn on DFPH clock */ - svga_wseq_mask(VGABASE, 0x2A, 0x0C, BIT(3) | BIT(2)); - break; - - case VIA_DI_PORT_DFPL: - /* Port 9B is used on older hardware for the DVP1 */ - if ((pdev->device != PCI_DEVICE_ID_VIA_VT3157) && - (pdev->device != PCI_DEVICE_ID_VIA_VT1122) && - (pdev->device != PCI_DEVICE_ID_VIA_VX875) && - (pdev->device != PCI_DEVICE_ID_VIA_VX900_VGA)) - svga_wcrt_mask(VGABASE, 0x9B, value, BIT(4)); - - svga_wcrt_mask(VGABASE, 0x99, value, BIT(4)); - /* Turn on DFPL clock */ - svga_wseq_mask(VGABASE, 0x2A, 0x03, BIT(1) | BIT(0)); - break; - - case VIA_DI_PORT_DFP: - if ((pdev->device == PCI_DEVICE_ID_VIA_K8M890) || - (pdev->device == PCI_DEVICE_ID_VIA_VT3343)) - svga_wcrt_mask(VGABASE, 0x97, 0x84, - BIT(7) | BIT(2) | BIT(1) | BIT(0)); - - svga_wcrt_mask(VGABASE, 0x97, value, BIT(4)); - svga_wcrt_mask(VGABASE, 0x99, value, BIT(4)); - /* Turn on DFP clk */ - svga_wseq_mask(VGABASE, 0x2A, 0x0F, BIT(3) | BIT(2) | BIT(1) | BIT(0)); - break; - - /* For TTL Type LCD */ - case (VIA_DI_PORT_DFPL + VIA_DI_PORT_DVP1): - svga_wcrt_mask(VGABASE, 0x99, value, BIT(4)); - svga_wcrt_mask(VGABASE, 0x9B, value, BIT(4)); - - /* Turn on DFPL, DVP1 clk */ - svga_wseq_mask(VGABASE, 0x2A, 0x03, BIT(1) | BIT(0)); - svga_wseq_mask(VGABASE, 0x1E, 0x30, BIT(5) | BIT(4)); - break; - - /* For 409 TTL Type LCD */ - case (VIA_DI_PORT_DFPH + VIA_DI_PORT_DFPL + VIA_DI_PORT_DVP1): - svga_wcrt_mask(VGABASE, 0x97, value, BIT(4)); - svga_wcrt_mask(VGABASE, 0x99, value, BIT(4)); - svga_wcrt_mask(VGABASE, 0x9B, value, BIT(4)); - - /* Turn on DFPHL, DVP1 clk */ - svga_wseq_mask(VGABASE, 0x2A, 0x0F, BIT(3) | BIT(2) | BIT(1) | BIT(0)); - svga_wseq_mask(VGABASE, 0x1E, 0x30, BIT(5) | BIT(4)); - break; - - case VIA_DI_PORT_NONE: - default: - DRM_ERROR("Unsupported DIPort.\n"); - break; - } - - /* Older chipsets only used CR91 to control all DI ports. - * For newer chipsets (CX700 and above) CR91 and CRD3 are - * used to control DVP0 and DVP1 seperately */ - if (iga->index && pdev->device != PCI_DEVICE_ID_VIA_VT3157) - svga_wcrt_mask(VGABASE, 0x91, 0x00, BIT(5)); - - /* Now turn on the display */ - encoder->helper_private->dpms(encoder, DRM_MODE_DPMS_ON); -} - void via_encoder_disable(struct drm_encoder *encoder) { diff --git a/drivers/gpu/drm/openchrome/openchrome_drv.h b/drivers/gpu/drm/openchrome/openchrome_drv.h index 3427e05cc59a..dac22937fc89 100644 --- a/drivers/gpu/drm/openchrome/openchrome_drv.h +++ b/drivers/gpu/drm/openchrome/openchrome_drv.h @@ -459,7 +459,6 @@ extern void via_set_sync_polarity(struct drm_encoder *encoder, extern void via_encoder_cleanup(struct drm_encoder *encoder); extern void via_encoder_prepare(struct drm_encoder *encoder); extern void via_encoder_disable(struct drm_encoder *encoder); -extern void via_encoder_commit(struct drm_encoder *encoder); /* connectors */ extern int via_connector_mode_valid(struct drm_connector *connector, diff --git a/drivers/gpu/drm/openchrome/openchrome_hdmi.c b/drivers/gpu/drm/openchrome/openchrome_hdmi.c index abb0384e1f11..3814226b6386 100644 --- a/drivers/gpu/drm/openchrome/openchrome_hdmi.c +++ b/drivers/gpu/drm/openchrome/openchrome_hdmi.c @@ -390,7 +390,6 @@ static const struct drm_encoder_helper_funcs via_hdmi_enc_helper_funcs = { .mode_fixup = via_hdmi_enc_mode_fixup, .mode_set = via_hdmi_enc_mode_set, .prepare = via_encoder_prepare, - .commit = via_encoder_commit, .disable = via_encoder_disable, };