# Bluetooth subsystem support module depends

## REmaxer

I wanna build as built-in bluetooth-subsystem-support but when i try to do it i get an warning message:

```

This feature depends on another which has been configured as a module.As a result, this feature will be built as a module.

```

What's another feature?

----------

## wklam

I bumped into the very same problem.  A google search brought me to this.  

Here is what worked for me to have bluetooth-subsystem-support built-in to the kernel instead of a module.

If you look at:

```

/usr/src/linux/net/bluetooth/Kconfig 

```

This is where it has all the dependency listed for kernel menuconfig for bluetooth.

So on bluetooth subsystem support "BT"  It says:

```

menuconfig BT

        tristate "Bluetooth subsystem support"

        depends on NET && !S390

        depends on RFKILL || !RFKILL

        select CRC16

        select CRYPTO

        select CRYPTO_BLKCIPHER

        select CRYPTO_AES

        select CRYPTO_ECB

...

```

Please note that the logical operations like "||" and "&&" and "!" are not simple logical operations just like in programming languages.  They are actually calculation to refer to 0 (N), 1 (Y) or 2 (M).  

If you are curious what these operators actually mean:

http://www.kernel.org/doc/Documentation/kbuild/kconfig-language.txt

For the above BT, it means, it depends on

1) (NET) Networking, and 

2) (RFKILL) RF switch subsystem support (RF kill switch)

Once you select RFKILL and NET as built-in, then it will go ahead and select CRC16, CRYPTO, CRYPTO_BLKCIPHER, CRYPT_AES and CRYPT_ECB as built in for you too.

RF kill switch is under:

```

Networking support -->

   RF switch subsystem support

```

Hope this helps people with the same problem.

-William

----------

## Budoka

 *wklam wrote:*   

> I bumped into the very same problem.  A google search brought me to this.  
> 
> Here is what worked for me to have bluetooth-subsystem-support built-in to the kernel instead of a module.
> 
> If you look at:
> ...

 

I had this same problem. I was able to find and select rfkill,  *Quote:*   

> --- RF switch subsystem support                                                                                                               │ │  
> 
>   │ │                                                                        [*]   RF switch input support                                                                                                                 │ │  
> 
>   │ │                                                                        <*>   Generic rfkill regulator driver

 

and this allowed me to then select bluetooth subsystem support,  *Quote:*   

> --- Bluetooth subsystem support                                                                                                               │ │  
> 
>   │ │                                                                        <M>   RFCOMM protocol support                                                                                                                 │ │  
> 
>   │ │                                                                        [*]     RFCOMM TTY support                                                                                                                    │ │  
> ...

 

but I can't find where NET is located in the kernel config. Can you point me to it? My Bluetooth radio is still not detected and want to make sure I have the kernel compiled correctly before starting a new thread to deal with it.

----------

## wklam

 *Quote:*   

>  but I can't find where NET is located in the kernel config. Can you point me to it? My Bluetooth radio is still not detected and want to make sure I have the kernel compiled correctly before starting a new thread to deal with it.

 

NET was referring to Networking.  In the following figure, at the top.

http://sourceforge.net/apps/trac/wdtvtools/attachment/wiki/Tutorials/CompileKernelModulesForTheWDTV/kernel-menuconfig-bt-network.png

Make sure it is a star [*].  If you start from the kernel at portage, it should be enabled by default.

It should be at the top-level "Networking" at menuconfig.

http://sourceforge.net/apps/trac/wdtvtools/raw-attachment/wiki/Tutorials/CompileKernelModulesForTheWDTV/kernel-menuconfig-main.png

Hope this helps.

-William

----------

## Budoka

 *wklam wrote:*   

>  *Quote:*    but I can't find where NET is located in the kernel config. Can you point me to it? My Bluetooth radio is still not detected and want to make sure I have the kernel compiled correctly before starting a new thread to deal with it. 
> 
> NET was referring to Networking.  In the following figure, at the top.
> 
> http://sourceforge.net/apps/trac/wdtvtools/attachment/wiki/Tutorials/CompileKernelModulesForTheWDTV/kernel-menuconfig-bt-network.png
> ...

 

Thanks. Yes it does have a star next to it. Anyway, I will start another thread to try to sort out my bluetooth issue.

----------

