diff options
| author | Yuval Adam <_@yuv.al> | 2023-04-22 21:06:59 +0300 |
|---|---|---|
| committer | Yuval Adam <_@yuv.al> | 2023-04-22 21:06:59 +0300 |
| commit | 71e32e0aa8f1adf618b4481869f9dbcd8e5f52bb (patch) | |
| tree | 83819f07a7f3b132dc2d91112e8ec85d1f065e5d /linux-mnt-pocket-reform/patches/0003-lcdif-fix-pcie-interference.patch | |
| parent | 3edef309190448fa2ce83e2e4fd7baec17f3d58b (diff) | |
Restore patches and add default config, hooks and preset
Diffstat (limited to 'linux-mnt-pocket-reform/patches/0003-lcdif-fix-pcie-interference.patch')
| -rw-r--r-- | linux-mnt-pocket-reform/patches/0003-lcdif-fix-pcie-interference.patch | 70 |
1 files changed, 0 insertions, 70 deletions
diff --git a/linux-mnt-pocket-reform/patches/0003-lcdif-fix-pcie-interference.patch b/linux-mnt-pocket-reform/patches/0003-lcdif-fix-pcie-interference.patch deleted file mode 100644 index 142cf33..0000000 --- a/linux-mnt-pocket-reform/patches/0003-lcdif-fix-pcie-interference.patch +++ /dev/null @@ -1,70 +0,0 @@ -From 7ebe66c198cc1f76d55bd42d81ae724f74b832a9 Mon Sep 17 00:00:00 2001 -From: "Lukas F. Hartmann" <lukas@mntre.com> -Date: Wed, 7 Sep 2022 06:23:35 +0200 -Subject: [PATCH 3/6] lcdif-fix-pcie-interference - ---- - drivers/gpu/drm/mxsfb/mxsfb_kms.c | 34 ++++++++++++++++++++++++++++++- - 1 file changed, 33 insertions(+), 1 deletion(-) - -diff --git a/drivers/gpu/drm/mxsfb/mxsfb_kms.c b/drivers/gpu/drm/mxsfb/mxsfb_kms.c -index 3bcc9c0..5b5b01f 100644 ---- a/drivers/gpu/drm/mxsfb/mxsfb_kms.c -+++ b/drivers/gpu/drm/mxsfb/mxsfb_kms.c -@@ -303,7 +303,7 @@ static void mxsfb_crtc_mode_set_nofb(struct mxsfb_drm_private *mxsfb, - - mxsfb_set_formats(mxsfb, bus_format); - -- clk_set_rate(mxsfb->clk, m->crtc_clock * 1000); -+ clk_set_rate(mxsfb->clk, m->crtc_clock * 660); - - mxsfb_set_mode(mxsfb, bus_flags); - } -@@ -662,12 +662,44 @@ static const uint64_t mxsfb_modifiers[] = { - * Initialization - */ - -+void imx8mq_pcie_qos_for_lcdif(void) -+{ -+ void __iomem *qosc = ioremap(0x307f0000, 0x2100); -+ // clock and unlock QoSC registers -+ writel(0x0, qosc); -+ writel(0x1, qosc); -+ writel(0x0, qosc+0x60); -+ -+ // limit number of outstanding transactions for PCIe1 -+ writel(0x0, qosc+0x1000); -+ writel(0x1, qosc+0x1000); -+ writel(0x01010100, qosc+0x1050); -+ writel(0x01010100, qosc+0x1060); -+ writel(0x01010100, qosc+0x1070); -+ writel(0x1, qosc+0x1000); -+ -+ // limit number of outstanding transactions for PCIe2 -+ writel(0x0, qosc+0x2000); -+ writel(0x1, qosc+0x2000); -+ writel(0x01010100, qosc+0x2050); -+ writel(0x01010100, qosc+0x2060); -+ writel(0x01010100, qosc+0x2070); -+ writel(0x1, qosc+0x2000); -+ -+ iounmap(qosc); -+} -+ - int mxsfb_kms_init(struct mxsfb_drm_private *mxsfb) - { - struct drm_encoder *encoder = &mxsfb->encoder; - struct drm_crtc *crtc = &mxsfb->crtc; - int ret; - -+ /* -+ FIXME Workaround to fix PCIe interfering with LCDIF refresh (MNT Reform) -+ */ -+ imx8mq_pcie_qos_for_lcdif(); -+ - drm_plane_helper_add(&mxsfb->planes.primary, - &mxsfb_plane_primary_helper_funcs); - ret = drm_universal_plane_init(mxsfb->drm, &mxsfb->planes.primary, 1, --- -2.39.0 - |
