29 Sep, 2017

1 commit

  • This reverts commit dbbccdc4ced015cdd4051299bd87fbe0254ad351.

    It turns out that the "legacy" users aren't so legacy at all, and that
    turning off the legacy ioctl will break the current Qt bluetooth stack
    for bluetooth LE devices that were released just a couple of months ago.

    So it's simply not true that this was a legacy interface that hasn't
    been needed and is only limited to old legacy BT devices. Because I
    actually read Kconfig help messages, and actively try to turn off
    features that I don't need, I turned the option off.

    Then I spent _way_ too much time debugging BLE issues until I realized
    that it wasn't the Qt and subsurface development that had broken one of
    my dive computer BLE downloads, but simply my broken kernel config.

    Maybe in a decade it will be true that this is a legacy interface. And
    maybe with a better help-text and correct dependencies, this kind of
    legacy removal might be acceptable. But as things are right now both
    the commit message and the Kconfig help text were misleading, and the
    Kconfig option had the wrong dependenencies.

    There's no reason to keep that broken Kconfig option in the tree.

    Cc: Marcel Holtmann
    Cc: Johan Hedberg
    Signed-off-by: Linus Torvalds

    Linus Torvalds
     

31 Aug, 2017

1 commit


08 Aug, 2017

1 commit


25 Apr, 2017

1 commit


24 Feb, 2016

1 commit


30 Jul, 2015

1 commit

  • Move A2MP Module under BT_HS config option and allow
    the user have flexible option to choose the feature only
    they need

    a2mp_discover_amp() & a2mp_channel_create() are a2mp module
    entry point for master and slave, and this is dynamic
    invoked depends on the userspace or remote request, then
    we defined their implementation depends on BT_HS config

    Signed-off-by: Arron Wang
    Signed-off-by: Marcel Holtmann

    Arron Wang
     

16 Feb, 2015

1 commit


30 Dec, 2014

3 commits


03 Dec, 2014

1 commit

  • Most of the LE Secure Connections SMP crypto functions build on top of
    the AES-CMAC function. This patch adds access to AES-CMAC in the kernel
    crypto subsystem by allocating a crypto_hash handle for it in a similar
    way that we have one for AES-CBC.

    Signed-off-by: Johan Hedberg
    Signed-off-by: Marcel Holtmann

    Johan Hedberg
     

02 Nov, 2014

1 commit

  • The current kernel options do not make it clear which modules are for
    Bluetooth Classic (BR/EDR) and which are for Bluetooth Low Energy (LE).

    To make it really clear, introduce BT_BREDR and BT_LE options with
    proper dependencies into the different modules. Both new options
    default to y to not create a regression with previous kernel config
    files.

    Signed-off-by: Marcel Holtmann
    Signed-off-by: Johan Hedberg

    Marcel Holtmann
     

12 Jul, 2014

1 commit

  • This patch moves generic code which is used by bluetooth and ieee802154
    6lowpan to a new net/6lowpan directory. This directory contains generic
    6LoWPAN code which is shared between bluetooth and ieee802154 MAC-Layer.

    This is the IPHC - "IPv6 Header Compression" format at the moment. Which
    is described by RFC 6282 [0]. The BLTE 6LoWPAN draft describes that the
    IPHC is the same format like IEEE 802.15.4, see [1].

    Futuremore we can put more code into this directory which is shared
    between BLTE and IEEE 802.15.4 6LoWPAN like RFC 6775 or the routing
    protocol RPL RFC 6550.

    To avoid naming conflicts I renamed 6lowpan-y to ieee802154_6lowpan-y
    in net/ieee802154/Makefile.

    [0] http://tools.ietf.org/html/rfc6282
    [1] http://tools.ietf.org/html/draft-ietf-6lowpan-btle-12#section-3.2
    [2] http://tools.ietf.org/html/rfc6775
    [3] http://tools.ietf.org/html/rfc6550

    Signed-off-by: Alexander Aring
    Acked-by: Jukka Rissanen
    Signed-off-by: Marcel Holtmann

    Alexander Aring
     

03 Jul, 2014

1 commit

  • Instead of adding the 6LoWPAN functionality to Bluetooth module,
    we create a separate kernel module for it.

    Usage:

    In the slave side do this:

    $ modprobe bluetooth_6lowpan
    $ echo 62 > /sys/kernel/debug/bluetooth/6lowpan_psm
    $ hciconfig hci0 leadv

    In the master side do this:

    $ modprobe bluetooth_6lowpan
    $ echo 62 > /sys/kernel/debug/bluetooth/6lowpan_psm
    $ echo 'connect E0:06:E6:B7:2A:73 1' > \
    /sys/kernel/debug/bluetooth/6lowpan_control

    The 6LoWPAN functionality can be controlled by psm value. If it
    is left to 0, then the module is disabled and all the 6LoWPAN
    connections are dropped if there were any. In the above example,
    the psm value is just an example and not a real value for
    6LoWPAN service. The real psm value is yet to be defined in
    Bluetooth specification.

    The 6lowpan controlling interface is a temporary solution
    until the specifications are ready.

    Signed-off-by: Jukka Rissanen
    Signed-off-by: Marcel Holtmann

    Jukka Rissanen
     

13 Mar, 2014

1 commit

  • Commit 975508879 "Bluetooth: make bluetooth 6lowpan as an option"
    ensures that 6LOWPAN_IPHC is turned on when we have BT_6LOWPAN
    enabled in Kconfig, but it allows building the IPHC code as
    a loadable module even if the entire Bluetooth stack is built-in,
    and that causes a link error.

    We can solve that by moving the 'select' statement into CONFIG_BT,
    which is a "tristate" option to enforce that 6LOWPAN_IPHC can
    only be a module if BT also is a module.

    Signed-off-by: Arnd Bergmann
    Signed-off-by: Marcel Holtmann

    Arnd Bergmann
     

11 Mar, 2014

1 commit

  • Currently you can have bluetooth 6lowpan without ipv6 enabled. This
    doesn't make any sense. With this patch you can disable/enable bluetooth
    6lowpan support at compile time.

    The current bluetooth 6lowpan implementation doesn't check the return
    value of 6lowpan function. Nevertheless I added -EOPNOTSUPP as return value
    if 6lowpan bluetooth is disabled.

    Signed-off-by: Alexander Aring
    Signed-off-by: Marcel Holtmann

    Alexander Aring
     

16 Jan, 2014

1 commit

  • IEEE 802.15.4 and Bluetooth networking stacks share 6lowpan compression
    code. Instead of introducing Makefile/Kconfig hacks, build this code as
    a separate module referenced from both ieee802154 and bluetooth modules.

    This fixes the following build error observed in some kernel
    configurations:

    net/built-in.o: In function `header_create': 6lowpan.c:(.text+0x166149): undefined reference to `lowpan_header_compress'
    net/built-in.o: In function `bt_6lowpan_recv': (.text+0x166b3c): undefined reference to `lowpan_process_data'

    Reported-by: Randy Dunlap
    Signed-off-by: Dmitry Eremin-Solenikov
    Signed-off-by: David S. Miller

    Dmitry Eremin-Solenikov
     

24 Oct, 2012

1 commit


28 Sep, 2012

1 commit


01 Mar, 2012

1 commit


21 Dec, 2011

1 commit


28 Jun, 2011

1 commit

  • Recent changes to hci_core.c use crypto interfaces, so select CRYPTO
    to make sure that those interfaces are present.

    Fixes these build errors when CRYPTO is not enabled:

    net/built-in.o: In function `hci_register_dev':
    (.text+0x4cf86): undefined reference to `crypto_alloc_base'
    net/built-in.o: In function `hci_unregister_dev':
    (.text+0x4f912): undefined reference to `crypto_destroy_tfm'

    Signed-off-by: Randy Dunlap
    Signed-off-by: John W. Linville

    Randy Dunlap
     

14 Jun, 2011

1 commit

  • This will allow using the crypto subsystem for encrypting data. As SMP
    (Security Manager Protocol) is implemented almost entirely on the host
    side and the crypto module already implements the needed methods
    (AES-128), it makes sense to use it.

    There's now a new module option to enable/disable SMP support.

    Signed-off-by: Vinicius Costa Gomes
    Signed-off-by: Anderson Briglia
    Signed-off-by: Gustavo F. Padovan

    Vinicius Costa Gomes
     

01 Mar, 2011

1 commit

  • If we want something "bool" built-in in something "tristate" it can't
    "depend on" the tristate config option.

    Report by DaveM:

    I give it 'y' just to make it happen, for both, and afterways no
    matter how many times I rerun "make oldconfig" I keep seeing things
    like this in my build:

    scripts/kconfig/conf --silentoldconfig Kconfig
    include/config/auto.conf:986:warning: symbol value 'm' invalid for BT_SCO
    include/config/auto.conf:3156:warning: symbol value 'm' invalid for BT_L2CAP

    Reported-by: David S. Miller
    Signed-off-by: Gustavo F. Padovan
    Signed-off-by: John W. Linville

    Gustavo F. Padovan
     

15 Feb, 2011

1 commit

  • Actually doesn't make sense have these modules built separately.
    The L2CAP layer is needed by almost all Bluetooth protocols and profiles.
    There isn't any real use case without having L2CAP loaded.
    SCO is only essential for Audio transfers, but it is so small that we can
    have it loaded always in bluetooth.ko without problems.
    If you really doesn't want it you can disable SCO in the kernel config.

    Signed-off-by: Gustavo F. Padovan

    Gustavo F. Padovan
     

08 Feb, 2011

1 commit


22 Jul, 2010

1 commit


10 May, 2010

1 commit

  • The L2CAP Extended Features are still unstable and under development,
    so we are adding them under the EXPERIMENTAL flag to get more feedback
    on them. L2CAP Extended Features includes the Enhanced Retransmission
    and Streaming Modes, Frame Check Sequence (FCS), and Segmentation and
    Reassemby (SAR).

    Signed-off-by: Gustavo F. Padovan
    Reviewed-by: João Paulo Rechi Vita
    Signed-off-by: Marcel Holtmann

    Gustavo F. Padovan
     

25 Aug, 2009

1 commit

  • Fix net/bluetooth/l2cap.c build errors:

    l2cap.c:(.text+0x126035): undefined reference to `crc16'
    l2cap.c:(.text+0x126323): undefined reference to `crc16'
    l2cap.c:(.text+0x12668e): undefined reference to `crc16'
    l2cap.c:(.text+0x12683b): undefined reference to `crc16'
    l2cap.c:(.text+0x126956): undefined reference to `crc16'
    net/built-in.o:l2cap.c:(.text+0x129041): more undefined references to `crc16' follow

    Signed-off-by: Randy Dunlap
    Signed-off-by: Andrew Morton
    Signed-off-by: Marcel Holtmann

    Randy Dunlap
     

14 Jun, 2009

1 commit


10 May, 2007

1 commit


17 Apr, 2005

1 commit

  • Initial git repository build. I'm not bothering with the full history,
    even though we have it. We can create a separate "historical" git
    archive of that later if we want to, and in the meantime it's about
    3.2GB when imported into git - space that would just make the early
    git days unnecessarily complicated, when we don't have a lot of good
    infrastructure for it.

    Let it rip!

    Linus Torvalds