diff options
-rw-r--r-- | kernels/linux-libre-lts-knock/0001-drm-radeon-Make-the-driver-load-without-the-firmwares.patch | 77 | ||||
-rw-r--r-- | kernels/linux-libre-lts-knock/PKGBUILD | 14 |
2 files changed, 87 insertions, 4 deletions
diff --git a/kernels/linux-libre-lts-knock/0001-drm-radeon-Make-the-driver-load-without-the-firmwares.patch b/kernels/linux-libre-lts-knock/0001-drm-radeon-Make-the-driver-load-without-the-firmwares.patch new file mode 100644 index 000000000..15da9c081 --- /dev/null +++ b/kernels/linux-libre-lts-knock/0001-drm-radeon-Make-the-driver-load-without-the-firmwares.patch @@ -0,0 +1,77 @@ +From 98e458c66c85472984a4230f34e7386af9e7b8d6 Mon Sep 17 00:00:00 2001 +From: Jason Self <j@jxself.org> +Date: Wed, 5 Aug 2015 09:16:03 -0700 +Subject: [PATCH 1/1] [PATCH] drm/radeon: Make the driver load without the + firmwares. + +--- + drivers/gpu/drm/radeon/r600.c | 8 ++++---- + drivers/gpu/drm/radeon/r600_cp.c | 5 ++++- + 2 files changed, 8 insertions(+), 5 deletions(-) + +diff --git a/drivers/gpu/drm/radeon/r600.c b/drivers/gpu/drm/radeon/r600.c +index 720e599..d6a92ba 100644 +--- a/drivers/gpu/drm/radeon/r600.c ++++ b/drivers/gpu/drm/radeon/r600.c +@@ -2442,7 +2442,7 @@ int r600_init_microcode(struct radeon_device *rdev) + } + + DRM_INFO("Loading %s Microcode\n", chip_name); +- ++#if 0 + snprintf(fw_name, sizeof(fw_name), "/*(DEBLOBBED)*/", chip_name); + err = reject_firmware(&rdev->pfp_fw, fw_name, rdev->dev); + if (err) +@@ -2494,7 +2494,7 @@ int r600_init_microcode(struct radeon_device *rdev) + err = -EINVAL; + } + } +- ++#endif + out: + if (err) { + if (err != -EINVAL) +@@ -3154,7 +3154,7 @@ int r600_init(struct radeon_device *rdev) + r = radeon_bo_init(rdev); + if (r) + return r; +- ++#if 0 + if (!rdev->me_fw || !rdev->pfp_fw || !rdev->rlc_fw) { + r = r600_init_microcode(rdev); + if (r) { +@@ -3162,7 +3162,7 @@ int r600_init(struct radeon_device *rdev) + return r; + } + } +- ++#endif + /* Initialize power management */ + radeon_pm_init(rdev); + +diff --git a/drivers/gpu/drm/radeon/r600_cp.c b/drivers/gpu/drm/radeon/r600_cp.c +index af15260..f138df9 100644 +--- a/drivers/gpu/drm/radeon/r600_cp.c ++++ b/drivers/gpu/drm/radeon/r600_cp.c +@@ -2241,7 +2241,7 @@ int r600_do_init_cp(struct drm_device *dev, drm_radeon_init_t *init, + else + r600_vm_init(dev); + } +- ++#if 0 + if (!dev_priv->me_fw || !dev_priv->pfp_fw) { + int err = r600_cp_init_microcode(dev_priv); + if (err) { +@@ -2250,6 +2250,9 @@ int r600_do_init_cp(struct drm_device *dev, drm_radeon_init_t *init, + return err; + } + } ++#endif ++ printk("Skipping firmware loading\n"); ++#endif + if (((dev_priv->flags & RADEON_FAMILY_MASK) >= CHIP_RV770)) + r700_cp_load_microcode(dev_priv); + else +-- +1.9.1 + diff --git a/kernels/linux-libre-lts-knock/PKGBUILD b/kernels/linux-libre-lts-knock/PKGBUILD index 7ac76ac32..605e53671 100644 --- a/kernels/linux-libre-lts-knock/PKGBUILD +++ b/kernels/linux-libre-lts-knock/PKGBUILD @@ -9,7 +9,7 @@ pkgbase=linux-libre-lts-knock _pkgbasever=3.14-gnu -_pkgver=3.14.49-gnu +_pkgver=3.14.50-gnu _knockpatchver=3.16_1 _replacesarchkernel=('linux%') # '%' gets replaced with _kernelname @@ -46,10 +46,11 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_pkgbasever}/li '0002-module-allow-multiple-calls-to-MODULE_DEVICE_TABLE-p.patch' '0003-module-remove-MODULE_GENERIC_TABLE.patch' '0006-genksyms-fix-typeof-handling.patch' - 'gcc5_buildfixes.diff') + 'gcc5_buildfixes.diff' + '0001-drm-radeon-Make-the-driver-load-without-the-firmwares.patch') sha256sums=('477555c709b9407fe37dbd70d3331ff9dde1f9d874aba2741f138d07ae6f281b' 'SKIP' - '8146f5e0dda01cb95bf8841bc76acea42fd04a2e864cbe2ecfe55092453cc929' + '811f8820610d9c8622229151c638f08d62b693242cac6b0c04428b6f5df863a2' 'SKIP' '70cbe962aa01989ffa83490bb0765d6e4c781f6133dc8d768d84bd6716ac0209' 'SKIP' @@ -67,7 +68,8 @@ sha256sums=('477555c709b9407fe37dbd70d3331ff9dde1f9d874aba2741f138d07ae6f281b' '52dec83a8805a8642d74d764494acda863e0aa23e3d249e80d4b457e20a3fd29' '65d58f63215ee3c5f9c4fc6bce36fc5311a6c7dbdbe1ad29de40647b47ff9c0d' 'cf2e7a2d00787f754028e7459688c2755a406e632ce48b60952fa4ff7ed6f4b7' - '9c89039a0f876888fda3be6f574bca5a120e3587d8342747bbc0723b0b4cde7a') + '9c89039a0f876888fda3be6f574bca5a120e3587d8342747bbc0723b0b4cde7a' + '38cf6bdf70dc070ff0b785937d99347bb91f8531ea2bcca50283c8923a184c6d') validpgpkeys=( '474402C8C582DAFBE389C427BCB7CF877E7D47A7' # Alexandre Oliva 'C92BAA713B8D53D3CAE63FC9E6974752F9704456' # André Silva @@ -124,6 +126,10 @@ prepare() { # http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=dc53324060f324e8af6867f57bf4891c13c6ef18 patch -p1 -i "${srcdir}/0006-genksyms-fix-typeof-handling.patch" + # Make the radeon driver load without the firmwares + # http://www.fsfla.org/pipermail/linux-libre/2015-August/003098.html + patch -Np1 -i ../0001-drm-radeon-Make-the-driver-load-without-the-firmwares.patch + cat "${srcdir}/config.${CARCH}" > ./.config # append pkgrel to extraversion |