Скачал исходники этого драйвера с
github. Если, конечно, это тот...
Судя по всему, драйвер не поддерживает режим Monitor. Смотрим подпрограмму установки режима из файла ioctl_linux.c:
Код:

static int rtw_wx_set_mode(struct net_device *dev, struct iw_request_info *a,
union iwreq_data *wrqu, char *b)
{
_adapter *padapter = (_adapter *)rtw_netdev_priv(dev);
NDIS_802_11_NETWORK_INFRASTRUCTURE networkType ;
int ret = 0;
_func_enter_;
if(_FAIL == rfpwrstate_check(padapter)) {
ret= -EPERM;
goto exit;
}
if (padapter->hw_init_completed==_FALSE){
ret = -EPERM;
goto exit;
}
switch(wrqu->mode)
{
case IW_MODE_AUTO:
networkType = Ndis802_11AutoUnknown;
DBG_871X("set_mode = IW_MODE_AUTO\n");
break;
case IW_MODE_ADHOC:
networkType = Ndis802_11IBSS;
DBG_871X("set_mode = IW_MODE_ADHOC\n");
break;
case IW_MODE_MASTER:
networkType = Ndis802_11APMode;
DBG_871X("set_mode = IW_MODE_MASTER\n");
//rtw_setopmode_cmd(padapter, networkType);
break;
case IW_MODE_INFRA:
networkType = Ndis802_11Infrastructure;
DBG_871X("set_mode = IW_MODE_INFRA\n");
break;
default :
ret = -EINVAL;;
RT_TRACE(_module_rtl871x_ioctl_os_c,_drv_err_,("\n Mode: %s is not supported \n", iw_operation_mode[wrqu->mode]));
goto exit;
}
/*
if(Ndis802_11APMode == networkType)
{
rtw_setopmode_cmd(padapter, networkType);
}
else
{
rtw_setopmode_cmd(padapter, Ndis802_11AutoUnknown);
}
*/
if (rtw_set_802_11_infrastructure_mode(padapter, networkType) ==_FALSE){
ret = -EPERM;
goto exit;
}
rtw_setopmode_cmd(padapter, networkType);
exit:
_func_exit_;
return ret;
}
Обратите внимание, что могут быть установлены 4 режима: Auto, Ad-Hoc, Master и Managed (Infrastructure). Попытка установить любой другой вызывает сообщение об ошибке. Полный список режимов, включая неподдерживаемые:
Код:

static const char * const iw_operation_mode[] =
{
"Auto", "Ad-Hoc", "Managed", "Master", "Repeater", "Secondary", "Monitor"
};
Конечно, возможна еще ситуация, что я скачал не те исходники. Как вариант можно попробовать какой-нибудь другой из упомянутых мной драйверов.