Kbuild: Bluetooth driver support.

This commit adds the Makefile and Kconfig files
to support the bluetooth driver in the Kbuild system.

Signed-off-by: Juan Manuel Cruz <juan.m.cruz.alcaraz@linux.intel.com>
Change-Id: I1f72b13aca8fb098eece04c4f0e1b680639b520f
This commit is contained in:
Juan Manuel Cruz 2015-05-10 21:52:56 -05:00 committed by Anas Nashif
commit 638fb2c181
11 changed files with 115 additions and 3 deletions

View file

@ -575,7 +575,7 @@ scripts: scripts_basic include/config/auto.conf include/config/tristate.conf \
$(Q)$(MAKE) $(build)=$(@)
# Objects we will link into tinymountain / subdirs we need to visit
core-y := arch/ kernel/ misc/ lib/
core-y := arch/ kernel/ misc/ lib/ net/
bsp-y := drivers/
ifneq ($(strip $(PROJECT)),)
@ -1529,7 +1529,7 @@ QEMU_FLAGS = $(QEMU_FLAGS_$(SRCARCH)) -pidfile qemu.pid
qemu: tinymountain
@echo "To exit from QEMU enter: 'CTRL+a, x'"
@echo '[QEMU] CPU: $(QEMU_CPU_TYPE_$(SRCARCH))'
$(Q)$(QEMU) $(QEMU_FLAGS) -kernel $(KERNEL_NAME).elf
$(Q)$(QEMU) $(QEMU_FLAGS) $(QEMU_EXTRA_FLAGS) -kernel $(KERNEL_NAME).elf
# Single targets
# ---------------------------------------------------------------------------

View file

@ -34,7 +34,7 @@ rm-files:= final-linker.cmd linker.cmd modules.order \
*kernel.map *kernel.elf qemu.pid
rm-objects:= *.o
rm-dirs := arch drivers include kernel lib misc \
scripts source
scripts source net
cmd_clean_inner_files = \
$(shell cd $(PROJECT_BASE);rm $(rm-files) -f; rm $(rm-dirs) -rf)

View file

@ -1,5 +1,6 @@
EXTRA_CFLAGS +=-I$(srctree)/include/bsp
EXTRA_CFLAGS +=-I$(srctree)/include/drivers
EXTRA_CFLAGS +=-I$(srctree)/drivers
EXTRA_CFLAGS +=-I$(srctree)/arch/arm/fsl_frdm_k64f
EXTRA_AFLAGS := ${EXTRA_CFLAGS}

View file

@ -1,5 +1,6 @@
EXTRA_CFLAGS +=-I$(srctree)/include/bsp
EXTRA_CFLAGS +=-I$(srctree)/include/drivers
EXTRA_CFLAGS +=-I$(srctree)/drivers
EXTRA_CFLAGS +=-I$(srctree)/arch/arm/ti_lm3s6965
EXTRA_AFLAGS := ${EXTRA_CFLAGS}

View file

@ -1,5 +1,6 @@
EXTRA_CFLAGS +=-I$(srctree)/arch/x86
EXTRA_CFLAGS +=-I$(srctree)/include/drivers
EXTRA_CFLAGS +=-I$(srctree)/drivers
EXTRA_AFLAGS := ${EXTRA_CFLAGS}
obj-y = system.o

View file

@ -47,3 +47,5 @@ config DRV_RANDOM
This option enables the random number generator driver.
source "drivers/random/Kconfig"
source "drivers/bluetooth/Kconfig"

View file

@ -3,3 +3,4 @@ obj-$(CONFIG_DRV_SERIAL) += serial/
obj-$(CONFIG_DRV_TIMER) += timer/
obj-$(CONFIG_DRV_INTCTL) += interrupt_controller/
obj-$(CONFIG_DRV_PCI) += pci/
obj-$(CONFIG_BLUETOOTH) += bluetooth/

81
drivers/bluetooth/Kconfig Normal file
View file

@ -0,0 +1,81 @@
# bluetooth.kconf - Bluetooth LE configuration options
#
# Copyright (c) 2015 Intel Corporation
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1) Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# 2) Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3) Neither the name of Intel Corporation nor the names of its contributors
# may be used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
#
# Bluetooth options
#
menu "Bluetooth Options"
config BLUETOOTH
bool
prompt "Bluetooth LE support [EXPERIMENTAL]"
default n
help
This option enables Bluetooth Low Energy support.
config BLUETOOTH_DEBUG
bool
prompt "Bluetooth LE debug support"
depends on BLUETOOTH
default n
help
This option enables Bluetooth debug going to standard
serial console.
config BLUETOOTH_DEBUG_UART
bool
prompt "Bluetooth UART driver debug"
depends on BLUETOOTH_DEBUG
default n
help
This option enables debug support for Bluetooth UART
driver
config BLUETOOTH_DEBUG_HCI_CORE
bool
prompt "Bluetooth HCI core debug"
depends on BLUETOOTH_DEBUG
default n
help
This option enables debug support for Bluetooth HCI
core
config BLUETOOTH_UART
bool
prompt "Bluetooth UART driver"
depends on BLUETOOTH
select UART_INTERRUPT_DRIVEN
default n
help
Enable Bluetooth UART driver.
endmenu

View file

@ -0,0 +1,19 @@
EXTRA_CFLAGS +=-I$(srctree)/include/drivers
ifeq (${CONFIG_BSP_GENERIC_PC},y)
EXTRA_CFLAGS +=-I$(srctree)/arch/x86/generic_pc
endif
ifeq (${CONFIG_BSP_QUARK},y)
EXTRA_CFLAGS +=-I$(srctree)/arch/x86/quark
endif
ifeq (${CONFIG_BSP_FSL_FRDM_K64F},y)
EXTRA_CFLAGS +=-I$(srctree)/arch/arm/fsl_frdm_k64f
endif
ifeq (${CONFIG_BSP_TI_LM3S6965},y)
EXTRA_CFLAGS +=-I$(srctree)/arch/arm/ti_lm3s6965
endif
obj-y=uart.o

1
net/Makefile Normal file
View file

@ -0,0 +1 @@
obj-$(CONFIG_BLUETOOTH) = bluetooth/

5
net/bluetooth/Makefile Normal file
View file

@ -0,0 +1,5 @@
obj-y = att.o \
buf.o \
conn.o \
hci_core.o \
l2cap.o