I have a Asus RT-N18U using BCM4360. There is no wifi driver for it in OpenWrt. But there is a driver in DD-WRT. Kernel version is 4.4.241.
DD-WRT has a license agreement and NDA in place with Broadcom that allow usage of better, proprietary, closed source wireless drivers (binary blobs) which they are not allowed to redistribute freely.
I want to do this only for my own router. I will not distribute the resulting binaries.
- Is it possible to configure a recent OpenWrt kernel to be able to load that older module?
- Can I build a customized OpenWrt with that kernel version, so I can load the DD-WRT module? Maybe even menuconfig OpenWrt to use the DD-WRT kernel sources directory?
- Can I extract the broadcom blob from DD-WRT sources and make a package to be built together with my OpenWrt?
- The router has USB. Can I boot DD-WRT kernel and then mount or pivot to a OpenWrt root, keeping only the kernel modules from DD-WRT?
If any of this is possible, will Luci / uci work with it, or will it need manual configuration using some other tools?
I have some experience building OpenWrt from source, using kernel_menuconfig and making OpenWrt packages (but not drivers). Any advice where to start?