realtekwifi: Compile with USB support and expose the necessary structures.
Tested with an 8821AU. It works, hurrah!
This commit is contained in:
@@ -15,10 +15,19 @@ UseHeaders [ FDirName $(SUBDIR) ] : true ;
|
||||
|
||||
SEARCH_SOURCE += [ FDirName $(SUBDIR) dev rtwn ] ;
|
||||
SEARCH_SOURCE += [ FDirName $(SUBDIR) dev rtwn pci ] ;
|
||||
SEARCH_SOURCE += [ FDirName $(SUBDIR) dev rtwn usb ] ;
|
||||
SEARCH_SOURCE += [ FDirName $(SUBDIR) dev rtwn rtl8188e ] ;
|
||||
SEARCH_SOURCE += [ FDirName $(SUBDIR) dev rtwn rtl8188e pci ] ;
|
||||
SEARCH_SOURCE += [ FDirName $(SUBDIR) dev rtwn rtl8188e usb ] ;
|
||||
SEARCH_SOURCE += [ FDirName $(SUBDIR) dev rtwn rtl8192c ] ;
|
||||
SEARCH_SOURCE += [ FDirName $(SUBDIR) dev rtwn rtl8192c pci ] ;
|
||||
SEARCH_SOURCE += [ FDirName $(SUBDIR) dev rtwn rtl8192c usb ] ;
|
||||
SEARCH_SOURCE += [ FDirName $(SUBDIR) dev rtwn rtl8192e ] ;
|
||||
SEARCH_SOURCE += [ FDirName $(SUBDIR) dev rtwn rtl8192e usb ] ;
|
||||
SEARCH_SOURCE += [ FDirName $(SUBDIR) dev rtwn rtl8812a ] ;
|
||||
SEARCH_SOURCE += [ FDirName $(SUBDIR) dev rtwn rtl8812a usb ] ;
|
||||
SEARCH_SOURCE += [ FDirName $(SUBDIR) dev rtwn rtl8821a ] ;
|
||||
SEARCH_SOURCE += [ FDirName $(SUBDIR) dev rtwn rtl8821a usb ] ;
|
||||
|
||||
KernelAddon realtekwifi :
|
||||
glue.c
|
||||
@@ -39,6 +48,13 @@ KernelAddon realtekwifi :
|
||||
rtwn_pci_rx.c
|
||||
rtwn_pci_tx.c
|
||||
|
||||
# usb/
|
||||
rtwn_usb_attach.c
|
||||
rtwn_usb_ep.c
|
||||
rtwn_usb_reg.c
|
||||
rtwn_usb_rx.c
|
||||
rtwn_usb_tx.c
|
||||
|
||||
# rtl8188e/
|
||||
r88e_beacon.c
|
||||
r88e_calib.c
|
||||
@@ -56,6 +72,10 @@ KernelAddon realtekwifi :
|
||||
r88ee_init.c
|
||||
r88ee_rx.c
|
||||
|
||||
# rtl8188e/usb/
|
||||
r88eu_attach.c
|
||||
r88eu_init.c
|
||||
|
||||
# rtl8192c/
|
||||
r92c_attach.c
|
||||
r92c_beacon.c
|
||||
@@ -77,7 +97,65 @@ KernelAddon realtekwifi :
|
||||
r92ce_led.c
|
||||
r92ce_rx.c
|
||||
r92ce_tx.c
|
||||
|
||||
# rtl8192c/usb/
|
||||
r92cu_attach.c
|
||||
r92cu_init.c
|
||||
r92cu_led.c
|
||||
r92cu_rx.c
|
||||
r92cu_tx.c
|
||||
|
||||
# rtl8192e/
|
||||
r92e_chan.c
|
||||
r92e_fw.c
|
||||
r92e_init.c
|
||||
r92e_led.c
|
||||
r92e_rf.c
|
||||
r92e_rom.c
|
||||
r92e_rx.c
|
||||
|
||||
# rtl8192e/usb/
|
||||
r92eu_attach.c
|
||||
r92eu_init.c
|
||||
|
||||
# rtl8812a/
|
||||
r12a_beacon.c
|
||||
r12a_calib.c
|
||||
r12a_caps.c
|
||||
r12a_chan.c
|
||||
r12a_fw.c
|
||||
r12a_init.c
|
||||
r12a_led.c
|
||||
r12a_rf.c
|
||||
r12a_rom.c
|
||||
r12a_rx.c
|
||||
r12a_tx.c
|
||||
|
||||
# rtl8812a/usb/
|
||||
r12au_attach.c
|
||||
r12au_init.c
|
||||
r12au_rx.c
|
||||
r12au_tx.c
|
||||
|
||||
# rtl8821a/
|
||||
r21a_beacon.c
|
||||
r21a_calib.c
|
||||
r21a_chan.c
|
||||
r21a_fw.c
|
||||
r21a_init.c
|
||||
r21a_led.c
|
||||
r21a_rom.c
|
||||
r21a_rx.c
|
||||
|
||||
# rtl8821a/usb/
|
||||
r21au_attach.c
|
||||
r21au_dfs.c
|
||||
r21au_init.c
|
||||
:
|
||||
freebsd_wlan.a
|
||||
libfreebsd_network.a
|
||||
;
|
||||
|
||||
ObjectHdrs [ FGristFiles rtwn_usb_attach$(SUFOBJ) ]
|
||||
: [ FDirName $(HAIKU_COMMON_PLATFORM_OBJECT_DIR) libs compat freebsd_network ] ;
|
||||
Includes [ FGristFiles rtwn_usb_attach.c ] : <src!libs!compat!freebsd_network>usbdevs.h ;
|
||||
|
||||
@@ -21,19 +21,43 @@
|
||||
#include <dev/rtwn/pci/rtwn_pci_var.h>
|
||||
|
||||
|
||||
HAIKU_FBSD_WLAN_DRIVER_GLUE(realtekwifi, rtwn_pci, pci)
|
||||
extern driver_t* DRIVER_MODULE_NAME(rtwn_pci, pci);
|
||||
extern driver_t* DRIVER_MODULE_NAME(rtwn_usb, uhub);
|
||||
|
||||
HAIKU_FBSD_WLAN_DRIVERS_GLUE(realtekwifi)
|
||||
HAIKU_DRIVER_REQUIREMENTS(FBSD_WLAN);
|
||||
HAIKU_FIRMWARE_VERSION(0);
|
||||
HAIKU_FIRMWARE_NAME_MAP({
|
||||
{"rtwn-rtl8188eefw", "rtwn-rtl8188eefw.ucode"},
|
||||
{"rtwn-rtl8188eufw", "rtwn-rtl8188eufw.ucode"},
|
||||
{"rtwn-rtl8192cfwE", "rtwn-rtl8192cfwE.ucode"},
|
||||
{"rtwn-rtl8192cfwE_B", "rtwn-rtl8192cfwE_B.ucode"},
|
||||
{"rtwn-rtl8192cfwU", "rtwn-rtl8192cfwU.ucode"},
|
||||
{"rtwn-rtl8192cfwT", "rtwn-rtl8192cfwT.ucode"},
|
||||
{"rtwn-rtl8192eufw", "rtwn-rtl8192eufw.ucode"},
|
||||
{"rtwn-rtl8812aufw", "rtwn-rtl8812aufw.ucode"},
|
||||
{"rtwn-rtl8821aufw", "rtwn-rtl8821aufw.ucode"},
|
||||
});
|
||||
|
||||
NO_HAIKU_FBSD_MII_DRIVER();
|
||||
NO_HAIKU_REENABLE_INTERRUPTS();
|
||||
|
||||
|
||||
status_t
|
||||
__haiku_handle_fbsd_drivers_list(status_t (*handler)(driver_t *[], driver_t *[]))
|
||||
{
|
||||
driver_t *pci_drivers[] = {
|
||||
DRIVER_MODULE_NAME(rtwn_pci, pci),
|
||||
NULL
|
||||
};
|
||||
driver_t *usb_drivers[] = {
|
||||
DRIVER_MODULE_NAME(rtwn_usb, uhub),
|
||||
NULL
|
||||
};
|
||||
return (*handler)(pci_drivers, usb_drivers);
|
||||
}
|
||||
|
||||
|
||||
int
|
||||
HAIKU_CHECK_DISABLE_INTERRUPTS(device_t dev)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user