1. 13 Mar, 2015 6 commits
  2. 12 Mar, 2015 1 commit
  3. 11 Mar, 2015 4 commits
  4. 10 Mar, 2015 2 commits
  5. 07 Mar, 2015 1 commit
    • Alexander Aring's avatar
      Bluetooth: fix sco_exit compile warning · 0402d9f2
      Alexander Aring authored
      While compiling the following warning occurs:
      
      WARNING: net/built-in.o(.init.text+0x602c): Section mismatch in
      reference from the function bt_init() to the function
      .exit.text:sco_exit()
      The function __init bt_init() references
      a function __exit sco_exit().
      This is often seen when error handling in the init function
      uses functionality in the exit path.
      The fix is often to remove the __exit annotation of
      sco_exit() so it may be used outside an exit section.
      
      Since commit 6d785aa3 ("Bluetooth:
      Convert mgmt to use HCI chan registration API") the function "sco_exit"
      is used inside of function "bt_init". The suggested solution by remove
      the __exit annotation solved this issue.
      Signed-off-by: default avatarAlexander Aring <alex.aring@gmail.com>
      Signed-off-by: default avatarJohan Hedberg <johan.hedberg@intel.com>
      0402d9f2
  6. 06 Mar, 2015 8 commits
  7. 05 Mar, 2015 3 commits
  8. 03 Mar, 2015 8 commits
    • Alexander Aring's avatar
      at86rf230: restore trx len when needed · 263be332
      Alexander Aring authored
      In the most cases the spi messages has a length of two. Currently we
      always set the the len field to two before transmit a spi message. In
      cases for read out/write in the frame buffer we need another len. This
      patch use trx len two as default. For the frame buffer cases we restore
      the trx len to two on success and failure. This will reduce the len
      setting of two when it's already two.
      Signed-off-by: default avatarAlexander Aring <alex.aring@gmail.com>
      Signed-off-by: default avatarMarcel Holtmann <marcel@holtmann.org>
      263be332
    • Alexander Aring's avatar
      at86rf230: remove multiple dereferencing for ctx · 31fa7434
      Alexander Aring authored
      This patch cleanups the referencing for the state change context
      variable. The state change context should only set once and this is by
      initial a state change. This patch will use the initial state change
      variable in the complete handler of the state change by using the ctx
      context which should be always the same like the initial state change
      context.
      Signed-off-by: default avatarAlexander Aring <alex.aring@gmail.com>
      Signed-off-by: default avatarMarcel Holtmann <marcel@holtmann.org>
      31fa7434
    • Alexander Aring's avatar
      at86rf230: remove multiple dereferencing for irq · cca990c8
      Alexander Aring authored
      By holding the irq variable inside at86rf230_state_change we can squash
      some multiple dereferencing for getting irq num.
      Signed-off-by: default avatarAlexander Aring <alex.aring@gmail.com>
      Signed-off-by: default avatarMarcel Holtmann <marcel@holtmann.org>
      cca990c8
    • Alexander Aring's avatar
      at86rf230: refactor receive handling · 74de4c80
      Alexander Aring authored
      This patch refactor the receive handling into one function.
      Signed-off-by: default avatarAlexander Aring <alex.aring@gmail.com>
      Signed-off-by: default avatarMarcel Holtmann <marcel@holtmann.org>
      74de4c80
    • Alexander Aring's avatar
      at86rf230: cleanup and squash stack variable · ef5428a1
      Alexander Aring authored
      I had this variable because I thought it would be protected by
      disable/enable irq but this is not true. It's protected by stop/wake
      netdev queue which is called by ieee802154_xmit_complete.
      Signed-off-by: default avatarAlexander Aring <alex.aring@gmail.com>
      Signed-off-by: default avatarMarcel Holtmann <marcel@holtmann.org>
      ef5428a1
    • Alexander Aring's avatar
      at86rf230: add transmit retry support · ba6d2239
      Alexander Aring authored
      This patch introduce a transmit retry handling into at86rf230 transmit
      path. Current behaviour is to wait the normal receive time if we want
      to go into STATE_TX_ON when the transceiver is in STATE_BUSY_RX_AACK
      which indicates that a frame is currently receiving. A non force state
      change will not interrupt the the receiving state.
      
      The current behaviour is that after the normal receive time we will
      start a force change into STATE_TX_ON. With this patch we do seven
      retries to go into STATE_TX_ON without forcing. After we hit the
      AT86RF2XX_MAX_TX_RETRIES we will start the force state change.
      This is a polling like method to go into STATE_TX_ON in times of maximum
      receiving time.
      Signed-off-by: default avatarAlexander Aring <alex.aring@gmail.com>
      Signed-off-by: default avatarMarcel Holtmann <marcel@holtmann.org>
      ba6d2239
    • Kim, Ben Young Tae's avatar
      Bluetooth: btusb: Add support for QCA ROME chipset family · 3267c884
      Kim, Ben Young Tae authored
      This patch supports ROME Bluetooth family from Qualcomm Atheros,
      e.g. QCA61x4 or QCA6574.
      
      New chipset have similar firmware downloading sequences to previous
      chipset from Atheros, however, it doesn't support vid/pid switching
      after downloading the patch so that firmware needs to be handled by
      btusb module directly.
      
      ROME chipset can be differentiated from previous version by reading
      ROM version.
      
      T:  Bus=03 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#= 16 Spd=12   MxCh= 0
      D:  Ver= 1.10 Cls=e0(wlcon) Sub=01 Prot=01 MxPS=64 #Cfgs=  1
      P:  Vendor=0cf3 ProdID=e300 Rev= 0.01
      C:* #Ifs= 2 Cfg#= 1 Atr=e0 MxPwr=100mA
      I:* If#= 0 Alt= 0 #EPs= 3 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
      E:  Ad=81(I) Atr=03(Int.) MxPS=  16 Ivl=1ms
      E:  Ad=82(I) Atr=02(Bulk) MxPS=  64 Ivl=0ms
      E:  Ad=02(O) Atr=02(Bulk) MxPS=  64 Ivl=0ms
      I:* If#= 1 Alt= 0 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
      E:  Ad=83(I) Atr=01(Isoc) MxPS=   0 Ivl=1ms
      E:  Ad=03(O) Atr=01(Isoc) MxPS=   0 Ivl=1ms
      I:  If#= 1 Alt= 1 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
      E:  Ad=83(I) Atr=01(Isoc) MxPS=   9 Ivl=1ms
      E:  Ad=03(O) Atr=01(Isoc) MxPS=   9 Ivl=1ms
      I:  If#= 1 Alt= 2 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
      E:  Ad=83(I) Atr=01(Isoc) MxPS=  17 Ivl=1ms
      E:  Ad=03(O) Atr=01(Isoc) MxPS=  17 Ivl=1ms
      I:  If#= 1 Alt= 3 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
      E:  Ad=83(I) Atr=01(Isoc) MxPS=  25 Ivl=1ms
      E:  Ad=03(O) Atr=01(Isoc) MxPS=  25 Ivl=1ms
      I:  If#= 1 Alt= 4 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
      E:  Ad=83(I) Atr=01(Isoc) MxPS=  33 Ivl=1ms
      E:  Ad=03(O) Atr=01(Isoc) MxPS=  33 Ivl=1ms
      I:  If#= 1 Alt= 5 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
      E:  Ad=83(I) Atr=01(Isoc) MxPS=  49 Ivl=1ms
      E:  Ad=03(O) Atr=01(Isoc) MxPS=  49 Ivl=1ms
      
      T:  Bus=03 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#=  8 Spd=12   MxCh= 0
      D:  Ver= 2.01 Cls=e0(wlcon) Sub=01 Prot=01 MxPS=64 #Cfgs=  1
      P:  Vendor=0cf3 ProdID=e360 Rev= 0.01
      C:* #Ifs= 2 Cfg#= 1 Atr=e0 MxPwr=100mA
      I:* If#= 0 Alt= 0 #EPs= 3 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
      E:  Ad=81(I) Atr=03(Int.) MxPS=  16 Ivl=1ms
      E:  Ad=82(I) Atr=02(Bulk) MxPS=  64 Ivl=0ms
      E:  Ad=02(O) Atr=02(Bulk) MxPS=  64 Ivl=0ms
      I:* If#= 1 Alt= 0 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
      E:  Ad=83(I) Atr=01(Isoc) MxPS=   0 Ivl=1ms
      E:  Ad=03(O) Atr=01(Isoc) MxPS=   0 Ivl=1ms
      I:  If#= 1 Alt= 1 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
      E:  Ad=83(I) Atr=01(Isoc) MxPS=   9 Ivl=1ms
      E:  Ad=03(O) Atr=01(Isoc) MxPS=   9 Ivl=1ms
      I:  If#= 1 Alt= 2 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
      E:  Ad=83(I) Atr=01(Isoc) MxPS=  17 Ivl=1ms
      E:  Ad=03(O) Atr=01(Isoc) MxPS=  17 Ivl=1ms
      I:  If#= 1 Alt= 3 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
      E:  Ad=83(I) Atr=01(Isoc) MxPS=  25 Ivl=1ms
      E:  Ad=03(O) Atr=01(Isoc) MxPS=  25 Ivl=1ms
      I:  If#= 1 Alt= 4 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
      E:  Ad=83(I) Atr=01(Isoc) MxPS=  33 Ivl=1ms
      E:  Ad=03(O) Atr=01(Isoc) MxPS=  33 Ivl=1ms
      I:  If#= 1 Alt= 5 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
      E:  Ad=83(I) Atr=01(Isoc) MxPS=  49 Ivl=1ms
      E:  Ad=03(O) Atr=01(Isoc) MxPS=  49 Ivl=1ms
      Signed-off-by: default avatarBen Young Tae Kim <ytkim@qca.qualcomm.com>
      Signed-off-by: default avatarMarcel Holtmann <marcel@holtmann.org>
      3267c884
    • Kim, Ben Young Tae's avatar
      Bluetooth: btusb: Add setup callback for chip init on USB · ace31982
      Kim, Ben Young Tae authored
      Some of chipset does not allow to send a patch or config files through
      HCI VS channel at early stage as well as they don't support to send
      USB patch files to other channel except USB bulk path.
      
      New callback added is for initialization of BT controller through USB
      Signed-off-by: default avatarBen Young Tae Kim <ytkim@qca.qualcomm.com>
      Signed-off-by: default avatarMarcel Holtmann <marcel@holtmann.org>
      ace31982
  9. 02 Mar, 2015 7 commits
    • Daniel Borkmann's avatar
      filter: refactor common filter attach code into __sk_attach_prog · 49b31e57
      Daniel Borkmann authored
      Both sk_attach_filter() and sk_attach_bpf() are setting up sk_filter,
      charging skmem and attaching it to the socket after we got the eBPF
      prog up and ready. Lets refactor that into a common helper.
      Signed-off-by: default avatarDaniel Borkmann <daniel@iogearbox.net>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      49b31e57
    • David S. Miller's avatar
      Merge branch 'for-upstream' of... · 70c836a4
      David S. Miller authored
      Merge branch 'for-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next
      
      Johan Hedberg says:
      
      ====================
      pull request: bluetooth-next 2015-03-02
      
      Here's the first bluetooth-next pull request targeting the 4.1 kernel:
      
       - ieee802154/6lowpan cleanups
       - SCO routing to host interface support for the btmrvl driver
       - AMP code cleanups
       - Fixes to AMP HCI init sequence
       - Refactoring of the HCI callback mechanism
       - Added shutdown routine for Intel controllers in the btusb driver
       - New config option to enable/disable Bluetooth debugfs information
       - Fix for early data reception on L2CAP fixed channels
      
      Please let me know if there are any issues pulling. Thanks.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      70c836a4
    • David S. Miller's avatar
      Merge branch 'sendmsg_recvmsg_iocb_removal' · b4844353
      David S. Miller authored
      Ying Xue says:
      
      ====================
      net: Remove iocb argument from sendmsg and recvmsg
      
      Currently there is only one user - TIPC whose sendmsg() instances
      using iocb argument. Meanwhile, there is no user using iocb argument
      in its recvmsg() instance. Therefore, if we eliminate the werid usage
      of iobc argument from TIPC, the iocb argument can be removed from
      all sendmsg() and recvmsg() instances of the whole networking stack.
      
      Reference:
      https://patchwork.ozlabs.org/patch/433960/
      
      Changes:
      
      v2:
       * Fix compile errors of DCCP module pointed by David
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      b4844353
    • Ying Xue's avatar
      net: Remove iocb argument from sendmsg and recvmsg · 1b784140
      Ying Xue authored
      After TIPC doesn't depend on iocb argument in its internal
      implementations of sendmsg() and recvmsg() hooks defined in proto
      structure, no any user is using iocb argument in them at all now.
      Then we can drop the redundant iocb argument completely from kinds of
      implementations of both sendmsg() and recvmsg() in the entire
      networking stack.
      
      Cc: Christoph Hellwig <hch@lst.de>
      Suggested-by: default avatarAl Viro <viro@ZenIV.linux.org.uk>
      Signed-off-by: default avatarYing Xue <ying.xue@windriver.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      1b784140
    • Ying Xue's avatar
      tipc: Don't use iocb argument in socket layer · 39a0295f
      Ying Xue authored
      Currently the iocb argument is used to idenfiy whether or not socket
      lock is hold before tipc_sendmsg()/tipc_send_stream() is called. But
      this usage prevents iocb argument from being dropped through sendmsg()
      at socket common layer. Therefore, in the commit we introduce two new
      functions called __tipc_sendmsg() and __tipc_send_stream(). When they
      are invoked, it assumes that their callers have taken socket lock,
      thereby avoiding the weird usage of iocb argument.
      
      Cc: Al Viro <viro@ZenIV.linux.org.uk>
      Cc: Christoph Hellwig <hch@lst.de>
      Reviewed-by: default avatarErik Hugne <erik.hugne@ericsson.com>
      Reviewed-by: default avatarJon Maloy <jon.maloy@ericsson.com>
      Signed-off-by: default avatarYing Xue <ying.xue@windriver.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      39a0295f
    • David S. Miller's avatar
      Merge branch 'dropcount' · 6556c385
      David S. Miller authored
      Eyal Birger says:
      
      ====================
      net: move skb->dropcount to skb->cb[]
      
      Commit 97775007 ("af_packet: add interframe drop cmsg (v6)")
      unionized skb->mark and skb->dropcount in order to allow recording
      of the socket drop count while maintaining struct sk_buff size.
      
      skb->dropcount was introduced since there was no available room
      in skb->cb[] in packet sockets. However, its introduction led to
      the inability to export skb->mark to userspace.
      
      It was considered to alias skb->priority instead of skb->mark.
      However, that would lead to the inabilty to export skb->priority
      to userspace if desired. Such change may also lead to hard-to-find
      issues as skb->priority is assumed to be alias free, and, as noted
      by Shmulik Ladkani, is not 'naturally orthogonal' with other skb
      fields.
      
      This patch series follows the suggestions made by Eric Dumazet moving
      the dropcount metric to skb->cb[], eliminating this problem
      at the expense of 4 bytes less in skb->cb[] for protocol families
      using it.
      
      The patch series include compactization of bluetooth and packet
      use of skb->cb[] as well as the infrastructure for placing dropcount
      in skb->cb[].
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      6556c385
    • Eyal Birger's avatar
      net: move skb->dropcount to skb->cb[] · 744d5a3e
      Eyal Birger authored
      Commit 97775007 ("af_packet: add interframe drop cmsg (v6)")
      unionized skb->mark and skb->dropcount in order to allow recording
      of the socket drop count while maintaining struct sk_buff size.
      
      skb->dropcount was introduced since there was no available room
      in skb->cb[] in packet sockets. However, its introduction led to
      the inability to export skb->mark, or any other aliased field to
      userspace if so desired.
      
      Moving the dropcount metric to skb->cb[] eliminates this problem
      at the expense of 4 bytes less in skb->cb[] for protocol families
      using it.
      Signed-off-by: default avatarEyal Birger <eyal.birger@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      744d5a3e