1

GOAL

I want to install the Netis WF2190 wifi dongle linux driver onto my FriendlyARM mini210s.

Environment

I understand that I need to CROSS COMPILE the Netis WF2190 Linux driver

I am Using a virtual machine for cross-compilation (vagrant box)

$ uname -a
Linux vagrant 3.11.0-15-generic #25~precise1-Ubuntu SMP Thu Jan 30 17:39:31 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

I have downloaded and copied my driver into my VM

vagrant@vagrant:~/rtl8812AU_linux_v4.3.8_12175.20140902$ 

In the drivers Makefile, I added these

CONFIG_PLATFORM_I386_PC = n
CONFIG_PLATFORM_FRIENDLYARM_MINI210S = y     <==== 

and then

ifeq ($(CONFIG_PLATFORM_FRIENDLYARM_MINI210S), y)
EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
ARCH := arm
CROSS_COMPILE := /home/vagrant/friendlyarm/tools/usr/local/arm/4.3.2/bin/arm-none-linux-gnueabi-
KVER  := 3.0.8
KSRC := /home/vagrant/friendlyarm/linux-3.0.8/kernel
endif

and then tried to compile, but I get this error,

vagrant@vagrant:~/rtl8812AU_linux_v4.3.8_12175.20140902$ make
make ARCH=arm CROSS_COMPILE=/home/vagrant/robot-os/friendlyarm/tools/usr/local/arm/4.3.2/bin/arm-none-linux-gnueabi- -C /home/vagrant/robot-os/friendlyarm/linux-3.0.8/kernel  M=/home/vagrant/rtl8812AU_linux_v4.3.8_12175.20140902  modules
make[1]: Entering directory `/home/vagrant/robot-os/friendlyarm/linux-3.0.8/kernel'
make[1]: *** No rule to make target `modules'.  Stop.
make[1]: Leaving directory `/home/vagrant/robot-os/friendlyarm/linux-3.0.8/kernel'
make: *** [modules] Error 2

Worth noting that I am NOT a specialist, I am trying to learn what to do to reach my objective.

At this stage, I just don't understand what the message is telling me, and how I could fix it.

Any help will be well appreciated.

zabumba
  • 924
  • If you are following some instructions or tutorial from somewhere, you should post a link to that. Your methodology here appears kind of unorthodox to me. – goldilocks Dec 19 '14 at 18:08
  • yes most likely totally unorthodox, I have no clue how to do it. This what I have tried. People shout if you ask for help without trying hard before. This is me trying hard. – zabumba Dec 19 '14 at 20:00

2 Answers2

1

Kernel source path was wrong, I corrected it to:

KSRC := /home/vagrant/friendlyarm/linux-3.0.8/

and it compiled

zabumba
  • 924
0

In the drivers Makefile, I added these

That's not the way to go about this. See here -- you can probably skip to step #3.

then tried to compile, but I get this error

From your cut and paste, it looks like you ran make before make modules and nothing happened. That's no good. make should actually build the kernel, which may or may not be necessary to make a module (not sure if it should be, but sometimes it seems to be). That takes at least a few minutes and should produce lots of output. If that didn't happen, something is very wrong.

I've cross built kernels using gcc via crosstool-ng and have to set TARGET; you don't appear to have done that (but the distro cross-compiler may be different). However, setting this stuff by tinkering with the kernel makefile is probably a mistake. Just do it in the environment:

export TARGET=arm-none-linux-gnueabi
export ARCH=arm
export CROSS_COMPILE=/foo/bar/etc

Put that in a text file and just source it before you run make (source my_environment.sh).

goldilocks
  • 87,661
  • 30
  • 204
  • 262
  • Note that I modified the Netis driver Makefile, not the kernel MAkefile. I have built the kernel successfully before that. I am trying to cross compile the Netis driver, not the kernel. (Just making sure you got that) – zabumba Dec 19 '14 at 20:02
  • 1
    Sorry, I missed that. Can't look in the .rar right now either (why would they distribute a linux driver that way?? Not very promising...). This page implies a realtek 8812au driver might work, you could have a look at that. Unfortunately I don't do out-of-tree drivers much so I'm not much help with this. – goldilocks Dec 19 '14 at 20:38
  • No worries. I have just learned more today, this last input is already of great help. – zabumba Dec 19 '14 at 22:03