rpms/nvidia-304xx-kmod/F-19 nvidia_304.88_linux_3.11.patch, NONE, 1.1 nvidia-304xx-kmod.spec, 1.16, 1.17 nvidia_304.88_linux_3.10.patch, 1.1, NONE
by Leigh Scott
Author: leigh123linux
Update of /cvs/nonfree/rpms/nvidia-304xx-kmod/F-19
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv8384
Modified Files:
nvidia-304xx-kmod.spec
Added Files:
nvidia_304.88_linux_3.11.patch
Removed Files:
nvidia_304.88_linux_3.10.patch
Log Message:
* Tue Sep 17 2013 Leigh Scott <leigh123linux(a)googlemail.com> - 304.88-3
- patch for 3.11 kernel
nvidia_304.88_linux_3.11.patch:
b/kernel/nv-i2c.c | 14 -
b/kernel/nv-procfs.c | 411 ++++++++++++++++++++++++++-------------------------
kernel/nv-linux.h | 4
3 files changed, 219 insertions(+), 210 deletions(-)
--- NEW FILE nvidia_304.88_linux_3.11.patch ---
diff -urN a/kernel/nv-i2c.c b/kernel/nv-i2c.c
--- a/kernel/nv-i2c.c 2013-03-27 17:26:51.000000000 -0400
+++ b/kernel/nv-i2c.c 2013-07-05 10:04:23.000000000 -0400
@@ -1,3 +1,4 @@
+
/* _NVRM_COPYRIGHT_BEGIN_
*
* Copyright 2005-2011 by NVIDIA Corporation. All rights reserved. All
@@ -311,8 +312,6 @@
BOOL NV_API_CALL nv_i2c_del_adapter(nv_state_t *nv, void *data)
{
struct i2c_adapter *pI2cAdapter = (struct i2c_adapter *)data;
- int osstatus = 0;
- BOOL wasReleased = FALSE;
#if defined(KERNEL_2_4)
if (!NV_WEAK_SYMBOL_PRESENT(i2c_add_adapter))
@@ -324,15 +323,10 @@
if (!pI2cAdapter) return FALSE;
// attempt release with the OS
- osstatus = i2c_del_adapter(pI2cAdapter);
-
- if (!osstatus)
- {
- os_free_mem(pI2cAdapter);
- wasReleased = TRUE;
- }
+ i2c_del_adapter(pI2cAdapter);
+ os_free_mem(pI2cAdapter);
- return wasReleased;
+ return TRUE;
}
#else // (defined(CONFIG_I2C) || defined(CONFIG_I2C_MODULE))
diff -urN a/kernel/nv-procfs.c b/kernel/nv-procfs.c
--- a/kernel/nv-procfs.c 2013-03-27 17:26:51.000000000 -0400
+++ b/kernel/nv-procfs.c 2013-07-05 10:12:52.000000000 -0400
@@ -60,60 +60,41 @@
__entry; \
})
-#define NV_CREATE_PROC_FILE(name,parent,__read_proc, \
- __write_proc,__fops,__data) \
- ({ \
- struct proc_dir_entry *__entry; \
- int __mode = (S_IFREG | S_IRUGO); \
- if ((NvUPtr)(__write_proc) != 0) \
- __mode |= S_IWUSR; \
- __entry = NV_CREATE_PROC_ENTRY(name, __mode, parent); \
- if (__entry != NULL) \
- { \
- if ((NvUPtr)(__read_proc) != 0) \
- __entry->read_proc = (__read_proc); \
- if ((NvUPtr)(__write_proc) != 0) \
- { \
- __entry->write_proc = (__write_proc); \
- __entry->proc_fops = (__fops); \
- } \
- __entry->data = (__data); \
- } \
- __entry; \
- })
+#define NV_PROC_RW (S_IFREG|S_IRUGO|S_IWUSR)
+#define NV_PROC_RO (S_IFREG|S_IRUGO)
#define NV_CREATE_PROC_DIR(name,parent) \
({ \
struct proc_dir_entry *__entry; \
int __mode = (S_IFDIR | S_IRUGO | S_IXUGO); \
- __entry = NV_CREATE_PROC_ENTRY(name, __mode, parent); \
+ __entry = proc_mkdir_mode(name, __mode, parent); \
__entry; \
})
+#if LINUX_VERSION_CODE <= KERNEL_VERSION(3,9,255)
+static inline void *PDE_DATA(const struct inode *inode) {
+ return PDE(inode)->data;
+}
+#endif
+
#define NV_PROC_WRITE_BUFFER_SIZE (64 * RM_PAGE_SIZE)
static int
-nv_procfs_read_gpu_info(
- char *page,
- char **start,
- off_t off,
- int count,
- int *eof,
- void *data
+nv_procfs_show_gpu_info(
+ struct seq_file *m,
+ void *v
)
{
- nv_state_t *nv = data;
+ nv_state_t *nv = m->private;
nv_linux_state_t *nvl = NV_GET_NVL_FROM_NV_STATE(nv);
struct pci_dev *dev = nvl->dev;
char *type, *fmt, tmpstr[NV_DEVICE_NAME_LENGTH];
- int len = 0, status;
+ int status;
NvU8 *uuid;
NvU32 vbios_rev1, vbios_rev2, vbios_rev3, vbios_rev4, vbios_rev5;
NvU32 fpga_rev1, fpga_rev2, fpga_rev3;
nv_stack_t *sp = NULL;
- *eof = 1;
-
NV_KMEM_CACHE_ALLOC_STACK(sp);
if (sp == NULL)
{
@@ -134,31 +115,31 @@
if (rm_get_device_name(sp, nv, dev->device, dev->subsystem_vendor,
dev->subsystem_device, NV_DEVICE_NAME_LENGTH,
tmpstr) != RM_OK)
- {
+ {
strcpy (tmpstr, "Unknown");
}
}
- len += sprintf(page+len, "Model: \t\t %s\n", tmpstr);
- len += sprintf(page+len, "IRQ: \t\t %d\n", nv->interrupt_line);
+ seq_printf(m, "Model: \t\t %s\n", tmpstr);
+ seq_printf(m, "IRQ: \t\t %d\n", nv->interrupt_line);
if (NV_IS_GVI_DEVICE(nv))
{
status = rm_gvi_get_firmware_version(sp, nv, &fpga_rev1, &fpga_rev2,
&fpga_rev3);
if (status != RM_OK)
- len += sprintf(page+len, "Firmware: \t ????.??.??\n");
+ seq_printf(m, "Firmware: \t ????.??.??\n");
else
{
fmt = "Firmware: \t %x.%x.%x\n";
- len += sprintf(page+len, fmt, fpga_rev1, fpga_rev2, fpga_rev3);
+ seq_printf(m, fmt, fpga_rev1, fpga_rev2, fpga_rev3);
}
}
else
{
if (rm_get_gpu_uuid(sp, nv, &uuid, NULL) == RM_OK)
{
- len += sprintf(page+len, "GPU UUID: \t %s\n", (char *)uuid);
+ seq_printf(m, "GPU UUID: \t %s\n", (char *)uuid);
os_free_mem(uuid);
}
@@ -166,12 +147,12 @@
&vbios_rev3, &vbios_rev4,
&vbios_rev5) != RM_OK)
{
- len += sprintf(page+len, "Video BIOS: \t ??.??.??.??.??\n");
+ seq_printf(m, "Video BIOS: \t ??.??.??.??.??\n");
}
else
{
fmt = "Video BIOS: \t %02x.%02x.%02x.%02x.%02x\n";
- len += sprintf(page+len, fmt, vbios_rev1, vbios_rev2, vbios_rev3,
+ seq_printf(m, fmt, vbios_rev1, vbios_rev2, vbios_rev3,
vbios_rev4, vbios_rev5);
}
}
@@ -182,12 +163,12 @@
type = "PCI-E";
else
type = "PCI";
- len += sprintf(page+len, "Bus Type: \t %s\n", type);
+ seq_printf(m, "Bus Type: \t %s\n", type);
- len += sprintf(page+len, "DMA Size: \t %d bits\n",
+ seq_printf(m, "DMA Size: \t %d bits\n",
nv_count_bits(dev->dma_mask));
- len += sprintf(page+len, "DMA Mask: \t 0x%llx\n", dev->dma_mask);
- len += sprintf(page+len, "Bus Location: \t %04x:%02x.%02x.%x\n",
+ seq_printf(m, "DMA Mask: \t 0x%llx\n", dev->dma_mask);
+ seq_printf(m, "Bus Location: \t %04x:%02x.%02x.%x\n",
nv->domain, nv->bus, nv->slot, PCI_FUNC(dev->devfn));
#if defined(DEBUG)
do
@@ -195,7 +176,7 @@
int j;
for (j = 0; j < NV_GPU_NUM_BARS; j++)
{
- len += sprintf(page+len, "BAR%u: \t\t 0x%llx (%lluMB)\n",
+ seq_printf(m, "BAR%u: \t\t 0x%llx (%lluMB)\n",
j, nv->bars[j].address, (nv->bars[j].size >> 20));
}
} while (0);
@@ -203,26 +184,120 @@
NV_KMEM_CACHE_FREE_STACK(sp);
- return len;
+ return 0;
}
static int
-nv_procfs_read_version(
- char *page,
- char **start,
- off_t off,
- int count,
- int *eof,
- void *data
+nv_procfs_open_gpu_info(
+ struct inode *inode,
+ struct file *file
)
{
- int len = 0;
- *eof = 1;
+ return single_open(file, nv_procfs_show_gpu_info, PDE_DATA(inode));
+}
- len += sprintf(page+len, "NVRM version: %s\n", pNVRM_ID);
- len += sprintf(page+len, "GCC version: %s\n", NV_COMPILER);
+static const struct file_operations nv_procfs_gpu_info_fops = {
+ .owner = THIS_MODULE,
+ .open = nv_procfs_open_gpu_info,
+ .read = seq_read,
+ .llseek = seq_lseek,
+ .release = single_release,
+};
- return len;
+static int
+nv_procfs_show_version(
+ struct seq_file *m,
+ void *v
+)
+{
+ seq_printf(m, "NVRM version: %s\n", pNVRM_ID);
+ seq_printf(m, "GCC version: %s\n", NV_COMPILER);
+
+ return 0;
+}
+
+static int
+nv_procfs_open_version(
+ struct inode *inode,
+ struct file *file
+)
+{
+ return single_open(file, nv_procfs_show_version, NULL);
+}
+
+static const struct file_operations nv_procfs_version_fops = {
+ .owner = THIS_MODULE,
+ .open = nv_procfs_open_version,
+ .read = seq_read,
+ .llseek = seq_lseek,
+ .release = single_release,
+};
+
+static int
+nv_procfs_show_registry(
+ struct seq_file *m,
+ void *v
+)
+{
+ nv_state_t *nv = m->private;
+ nv_linux_state_t *nvl = NULL;
+ char *registry_keys;
+
+ if (nv != NULL)
+ nvl = NV_GET_NVL_FROM_NV_STATE(nv);
+ registry_keys = ((nvl != NULL) ?
+ nvl->registry_keys : nv_registry_keys);
+
+ seq_printf(m, "Binary: \"%s\"\n", registry_keys);
+
+ return 0;
+}
+
+static ssize_t
+nv_procfs_write_registry(
+ struct file *file,
+ const char __user *buffer,
+ size_t count,
+ loff_t *pos
+)
+{
+ int status = 0;
+ nv_file_private_t *nvfp = NV_GET_FILE_PRIVATE(file);
+ char *proc_buffer;
+ unsigned long bytes_left;
+
+ down(&nvfp->fops_sp_lock[NV_FOPS_STACK_INDEX_PROCFS]);
+
+ bytes_left = (NV_PROC_WRITE_BUFFER_SIZE - nvfp->off - 1);
+
+ if (count == 0)
+ {
+ status = -EINVAL;
+ goto done;
+ }
+ else if ((bytes_left == 0) || (count > bytes_left))
+ {
+ status = -ENOSPC;
+ goto done;
+ }
+
+ proc_buffer = &((char *)nvfp->data)[nvfp->off];
+
+ if (copy_from_user(proc_buffer, buffer, count))
+ {
+ nv_printf(NV_DBG_ERRORS, "NVRM: failed to copy in proc data!\n");
+ status = -EFAULT;
+ }
+ else
+ {
+ nvfp->proc_data = PDE_DATA(file->f_inode);
+ nvfp->off += count;
+ }
+
+done:
+ up(&nvfp->fops_sp_lock[NV_FOPS_STACK_INDEX_PROCFS]);
+
+ return ((status < 0) ? status : count);
}
static struct pci_dev *nv_get_agp_device_by_class(unsigned int class)
@@ -432,7 +507,7 @@
nv_stack_t *sp = NULL;
if (0 == (file->f_mode & FMODE_WRITE))
- return 0;
+ return single_open(file, nv_procfs_show_registry, PDE_DATA(inode));
nvfp = nv_alloc_file_private();
if (nvfp == NULL)
@@ -481,6 +556,9 @@
RM_STATUS rm_status;
int rc = 0;
+ if (0 == (file->f_mode & FMODE_WRITE))
+ return single_release(inode, file);
+
nvfp = NV_GET_FILE_PRIVATE(file);
if (nvfp == NULL)
return 0;
@@ -545,122 +623,84 @@
return rc;
}
-static struct file_operations nv_procfs_registry_fops = {
+static const struct file_operations nv_procfs_registry_fops = {
.open = nv_procfs_open_registry,
+ .read = seq_read,
+ .llseek = seq_lseek,
+ .write = nv_procfs_write_registry,
.release = nv_procfs_close_registry,
};
static int
-nv_procfs_read_params(
- char *page,
- char **start,
- off_t off,
- int count,
- int *eof,
- void *data
+nv_procfs_show_params(
+ struct seq_file *m,
+ void *v
)
{
unsigned int i;
- int len = 0;
nv_parm_t *entry;
- *eof = 1;
for (i = 0; (entry = &nv_parms[i])->name != NULL; i++)
- len += sprintf(page+len, "%s: %u\n", entry->name, *entry->data);
+ seq_printf(m, "%s: %u\n", entry->name, *entry->data);
- len += sprintf(page+len, "RegistryDwords: \"%s\"\n",
+ seq_printf(m, "RegistryDwords: \"%s\"\n",
(NVreg_RegistryDwords != NULL) ? NVreg_RegistryDwords : "");
- len += sprintf(page+len, "RmMsg: \"%s\"\n",
+seq_printf(m, "RmMsg: \"%s\"\n",
(NVreg_RmMsg != NULL) ? NVreg_RmMsg : "");
- return len;
+ return 0;
}
static int
-nv_procfs_read_registry(
- char *page,
- char **start,
- off_t off,
- int count,
- int *eof,
- void *data
-)
+nv_procfs_open_params(
+ struct inode *inode,
+ struct file *file
+)
{
- nv_state_t *nv = data;
- nv_linux_state_t *nvl = NULL;
- char *registry_keys;
-
- if (nv != NULL)
- nvl = NV_GET_NVL_FROM_NV_STATE(nv);
- registry_keys = ((nvl != NULL) ?
- nvl->registry_keys : nv_registry_keys);
- *eof = 1;
- return sprintf(page, "Binary: \"%s\"\n", registry_keys);
+return single_open(file, nv_procfs_show_params, NULL);
}
+
+
+static const struct file_operations nv_procfs_params_fops = {
+ .owner = THIS_MODULE,
+ .open = nv_procfs_open_params,
+ .read = seq_read,
+ .llseek = seq_lseek,
+ .release = single_release,
+};
+
static int
-nv_procfs_write_registry(
- struct file *file,
- const char *buffer,
- unsigned long count,
- void *data
+nv_procfs_show_text_file(
+ struct seq_file *m,
+ void *v
)
{
- int status = 0;
- nv_file_private_t *nvfp = NV_GET_FILE_PRIVATE(file);
- char *proc_buffer;
- unsigned long bytes_left;
+ seq_printf(m, "%s", (char *)m->private);
- down(&nvfp->fops_sp_lock[NV_FOPS_STACK_INDEX_PROCFS]);
-
- bytes_left = (NV_PROC_WRITE_BUFFER_SIZE - nvfp->off - 1);
-
- if (count == 0)
- {
- status = -EINVAL;
- goto done;
- }
- else if ((bytes_left == 0) || (count > bytes_left))
- {
- status = -ENOSPC;
- goto done;
- }
-
- proc_buffer = &((char *)nvfp->data)[nvfp->off];
-
- if (copy_from_user(proc_buffer, buffer, count))
- {
- nv_printf(NV_DBG_ERRORS, "NVRM: failed to copy in proc data!\n");
- status = -EFAULT;
- }
- else
- {
- nvfp->proc_data = data;
- nvfp->off += count;
- }
-
-done:
- up(&nvfp->fops_sp_lock[NV_FOPS_STACK_INDEX_PROCFS]);
-
- return ((status < 0) ? status : (int)count);
+ return 0;
}
static int
-nv_procfs_read_text_file(
- char *page,
- char **start,
- off_t off,
- int count,
- int *eof,
- void *data
+nv_procfs_open_text_file(
+ struct inode *inode,
+ struct file *file
)
{
- *eof = 1;
- return sprintf(page, "%s", (char *)data);
+ return single_open(file, nv_procfs_show_text_file, PDE_DATA(inode));
}
+
+static const struct file_operations nv_procfs_text_fops = {
+ .owner = THIS_MODULE,
+ .open = nv_procfs_open_text_file,
+ .read = seq_read,
+ .llseek = seq_lseek,
+ .release = single_release,
+};
+
static void
nv_procfs_add_text_file(
struct proc_dir_entry *parent,
@@ -668,22 +708,7 @@
const char *text
)
{
- NV_CREATE_PROC_FILE(filename, parent,
- nv_procfs_read_text_file, NULL, NULL, (void *)text);
-}
-
-static void nv_procfs_unregister_all(struct proc_dir_entry *entry)
-{
- while (entry)
- {
- struct proc_dir_entry *next = entry->next;
- if (entry->subdir)
- nv_procfs_unregister_all(entry->subdir);
- remove_proc_entry(entry->name, entry->parent);
- if (entry == proc_nvidia)
- break;
- entry = next;
- }
+ proc_create_data(filename, NV_PROC_RO, parent, &nv_procfs_text_fops, (void *)text);
}
#endif
@@ -713,26 +738,11 @@
if (!proc_nvidia)
goto failed;
- entry = NV_CREATE_PROC_FILE("params", proc_nvidia,
- nv_procfs_read_params, NULL, NULL, NULL);
+ entry = proc_create("params", NV_PROC_RO, proc_nvidia, &nv_procfs_params_fops);
if (!entry)
goto failed;
- /*
- * entry->proc_fops originally points to a constant
- * structure, so to add more methods for the
- * binary registry write path, we need to replace the
- * said entry->proc_fops with a new fops structure.
- * However, in preparation for this, we need to preserve
- * the procfs read() and write() operations.
- */
- nv_procfs_registry_fops.read = entry->proc_fops->read;
- nv_procfs_registry_fops.write = entry->proc_fops->write;
-
- entry = NV_CREATE_PROC_FILE("registry", proc_nvidia,
- nv_procfs_read_registry,
- nv_procfs_write_registry,
- &nv_procfs_registry_fops, NULL);
+ entry = proc_create("registry", NV_PROC_RW, proc_nvidia, &nv_procfs_registry_fops);
if (!entry)
goto failed;
@@ -753,8 +763,7 @@
nv_procfs_add_text_file(proc_nvidia_patches, "README", __README_patches);
- entry = NV_CREATE_PROC_FILE("version", proc_nvidia,
- nv_procfs_read_version, NULL, NULL, NULL);
+ entry = proc_create("version", NV_PROC_RO, proc_nvidia, &nv_procfs_version_fops);
if (!entry)
goto failed;
@@ -771,15 +780,11 @@
if (!proc_nvidia_gpu)
goto failed;
- entry = NV_CREATE_PROC_FILE("information", proc_nvidia_gpu,
- nv_procfs_read_gpu_info, NULL, NULL, nv);
+ entry = proc_create_data("information", NV_PROC_RO, proc_nvidia_gpu, &nv_procfs_gpu_info_fops, nv);
if (!entry)
goto failed;
- entry = NV_CREATE_PROC_FILE("registry", proc_nvidia_gpu,
- nv_procfs_read_registry,
- nv_procfs_write_registry,
- &nv_procfs_registry_fops, nv);
+ entry = proc_create_data("registry", NV_PROC_RW, proc_nvidia_gpu, &nv_procfs_registry_fops, nv);
if (!entry)
goto failed;
@@ -788,28 +793,34 @@
proc_nvidia_agp = NV_CREATE_PROC_DIR("agp", proc_nvidia);
if (!proc_nvidia_agp)
goto failed;
-
- entry = NV_CREATE_PROC_FILE("status", proc_nvidia_agp,
- nv_procfs_read_agp_status, NULL, NULL, nv);
- if (!entry)
- goto failed;
-
- entry = NV_CREATE_PROC_FILE("host-bridge", proc_nvidia_agp,
- nv_procfs_read_agp_info, NULL, NULL, NULL);
- if (!entry)
- goto failed;
-
- entry = NV_CREATE_PROC_FILE("gpu", proc_nvidia_agp,
- nv_procfs_read_agp_info, NULL, NULL, nv);
- if (!entry)
- goto failed;
+//
+// - entry = NV_CREATE_PROC_FILE("params", proc_nvidia,
+//- nv_procfs_read_params, NULL, NULL, NULL);
+//+ entry = proc_create("params", NV_PROC_RO, proc_nvidia, &nv_procfs_params_fops);
+
+ // entry = NV_CREATE_PROC_FILE("status", proc_nvidia_agp,
+ // nv_procfs_read_agp_status, NULL, NULL, nv);
+// entry = proc_create("status", NV_PROC_RO, proc_nvidia, &nv_procfs_params_fops);
+
+ // if (!entry)
+ // goto failed;
+
+ // entry = NV_CREATE_PROC_FILE("host-bridge", proc_nvidia_agp,
+ // nv_procfs_read_agp_info, NULL, NULL, NULL);
+ // if (!entry)
+ // goto failed;
+
+ //entry = NV_CREATE_PROC_FILE("gpu", proc_nvidia_agp,
+ // nv_procfs_read_agp_info, NULL, NULL, nv);
+ //if (!entry)
+ // goto failed;
}
}
#endif
return 0;
#if defined(CONFIG_PROC_FS)
failed:
- nv_procfs_unregister_all(proc_nvidia);
+ remove_proc_subtree("nvidia", proc_nvidia);
return -1;
#endif
}
@@ -817,6 +828,6 @@
void nv_unregister_procfs(void)
{
#if defined(CONFIG_PROC_FS)
- nv_procfs_unregister_all(proc_nvidia);
+ remove_proc_subtree("nvidia", proc_nvidia);
#endif
}
--- a/kernel/nv-linux.h
+++ b/kernel/nv-linux.h
@@ -1027,7 +1027,11 @@ static inline int nv_execute_on_all_cpus
#endif
#if !defined(NV_VMWARE)
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 11, 0)
+#define NV_NUM_PHYSPAGES get_num_physpages()
+#else
#define NV_NUM_PHYSPAGES num_physpages
+#endif
#define NV_GET_CURRENT_PROCESS() current->tgid
#define NV_IN_ATOMIC() in_atomic()
#define NV_LOCAL_BH_DISABLE() local_bh_disable()
Index: nvidia-304xx-kmod.spec
===================================================================
RCS file: /cvs/nonfree/rpms/nvidia-304xx-kmod/F-19/nvidia-304xx-kmod.spec,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -r1.16 -r1.17
--- nvidia-304xx-kmod.spec 30 Aug 2013 06:14:15 -0000 1.16
+++ nvidia-304xx-kmod.spec 17 Sep 2013 14:15:23 -0000 1.17
@@ -3,12 +3,12 @@
# "buildforkernels newest" macro for just that build; immediately after
# queuing that build enable the macro again for subsequent builds; that way
# a new akmod package will only get build when a new one is actually needed
-%global buildforkernels newest
+%global buildforkernels current
Name: nvidia-304xx-kmod
Version: 304.88
# Taken over by kmodtool
-Release: 2%{?dist}.6
+Release: 3%{?dist}
Summary: NVIDIA display driver kernel module
Group: System Environment/Kernel
License: Redistributable, no modification permitted
@@ -20,7 +20,7 @@
Source11: nvidia-304xx-kmodtool-excludekernel-filterfile
-Patch0: nvidia_304.88_linux_3.10.patch
+Patch0: nvidia_304.88_linux_3.11.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
@@ -81,6 +81,9 @@
%changelog
+* Tue Sep 17 2013 Leigh Scott <leigh123linux(a)googlemail.com> - 304.88-3
+- patch for 3.11 kernel
+
* Fri Aug 30 2013 Nicolas Chauvet <kwizart(a)gmail.com> - 304.88-2.6
- Rebuilt for kernel
--- nvidia_304.88_linux_3.10.patch DELETED ---
10 years, 11 months
rpms/nvidia-kmod/F-19 3.11_kernel.patch, NONE, 1.1 nvidia-kmod.spec, 1.135, 1.136 3.10_kernel.patch, 1.1, NONE
by Leigh Scott
Author: leigh123linux
Update of /cvs/nonfree/rpms/nvidia-kmod/F-19
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv7978
Modified Files:
nvidia-kmod.spec
Added Files:
3.11_kernel.patch
Removed Files:
3.10_kernel.patch
Log Message:
* Tue Sep 17 2013 Leigh Scott <leigh123linux(a)googlemail.com> - 1:319.32-3
- patch for 3.11 kernel
3.11_kernel.patch:
b/kernel/nv-i2c.c | 13 -
b/kernel/nv-procfs.c | 372 +++++++++++++++++++++++++--------------------------
kernel/nv-linux.h | 4
3 files changed, 194 insertions(+), 195 deletions(-)
--- NEW FILE 3.11_kernel.patch ---
diff -ur a/kernel/nv-i2c.c b/kernel/nv-i2c.c
--- a/kernel/nv-i2c.c 2013-07-19 15:37:04.977306079 +0200
+++ b/kernel/nv-i2c.c 2013-07-19 14:16:08.755700586 +0200
@@ -311,8 +311,6 @@
BOOL NV_API_CALL nv_i2c_del_adapter(nv_state_t *nv, void *data)
{
struct i2c_adapter *pI2cAdapter = (struct i2c_adapter *)data;
- int osstatus = 0;
- BOOL wasReleased = FALSE;
#if defined(KERNEL_2_4)
if (!NV_WEAK_SYMBOL_PRESENT(i2c_add_adapter))
@@ -324,15 +322,10 @@
if (!pI2cAdapter) return FALSE;
// attempt release with the OS
- osstatus = i2c_del_adapter(pI2cAdapter);
+ i2c_del_adapter(pI2cAdapter);
+ os_free_mem(pI2cAdapter);
- if (!osstatus)
- {
- os_free_mem(pI2cAdapter);
- wasReleased = TRUE;
- }
-
- return wasReleased;
+ return TRUE;
}
#else // (defined(CONFIG_I2C) || defined(CONFIG_I2C_MODULE))
diff -ur a/kernel/nv-procfs.c b/kernel/nv-procfs.c
--- a/kernel/nv-procfs.c 2013-07-19 15:37:04.977306079 +0200
+++ b/kernel/nv-procfs.c 2013-07-19 15:23:15.013490851 +0200
@@ -60,60 +60,41 @@
__entry; \
})
-#define NV_CREATE_PROC_FILE(name,parent,__read_proc, \
- __write_proc,__fops,__data) \
- ({ \
- struct proc_dir_entry *__entry; \
- int __mode = (S_IFREG | S_IRUGO); \
- if ((NvUPtr)(__write_proc) != 0) \
- __mode |= S_IWUSR; \
- __entry = NV_CREATE_PROC_ENTRY(name, __mode, parent); \
- if (__entry != NULL) \
- { \
- if ((NvUPtr)(__read_proc) != 0) \
- __entry->read_proc = (__read_proc); \
- if ((NvUPtr)(__write_proc) != 0) \
- { \
- __entry->write_proc = (__write_proc); \
- __entry->proc_fops = (__fops); \
- } \
- __entry->data = (__data); \
- } \
- __entry; \
- })
+#define NV_PROC_RW (S_IFREG|S_IRUGO|S_IWUSR)
+#define NV_PROC_RO (S_IFREG|S_IRUGO)
#define NV_CREATE_PROC_DIR(name,parent) \
({ \
struct proc_dir_entry *__entry; \
int __mode = (S_IFDIR | S_IRUGO | S_IXUGO); \
- __entry = NV_CREATE_PROC_ENTRY(name, __mode, parent); \
+ __entry = proc_mkdir_mode(name, __mode, parent); \
__entry; \
})
+#if LINUX_VERSION_CODE <= KERNEL_VERSION(3,9,255)
+static inline void *PDE_DATA(const struct inode *inode) {
+ return PDE(inode)->data;
+}
+#endif
+
#define NV_PROC_WRITE_BUFFER_SIZE (64 * RM_PAGE_SIZE)
static int
-nv_procfs_read_gpu_info(
- char *page,
- char **start,
- off_t off,
- int count,
- int *eof,
- void *data
+nv_procfs_show_gpu_info(
+ struct seq_file *m,
+ void *v
)
{
- nv_state_t *nv = data;
+ nv_state_t *nv = m->private;
nv_linux_state_t *nvl = NV_GET_NVL_FROM_NV_STATE(nv);
struct pci_dev *dev = nvl->dev;
char *type, *fmt, tmpstr[NV_DEVICE_NAME_LENGTH];
- int len = 0, status;
+ int status;
NvU8 *uuid;
NvU32 vbios_rev1, vbios_rev2, vbios_rev3, vbios_rev4, vbios_rev5;
NvU32 fpga_rev1, fpga_rev2, fpga_rev3;
nv_stack_t *sp = NULL;
- *eof = 1;
-
NV_KMEM_CACHE_ALLOC_STACK(sp);
if (sp == NULL)
{
@@ -134,31 +115,31 @@
if (rm_get_device_name(sp, nv, dev->device, dev->subsystem_vendor,
dev->subsystem_device, NV_DEVICE_NAME_LENGTH,
tmpstr) != RM_OK)
- {
+ {
strcpy (tmpstr, "Unknown");
}
}
- len += sprintf(page+len, "Model: \t\t %s\n", tmpstr);
- len += sprintf(page+len, "IRQ: \t\t %d\n", nv->interrupt_line);
+ seq_printf(m, "Model: \t\t %s\n", tmpstr);
+ seq_printf(m, "IRQ: \t\t %d\n", nv->interrupt_line);
if (NV_IS_GVI_DEVICE(nv))
{
status = rm_gvi_get_firmware_version(sp, nv, &fpga_rev1, &fpga_rev2,
&fpga_rev3);
if (status != RM_OK)
- len += sprintf(page+len, "Firmware: \t ????.??.??\n");
+ seq_printf(m, "Firmware: \t ????.??.??\n");
else
{
fmt = "Firmware: \t %x.%x.%x\n";
- len += sprintf(page+len, fmt, fpga_rev1, fpga_rev2, fpga_rev3);
+ seq_printf(m, fmt, fpga_rev1, fpga_rev2, fpga_rev3);
}
}
else
{
if (rm_get_gpu_uuid(sp, nv, &uuid, NULL) == RM_OK)
{
- len += sprintf(page+len, "GPU UUID: \t %s\n", (char *)uuid);
+ seq_printf(m, "GPU UUID: \t %s\n", (char *)uuid);
os_free_mem(uuid);
}
@@ -166,12 +147,12 @@
&vbios_rev3, &vbios_rev4,
&vbios_rev5) != RM_OK)
{
- len += sprintf(page+len, "Video BIOS: \t ??.??.??.??.??\n");
+ seq_printf(m, "Video BIOS: \t ??.??.??.??.??\n");
}
else
{
fmt = "Video BIOS: \t %02x.%02x.%02x.%02x.%02x\n";
- len += sprintf(page+len, fmt, vbios_rev1, vbios_rev2, vbios_rev3,
+ seq_printf(m, fmt, vbios_rev1, vbios_rev2, vbios_rev3,
vbios_rev4, vbios_rev5);
}
}
@@ -180,12 +161,12 @@
type = "PCIe";
else
type = "PCI";
- len += sprintf(page+len, "Bus Type: \t %s\n", type);
+ seq_printf(m, "Bus Type: \t %s\n", type);
- len += sprintf(page+len, "DMA Size: \t %d bits\n",
+ seq_printf(m, "DMA Size: \t %d bits\n",
nv_count_bits(dev->dma_mask));
- len += sprintf(page+len, "DMA Mask: \t 0x%llx\n", dev->dma_mask);
- len += sprintf(page+len, "Bus Location: \t %04x:%02x.%02x.%x\n",
+ seq_printf(m, "DMA Mask: \t 0x%llx\n", dev->dma_mask);
+ seq_printf(m, "Bus Location: \t %04x:%02x.%02x.%x\n",
nv->domain, nv->bus, nv->slot, PCI_FUNC(dev->devfn));
#if defined(DEBUG)
do
@@ -193,7 +174,7 @@
int j;
for (j = 0; j < NV_GPU_NUM_BARS; j++)
{
- len += sprintf(page+len, "BAR%u: \t\t 0x%llx (%lluMB)\n",
+ seq_printf(m, "BAR%u: \t\t 0x%llx (%lluMB)\n",
j, nv->bars[j].address, (nv->bars[j].size >> 20));
}
} while (0);
@@ -201,26 +182,120 @@
NV_KMEM_CACHE_FREE_STACK(sp);
- return len;
+ return 0;
}
static int
-nv_procfs_read_version(
- char *page,
- char **start,
- off_t off,
- int count,
- int *eof,
- void *data
+nv_procfs_open_gpu_info(
+ struct inode *inode,
+ struct file *file
+)
+{
+ return single_open(file, nv_procfs_show_gpu_info, PDE_DATA(inode));
+}
+
+static const struct file_operations nv_procfs_gpu_info_fops = {
+ .owner = THIS_MODULE,
+ .open = nv_procfs_open_gpu_info,
+ .read = seq_read,
+ .llseek = seq_lseek,
+ .release = single_release,
+};
+
+static int
+nv_procfs_show_version(
+ struct seq_file *m,
+ void *v
+)
+{
+ seq_printf(m, "NVRM version: %s\n", pNVRM_ID);
+ seq_printf(m, "GCC version: %s\n", NV_COMPILER);
+
+ return 0;
+}
+
+static int
+nv_procfs_open_version(
+ struct inode *inode,
+ struct file *file
+)
+{
+ return single_open(file, nv_procfs_show_version, NULL);
+}
+
+static const struct file_operations nv_procfs_version_fops = {
+ .owner = THIS_MODULE,
+ .open = nv_procfs_open_version,
+ .read = seq_read,
+ .llseek = seq_lseek,
+ .release = single_release,
+};
+
+static int
+nv_procfs_show_registry(
+ struct seq_file *m,
+ void *v
+)
+{
+ nv_state_t *nv = m->private;
+ nv_linux_state_t *nvl = NULL;
+ char *registry_keys;
+
+ if (nv != NULL)
+ nvl = NV_GET_NVL_FROM_NV_STATE(nv);
+ registry_keys = ((nvl != NULL) ?
+ nvl->registry_keys : nv_registry_keys);
+
+ seq_printf(m, "Binary: \"%s\"\n", registry_keys);
+
+ return 0;
+}
+
+static ssize_t
+nv_procfs_write_registry(
+ struct file *file,
+ const char __user *buffer,
+ size_t count,
+ loff_t *pos
)
{
- int len = 0;
- *eof = 1;
+ int status = 0;
+ nv_file_private_t *nvfp = NV_GET_FILE_PRIVATE(file);
+ char *proc_buffer;
+ unsigned long bytes_left;
+
+ down(&nvfp->fops_sp_lock[NV_FOPS_STACK_INDEX_PROCFS]);
+
+ bytes_left = (NV_PROC_WRITE_BUFFER_SIZE - nvfp->off - 1);
+
+ if (count == 0)
+ {
+ status = -EINVAL;
+ goto done;
+ }
+ else if ((bytes_left == 0) || (count > bytes_left))
+ {
+ status = -ENOSPC;
+ goto done;
+ }
+
+ proc_buffer = &((char *)nvfp->data)[nvfp->off];
+
+ if (copy_from_user(proc_buffer, buffer, count))
+ {
+ nv_printf(NV_DBG_ERRORS, "NVRM: failed to copy in proc data!\n");
+ status = -EFAULT;
+ }
+ else
+ {
+ nvfp->proc_data = PDE_DATA(file->f_inode);
+ nvfp->off += count;
+ }
- len += sprintf(page+len, "NVRM version: %s\n", pNVRM_ID);
- len += sprintf(page+len, "GCC version: %s\n", NV_COMPILER);
+done:
+ up(&nvfp->fops_sp_lock[NV_FOPS_STACK_INDEX_PROCFS]);
- return len;
+ return ((status < 0) ? status : count);
}
static int
@@ -233,7 +308,7 @@
nv_stack_t *sp = NULL;
if (0 == (file->f_mode & FMODE_WRITE))
- return 0;
+ return single_open(file, nv_procfs_show_registry, PDE_DATA(inode));
nvfp = nv_alloc_file_private();
if (nvfp == NULL)
@@ -282,6 +357,9 @@
RM_STATUS rm_status;
int rc = 0;
+ if (0 == (file->f_mode & FMODE_WRITE))
+ return single_release(inode, file);
+
nvfp = NV_GET_FILE_PRIVATE(file);
if (nvfp == NULL)
return 0;
@@ -346,122 +424,81 @@
return rc;
}
-static struct file_operations nv_procfs_registry_fops = {
+static const struct file_operations nv_procfs_registry_fops = {
.open = nv_procfs_open_registry,
+ .read = seq_read,
+ .llseek = seq_lseek,
+ .write = nv_procfs_write_registry,
.release = nv_procfs_close_registry,
};
static int
-nv_procfs_read_params(
- char *page,
- char **start,
- off_t off,
- int count,
- int *eof,
- void *data
+nv_procfs_show_params(
+ struct seq_file *m,
+ void *v
)
{
unsigned int i;
- int len = 0;
nv_parm_t *entry;
- *eof = 1;
for (i = 0; (entry = &nv_parms[i])->name != NULL; i++)
- len += sprintf(page+len, "%s: %u\n", entry->name, *entry->data);
+ seq_printf(m, "%s: %u\n", entry->name, *entry->data);
- len += sprintf(page+len, "RegistryDwords: \"%s\"\n",
+ seq_printf(m, "RegistryDwords: \"%s\"\n",
(NVreg_RegistryDwords != NULL) ? NVreg_RegistryDwords : "");
- len += sprintf(page+len, "RmMsg: \"%s\"\n",
+ seq_printf(m, "RmMsg: \"%s\"\n",
(NVreg_RmMsg != NULL) ? NVreg_RmMsg : "");
- return len;
+ return 0;
}
static int
-nv_procfs_read_registry(
- char *page,
- char **start,
- off_t off,
- int count,
- int *eof,
- void *data
-)
+nv_procfs_open_params(
+ struct inode *inode,
+ struct file *file
+)
{
- nv_state_t *nv = data;
- nv_linux_state_t *nvl = NULL;
- char *registry_keys;
+ return single_open(file, nv_procfs_show_params, NULL);
+}
- if (nv != NULL)
- nvl = NV_GET_NVL_FROM_NV_STATE(nv);
- registry_keys = ((nvl != NULL) ?
- nvl->registry_keys : nv_registry_keys);
+static const struct file_operations nv_procfs_params_fops = {
+ .owner = THIS_MODULE,
+ .open = nv_procfs_open_params,
+ .read = seq_read,
+ .llseek = seq_lseek,
+ .release = single_release,
+};
- *eof = 1;
- return sprintf(page, "Binary: \"%s\"\n", registry_keys);
-}
static int
-nv_procfs_write_registry(
- struct file *file,
- const char *buffer,
- unsigned long count,
- void *data
+nv_procfs_show_text_file(
+ struct seq_file *m,
+ void *v
)
{
- int status = 0;
- nv_file_private_t *nvfp = NV_GET_FILE_PRIVATE(file);
- char *proc_buffer;
- unsigned long bytes_left;
-
- down(&nvfp->fops_sp_lock[NV_FOPS_STACK_INDEX_PROCFS]);
-
- bytes_left = (NV_PROC_WRITE_BUFFER_SIZE - nvfp->off - 1);
+ seq_printf(m, "%s", (char *)m->private);
- if (count == 0)
- {
- status = -EINVAL;
- goto done;
- }
- else if ((bytes_left == 0) || (count > bytes_left))
- {
- status = -ENOSPC;
- goto done;
- }
-
- proc_buffer = &((char *)nvfp->data)[nvfp->off];
-
- if (copy_from_user(proc_buffer, buffer, count))
- {
- nv_printf(NV_DBG_ERRORS, "NVRM: failed to copy in proc data!\n");
- status = -EFAULT;
- }
- else
- {
- nvfp->proc_data = data;
- nvfp->off += count;
- }
-
-done:
- up(&nvfp->fops_sp_lock[NV_FOPS_STACK_INDEX_PROCFS]);
-
- return ((status < 0) ? status : (int)count);
+ return 0;
}
static int
-nv_procfs_read_text_file(
- char *page,
- char **start,
- off_t off,
- int count,
- int *eof,
- void *data
+nv_procfs_open_text_file(
+ struct inode *inode,
+ struct file *file
)
{
- *eof = 1;
- return sprintf(page, "%s", (char *)data);
+ return single_open(file, nv_procfs_show_text_file, PDE_DATA(inode));
}
+static const struct file_operations nv_procfs_text_fops = {
+ .owner = THIS_MODULE,
+ .open = nv_procfs_open_text_file,
+ .read = seq_read,
+ .llseek = seq_lseek,
+ .release = single_release,
+};
+
static void
nv_procfs_add_text_file(
struct proc_dir_entry *parent,
@@ -469,22 +506,7 @@
const char *text
)
{
- NV_CREATE_PROC_FILE(filename, parent,
- nv_procfs_read_text_file, NULL, NULL, (void *)text);
-}
-
-static void nv_procfs_unregister_all(struct proc_dir_entry *entry)
-{
- while (entry)
- {
- struct proc_dir_entry *next = entry->next;
- if (entry->subdir)
- nv_procfs_unregister_all(entry->subdir);
- remove_proc_entry(entry->name, entry->parent);
- if (entry == proc_nvidia)
- break;
- entry = next;
- }
+ proc_create_data(filename, NV_PROC_RO, parent, &nv_procfs_text_fops, (void *)text);
}
#endif
@@ -513,26 +535,11 @@
if (!proc_nvidia)
goto failed;
- entry = NV_CREATE_PROC_FILE("params", proc_nvidia,
- nv_procfs_read_params, NULL, NULL, NULL);
+ entry = proc_create("params", NV_PROC_RO, proc_nvidia, &nv_procfs_params_fops);
if (!entry)
goto failed;
- /*
- * entry->proc_fops originally points to a constant
- * structure, so to add more methods for the
- * binary registry write path, we need to replace the
- * said entry->proc_fops with a new fops structure.
- * However, in preparation for this, we need to preserve
- * the procfs read() and write() operations.
- */
- nv_procfs_registry_fops.read = entry->proc_fops->read;
- nv_procfs_registry_fops.write = entry->proc_fops->write;
-
- entry = NV_CREATE_PROC_FILE("registry", proc_nvidia,
- nv_procfs_read_registry,
- nv_procfs_write_registry,
- &nv_procfs_registry_fops, NULL);
+ entry = proc_create("registry", NV_PROC_RW, proc_nvidia, &nv_procfs_registry_fops);
if (!entry)
goto failed;
@@ -553,8 +560,7 @@
nv_procfs_add_text_file(proc_nvidia_patches, "README", __README_patches);
- entry = NV_CREATE_PROC_FILE("version", proc_nvidia,
- nv_procfs_read_version, NULL, NULL, NULL);
+ entry = proc_create("version", NV_PROC_RO, proc_nvidia, &nv_procfs_version_fops);
if (!entry)
goto failed;
@@ -571,15 +577,11 @@
if (!proc_nvidia_gpu)
goto failed;
- entry = NV_CREATE_PROC_FILE("information", proc_nvidia_gpu,
- nv_procfs_read_gpu_info, NULL, NULL, nv);
+ entry = proc_create_data("information", NV_PROC_RO, proc_nvidia_gpu, &nv_procfs_gpu_info_fops, nv);
if (!entry)
goto failed;
- entry = NV_CREATE_PROC_FILE("registry", proc_nvidia_gpu,
- nv_procfs_read_registry,
- nv_procfs_write_registry,
- &nv_procfs_registry_fops, nv);
+ entry = proc_create_data("registry", NV_PROC_RW, proc_nvidia_gpu, &nv_procfs_registry_fops, nv);
if (!entry)
goto failed;
}
@@ -587,7 +589,7 @@
return 0;
#if defined(CONFIG_PROC_FS)
failed:
- nv_procfs_unregister_all(proc_nvidia);
+ remove_proc_subtree("driver/nvidia", NULL);
return -1;
#endif
}
@@ -595,6 +597,6 @@
void nv_unregister_procfs(void)
{
#if defined(CONFIG_PROC_FS)
- nv_procfs_unregister_all(proc_nvidia);
+ remove_proc_subtree("driver/nvidia", NULL);
#endif
}
--- a/kernel/nv-linux.h
+++ b/kernel/nv-linux.h
@@ -1038,7 +1038,11 @@ static inline int nv_execute_on_all_cpus
#endif
#if !defined(NV_VMWARE)
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 11, 0)
+#define NV_NUM_PHYSPAGES get_num_physpages()
+#else
#define NV_NUM_PHYSPAGES num_physpages
+#endif
#define NV_GET_CURRENT_PROCESS() current->tgid
#define NV_IN_ATOMIC() in_atomic()
#define NV_LOCAL_BH_DISABLE() local_bh_disable()
Index: nvidia-kmod.spec
===================================================================
RCS file: /cvs/nonfree/rpms/nvidia-kmod/F-19/nvidia-kmod.spec,v
retrieving revision 1.135
retrieving revision 1.136
diff -u -r1.135 -r1.136
--- nvidia-kmod.spec 30 Aug 2013 06:14:28 -0000 1.135
+++ nvidia-kmod.spec 17 Sep 2013 14:09:26 -0000 1.136
@@ -3,13 +3,13 @@
# "buildforkernels newest" macro for just that build; immediately after
# queuing that build enable the macro again for subsequent builds; that way
# a new akmod package will only get build when a new one is actually needed
-%global buildforkernels newest
+%global buildforkernels current
Name: nvidia-kmod
Epoch: 1
Version: 319.32
# Taken over by kmodtool
-Release: 2%{?dist}.6
+Release: 3%{?dist}
Summary: NVIDIA display driver kernel module
Group: System Environment/Kernel
License: Redistributable, no modification permitted
@@ -21,7 +21,7 @@
Source0: nvidia-kmod-data-%{version}.tar.xz
Source11: nvidia-kmodtool-excludekernel-filterfile
-Patch0: 3.10_kernel.patch
+Patch0: 3.11_kernel.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
@@ -78,6 +78,9 @@
%changelog
+* Tue Sep 17 2013 Leigh Scott <leigh123linux(a)googlemail.com> - 1:319.32-3
+- patch for 3.11 kernel
+
* Fri Aug 30 2013 Nicolas Chauvet <kwizart(a)gmail.com> - 1:319.32-2.6
- Rebuilt for kernel
--- 3.10_kernel.patch DELETED ---
10 years, 11 months
rpms/chromaprint-tools/F-19 chromaprint-tools.spec, 1.9, 1.10 sources, 1.3, 1.4
by Ismael Olea
Author: olea
Update of /cvs/free/rpms/chromaprint-tools/F-19
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv29151
Modified Files:
chromaprint-tools.spec sources
Log Message:
* Mon Sep 16 2013 Ismael Olea <ismael(a)olea.org> - 1.0-1
- update to 1.0
Index: chromaprint-tools.spec
===================================================================
RCS file: /cvs/free/rpms/chromaprint-tools/F-19/chromaprint-tools.spec,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- chromaprint-tools.spec 26 May 2013 21:40:18 -0000 1.9
+++ chromaprint-tools.spec 16 Sep 2013 23:02:32 -0000 1.10
@@ -1,11 +1,11 @@
Name: chromaprint-tools
-Version: 0.7
-Release: 5%{?dist}
+Version: 1.0
+Release: 1%{?dist}
Summary: Chromaprint audio fingerprinting tools
Group: Applications/Multimedia
License: LGPLv2+
URL: http://www.acoustid.org/chromaprint/
-Source: https://github.com/downloads/lalinsky/chromaprint/chromaprint-%{version}....
+Source: https://bitbucket.org/acoustid/chromaprint/downloads/chromaprint-%{versio...
BuildRequires: cmake
BuildRequires: fftw-devel >= 3
@@ -43,6 +43,9 @@
%{_bindir}/fpcalc
%changelog
+* Mon Sep 16 2013 Ismael Olea <ismael(a)olea.org> - 1.0-1
+- update to 1.0
+
* Sun May 26 2013 Nicolas Chauvet <kwizart(a)gmail.com> - 0.7-5
- Rebuilt for x264/FFmpeg
Index: sources
===================================================================
RCS file: /cvs/free/rpms/chromaprint-tools/F-19/sources,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- sources 7 Sep 2012 19:34:07 -0000 1.3
+++ sources 16 Sep 2013 23:02:32 -0000 1.4
@@ -1 +1,2 @@
-3005fc2c69b9ef4a5c6787ef9355a855 chromaprint-0.7.tar.gz
+0b928db88d25099e6aece97fa9fc2335 chromaprint-1.0.tar.gz
+
10 years, 11 months
rpms/chromaprint-tools/devel .cvsignore, 1.3, 1.4 chromaprint-tools.spec, 1.10, 1.11 sources, 1.3, 1.4
by Ismael Olea
Author: olea
Update of /cvs/free/rpms/chromaprint-tools/devel
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv28883
Modified Files:
.cvsignore chromaprint-tools.spec sources
Log Message:
* Mon Sep 16 2013 Ismael Olea <ismael(a)olea.org> - 1.0-1
- update to 1.0
Index: .cvsignore
===================================================================
RCS file: /cvs/free/rpms/chromaprint-tools/devel/.cvsignore,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- .cvsignore 7 Sep 2012 19:34:07 -0000 1.3
+++ .cvsignore 16 Sep 2013 22:56:56 -0000 1.4
@@ -1 +1 @@
-chromaprint-0.7.tar.gz
+chromaprint-1.0.tar.gz
Index: chromaprint-tools.spec
===================================================================
RCS file: /cvs/free/rpms/chromaprint-tools/devel/chromaprint-tools.spec,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- chromaprint-tools.spec 15 Aug 2013 10:14:16 -0000 1.10
+++ chromaprint-tools.spec 16 Sep 2013 22:56:57 -0000 1.11
@@ -1,11 +1,11 @@
Name: chromaprint-tools
-Version: 0.7
-Release: 6%{?dist}
+Version: 1.0
+Release: 1%{?dist}
Summary: Chromaprint audio fingerprinting tools
Group: Applications/Multimedia
License: LGPLv2+
URL: http://www.acoustid.org/chromaprint/
-Source: https://github.com/downloads/lalinsky/chromaprint/chromaprint-%{version}....
+Source: https://bitbucket.org/acoustid/chromaprint/downloads/chromaprint-%{versio...
BuildRequires: cmake
BuildRequires: fftw-devel >= 3
@@ -43,6 +43,9 @@
%{_bindir}/fpcalc
%changelog
+* Mon Sep 16 2013 Ismael Olea <ismael(a)olea.org> - 1.0-1
+- update to 1.0
+
* Thu Aug 15 2013 Nicolas Chauvet <kwizart(a)gmail.com> - 0.7-6
- Rebuilt for FFmpeg 2.0.x
Index: sources
===================================================================
RCS file: /cvs/free/rpms/chromaprint-tools/devel/sources,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- sources 7 Sep 2012 19:34:07 -0000 1.3
+++ sources 16 Sep 2013 22:56:57 -0000 1.4
@@ -1 +1 @@
-3005fc2c69b9ef4a5c6787ef9355a855 chromaprint-0.7.tar.gz
+0b928db88d25099e6aece97fa9fc2335 chromaprint-1.0.tar.gz
10 years, 11 months
rpms/nvidia-kmod/devel kernel_v3.11.patch, 1.1, 1.2 nvidia-kmod.spec, 1.133, 1.134
by Leigh Scott
Author: leigh123linux
Update of /cvs/nonfree/rpms/nvidia-kmod/devel
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv17285
Modified Files:
kernel_v3.11.patch nvidia-kmod.spec
Log Message:
* Mon Sep 16 2013 Leigh Scott <leigh123linux(a)googlemail.com> - 1:325.15-3
- patch for 3.12 git kernel
kernel_v3.11.patch:
nv-drm.c | 8 ++++++++
nv-linux.h | 4 ++++
nv.c | 4 ++++
3 files changed, 16 insertions(+)
Index: kernel_v3.11.patch
===================================================================
RCS file: /cvs/nonfree/rpms/nvidia-kmod/devel/kernel_v3.11.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- kernel_v3.11.patch 6 Aug 2013 10:12:44 -0000 1.1
+++ kernel_v3.11.patch 16 Sep 2013 15:08:08 -0000 1.2
@@ -1,3 +1,4 @@
+
--- a/kernel/nv-linux.h
+++ b/kernel/nv-linux.h
@@ -957,7 +957,11 @@ static inline int nv_execute_on_all_cpus
@@ -12,3 +13,49 @@
#define NV_GET_CURRENT_PROCESS() current->tgid
#define NV_IN_ATOMIC() in_atomic()
#define NV_LOCAL_BH_DISABLE() local_bh_disable()
+--- a/kernel/nv-drm.c
++++ b/kernel/nv-drm.c
+@@ -106,7 +106,11 @@ static const struct file_operations nv_d
+ .unlocked_ioctl = drm_ioctl,
+ .mmap = drm_gem_mmap,
+ .poll = drm_poll,
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 12, 0)
++// .fasync = drm_fasync,
++#else
+ .fasync = drm_fasync,
++#endif
+ .read = drm_read,
+ .llseek = noop_llseek,
+ };
+@@ -202,12 +206,16 @@ RM_STATUS NV_API_CALL nv_alloc_os_descri
+ memset(&nv_obj->base, 0, sizeof(nv_obj->base));
+ nv_obj->pages = pages;
+
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 12, 0)
++ drm_gem_private_object_init(nvl->drm, &nv_obj->base, size);
++#else
+ ret = drm_gem_private_object_init(nvl->drm, &nv_obj->base, size);
+ if (ret)
+ {
+ status = RM_ERR_OPERATING_SYSTEM;
+ goto done;
+ }
++#endif
+
+ ret = drm_gem_handle_create(file_priv, &nv_obj->base, handle);
+ if (ret)
+--- a/kernel/nv.c
++++ b/kernel/nv.c
+@@ -16,8 +16,12 @@
+ #include "rmil.h"
+
+ #if defined(MODULE_LICENSE)
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 12, 0)
++MODULE_LICENSE("GPL");
++#else
+ MODULE_LICENSE("NVIDIA");
+ #endif
++#endif
+ #if defined(MODULE_INFO)
+ MODULE_INFO(supported, "external");
+ #endif
Index: nvidia-kmod.spec
===================================================================
RCS file: /cvs/nonfree/rpms/nvidia-kmod/devel/nvidia-kmod.spec,v
retrieving revision 1.133
retrieving revision 1.134
diff -u -r1.133 -r1.134
--- nvidia-kmod.spec 6 Aug 2013 11:02:39 -0000 1.133
+++ nvidia-kmod.spec 16 Sep 2013 15:08:08 -0000 1.134
@@ -9,7 +9,7 @@
Epoch: 1
Version: 325.15
# Taken over by kmodtool
-Release: 2%{?dist}
+Release: 3%{?dist}
Summary: NVIDIA display driver kernel module
Group: System Environment/Kernel
License: Redistributable, no modification permitted
@@ -79,6 +79,9 @@
%changelog
+* Mon Sep 16 2013 Leigh Scott <leigh123linux(a)googlemail.com> - 1:325.15-3
+- patch for 3.12 git kernel
+
* Tue Aug 06 2013 Leigh Scott <leigh123linux(a)googlemail.com> - 1:325.15-2
- rebuild for akmod as pae marco is broken
10 years, 11 months
rpms/ndiswrapper-kmod/F-18 ndiswrapper-kmod.spec,1.103,1.104
by Arun Babu Neelicattu
Author: abn
Update of /cvs/free/rpms/ndiswrapper-kmod/F-18
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv2838
Modified Files:
ndiswrapper-kmod.spec
Log Message:
Rebuit for current f18 kernel
Index: ndiswrapper-kmod.spec
===================================================================
RCS file: /cvs/free/rpms/ndiswrapper-kmod/F-18/ndiswrapper-kmod.spec,v
retrieving revision 1.103
retrieving revision 1.104
diff -u -r1.103 -r1.104
--- ndiswrapper-kmod.spec 16 Sep 2013 13:39:46 -0000 1.103
+++ ndiswrapper-kmod.spec 16 Sep 2013 13:40:55 -0000 1.104
@@ -3,14 +3,14 @@
# "buildforkernels newest" macro for just that build; immediately after
# queuing that build enable the macro again for subsequent builds; that way
# a new akmod package will only get build when a new one is actually needed
-%global buildforkernels newest
+%global buildforkernels current
#global pre rc1
Summary: Ndiswrapper kernel module
Name: ndiswrapper-kmod
Version: 1.58
-Release: 2%{?pre}%{?dist}.13
+Release: 2%{?pre}%{?dist}.14
License: GPLv2
Group: System Environment/Kernel
URL: http://ndiswrapper.sourceforge.net
10 years, 11 months
rpms/ndiswrapper-kmod/F-18 ndiswrapper-procfs-api.patch, NONE, 1.1 ndiswrapper-kmod.spec, 1.102, 1.103
by Arun Babu Neelicattu
Author: abn
Update of /cvs/free/rpms/ndiswrapper-kmod/F-18
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv2753
Modified Files:
ndiswrapper-kmod.spec
Added Files:
ndiswrapper-procfs-api.patch
Log Message:
Add procfs API patch for f18 branch
ndiswrapper-procfs-api.patch:
proc.c | 355 ++++++++++++++++++++++++++++++++++---------------------------
wrapndis.c | 7 +
2 files changed, 206 insertions(+), 156 deletions(-)
--- NEW FILE ndiswrapper-procfs-api.patch ---
diff --git a/driver/proc.c b/driver/proc.c
index 60ed0e0..11f0f8b 100644
--- a/driver/proc.c
+++ b/driver/proc.c
@@ -13,6 +13,7 @@
*
*/
#include <linux/proc_fs.h>
+#include <linux/seq_file.h>
#include <linux/module.h>
#include <asm/uaccess.h>
@@ -24,116 +25,144 @@
#define MAX_PROC_STR_LEN 32
-static struct proc_dir_entry *wrap_procfs_entry;
+static struct proc_dir_entry *procfs_hw,
+ *procfs_stats,
+ *procfs_encr,
+ *procfs_settings,
+ *procfs_debug,
+ *wrap_procfs_entry;
-static int procfs_read_ndis_stats(char *page, char **start, off_t off,
- int count, int *eof, void *data)
+/* stats */
+
+static int procfs_ndis_stats_show( struct seq_file *seqf, void *data)
{
- char *p = page;
struct ndis_device *wnd = (struct ndis_device *)data;
struct ndis_wireless_stats stats;
NDIS_STATUS res;
ndis_rssi rssi;
- if (off != 0) {
+ /*if (off != 0) {
*eof = 1;
return 0;
- }
+ }*/
res = mp_query(wnd, OID_802_11_RSSI, &rssi, sizeof(rssi));
if (!res)
- p += sprintf(p, "signal_level=%d dBm\n", (s32)rssi);
+ seq_printf(seqf, "signal_level=%d dBm\n", (s32)rssi);
res = mp_query(wnd, OID_802_11_STATISTICS, &stats, sizeof(stats));
if (!res) {
- p += sprintf(p, "tx_frames=%llu\n", stats.tx_frag);
- p += sprintf(p, "tx_multicast_frames=%llu\n",
- stats.tx_multi_frag);
- p += sprintf(p, "tx_failed=%llu\n", stats.failed);
- p += sprintf(p, "tx_retry=%llu\n", stats.retry);
- p += sprintf(p, "tx_multi_retry=%llu\n", stats.multi_retry);
- p += sprintf(p, "tx_rtss_success=%llu\n", stats.rtss_succ);
- p += sprintf(p, "tx_rtss_fail=%llu\n", stats.rtss_fail);
- p += sprintf(p, "ack_fail=%llu\n", stats.ack_fail);
- p += sprintf(p, "frame_duplicates=%llu\n", stats.frame_dup);
- p += sprintf(p, "rx_frames=%llu\n", stats.rx_frag);
- p += sprintf(p, "rx_multicast_frames=%llu\n",
- stats.rx_multi_frag);
- p += sprintf(p, "fcs_errors=%llu\n", stats.fcs_err);
+ seq_printf(seqf, "tx_frames=%llu\n", stats.tx_frag);
+ seq_printf(seqf, "tx_multicast_frames=%llu\n", stats.tx_multi_frag);
+ seq_printf(seqf, "tx_failed=%llu\n", stats.failed);
+ seq_printf(seqf, "tx_retry=%llu\n", stats.retry);
+ seq_printf(seqf, "tx_multi_retry=%llu\n", stats.multi_retry);
+ seq_printf(seqf, "tx_rtss_success=%llu\n", stats.rtss_succ);
+ seq_printf(seqf, "tx_rtss_fail=%llu\n", stats.rtss_fail);
+ seq_printf(seqf, "ack_fail=%llu\n", stats.ack_fail);
+ seq_printf(seqf, "frame_duplicates=%llu\n", stats.frame_dup);
+ seq_printf(seqf, "rx_frames=%llu\n", stats.rx_frag);
+ seq_printf(seqf, "rx_multicast_frames=%llu\n", stats.rx_multi_frag);
+ seq_printf(seqf, "fcs_errors=%llu\n", stats.fcs_err);
}
- if (p - page > count) {
+ /* if (p - page > count) {
ERROR("wrote %td bytes (limit is %u)\n",
p - page, count);
*eof = 1;
- }
+ }*/
- return p - page;
+ return 0;
}
-static int procfs_read_ndis_encr(char *page, char **start, off_t off,
- int count, int *eof, void *data)
+static int procfs_ndis_stats_open( struct inode *ino, struct file *f)
+{
+ return single_open( f, procfs_ndis_stats_show, PDE_DATA( ino));
+};
+
+static struct file_operations procfs_ndis_stats_ops = {
+ .open = procfs_ndis_stats_open,
+ .read = seq_read,
+ .llseek = seq_lseek,
+ .release = seq_release
+};
+
+
+/* encr */
+static int procfs_ndis_encr_show( struct seq_file *seqf, void *data)
{
- char *p = page;
struct ndis_device *wnd = (struct ndis_device *)data;
int i, encr_status, auth_mode, infra_mode;
NDIS_STATUS res;
struct ndis_essid essid;
mac_address ap_address;
- if (off != 0) {
+ /*if (off != 0) {
*eof = 1;
return 0;
- }
+ }*/
res = mp_query(wnd, OID_802_11_BSSID,
&ap_address, sizeof(ap_address));
if (res)
memset(ap_address, 0, ETH_ALEN);
- p += sprintf(p, "ap_address=%2.2X", ap_address[0]);
+ seq_printf(seqf, "ap_address=%2.2X", ap_address[0]);
for (i = 1; i < ETH_ALEN; i++)
- p += sprintf(p, ":%2.2X", ap_address[i]);
- p += sprintf(p, "\n");
+ seq_printf(seqf, ":%2.2X", ap_address[i]);
+ seq_printf(seqf, "\n");
res = mp_query(wnd, OID_802_11_SSID, &essid, sizeof(essid));
if (!res)
- p += sprintf(p, "essid=%.*s\n", essid.length, essid.essid);
+ seq_printf(seqf, "essid=%.*s\n", essid.length, essid.essid);
res = mp_query_int(wnd, OID_802_11_ENCRYPTION_STATUS, &encr_status);
if (!res) {
typeof(&wnd->encr_info.keys[0]) tx_key;
- p += sprintf(p, "tx_key=%u\n", wnd->encr_info.tx_key_index);
- p += sprintf(p, "key=");
+ seq_printf(seqf, "tx_key=%u\n", wnd->encr_info.tx_key_index);
+ seq_printf(seqf, "key=");
tx_key = &wnd->encr_info.keys[wnd->encr_info.tx_key_index];
if (tx_key->length > 0)
for (i = 0; i < tx_key->length; i++)
- p += sprintf(p, "%2.2X", tx_key->key[i]);
+ seq_printf(seqf, "%2.2X", tx_key->key[i]);
else
- p += sprintf(p, "off");
- p += sprintf(p, "\n");
- p += sprintf(p, "encr_mode=%d\n", encr_status);
+ seq_printf(seqf, "off");
+ seq_printf(seqf, "\n");
+ seq_printf(seqf, "encr_mode=%d\n", encr_status);
}
res = mp_query_int(wnd, OID_802_11_AUTHENTICATION_MODE, &auth_mode);
if (!res)
- p += sprintf(p, "auth_mode=%d\n", auth_mode);
+ seq_printf(seqf, "auth_mode=%d\n", auth_mode);
res = mp_query_int(wnd, OID_802_11_INFRASTRUCTURE_MODE, &infra_mode);
- p += sprintf(p, "mode=%s\n", (infra_mode == Ndis802_11IBSS) ?
+ seq_printf(seqf, "mode=%s\n", (infra_mode == Ndis802_11IBSS) ?
"adhoc" : (infra_mode == Ndis802_11Infrastructure) ?
"managed" : "auto");
- if (p - page > count) {
+ /*if (p - page > count) {
WARNING("wrote %td bytes (limit is %u)",
p - page, count);
*eof = 1;
- }
+ }*/
- return p - page;
+ return 0;
}
-static int procfs_read_ndis_hw(char *page, char **start, off_t off,
- int count, int *eof, void *data)
+static int procfs_ndis_encr_open( struct inode *ino, struct file *f)
+{
+ return single_open( f, procfs_ndis_encr_show, PDE_DATA( ino));
+};
+
+static struct file_operations procfs_ndis_encr_ops = {
+ .open = procfs_ndis_encr_open,
+ .read = seq_read,
+ .llseek = seq_lseek,
+ .release = seq_release
+};
+
+
+/* hw */
+
+static int procfs_ndis_hw_show( struct seq_file *seqf, void *data)
{
- char *p = page;
struct ndis_device *wnd = (struct ndis_device *)data;
struct ndis_configuration config;
enum ndis_power power_mode;
@@ -149,54 +178,51 @@ static int procfs_read_ndis_hw(char *page, char **start, off_t off,
char *hw_status[] = {"ready", "initializing", "resetting", "closing",
"not ready"};
- if (off != 0) {
+ /*if (off != 0) {
*eof = 1;
return 0;
- }
+ }*/
res = mp_query_int(wnd, OID_GEN_HARDWARE_STATUS, &n);
if (res == NDIS_STATUS_SUCCESS && n >= 0 && n < ARRAY_SIZE(hw_status))
- p += sprintf(p, "status=%s\n", hw_status[n]);
+ seq_printf(seqf, "status=%s\n", hw_status[n]);
res = mp_query(wnd, OID_802_3_CURRENT_ADDRESS, mac, sizeof(mac));
if (!res)
- p += sprintf(p, "mac: " MACSTRSEP "\n", MAC2STR(mac));
+ seq_printf(seqf, "mac: " MACSTRSEP "\n", MAC2STR(mac));
res = mp_query(wnd, OID_802_11_CONFIGURATION, &config, sizeof(config));
if (!res) {
- p += sprintf(p, "beacon_period=%u msec\n",
+ seq_printf(seqf, "beacon_period=%u msec\n",
config.beacon_period);
- p += sprintf(p, "atim_window=%u msec\n", config.atim_window);
- p += sprintf(p, "frequency=%u kHz\n", config.ds_config);
- p += sprintf(p, "hop_pattern=%u\n",
- config.fh_config.hop_pattern);
- p += sprintf(p, "hop_set=%u\n",
- config.fh_config.hop_set);
- p += sprintf(p, "dwell_time=%u msec\n",
- config.fh_config.dwell_time);
+ seq_printf(seqf, "atim_window=%u msec\n", config.atim_window);
+ seq_printf(seqf, "frequency=%u kHz\n", config.ds_config);
+ seq_printf(seqf, "hop_pattern=%u\n", config.fh_config.hop_pattern);
+ seq_printf(seqf, "hop_set=%u\n", config.fh_config.hop_set);
+ seq_printf(seqf, "dwell_time=%u msec\n", config.fh_config.dwell_time);
}
res = mp_query(wnd, OID_802_11_TX_POWER_LEVEL,
&tx_power, sizeof(tx_power));
if (!res)
- p += sprintf(p, "tx_power=%u mW\n", tx_power);
+ seq_printf(seqf, "tx_power=%u mW\n", tx_power);
res = mp_query(wnd, OID_GEN_LINK_SPEED, &bit_rate, sizeof(bit_rate));
if (!res)
- p += sprintf(p, "bit_rate=%u kBps\n", (u32)bit_rate / 10);
+ seq_printf(seqf, "bit_rate=%u kBps\n", (u32)bit_rate / 10);
res = mp_query(wnd, OID_802_11_RTS_THRESHOLD,
&rts_threshold, sizeof(rts_threshold));
if (!res)
- p += sprintf(p, "rts_threshold=%u bytes\n", rts_threshold);
+ seq_printf(seqf, "rts_threshold=%u bytes\n", rts_threshold);
res = mp_query(wnd, OID_802_11_FRAGMENTATION_THRESHOLD,
&frag_threshold, sizeof(frag_threshold));
if (!res)
- p += sprintf(p, "frag_threshold=%u bytes\n", frag_threshold);
+ seq_printf(seqf, "frag_threshold=%u bytes\n", frag_threshold);
res = mp_query_int(wnd, OID_802_11_POWER_MODE, &power_mode);
if (!res)
- p += sprintf(p, "power_mode=%s\n",
+ seq_printf(seqf, "power_mode=%s\n",
(power_mode == NDIS_POWER_OFF) ? "always_on" :
(power_mode == NDIS_POWER_MAX) ?
"max_savings" : "min_savings");
@@ -204,19 +230,19 @@ static int procfs_read_ndis_hw(char *page, char **start, off_t off,
res = mp_query(wnd, OID_802_11_NUMBER_OF_ANTENNAS,
&antenna, sizeof(antenna));
if (!res)
- p += sprintf(p, "num_antennas=%u\n", antenna);
+ seq_printf(seqf, "num_antennas=%u\n", antenna);
res = mp_query(wnd, OID_802_11_TX_ANTENNA_SELECTED,
&antenna, sizeof(antenna));
if (!res)
- p += sprintf(p, "tx_antenna=%u\n", antenna);
+ seq_printf(seqf, "tx_antenna=%u\n", antenna);
res = mp_query(wnd, OID_802_11_RX_ANTENNA_SELECTED,
&antenna, sizeof(antenna));
if (!res)
- p += sprintf(p, "rx_antenna=%u\n", antenna);
+ seq_printf(seqf, "rx_antenna=%u\n", antenna);
- p += sprintf(p, "encryption_modes=%s%s%s%s%s%s%s\n",
+ seq_printf(seqf, "encryption_modes=%s%s%s%s%s%s%s\n",
test_bit(Ndis802_11Encryption1Enabled, &wnd->capa.encr) ?
"WEP" : "none",
@@ -239,57 +265,70 @@ static int procfs_read_ndis_hw(char *page, char **start, off_t off,
if (packet_filter != wnd->packet_filter)
WARNING("wrong packet_filter? 0x%08x, 0x%08x\n",
packet_filter, wnd->packet_filter);
- p += sprintf(p, "packet_filter: 0x%08x\n", packet_filter);
+ seq_printf(seqf, "packet_filter: 0x%08x\n", packet_filter);
}
- if (p - page > count) {
+ /*if (p - page > count) {
WARNING("wrote %td bytes (limit is %u)",
p - page, count);
*eof = 1;
- }
+ }*/
- return p - page;
+ return 0;
}
-static int procfs_read_ndis_settings(char *page, char **start, off_t off,
- int count, int *eof, void *data)
+static int procfs_ndis_hw_open( struct inode *ino, struct file *f)
+{
+ return single_open( f, procfs_ndis_hw_show, PDE_DATA( ino));
+};
+
+static struct file_operations procfs_ndis_hw_ops = {
+ .open = procfs_ndis_hw_open,
+ .read = seq_read,
+ .llseek = seq_lseek,
+ .release = seq_release
+};
+
+
+/* settings */
+
+static int procfs_ndis_settings_show( struct seq_file *seqf, void *data)
{
- char *p = page;
struct ndis_device *wnd = (struct ndis_device *)data;
struct wrap_device_setting *setting;
- if (off != 0) {
+ /*if (off != 0) {
*eof = 1;
return 0;
- }
+ }*/
- p += sprintf(p, "hangcheck_interval=%d\n",
+ seq_printf(seqf, "hangcheck_interval=%d\n",
hangcheck_interval == 0 ?
(wnd->hangcheck_interval / HZ) : -1);
list_for_each_entry(setting, &wnd->wd->settings, list) {
- p += sprintf(p, "%s=%s\n", setting->name, setting->value);
+ seq_printf(seqf, "%s=%s\n", setting->name, setting->value);
}
list_for_each_entry(setting, &wnd->wd->driver->settings, list) {
- p += sprintf(p, "%s=%s\n", setting->name, setting->value);
+ seq_printf(seqf, "%s=%s\n", setting->name, setting->value);
}
- return p - page;
+ return 0;
}
static int procfs_write_ndis_settings(struct file *file, const char __user *buf,
- unsigned long count, void *data)
+ size_t size, loff_t *ppos)
{
- struct ndis_device *wnd = (struct ndis_device *)data;
+ struct ndis_device *wnd = (struct ndis_device *)PDE_DATA( file->f_inode);
char setting[MAX_PROC_STR_LEN], *p;
unsigned int i;
NDIS_STATUS res;
- if (count > MAX_PROC_STR_LEN)
+ if (size > MAX_PROC_STR_LEN)
return -EINVAL;
memset(setting, 0, sizeof(setting));
- if (copy_from_user(setting, buf, count))
+ if (copy_from_user(setting, buf, size))
return -EFAULT;
if ((p = strchr(setting, '\n')))
@@ -377,18 +416,35 @@ static int procfs_write_ndis_settings(struct file *file, const char __user *buf,
if (res != NDIS_STATUS_SUCCESS)
return -EFAULT;
}
- return count;
+ return size;
}
-int wrap_procfs_add_ndis_device(struct ndis_device *wnd)
+static int procfs_ndis_settings_open( struct inode *ino, struct file *f)
{
- struct proc_dir_entry *procfs_entry;
+ return single_open( f, procfs_ndis_settings_show, PDE_DATA( ino));
+};
+
+static struct file_operations procfs_ndis_settings_ops = {
+ .open = procfs_ndis_settings_open,
+ .read = seq_read,
+ .write = procfs_write_ndis_settings,
+ .llseek = seq_lseek,
+ .release = seq_release
+};
+
+int wrap_procfs_add_ndis_device(struct ndis_device *wnd)
+{
if (wrap_procfs_entry == NULL)
return -ENOMEM;
if (wnd->procfs_iface) {
- ERROR("%s already registered?", wnd->procfs_iface->name);
+ ERROR("%s already registered?", wnd->net_dev->name);
+/* NEEDS CLARIFICATION:
+ * 'wnd->procfs_iface->name' changed to 'wnd->net_dev_name', as the 'proc_dir_entry'-struct
+ * is now opaque.
+ * Are they always the same?
+ */
return -EINVAL;
}
wnd->procfs_iface = proc_mkdir(wnd->net_dev->name, wrap_procfs_entry);
@@ -396,68 +452,51 @@ int wrap_procfs_add_ndis_device(struct ndis_device *wnd)
ERROR("couldn't create proc directory");
return -ENOMEM;
}
- wnd->procfs_iface->uid = proc_uid;
- wnd->procfs_iface->gid = proc_gid;
+ proc_set_user( wnd->procfs_iface, proc_uid, proc_gid);
- procfs_entry = create_proc_entry("hw", S_IFREG | S_IRUSR | S_IRGRP,
- wnd->procfs_iface);
- if (procfs_entry == NULL) {
+ procfs_hw = proc_create_data("hw", S_IFREG | S_IRUSR | S_IRGRP, wnd->procfs_iface, &procfs_ndis_hw_ops, wnd);
+ if (procfs_hw == NULL) {
ERROR("couldn't create proc entry for 'hw'");
goto err_hw;
} else {
- procfs_entry->uid = proc_uid;
- procfs_entry->gid = proc_gid;
- procfs_entry->data = wnd;
- procfs_entry->read_proc = procfs_read_ndis_hw;
+ proc_set_user( procfs_hw, proc_uid, proc_gid);
}
- procfs_entry = create_proc_entry("stats", S_IFREG | S_IRUSR | S_IRGRP,
- wnd->procfs_iface);
- if (procfs_entry == NULL) {
+ procfs_stats = proc_create_data("stats", S_IFREG | S_IRUSR | S_IRGRP, wnd->procfs_iface, &procfs_ndis_stats_ops, wnd);
+ if (procfs_stats == NULL) {
ERROR("couldn't create proc entry for 'stats'");
goto err_stats;
} else {
- procfs_entry->uid = proc_uid;
- procfs_entry->gid = proc_gid;
- procfs_entry->data = wnd;
- procfs_entry->read_proc = procfs_read_ndis_stats;
+ proc_set_user( procfs_stats, proc_uid, proc_gid);
}
- procfs_entry = create_proc_entry("encr", S_IFREG | S_IRUSR | S_IRGRP,
- wnd->procfs_iface);
- if (procfs_entry == NULL) {
+ procfs_encr = proc_create_data("encr", S_IFREG | S_IRUSR | S_IRGRP, wnd->procfs_iface, &procfs_ndis_encr_ops, wnd);
+ if (procfs_encr == NULL) {
ERROR("couldn't create proc entry for 'encr'");
goto err_encr;
} else {
- procfs_entry->uid = proc_uid;
- procfs_entry->gid = proc_gid;
- procfs_entry->data = wnd;
- procfs_entry->read_proc = procfs_read_ndis_encr;
+ proc_set_user( procfs_encr, proc_uid, proc_gid);
}
- procfs_entry = create_proc_entry("settings", S_IFREG |
+ procfs_settings = proc_create_data("settings", S_IFREG |
S_IRUSR | S_IRGRP |
- S_IWUSR | S_IWGRP, wnd->procfs_iface);
- if (procfs_entry == NULL) {
+ S_IWUSR | S_IWGRP, wnd->procfs_iface, &procfs_ndis_settings_ops, wnd);
+ if (procfs_settings == NULL) {
ERROR("couldn't create proc entry for 'settings'");
goto err_settings;
} else {
- procfs_entry->uid = proc_uid;
- procfs_entry->gid = proc_gid;
- procfs_entry->data = wnd;
- procfs_entry->read_proc = procfs_read_ndis_settings;
- procfs_entry->write_proc = procfs_write_ndis_settings;
+ proc_set_user( procfs_settings, proc_uid, proc_gid);
}
return 0;
err_settings:
- remove_proc_entry("encr", wnd->procfs_iface);
+ proc_remove( procfs_encr);
err_encr:
- remove_proc_entry("stats", wnd->procfs_iface);
+ proc_remove( procfs_stats);
err_stats:
- remove_proc_entry("hw", wnd->procfs_iface);
+ proc_remove( procfs_hw);
err_hw:
- remove_proc_entry(wnd->procfs_iface->name, wrap_procfs_entry);
+ proc_remove( wnd->procfs_iface);
wnd->procfs_iface = NULL;
return -ENOMEM;
}
@@ -468,46 +507,45 @@ void wrap_procfs_remove_ndis_device(struct ndis_device *wnd)
if (procfs_iface == NULL)
return;
- remove_proc_entry("hw", procfs_iface);
- remove_proc_entry("stats", procfs_iface);
- remove_proc_entry("encr", procfs_iface);
- remove_proc_entry("settings", procfs_iface);
+ proc_remove( procfs_hw);
+ proc_remove( procfs_stats);
+ proc_remove( procfs_encr);
+ proc_remove( procfs_settings);
if (wrap_procfs_entry)
- remove_proc_entry(procfs_iface->name, wrap_procfs_entry);
+ proc_remove( procfs_iface);
}
-static int procfs_read_debug(char *page, char **start, off_t off,
- int count, int *eof, void *data)
+/* debug */
+static int procfs_debug_show( struct seq_file *seqf, void *data)
{
- char *p = page;
#if ALLOC_DEBUG
enum alloc_type type;
#endif
- if (off != 0) {
+ /*if (off != 0) {
*eof = 1;
return 0;
- }
- p += sprintf(p, "%d\n", debug);
+ }*/
+ seq_printf(seqf, "%d\n", debug);
#if ALLOC_DEBUG
for (type = 0; type < ALLOC_TYPE_MAX; type++)
- p += sprintf(p, "total size of allocations in %s: %d\n",
+ seq_printf(seqf, "total size of allocations in %s: %d\n",
alloc_type_name[type], alloc_size(type));
#endif
- return p - page;
+ return 0;
}
static int procfs_write_debug(struct file *file, const char __user *buf,
- unsigned long count, void *data)
+ size_t size, loff_t *ppos)
{
int i;
char setting[MAX_PROC_STR_LEN], *p;
- if (count > MAX_PROC_STR_LEN)
+ if (size > MAX_PROC_STR_LEN)
return -EINVAL;
memset(setting, 0, sizeof(setting));
- if (copy_from_user(setting, buf, count))
+ if (copy_from_user(setting, buf, size))
return -EFAULT;
if ((p = strchr(setting, '\n')))
@@ -521,31 +559,38 @@ static int procfs_write_debug(struct file *file, const char __user *buf,
debug = i;
else
return -EINVAL;
- return count;
+ return size;
}
-int wrap_procfs_init(void)
+static int procfs_debug_open( struct inode *ino, struct file *f)
{
- struct proc_dir_entry *procfs_entry;
+ return single_open( f, procfs_debug_show, NULL);
+};
+
+static struct file_operations procfs_debug_ops = {
+ .open = procfs_debug_open,
+ .read = seq_read,
+ .write = procfs_write_debug,
+ .llseek = seq_lseek,
+ .release = seq_release
+};
+int wrap_procfs_init(void)
+{
wrap_procfs_entry = proc_mkdir(DRIVER_NAME, proc_net_root);
if (wrap_procfs_entry == NULL) {
ERROR("couldn't create procfs directory");
return -ENOMEM;
}
- wrap_procfs_entry->uid = proc_uid;
- wrap_procfs_entry->gid = proc_gid;
+ proc_set_user( wrap_procfs_entry, proc_uid, proc_gid);
- procfs_entry = create_proc_entry("debug", S_IFREG | S_IRUSR | S_IRGRP,
- wrap_procfs_entry);
- if (procfs_entry == NULL) {
+ procfs_debug = proc_create("debug", S_IFREG | S_IRUSR | S_IRGRP,
+ wrap_procfs_entry, &procfs_debug_ops);
+ if (procfs_debug == NULL) {
ERROR("couldn't create proc entry for 'debug'");
return -ENOMEM;
} else {
- procfs_entry->uid = proc_uid;
- procfs_entry->gid = proc_gid;
- procfs_entry->read_proc = procfs_read_debug;
- procfs_entry->write_proc = procfs_write_debug;
+ proc_set_user( procfs_debug, proc_uid, proc_gid);
}
return 0;
}
@@ -554,6 +599,6 @@ void wrap_procfs_remove(void)
{
if (wrap_procfs_entry == NULL)
return;
- remove_proc_entry("debug", wrap_procfs_entry);
- remove_proc_entry(DRIVER_NAME, proc_net_root);
+ proc_remove( procfs_debug);
+ proc_remove( wrap_procfs_entry);
}
diff --git a/driver/wrapndis.c b/driver/wrapndis.c
index 7bb9568..43074f4 100644
--- a/driver/wrapndis.c
+++ b/driver/wrapndis.c
@@ -1771,7 +1771,12 @@ static int notifier_event(struct notifier_block *notifier, unsigned long event,
if (likely(wnd->procfs_iface)) {
printk(KERN_INFO "%s: changing interface name from "
"'%s' to '%s'\n", DRIVER_NAME,
- wnd->procfs_iface->name, net_dev->name);
+ wnd->net_dev->name, net_dev->name);
+/* NEEDS CLARIFICATION:
+ * 'wnd->procfs_iface->name' changed to 'wnd->net_dev_name', as the 'proc_dir_entry'-struct
+ * is now opaque.
+ * Are they always the same?
+ */
wrap_procfs_remove_ndis_device(wnd);
wrap_procfs_add_ndis_device(wnd);
}
Index: ndiswrapper-kmod.spec
===================================================================
RCS file: /cvs/free/rpms/ndiswrapper-kmod/F-18/ndiswrapper-kmod.spec,v
retrieving revision 1.102
retrieving revision 1.103
diff -u -r1.102 -r1.103
--- ndiswrapper-kmod.spec 31 Aug 2013 10:37:54 -0000 1.102
+++ ndiswrapper-kmod.spec 16 Sep 2013 13:39:46 -0000 1.103
@@ -18,6 +18,7 @@
Source11: ndiswrapper-kmodtool-excludekernel-filterfile
Patch0: ndiswrapper-kmod-nomodinfo.patch
Patch1: ndiswrapper-1.58-add_taint.patch
+Patch2: ndiswrapper-procfs-api.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
# needed for plague to make sure it builds for i586 and i686
@@ -50,6 +51,7 @@
(cd ndiswrapper-%{version}%{?pre} ;
%patch0 -p1 -b .orig
%patch1 -p1 -b .orig
+%patch2 -p1 -b .orig
)
sed -i 's|/sbin/depmod -a|/bin/true|' ndiswrapper-%{version}%{?pre}/driver/Makefile
for kernel_version in %{?kernel_versions} ; do
10 years, 11 months
rpms/freetype-freeworld/devel .cvsignore, 1.16, 1.17 freetype-freeworld.spec, 1.28, 1.29 sources, 1.16, 1.17
by Kevin Kofler
Author: kkofler
Update of /cvs/free/rpms/freetype-freeworld/devel
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv9891/devel
Modified Files:
.cvsignore freetype-freeworld.spec sources
Log Message:
* Sun Sep 15 2013 Kevin Kofler <Kevin(a)tigcc.ticalc.org> 2.5.0.1-1
- Update to 2.5.0.1 (matches Fedora freetype)
- BuildRequires: libpng-devel
- Drop obsolete backported freetype-2.4.12-enable-adobe-cff-engine.patch
Index: .cvsignore
===================================================================
RCS file: /cvs/free/rpms/freetype-freeworld/devel/.cvsignore,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -r1.16 -r1.17
--- .cvsignore 9 May 2013 20:58:12 -0000 1.16
+++ .cvsignore 15 Sep 2013 20:14:45 -0000 1.17
@@ -1 +1 @@
-freetype-2.4.12.tar.bz2
+freetype-2.5.0.1.tar.bz2
Index: freetype-freeworld.spec
===================================================================
RCS file: /cvs/free/rpms/freetype-freeworld/devel/freetype-freeworld.spec,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -r1.28 -r1.29
--- freetype-freeworld.spec 9 May 2013 20:58:12 -0000 1.28
+++ freetype-freeworld.spec 15 Sep 2013 20:14:46 -0000 1.29
@@ -1,6 +1,6 @@
Summary: A free and portable font rendering engine
Name: freetype-freeworld
-Version: 2.4.12
+Version: 2.5.0.1
Release: 1%{?dist}
License: (FTL or GPLv2+) and BSD and MIT and Public Domain and zlib with acknowledgement
Group: System Environment/Libraries
@@ -12,9 +12,6 @@
# Enable otvalid and gxvalid modules
Patch46: freetype-2.2.1-enable-valid.patch
-# https://bugzilla.redhat.com/show_bug.cgi?id=959771
-Patch89: freetype-2.4.12-enable-adobe-cff-engine.patch
-
BuildRoot: %{_tmppath}/%{name}-%{version}-root-%(%{__id_u} -n)
Provides: freetype-bytecode
@@ -22,6 +19,7 @@
Requires: /etc/ld.so.conf.d
BuildRequires: libX11-devel
+BuildRequires: libpng-devel
%description
The FreeType engine is a free and portable font rendering
@@ -42,8 +40,6 @@
%patch46 -p1 -b .enable-valid
-%patch89 -p1 -b .adobe-cff
-
%build
@@ -88,6 +84,11 @@
%config(noreplace) %{_sysconfdir}/ld.so.conf.d/%{name}-%{_arch}.conf
%changelog
+* Sun Sep 15 2013 Kevin Kofler <Kevin(a)tigcc.ticalc.org> 2.5.0.1-1
+- Update to 2.5.0.1 (matches Fedora freetype)
+- BuildRequires: libpng-devel
+- Drop obsolete backported freetype-2.4.12-enable-adobe-cff-engine.patch
+
* Thu May 09 2013 Kevin Kofler <Kevin(a)tigcc.ticalc.org> 2.4.12-1
- Update to 2.4.12 (matches Fedora freetype)
- Drop freetype-2.4.11-fix-emboldening.patch (fixed upstream)
Index: sources
===================================================================
RCS file: /cvs/free/rpms/freetype-freeworld/devel/sources,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -r1.16 -r1.17
--- sources 9 May 2013 20:58:12 -0000 1.16
+++ sources 15 Sep 2013 20:14:46 -0000 1.17
@@ -1 +1 @@
-3463102764315eb86c0d3c2e1f3ffb7d freetype-2.4.12.tar.bz2
+c72e9010b1d986d556fc0b2b5fcbf31a freetype-2.5.0.1.tar.bz2
10 years, 12 months
rpms/broadcom-wl/F-18 broadcom-wl-001_license.patch, NONE, 1.1 .cvsignore, 1.12, 1.13 broadcom-wl.spec, 1.20, 1.21 sources, 1.13, 1.14 broadcom-wl-5.100.82.112-license.patch, 1.1, NONE
by Nicolas Viéville
Author: nvieville
Update of /cvs/nonfree/rpms/broadcom-wl/F-18
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv30365
Modified Files:
.cvsignore broadcom-wl.spec sources
Added Files:
broadcom-wl-001_license.patch
Removed Files:
broadcom-wl-5.100.82.112-license.patch
Log Message:
* Sat Sep 14 2013 Nicolas Viéville <nicolas.vieville(a)univ-valenciennes.fr> - 6.30.223.141-1
- Upstream update to 6.30.223.141
broadcom-wl-001_license.patch:
wl_linux.c | 2 ++
1 file changed, 2 insertions(+)
--- NEW FILE broadcom-wl-001_license.patch ---
diff -Naur hybrid-v35_64-nodebug-pcoem-6_30_223_141.orig/src/wl/sys/wl_linux.c hybrid-v35_64-nodebug-pcoem-6_30_223_141/src/wl/sys/wl_linux.c
--- hybrid-v35_64-nodebug-pcoem-6_30_223_141.orig/src/wl/sys/wl_linux.c 2013-08-01 08:52:22.000000000 +0200
+++ hybrid-v35_64-nodebug-pcoem-6_30_223_141/src/wl/sys/wl_linux.c 2013-09-14 16:06:43.404896532 +0200
@@ -179,6 +179,8 @@
static void wl_report_radio_state(wl_info_t *wl);
#endif
+MODULE_LICENSE("MIXED/Proprietary");
+
static struct pci_device_id wl_id_table[] =
{
{ PCI_ANY_ID, PCI_ANY_ID, PCI_ANY_ID, PCI_ANY_ID,
Index: .cvsignore
===================================================================
RCS file: /cvs/nonfree/rpms/broadcom-wl/F-18/.cvsignore,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -r1.12 -r1.13
--- .cvsignore 19 Apr 2012 06:41:00 -0000 1.12
+++ .cvsignore 15 Sep 2013 15:39:38 -0000 1.13
@@ -1,4 +1,4 @@
-hybrid-portsrc_x86_64-v5_100_82_112.tar.gz
-hybrid-portsrc_x86_32-v5_100_82_112.tar.gz
+hybrid-v35_64-nodebug-pcoem-6_30_223_141.tar.gz
+hybrid-v35-nodebug-pcoem-6_30_223_141.tar.gz
broadcom-wl-blacklist.conf
README.txt
Index: broadcom-wl.spec
===================================================================
RCS file: /cvs/nonfree/rpms/broadcom-wl/F-18/broadcom-wl.spec,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -r1.20 -r1.21
--- broadcom-wl.spec 20 Jan 2013 23:45:27 -0000 1.20
+++ broadcom-wl.spec 15 Sep 2013 15:39:38 -0000 1.21
@@ -1,18 +1,18 @@
Name: broadcom-wl
-Version: 5.100.82.112
-Release: 4%{?dist}
+Version: 6.30.223.141
+Release: 1%{?dist}
Summary: Common files for Broadcom 802.11 STA driver
Group: System Environment/Kernel
License: Redistributable, no modification permitted
URL: http://www.broadcom.com/support/802.11/linux_sta.php
-Source0: http://www.broadcom.com/docs/linux_sta/hybrid-portsrc_x86_32-v5_100_82_11...
-Source1: http://www.broadcom.com/docs/linux_sta/hybrid-portsrc_x86_64-v5_100_82_11...
+Source0: http://www.broadcom.com/docs/linux_sta/hybrid-v35-nodebug-pcoem-6_30_223_...
+Source1: http://www.broadcom.com/docs/linux_sta/hybrid-v35_64-nodebug-pcoem-6_30_2...
Source2: http://www.broadcom.com/docs/linux_sta/README.txt
Source3: broadcom-wl-blacklist.conf
Source4: 20-wl.conf
Source5: api
Source6: fedora.readme
-Patch0: broadcom-wl-5.100.82.112-license.patch
+Patch0: broadcom-wl-001_license.patch
BuildArch: noarch
Provides: wl-kmod-common = %{version}
@@ -24,8 +24,8 @@
This package contains the license, README.txt and configuration
files for the Broadcom 802.11 Linux STA Driver for WiFi, a Linux
device driver for use with Broadcom's BCM4311-, BCM4312-, BCM4313-,
-BCM4321-, BCM4322-, BCM43224-, and BCM43225-, BCM43227- and
-BCM43228-based hardware.
+BCM4321-, BCM4322-, BCM43142-, BCM43224-, BCM43225-, BCM43227-,
+BCM43228-, BCM4331-, BCM4360 and -BCM4352- based hardware.
%prep
%setup -q -c
@@ -59,6 +59,9 @@
%config(noreplace) %{_sysconfdir}/akmods/akmod-wl/api
%changelog
+* Sat Sep 14 2013 Nicolas Viéville <nicolas.vieville(a)univ-valenciennes.fr> - 6.30.223.141-1
+- Upstream update to 6.30.223.141
+
* Mon Jan 21 2013 Nicolas Viéville <nicolas.vieville(a)univ-valenciennes.fr> - 5.100.82.112-4
- move broadcom-wl-blacklist.conf to %%{_prefix}/lib/modprobe.d/ since new dracut in F-18
- install section cleaned-up
@@ -77,13 +80,13 @@
* Thu Feb 09 2012 Nicolas Chauvet <kwizart(a)gmail.com> - 5.100.82.112-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
-* Mon Nov 07 2011 Nicolas Vieville <nicolas.vieville(a)univ-valenciennes.fr> - 5.100.82.112-1
+* Mon Nov 07 2011 Nicolas Viéville <nicolas.vieville(a)univ-valenciennes.fr> - 5.100.82.112-1
- Updated version to 5.100.82.112
* Sat Nov 05 2011 Nicolas Viéville <nicolas.vieville(a)univ-valenciennes.fr> - 5.100.82.38-1.1
- Rebuilt for F-16
-* Fri Nov 04 2011 Nicolas Vieville <nicolas.vieville(a)univ-valenciennes.fr> - 5.100.82.38-1
+* Fri Nov 04 2011 Nicolas Viéville <nicolas.vieville(a)univ-valenciennes.fr> - 5.100.82.38-1
- Updated version to 5.100.82.38
* Tue Feb 01 2011 Chris Nolan <chris(a)cenolan.com> - 5.60.48.36
Index: sources
===================================================================
RCS file: /cvs/nonfree/rpms/broadcom-wl/F-18/sources,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -r1.13 -r1.14
--- sources 19 Apr 2012 06:41:00 -0000 1.13
+++ sources 15 Sep 2013 15:39:38 -0000 1.14
@@ -1,4 +1,4 @@
-310d7ce233a9a352fbe62c451b2ea309 hybrid-portsrc_x86_64-v5_100_82_112.tar.gz
-62d04d148b99f993ef575a71332593a9 hybrid-portsrc_x86_32-v5_100_82_112.tar.gz
-24e1e33923375ce9ad4c049f27286fd9 broadcom-wl-blacklist.conf
-6fd54aac59a53559d01520f35500693b README.txt
+039f33d2a3ff2890e42717092d1eb0c4 hybrid-v35_64-nodebug-pcoem-6_30_223_141.tar.gz
+f4809d9149e8e60ef95021ae93a4bf21 hybrid-v35-nodebug-pcoem-6_30_223_141.tar.gz
+3f3fd4d541bb11f12aaf7b3e1dd7ec71 broadcom-wl-blacklist.conf
+8a6e8708a5e00ab6d841cde51d70eb1b README.txt
--- broadcom-wl-5.100.82.112-license.patch DELETED ---
10 years, 12 months
rpms/wl-kmod/F-18 wl-kmod-001_license.patch, NONE, 1.1 wl-kmod-002_wext_workaround.patch, NONE, 1.1 wl-kmod-003_kernel_3.8.patch, NONE, 1.1 wl-kmod-004_kernel_3.10.patch, NONE, 1.1 .cvsignore, 1.11, 1.12 sources, 1.12, 1.13 wl-kmod.spec, 1.116, 1.117 broadcom-wl-5.100.82.112-cfg80211.patch, 1.1, NONE broadcom-wl-5.100.82.112-kernel-3.10.patch, 1.1, NONE broadcom-wl-5.100.82.112-kernel-3.2.patch, 1.2, NONE broadcom-wl-5.100.82.112-kernel-3.4.patch, 1.1, NONE broadcom-wl-5.100.82.112-kernel-3.6.patch, 1.3, NO
by Nicolas Viéville
Author: nvieville
Update of /cvs/nonfree/rpms/wl-kmod/F-18
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv29448
Modified Files:
.cvsignore sources wl-kmod.spec
Added Files:
wl-kmod-001_license.patch wl-kmod-002_wext_workaround.patch
wl-kmod-003_kernel_3.8.patch wl-kmod-004_kernel_3.10.patch
Removed Files:
broadcom-wl-5.100.82.112-cfg80211.patch
broadcom-wl-5.100.82.112-kernel-3.10.patch
broadcom-wl-5.100.82.112-kernel-3.2.patch
broadcom-wl-5.100.82.112-kernel-3.4.patch
broadcom-wl-5.100.82.112-kernel-3.6.patch
broadcom-wl-5.100.82.112-kernel-3.8.patch
broadcom-wl-5.100.82.112-kernel-3.9.patch
broadcom-wl-5.100.82.112-license.patch
broadcom-wl-5.100.82.112-recent_kernel_ioctl.patch
broadcom-wl-5.100.82.112-recent_kernel_semaphore.patch
broadcom-wl-5.100.82.112-wext_workaround.patch
Log Message:
* Sat Sep 14 2013 Nicolas Viéville <nicolas.vieville(a)univ-valenciennes.fr> - 6.30.223.141-1
- Upstream update to 6.30.223.141
wl-kmod-001_license.patch:
wl_linux.c | 2 ++
1 file changed, 2 insertions(+)
--- NEW FILE wl-kmod-001_license.patch ---
diff -Naur hybrid-v35_64-nodebug-pcoem-6_30_223_141.orig/src/wl/sys/wl_linux.c hybrid-v35_64-nodebug-pcoem-6_30_223_141/src/wl/sys/wl_linux.c
--- hybrid-v35_64-nodebug-pcoem-6_30_223_141.orig/src/wl/sys/wl_linux.c 2013-08-01 08:52:22.000000000 +0200
+++ hybrid-v35_64-nodebug-pcoem-6_30_223_141/src/wl/sys/wl_linux.c 2013-09-14 16:06:43.404896532 +0200
@@ -179,6 +179,8 @@
static void wl_report_radio_state(wl_info_t *wl);
#endif
+MODULE_LICENSE("MIXED/Proprietary");
+
static struct pci_device_id wl_id_table[] =
{
{ PCI_ANY_ID, PCI_ANY_ID, PCI_ANY_ID, PCI_ANY_ID,
wl-kmod-002_wext_workaround.patch:
Makefile | 14 ++++++++++++++
1 file changed, 14 insertions(+)
--- NEW FILE wl-kmod-002_wext_workaround.patch ---
diff -Naur hybrid-v35_64-nodebug-pcoem-6_30_223_141.orig/Makefile hybrid-v35_64-nodebug-pcoem-6_30_223_141/Makefile
--- hybrid-v35_64-nodebug-pcoem-6_30_223_141.orig/Makefile 2013-08-01 08:52:22.000000000 +0200
+++ hybrid-v35_64-nodebug-pcoem-6_30_223_141/Makefile 2013-09-14 17:56:21.206749114 +0200
@@ -18,6 +18,8 @@
#
# $Id: Makefile_kbuild_portsrc 384222 2013-02-10 01:56:57Z $
+API_ETC_FILE := /etc/akmods/akmod-wl-6xx/api
+
ifneq ($(KERNELRELEASE),)
LINUXVER_GOODFOR_CFG80211:=$(strip $(shell \
@@ -36,6 +38,18 @@
fi \
))
+ API_FILE:=$(strip $(shell \
+ if [ -r "$(API_ETC_FILE)" ]; then \
+ echo TRUE; \
+ else \
+ echo FALSE; \
+ fi \
+ ))
+
+ ifeq ($(API_FILE), TRUE)
+ include $(API_ETC_FILE)
+ endif
+
ifneq ($(API),)
ifeq ($(API), CFG80211)
APICHOICE := FORCE_CFG80211
wl-kmod-003_kernel_3.8.patch:
wl_linux.c | 4 ++++
1 file changed, 4 insertions(+)
--- NEW FILE wl-kmod-003_kernel_3.8.patch ---
diff -Naur hybrid-v35_64-nodebug-pcoem-6_30_223_141.orig/src/wl/sys/wl_linux.c hybrid-v35_64-nodebug-pcoem-6_30_223_141/src/wl/sys/wl_linux.c
--- hybrid-v35_64-nodebug-pcoem-6_30_223_141.orig/src/wl/sys/wl_linux.c 2013-09-14 16:06:43.404896000 +0200
+++ hybrid-v35_64-nodebug-pcoem-6_30_223_141/src/wl/sys/wl_linux.c 2013-09-14 18:22:15.929527944 +0200
@@ -912,7 +912,11 @@
pci_set_drvdata(pdev, NULL);
}
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 8, 0)
static struct pci_driver wl_pci_driver = {
+#else
+static struct pci_driver wl_pci_driver __refdata = {
+#endif
name: "wl",
probe: wl_pci_probe,
suspend: wl_suspend,
wl-kmod-004_kernel_3.10.patch:
wl_linux.c | 63 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 63 insertions(+)
--- NEW FILE wl-kmod-004_kernel_3.10.patch ---
diff -Naur hybrid-v35_64-nodebug-pcoem-6_30_223_141.orig/src/wl/sys/wl_linux.c hybrid-v35_64-nodebug-pcoem-6_30_223_141/src/wl/sys/wl_linux.c
--- hybrid-v35_64-nodebug-pcoem-6_30_223_141.orig/src/wl/sys/wl_linux.c 2013-09-14 18:22:15.929527944 +0200
+++ hybrid-v35_64-nodebug-pcoem-6_30_223_141/src/wl/sys/wl_linux.c 2013-09-14 19:48:07.624004896 +0200
@@ -3242,7 +3242,12 @@
wl_tkip_printstats(wl_info_t *wl, bool group_key)
{
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 14)
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 10, 0)
+ struct seq_file sfile;
+ struct seq_file *debug_buf = &sfile;
+#else
char debug_buf[512];
+#endif
int idx;
if (wl->tkipmodops) {
if (group_key) {
@@ -3255,7 +3260,11 @@
wl->tkipmodops->print_stats(debug_buf, wl->tkip_ucast_data);
else
return;
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 10, 0)
+ printk("%s: TKIP stats from module: %s\n", debug_buf->buf, group_key?"Bcast":"Ucast");
+#else
printk("%s: TKIP stats from module: %s\n", debug_buf, group_key?"Bcast":"Ucast");
+#endif
}
#endif
}
@@ -3414,11 +3423,19 @@
return 0;
}
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 10, 0)
static int
wl_proc_read(char *buffer, char **start, off_t offset, int length, int *eof, void *data)
{
wl_info_t * wl = (wl_info_t *)data;
+#else
+static int
+wl_proc_read(struct seq_file *seq, void *offset)
+{
+ wl_info_t * wl = (wl_info_t *)seq->private;
+#endif
int bcmerror, to_user;
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 10, 0)
int len;
if (offset > 0) {
@@ -3430,17 +3447,33 @@
WL_ERROR(("%s: Not enough return buf space\n", __FUNCTION__));
return 0;
}
+#endif
WL_LOCK(wl);
bcmerror = wlc_ioctl(wl->wlc, WLC_GET_MONITOR, &to_user, sizeof(int), NULL);
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 10, 0)
len = sprintf(buffer, "%d\n", to_user);
+#endif
WL_UNLOCK(wl);
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 10, 0)
return len;
+#else
+ seq_printf(seq, "%d\n", to_user);
+ return bcmerror;
+#endif
}
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 10, 0)
static int
wl_proc_write(struct file *filp, const char *buff, unsigned long length, void *data)
{
wl_info_t * wl = (wl_info_t *)data;
+#else
+static ssize_t
+wl_proc_write(struct file *filp, const char __user *buff, size_t length, loff_t *ppos)
+{
+ struct seq_file *seq = filp->private_data;
+ wl_info_t * wl = (wl_info_t *)seq->private;
+#endif
int from_user = 0;
int bcmerror;
@@ -3451,7 +3484,11 @@
}
if (copy_from_user(&from_user, buff, 1)) {
WL_ERROR(("%s: copy from user failed\n", __FUNCTION__));
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 10, 0)
return -EIO;
+#else
+ return -EFAULT;
+#endif
}
if (from_user >= 0x30)
@@ -3465,22 +3502,48 @@
WL_ERROR(("%s: SET_MONITOR failed with %d\n", __FUNCTION__, bcmerror));
return -EIO;
}
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 10, 0)
+ *ppos += length;
+#endif
return length;
}
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 10, 0)
+static int wl_proc_open(struct inode *inode, struct file *file)
+{
+ return single_open(file, wl_proc_read, PDE_DATA(inode));
+}
+
+static const struct file_operations wl_fops = {
+ .owner = THIS_MODULE,
+ .open = wl_proc_open,
+ .read = seq_read,
+ .write = wl_proc_write,
+ .llseek = seq_lseek,
+ .release = single_release,
+};
+#endif
+
static int
wl_reg_proc_entry(wl_info_t *wl)
{
char tmp[32];
sprintf(tmp, "%s%d", HYBRID_PROC, wl->pub->unit);
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 10, 0)
if ((wl->proc_entry = create_proc_entry(tmp, 0644, NULL)) == NULL) {
WL_ERROR(("%s: create_proc_entry %s failed\n", __FUNCTION__, tmp));
+#else
+ if ((wl->proc_entry = proc_create_data(tmp, 0644, NULL, &wl_fops, wl)) == NULL) {
+ WL_ERROR(("%s: proc_create_data %s failed\n", __FUNCTION__, tmp));
+#endif
ASSERT(0);
return -1;
}
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 10, 0)
wl->proc_entry->read_proc = wl_proc_read;
wl->proc_entry->write_proc = wl_proc_write;
wl->proc_entry->data = wl;
+#endif
return 0;
}
#ifdef WLOFFLD
Index: .cvsignore
===================================================================
RCS file: /cvs/nonfree/rpms/wl-kmod/F-18/.cvsignore,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -r1.11 -r1.12
--- .cvsignore 6 Nov 2011 23:40:23 -0000 1.11
+++ .cvsignore 15 Sep 2013 15:33:52 -0000 1.12
@@ -1,3 +1,3 @@
-hybrid-portsrc_x86_64-v5_100_82_112.tar.gz
-hybrid-portsrc_x86_32-v5_100_82_112.tar.gz
-broadcom-wl-kmodtool-excludekernel-filterfile
+hybrid-v35_64-nodebug-pcoem-6_30_223_141.tar.gz
+hybrid-v35-nodebug-pcoem-6_30_223_141.tar.gz
+wl-kmod-kmodtool-excludekernel-filterfile
Index: sources
===================================================================
RCS file: /cvs/nonfree/rpms/wl-kmod/F-18/sources,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -r1.12 -r1.13
--- sources 6 Nov 2011 23:40:24 -0000 1.12
+++ sources 15 Sep 2013 15:33:52 -0000 1.13
@@ -1,3 +1,3 @@
-310d7ce233a9a352fbe62c451b2ea309 hybrid-portsrc_x86_64-v5_100_82_112.tar.gz
-62d04d148b99f993ef575a71332593a9 hybrid-portsrc_x86_32-v5_100_82_112.tar.gz
-5df50b59ac8a311c81c9ad569ffc2225 broadcom-wl-kmodtool-excludekernel-filterfile
+039f33d2a3ff2890e42717092d1eb0c4 hybrid-v35_64-nodebug-pcoem-6_30_223_141.tar.gz
+f4809d9149e8e60ef95021ae93a4bf21 hybrid-v35-nodebug-pcoem-6_30_223_141.tar.gz
+5df50b59ac8a311c81c9ad569ffc2225 wl-kmod-kmodtool-excludekernel-filterfile
Index: wl-kmod.spec
===================================================================
RCS file: /cvs/nonfree/rpms/wl-kmod/F-18/wl-kmod.spec,v
retrieving revision 1.116
retrieving revision 1.117
diff -u -r1.116 -r1.117
--- wl-kmod.spec 31 Aug 2013 10:41:38 -0000 1.116
+++ wl-kmod.spec 15 Sep 2013 15:33:52 -0000 1.117
@@ -3,29 +3,22 @@
# "buildforkernels newest" macro for just that build; immediately after
# queuing that build enable the macro again for subsequent builds; that way
# a new akmod package will only get build when a new one is actually needed
-%global buildforkernels newest
+%global buildforkernels current
Name: wl-kmod
-Version: 5.100.82.112
-Release: 11%{?dist}.8
+Version: 6.30.223.141
+Release: 1%{?dist}
Summary: Kernel module for Broadcom wireless devices
Group: System Environment/Kernel
License: Redistributable, no modification permitted
URL: http://www.broadcom.com/support/802.11/linux_sta.php
-Source0: http://www.broadcom.com/docs/linux_sta/hybrid-portsrc_x86_32-v5_100_82_11...
-Source1: http://www.broadcom.com/docs/linux_sta/hybrid-portsrc_x86_64-v5_100_82_11...
-Source11: broadcom-wl-kmodtool-excludekernel-filterfile
-Patch0: broadcom-wl-5.100.82.112-license.patch
-Patch1: broadcom-wl-5.100.82.112-kernel-3.2.patch
-Patch2: broadcom-wl-5.100.82.112-kernel-3.4.patch
-Patch3: broadcom-wl-5.100.82.112-cfg80211.patch
-Patch4: broadcom-wl-5.100.82.112-kernel-3.6.patch
-Patch5: broadcom-wl-5.100.82.112-recent_kernel_semaphore.patch
-Patch6: broadcom-wl-5.100.82.112-recent_kernel_ioctl.patch
-Patch7: broadcom-wl-5.100.82.112-wext_workaround.patch
-Patch8: broadcom-wl-5.100.82.112-kernel-3.8.patch
-Patch9: broadcom-wl-5.100.82.112-kernel-3.9.patch
-Patch10: broadcom-wl-5.100.82.112-kernel-3.10.patch
+Source0: http://www.broadcom.com/docs/linux_sta/hybrid-v35-nodebug-pcoem-6_30_223_...
+Source1: http://www.broadcom.com/docs/linux_sta/hybrid-v35_64-nodebug-pcoem-6_30_2...
+Source11: wl-kmod-kmodtool-excludekernel-filterfile
+Patch0: wl-kmod-001_license.patch
+Patch1: wl-kmod-002_wext_workaround.patch
+Patch2: wl-kmod-003_kernel_3.8.patch
+Patch3: wl-kmod-004_kernel_3.10.patch
BuildRequires: %{_bindir}/kmodtool
@@ -41,7 +34,8 @@
%description
These packages contain Broadcom's IEEE 802.11a/b/g/n hybrid Linux device
driver for use with Broadcom's BCM4311-, BCM4312-, BCM4313-, BCM4321-,
-BCM4322-, BCM43224-, and BCM43225-, BCM43227- and BCM43228-based hardware.
+BCM4322-, BCM43142-, BCM43224-, BCM43225-, BCM43227-, BCM43228-,
+BCM4331-, BCM4360 and -BCM4352- based hardware.
NOTE: You must read the LICENSE.txt file in the docs directory before using
this software. You should read the fedora.readme file in the docs directory
@@ -64,16 +58,9 @@
tar xzf %{SOURCE1}
%endif
%patch0 -p1 -b .license
-%patch1 -p1 -b .kernel-3.2
-%patch2 -p1 -b .kernel-3.4
-%patch3 -p1 -b .cfg80211
-%patch4 -p1 -b .kernel-3.6
-%patch5 -p1 -b .recent_kernel_semaphore
-%patch6 -p1 -b .recent_kernel_ioctl
-%patch7 -p1 -b .wext_workaround.patch
-%patch8 -p1 -b .kernel-3.8
-%patch9 -p1 -b .kernel-3.9
-%patch10 -p1 -b .kernel-3.10
+%patch1 -p1 -b .wext_workaround.patch
+%patch2 -p1 -b .kernel-3.8
+%patch3 -p1 -b .kernel-3.10
popd
for kernel_version in %{?kernel_versions} ; do
@@ -103,6 +90,9 @@
rm -rf $RPM_BUILD_ROOT
%changelog
+* Sat Sep 14 2013 Nicolas Viéville <nicolas.vieville(a)univ-valenciennes.fr> - 6.30.223.141-1
+- Upstream update to 6.30.223.141
+
* Sat Aug 31 2013 Nicolas Chauvet <kwizart(a)gmail.com> - 5.100.82.112-11.8
- Rebuilt for kernel
@@ -137,7 +127,7 @@
* Wed May 22 2013 Nicolas Chauvet <kwizart(a)gmail.com> - 5.100.82.112-10.1
- Rebuilt for kernel
-* Tue May 14 2013 Nicolas Vieville <nicolas.vieville(a)univ-valenciennes.fr> - 5.100.82.112-10
+* Tue May 14 2013 Nicolas Viéville <nicolas.vieville(a)univ-valenciennes.fr> - 5.100.82.112-10
- Added patch to build for kernel >= 3.9
* Tue May 14 2013 Nicolas Chauvet <kwizart(a)gmail.com> - 5.100.82.112-9.12
@@ -179,10 +169,10 @@
* Mon Mar 11 2013 Nicolas Chauvet <kwizart(a)gmail.com> - 5.100.82.112-8.1
- Rebuilt for kernel
-* Fri Mar 08 2013 Nicolas Vieville <nicolas.vieville(a)univ-valenciennes.fr> - 5.100.82.112-9
+* Fri Mar 08 2013 Nicolas Viéville <nicolas.vieville(a)univ-valenciennes.fr> - 5.100.82.112-9
- Modified patch to build for kernel >= 3.8 rfbz#2715
-* Fri Mar 01 2013 Nicolas Vieville <nicolas.vieville(a)univ-valenciennes.fr> - 5.100.82.112-8
+* Fri Mar 01 2013 Nicolas Viéville <nicolas.vieville(a)univ-valenciennes.fr> - 5.100.82.112-8
- Added patch to build for kernel >= 3.8
* Thu Feb 28 2013 Nicolas Chauvet <kwizart(a)gmail.com> - 5.100.82.112-7.16
@@ -237,24 +227,24 @@
- Added patch to choose API at build time (WEXT or CFG80211) to workaround #2548 #2562
- Others patches cleaned-up
-* Sat Oct 20 2012 Nicolas Vieville <nicolas.vieville(a)univ-valenciennes.fr> - 5.100.82.112-6
+* Sat Oct 20 2012 Nicolas Viéville <nicolas.vieville(a)univ-valenciennes.fr> - 5.100.82.112-6
- Added patch to include semaphore.h in wl_iw.h
- Added patch from Archlinux to disable too many "ERROR @wl_cfg80211_get_station..." messages
in /var/log/messages since activation of CFG80211 API
-* Wed Oct 17 2012 Nicolas Vieville <nicolas.vieville(a)univ-valenciennes.fr> - 5.100.82.112-5.1
+* Wed Oct 17 2012 Nicolas Viéville <nicolas.vieville(a)univ-valenciennes.fr> - 5.100.82.112-5.1
- Cleaned up patch for kernel >= 3.6
-* Tue Oct 16 2012 Nicolas Vieville <nicolas.vieville(a)univ-valenciennes.fr> - 5.100.82.112-5
+* Tue Oct 16 2012 Nicolas Viéville <nicolas.vieville(a)univ-valenciennes.fr> - 5.100.82.112-5
- Added patch to build for kernel >= 3.6
-* Wed Oct 10 2012 Nicolas Vieville <nicolas.vieville(a)univ-valenciennes.fr> - 5.100.82.112-4
+* Wed Oct 10 2012 Nicolas Viéville <nicolas.vieville(a)univ-valenciennes.fr> - 5.100.82.112-4
- Added patch to build with CFG80211 API as default for F-17
-* Sun Jun 24 2012 Nicolas Vieville <nicolas.vieville(a)univ-valenciennes.fr> - 5.100.82.112-3.1
+* Sun Jun 24 2012 Nicolas Viéville <nicolas.vieville(a)univ-valenciennes.fr> - 5.100.82.112-3.1
- spec file cleanup
-* Fri Jun 08 2012 Nicolas Vieville <nicolas.vieville(a)univ-valenciennes.fr> - 5.100.82.112-3
+* Fri Jun 08 2012 Nicolas Viéville <nicolas.vieville(a)univ-valenciennes.fr> - 5.100.82.112-3
- Added patch to build for kernel >= 3.4
* Thu Apr 19 2012 Nicolas Viéville <nicolas.vieville(a)univ-valenciennes.fr> - 5.100.82.112-2.1
@@ -263,16 +253,16 @@
* Tue Feb 07 2012 Nicolas Chauvet <kwizart(a)gmail.com> - 5.100.82.112-2.1
- Rebuild for UsrMove
-* Mon Jan 09 2012 Nicolas Vieville <nicolas.vieville(a)univ-valenciennes.fr> - 5.100.82.112-2
+* Mon Jan 09 2012 Nicolas Viéville <nicolas.vieville(a)univ-valenciennes.fr> - 5.100.82.112-2
- Added patch to build for kernel >= 3.2
-* Mon Nov 07 2011 Nicolas Vieville <nicolas.vieville(a)univ-valenciennes.fr> - 5.100.82.112-1
+* Mon Nov 07 2011 Nicolas Viéville <nicolas.vieville(a)univ-valenciennes.fr> - 5.100.82.112-1
- Updated version to 5.100.82.112
* Sat Nov 05 2011 Nicolas Viéville <nicolas.vieville(a)univ-valenciennes.fr> - 5.100.82.38-1.1
- Rebuilt for F-16
-* Fri Nov 04 2011 Nicolas Vieville <nicolas.vieville(a)univ-valenciennes.fr> - 5.100.82.38-1
+* Fri Nov 04 2011 Nicolas Viéville <nicolas.vieville(a)univ-valenciennes.fr> - 5.100.82.38-1
- Updated version to 5.100.82.38
* Wed Nov 02 2011 Nicolas Chauvet <kwizart(a)gmail.com> - 5.60.48.36-2.12
--- broadcom-wl-5.100.82.112-cfg80211.patch DELETED ---
--- broadcom-wl-5.100.82.112-kernel-3.10.patch DELETED ---
--- broadcom-wl-5.100.82.112-kernel-3.2.patch DELETED ---
--- broadcom-wl-5.100.82.112-kernel-3.4.patch DELETED ---
--- broadcom-wl-5.100.82.112-kernel-3.6.patch DELETED ---
--- broadcom-wl-5.100.82.112-kernel-3.8.patch DELETED ---
--- broadcom-wl-5.100.82.112-kernel-3.9.patch DELETED ---
--- broadcom-wl-5.100.82.112-license.patch DELETED ---
--- broadcom-wl-5.100.82.112-recent_kernel_ioctl.patch DELETED ---
--- broadcom-wl-5.100.82.112-recent_kernel_semaphore.patch DELETED ---
--- broadcom-wl-5.100.82.112-wext_workaround.patch DELETED ---
10 years, 12 months