Skip to contentSkip to conversation

adding drivers to the kernel

DISCUSSION Jim Abernathy 2 participants 3 messages Aug 23, 2012

lore
Share & tools
lore
#0 lore raw

If I need to add a driver for a networking device that should be in the 3.0 kernel, but seems to be turned off, I usually follow the example in sections B.2.3 in the Development Manual. When I get to the stage of running bitbake linux-yocto -c menuconfig, I can search for my device with the "/" command and search for CONFIG_RTL8192CE and I find this:

Symbol: RTL8192CE [=n] │
│ Type : tristate │
│ Prompt: Realtek RTL8192CE/RTL8188CE Wireless Network Adapter │
│ Defined at drivers/net/wireless/rtlwifi/Kconfig:1 │
│ Depends on: NETDEVICES [=y] && WLAN [=y] && MAC80211 [=n] && PCI [=y] │
│ Location: │
│ -> Device Drivers │
│ -> Network device support (NETDEVICES [=y]) │
│ -> Wireless LAN (WLAN [=y]) │
│ Selects: FW_LOADER [=y] && RTLWIFI [=n] && RTL8192C_COMMON [=n]

However, I can't find this device where is should be or anywhere in the .config file. I've tried just adding the CONFIG_RTL8192CE=y to a config fragment file anyway and that didn't work. After building the image, the .config still didn't have the CONFIG_RTL8192CE=y. The 3.0 kernel should have support for the RTL8192CE devices.

Also if I manual add CONFIG_RTL8192CE=y to the .config file and then compile and build the kernel, the RTL8192CE parameter is removed from the .config file after the kernel build.

Any ideas?

Jim A

#1 lore raw
Quoted 24 lines · Jim Abernathy

If I need to add a driver for a networking device that should be in the 3.0 kernel, but seems to be turned off, I usually follow the example in sections B.2.3 in the Development Manual. When I get to the stage of running bitbake linux-yocto -c menuconfig, I can search for my device with the "/" command and search for CONFIG_RTL8192CE and I find this:

Symbol: RTL8192CE [=n] │
│ Type : tristate │
│ Prompt: Realtek RTL8192CE/RTL8188CE Wireless Network Adapter │
│ Defined at drivers/net/wireless/rtlwifi/Kconfig:1 │
│ Depends on: NETDEVICES [=y] && WLAN [=y] && MAC80211 [=n] && PCI [=y] │
│ Location: │
│ -> Device Drivers │
│ -> Network device support (NETDEVICES [=y]) │
│ -> Wireless LAN (WLAN [=y]) │
│ Selects: FW_LOADER [=y] && RTLWIFI [=n] && RTL8192C_COMMON [=n]

However, I can't find this device where is should be or anywhere in the .config file. I've tried just adding the CONFIG_RTL8192CE=y to a config fragment file anyway and that didn't work. After building the image, the .config still didn't have the CONFIG_RTL8192CE=y. The 3.0 kernel should have support for the RTL8192CE devices.

Quoted 4 lines

Also if I manual add CONFIG_RTL8192CE=y to the .config file and then compile and build the kernel, the RTL8192CE parameter is removed from the .config file after the kernel build.

You probably need to enable MAC80211 first. Your RTL8192CE driver will be selectable afterwards.
Marc

#2 lore raw
Quoted 26 lines · Marc Ferland
Quoted 24 lines · Jim Abernathy

If I need to add a driver for a networking device that should be in the 3.0 kernel, but seems to be turned off, I usually follow the example in sections B.2.3 in the Development Manual. When I get to the stage of running bitbake linux-yocto -c menuconfig, I can search for my device with the "/" command and search for CONFIG_RTL8192CE and I find this:

Symbol: RTL8192CE [=n] │
│ Type : tristate │
│ Prompt: Realtek RTL8192CE/RTL8188CE Wireless Network Adapter │
│ Defined at drivers/net/wireless/rtlwifi/Kconfig:1 │
│ Depends on: NETDEVICES [=y] && WLAN [=y] && MAC80211 [=n] && PCI [=y] │
│ Location: │
│ -> Device Drivers │
│ -> Network device support (NETDEVICES [=y]) │
│ -> Wireless LAN (WLAN [=y]) │
│ Selects: FW_LOADER [=y] && RTLWIFI [=n] && RTL8192C_COMMON [=n]

However, I can't find this device where is should be or anywhere in the .config file. I've tried just adding the CONFIG_RTL8192CE=y to a config fragment file anyway and that didn't work. After building the image, the .config still didn't have the CONFIG_RTL8192CE=y. The 3.0 kernel should have support for the RTL8192CE devices.

Quoted 7 lines
Quoted 4 lines

Also if I manual add CONFIG_RTL8192CE=y to the .config file and then compile and build the kernel, the RTL8192CE parameter is removed from the .config file after the kernel build.

You probably need to enable MAC80211 first. Your RTL8192CE driver will be selectable afterwards.
Marc

You are correct. after I posted my question, I cheated and booted Ubuntu on the same hardware and saw the list of modules that lsmod showed were loaded to support my WiFi card. my config fragment files now has:
CONFIG_RTL8192CE=y
CONFIG_RTL8192C_COMMON=y
CONFIG_RTLWIFI=y
CONFIG_MAC80211=y
CONFIG_CFG80211=y

It's still building, but at least the .config file now has all the right parameters in it and they didn't get deleted by the bitbake linux-yocto -c compile -f

Thanks,

Jim A

Quoted 4 lines

_______________________________________________
yocto mailing list
[email protected]
https://lists.yoctoproject.org/listinfo/yocto