Commit 278e480e authored by Neophytos's avatar Neophytos

catalyst-lts: 13.12

parent ad9a9689
#
# Chakra Packages for Chakra, part of chakra-project.org
#
# Maintainer: Neophytos Kolokotronis <tetris4 AT gmail DOT com>
_kernver="3.2.51-1-lts"
pkgname=catalyst-lts
pkgver=13.4
pkgver=13.12
pkgrel=1
_amdver=12.104
pkgdesc="AMD/ATI Catalyst drivers for linux. fglrx kernel module only"
arch=('x86_64')
url="http://www.ati.amd.com"
......@@ -17,22 +14,28 @@ depends=('linux-lts>=3.2' 'linux-lts<3.4' 'catalyst-utils')
makedepends=('gcc-libs' 'gcc>4.0.0' 'make' 'linux-lts-headers')
conflicts=('catalyst-test' 'nvidia' 'xf86-video-ati' 'xf86-video-radeonhd')
install=catalyst.install
source=(http://www2.ati.com/drivers/linux/amd-catalyst-${pkgver}-linux-x86.x86_64.zip
ati_make.sh
makefile_compat.patch
kolasa_fglrx_fixing_ttys.patch
lano1106_fglrx_intel_iommu.patch
lano1106_kcl_agp_13_4.patch
switchlibglx
switchlibGL)
md5sums=('558bd1b31173b06b25da647a7112e734'
lano1106_fglrx_intel_iommu.patch
lano1106_kcl_agp_13_4.patch
lano1106_fglrx-13.8_proc.patch
arch_3.13_kernel_acpi_node.patch
looks_like_amd_forgot_this.patch
jammy.patch # changes taken from http://ati.cchtml.com/show_bug.cgi?id=944#c5
fglrx_supported
switchlibglx
switchlibGL)
md5sums=('2418a94b699fe8fdec01ccd32f684c90'
'660396540b0ceaff71d6155c986734de'
'3e1b82bd69774ea808da69c983d6a43b'
'5f28dfc4c9fdb0fbfed69c8cb38659dd'
'5184b94a2a40216a67996999481dd9ee'
'c5156eddf81c8a1719b160d05a2e8d67'
'2ab4837233de42332753882445373d7b'
'25e7c640aeafb08bb5593b647c69cf9b'
'1c86b8e1d298ed29a7f6da65132620c6'
'3af2f4eca848d595791b8a4adc48a4cc'
'8bd182de340d6ed8b2dfcedfd3e5a389'
'99032d919ede27884b5c3e87ab110a96'
'99032d919ede27884b5c3e87ab110a96')
......@@ -56,10 +59,13 @@ build() {
msg "Applying patch(es) ..."
# makefile patch to choose arch_compat_alloc_user_space or older compat_alloc_user_space
# works only in combination with ati_make.sh script
patch -p1 -i ../makefile_compat.patch
patch -Np1 -i ../kolasa_fglrx_fixing_ttys.patch
patch -Np1 -i ${srcdir}/jammy.patch
patch -Np1 -i ../makefile_compat.patch
patch -Np1 -i ../lano1106_fglrx_intel_iommu.patch
patch -Np1 -i ../lano1106_kcl_agp_13_4.patch
patch -Np1 -i ../lano1106_fglrx-13.8_proc.patch
patch -Np1 -i ../arch_3.13_kernel_acpi_node.patch
patch -Np1 -i ../looks_like_amd_forgot_this.patch
cd "${srcdir}/archive_files/common/lib/modules/fglrx/build_mod"
cp "${srcdir}/archive_files/arch/${_archdir}/lib/modules/fglrx/build_mod/libfglrx_ip.a" .
......
--- 13.11/common/lib/modules/fglrx/build_mod/kcl_acpi.c 2013-11-22 19:52:37.000000000 +0100
+++ 13.11/common/lib/modules/fglrx/build_mod/kcl_acpi.c 2013-11-25 11:48:51.227678982 +0100
@@ -778,7 +778,9 @@
unsigned int ATI_API_CALL KCL_ACPI_GetHandles(kcl_match_info_t *pInfo)
{
#if LINUX_VERSION_CODE > KERNEL_VERSION(2,6,12)
- #if LINUX_VERSION_CODE >= KERNEL_VERSION(3,8,0)
+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(3,13,0)
+ pInfo->video_handle = pInfo->pcidev->dev.acpi_node.companion;
+ #elif LINUX_VERSION_CODE >= KERNEL_VERSION(3,8,0)
pInfo->video_handle = pInfo->pcidev->dev.acpi_node.handle;
#elif LINUX_VERSION_CODE > KERNEL_VERSION(2,6,19)
pInfo->video_handle = pInfo->pcidev->dev.archdata.acpi_handle;
#!/bin/sh
# copy this needed file from the catalyst build dir /pkgbuilds/catalyst/src/archive_files/common/lib/modules/fglrx/build_mod/fglrxko_pci_ids.h
# and place in th same dir as this script
set -e
filename="$1"
[ -e "$filename" ] || {
echo "USAGE: $0 path/to/fglrxko_pci_ids.h" >&2
exit 1
}
echo "# Listing generated by fglrx_supported_chakra-20120703."
echo "# Do not edit manually."
echo "# (C) 2012 The Chakra Project Team"
grep "0x" "$filename" | \
sed -n 's/FGL_ASIC_ID(0x\([0-9A-F]\{4\}\)),$/0x\1/p' | \
sort | uniq | sed -e 's/^[ \t]*//'
--- archive_files/common/lib/modules/fglrx/build_mod/firegl_public.c 2013-12-20 19:57:53.151466606 +0000
+++ archive_files/common/lib/modules/fglrx/build_mod/firegl_public.c 2013-12-20 19:55:58.498099013 +0000
@@ -1754,11 +1754,15 @@
*/
KCL_TYPE_Uid ATI_API_CALL KCL_GetEffectiveUid(void)
{
+#ifdef CONFIG_UIDGID_STRICT_TYPE_CHECKS
+ return __kuid_val(current_euid());
+#else
#ifdef current_euid
return current_euid();
#else
return current->euid;
#endif
+#endif
}
/** /brief Delay execution for the specified number of microseconds
--- 13.8/common/lib/modules/fglrx/build_mod/firegl_public.c 2013-09-26 00:59:28.292596334 -0400
+++ 13.8/common/lib/modules/fglrx/build_mod/firegl_public.c 2013-09-26 01:02:35.036252455 -0400
@@ -821,7 +821,7 @@ static struct proc_dir_entry *firegl_pro
KCL_DEBUG1(FN_FIREGL_PROC, "minor %d, proc_list 0x%08lx\n", minor, (unsigned long)proc_list);
if (!minor)
{
- root = KCL_create_proc_dir(NULL, "ati", S_IRUGO|S_IXUGO);
+ root = KCL_create_proc_dir(NULL, "ati", 0);
}
if (!root)
@@ -835,7 +835,7 @@ static struct proc_dir_entry *firegl_pro
// Global major debice number entry and Global debug entry
while (globallist->rp || globallist->fops)
{
- ent = KCL_create_proc_entry(root, globallist->name, S_IFREG|S_IRUGO, globallist->fops, globallist->rp, globallist->wp, dev);
+ ent = KCL_create_proc_entry(root, globallist->name, 0, globallist->fops, globallist->rp, globallist->wp, dev);
if (!ent)
{
KCL_remove_proc_dir_entry(NULL, "ati");
@@ -847,7 +847,7 @@ static struct proc_dir_entry *firegl_pro
}
sprintf(name, "%d", minor);
- *dev_root = KCL_create_proc_dir(root, name, S_IRUGO|S_IXUGO);
+ *dev_root = KCL_create_proc_dir(root, name, 0);
if (!*dev_root) {
KCL_remove_proc_dir_entry(root, "major");
KCL_remove_proc_dir_entry(NULL, "ati");
@@ -857,7 +857,7 @@ static struct proc_dir_entry *firegl_pro
while (list->rp || list->fops)
{
- ent = KCL_create_proc_entry(*dev_root, list->name, S_IFREG|S_IRUGO, list->fops, list->rp, list->wp,
+ ent = KCL_create_proc_entry(*dev_root, list->name, 0, list->fops, list->rp, list->wp,
((dev->pubdev.signature == FGL_DEVICE_SIGNATURE)? firegl_find_device(minor) : (dev)));
if (!ent)
{
@@ -6358,9 +6358,9 @@ void * KCL_create_proc_dir(void *root_di
dir = create_proc_entry(name, S_IFDIR | access, (struct proc_dir_entry *)root_dir);
#else
if (root_dir == NULL)
- dir = proc_mkdir_mode(name, S_IFDIR | access, NULL);
+ dir = proc_mkdir_mode(name, access, NULL);
else
- dir = proc_mkdir_mode(name, S_IFDIR | access, (struct proc_dir_entry *)root_dir);
+ dir = proc_mkdir_mode(name, access, (struct proc_dir_entry *)root_dir);
#endif
return dir;
--- 13.12/common/lib/modules/fglrx/build_mod/kcl_acpi.c 2013-12-17 20:05:35.000000000 +0100
+++ 13.12/common/lib/modules/fglrx/build_mod/kcl_acpi.c 2013-12-19 18:40:18.386568588 +0100
@@ -995,7 +995,11 @@
#endif
{
return KCL_ACPI_ERROR;
- }
+ }
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,9,1)
+ ((acpi_tbl_table_handler)handler)(hdr);
+#else
((acpi_table_handler)handler)(hdr);
+#endif
return KCL_ACPI_OK;
-}
+}
\ No newline at end of file
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment