1. 05 3月, 2015 2 次提交
  2. 03 3月, 2015 13 次提交
    • A
      at86rf230: restore trx len when needed · 263be332
      Alexander Aring 提交于
      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: NAlexander Aring <alex.aring@gmail.com>
      Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
      263be332
    • A
      at86rf230: remove multiple dereferencing for ctx · 31fa7434
      Alexander Aring 提交于
      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: NAlexander Aring <alex.aring@gmail.com>
      Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
      31fa7434
    • A
      at86rf230: remove multiple dereferencing for irq · cca990c8
      Alexander Aring 提交于
      By holding the irq variable inside at86rf230_state_change we can squash
      some multiple dereferencing for getting irq num.
      Signed-off-by: NAlexander Aring <alex.aring@gmail.com>
      Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
      cca990c8
    • A
      at86rf230: refactor receive handling · 74de4c80
      Alexander Aring 提交于
      This patch refactor the receive handling into one function.
      Signed-off-by: NAlexander Aring <alex.aring@gmail.com>
      Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
      74de4c80
    • A
      at86rf230: cleanup and squash stack variable · ef5428a1
      Alexander Aring 提交于
      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: NAlexander Aring <alex.aring@gmail.com>
      Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
      ef5428a1
    • A
      at86rf230: add transmit retry support · ba6d2239
      Alexander Aring 提交于
      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: NAlexander Aring <alex.aring@gmail.com>
      Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
      ba6d2239
    • K
      Bluetooth: btusb: Add support for QCA ROME chipset family · 3267c884
      Kim, Ben Young Tae 提交于
      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: NBen Young Tae Kim <ytkim@qca.qualcomm.com>
      Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
      3267c884
    • K
      Bluetooth: btusb: Add setup callback for chip init on USB · ace31982
      Kim, Ben Young Tae 提交于
      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: NBen Young Tae Kim <ytkim@qca.qualcomm.com>
      Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
      ace31982
    • D
      filter: refactor common filter attach code into __sk_attach_prog · 49b31e57
      Daniel Borkmann 提交于
      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: NDaniel Borkmann <daniel@iogearbox.net>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      49b31e57
    • D
      Merge branch 'for-upstream' of... · 70c836a4
      David S. Miller 提交于
      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: NDavid S. Miller <davem@davemloft.net>
      70c836a4
    • D
      Merge branch 'sendmsg_recvmsg_iocb_removal' · b4844353
      David S. Miller 提交于
      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: NDavid S. Miller <davem@davemloft.net>
      b4844353
    • Y
      net: Remove iocb argument from sendmsg and recvmsg · 1b784140
      Ying Xue 提交于
      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: NAl Viro <viro@ZenIV.linux.org.uk>
      Signed-off-by: NYing Xue <ying.xue@windriver.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      1b784140
    • Y
      tipc: Don't use iocb argument in socket layer · 39a0295f
      Ying Xue 提交于
      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: NErik Hugne <erik.hugne@ericsson.com>
      Reviewed-by: NJon Maloy <jon.maloy@ericsson.com>
      Signed-off-by: NYing Xue <ying.xue@windriver.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      39a0295f
  3. 02 3月, 2015 22 次提交
  4. 01 3月, 2015 3 次提交