* Modifications to RT5572_LinuxSTA_2.6.1.3_20121022 to get it working with actual kernels. Fix for Linux 4.1.
[not found] ` <54CA3CC2.1080109@maya.org>
@ 2015-06-30 17:40 ` Andreas Hartmann
0 siblings, 0 replies; only message in thread
From: Andreas Hartmann @ 2015-06-30 17:40 UTC (permalink / raw)
To: linux-wireless
[-- Attachment #1: Type: text/plain, Size: 533 bytes --]
Hi,
this patch fixes RT5572_LinuxSTA_2.6.1.3_20121022 to get it working with
Linux 4.1.
W/o this patch, the driver can't read
/etc/Wireless/RT2870STA/RT2870STA.dat anymore and therefore the driver
defaults to 802.11g e.g.
Reason:
After commit 5d5d56897530 ("make new_sync_{read,write}() static")
->read() cannot be called directly any more.
Here you can find all old existing patches for other
kernel versions: [1]
Regards,
Andreas
[1]
http://news.gmane.org/find-root.php?group=gmane.linux.drivers.rt2x00.user&article=2670
[-- Attachment #2: rt_linux_4,1.c.diff --]
[-- Type: text/x-patch, Size: 1161 bytes --]
--- a/DPO_RT5572_LinuxSTA_2.6.1.3_20121022/os/linux/rt_linux.c 2015-01-29 14:40:35.891324646 +0100
+++ b/DPO_RT5572_LinuxSTA_2.6.1.3_20121022/os/linux/rt_linux.c 2015-06-28 08:10:18.556116310 +0200
@@ -1126,22 +1126,33 @@
int RtmpOSFileRead(RTMP_OS_FD osfd,
char *pDataPtr, int readLen) {
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,19,0)
/* The object must have a read method */
if (osfd->f_op && osfd->f_op->read) {
return osfd->f_op->read(osfd, pDataPtr, readLen, &osfd->f_pos);
} else {
DBGPRINT(RT_DEBUG_ERROR, ("no file read method\n"));
+#else
+ if (osfd && osfd->f_mode & FMODE_CAN_READ) {
+ return __vfs_read(osfd, pDataPtr, readLen, &osfd->f_pos);
+ } else {
+ DBGPRINT(RT_DEBUG_ERROR, ("no file read method\n"));
+#endif
return -1;
}
}
int RtmpOSFileWrite(RTMP_OS_FD osfd,
char *pDataPtr, int writeLen) {
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,19,0)
return osfd->f_op->write(osfd,
pDataPtr,
(
size_t) writeLen,
&osfd->f_pos);
+#else
+ return __vfs_write(osfd, pDataPtr, (size_t) writeLen, &osfd->f_pos);
+#endif
}
static inline void __RtmpOSFSInfoChange(OS_FS_INFO * pOSFSInfo,
^ permalink raw reply [flat|nested] only message in thread