Точка доступа TP-LINK WN727N Ubuntu 16.04 Xenial Xerus 4.4 or newer



Для анализа ошибок в работе драйвера смотрим лог dmesg

Видим сообщение от адаптера:
Read file "/etc/Wireless/RT2870AP/RT2870AP.dat" failed
no file read method

Попробуем найти сообщение об ошибке в исходных кодах драйвера, с помощью Notepadqq

Search->Find in files


Заменяем код:

//rt_linux.c Line 1162
int RtmpOSFileRead(RTMP_OS_FD osfd, char *pDataPtr, int readLen)
{
/* 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"));
return -1;
}
}

На код:


int RtmpOSFileRead(RTMP_OS_FD osfd, char *pDataPtr, int readLen)
{
    DBGPRINT(RT_DEBUG_ERROR, ("add: %p %p\n", osfd->f_op, osfd->f_op->read));
        /* 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);
                return vfs_read(osfd, pDataPtr, readLen, &osfd->f_pos);
        } else {
                DBGPRINT(RT_DEBUG_ERROR, ("no file read method\n"));
                return -1;
        }
}

Теперь можем собрать драйвер (make, make install)! по данной инструкции



Более подробно здесь: http://lo-li.net/tag/linux