[PATCH 0/6] Support for ST-Ericsson CG2900 Connectivity Controller

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This set of patches adds support for the ST-Ericsson CG2900 Connectivity Combo
Controller (GPS & Bluetooth & FM : GBF).
It contains a core framework where users can register for specific channels.
The core API also allows registration of handlers for specific chips as well as
the transports supported.
The channels are also exposed to User space through character devices.
There is a BlueZ driver module included which connects BlueZ to the CG2900
Bluetooth channels.
There is also an audio driver where audio stacks can set the CG2900 internal
audio paths, e.g. routing FM to I2S and Bluetooth to PCM.

There are already changes planned for this driver that we will submit when
ready:
Currently board specific functionality is directly included through a header
file and source file (cg2900_devices.c and .h). This will be changed by using
platform driver mechanism instead.
The CG2900 core framework still has chip specific dependencies. We have plans
to remove them in order to be able to connect any connectivity chip to
the framework.

Par-Gunnar Hjalmdahl (6):
  This patch adds support for the ST-Ericsson CG2900 connectivity
    controller. This patch contains the framework for registering
    users, chip handlers, and transports as well as the needed files
    towards the mach-ux500 board.
  This patch adds support for the ST-Ericsson CG2900 connectivity
    controller. This patch registers into the CG2900 framework. It
    handles chip startup and shutdown together with firmware download.
    It also handles Bluetooth and FM flow control due to special H4
    channel management.
  This patch adds support for the ST-Ericsson CG2690 connectivity
    controller. This patch registers into the CG2900 framework. It
    handles chip startup and shutdown together with firmware download.
  This patch adds support for using UART as transport for the
    ST-Ericsson CG2690 connectivity controller. This patch registers
    into the CG2900 framework. It handles chip enable and disable as
    well baud rate settings. It also assembles received packets into
    full Bluetooth, GPS, and FM packets.
  This patch adds support for controlling the audio paths within the
    ST-Ericsson CG2900 connectivity controller. This patch registers as
    a user into the CG2900 framework for the bt_audio and fm_audio
    channels. It contains an API for controlling the audio paths that
    can also be reached from User space using a char device.
  This patch adds support for using the ST-Ericsson CG2900 connectivity
    controller as a driver for the BlueZ Bluetooth stack. This patch
    registers as a driver into the BlueZ framework and, when opened by
    BlueZ, it registers as user for bt_cmd, bt_acl, and bt_evt
    channels.

 arch/arm/mach-ux500/Makefile                      |    5 +
 arch/arm/mach-ux500/cg2900_devices.c              |  353 +++
 arch/arm/mach-ux500/include/mach/cg2900_devices.h |  120 +
 drivers/bluetooth/Kconfig                         |    7 +
 drivers/bluetooth/Makefile                        |    2 +
 drivers/bluetooth/cg2900_hci.c                    |  896 ++++++++
 drivers/mfd/Kconfig                               |   34 +
 drivers/mfd/Makefile                              |    1 +
 drivers/mfd/cg2900/Makefile                       |   14 +
 drivers/mfd/cg2900/cg2900_audio.c                 | 2475 +++++++++++++++++++++
 drivers/mfd/cg2900/cg2900_char_devices.c          |  709 ++++++
 drivers/mfd/cg2900/cg2900_char_devices.h          |   36 +
 drivers/mfd/cg2900/cg2900_chip.c                  | 2060 +++++++++++++++++
 drivers/mfd/cg2900/cg2900_chip.h                  |  421 ++++
 drivers/mfd/cg2900/cg2900_core.c                  | 2287 +++++++++++++++++++
 drivers/mfd/cg2900/cg2900_core.h                  |  303 +++
 drivers/mfd/cg2900/cg2900_debug.h                 |   77 +
 drivers/mfd/cg2900/cg2900_uart.c                  | 1587 +++++++++++++
 drivers/mfd/cg2900/hci_defines.h                  |  102 +
 drivers/mfd/cg2900/stlc2690_chip.c                | 1105 +++++++++
 drivers/mfd/cg2900/stlc2690_chip.h                |   37 +
 include/linux/mfd/cg2900.h                        |  205 ++
 include/linux/mfd/cg2900_audio.h                  |  583 +++++
 23 files changed, 13419 insertions(+), 0 deletions(-)
 create mode 100644 arch/arm/mach-ux500/cg2900_devices.c
 create mode 100644 arch/arm/mach-ux500/include/mach/cg2900_devices.h
 create mode 100644 drivers/bluetooth/cg2900_hci.c
 create mode 100644 drivers/mfd/cg2900/Makefile
 create mode 100644 drivers/mfd/cg2900/cg2900_audio.c
 create mode 100644 drivers/mfd/cg2900/cg2900_char_devices.c
 create mode 100644 drivers/mfd/cg2900/cg2900_char_devices.h
 create mode 100644 drivers/mfd/cg2900/cg2900_chip.c
 create mode 100644 drivers/mfd/cg2900/cg2900_chip.h
 create mode 100644 drivers/mfd/cg2900/cg2900_core.c
 create mode 100644 drivers/mfd/cg2900/cg2900_core.h
 create mode 100644 drivers/mfd/cg2900/cg2900_debug.h
 create mode 100644 drivers/mfd/cg2900/cg2900_uart.c
 create mode 100644 drivers/mfd/cg2900/hci_defines.h
 create mode 100644 drivers/mfd/cg2900/stlc2690_chip.c
 create mode 100644 drivers/mfd/cg2900/stlc2690_chip.h
 create mode 100644 include/linux/mfd/cg2900.h
 create mode 100644 include/linux/mfd/cg2900_audio.h
--
To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Bluez Devel]     [Linux Wireless Networking]     [Linux Wireless Personal Area Networking]     [Linux ATH6KL]     [Linux USB Devel]     [Linux Media Drivers]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux