1. 25 Jul, 2022 8 commits
  2. 23 Jul, 2022 15 commits
    • Jakub Kicinski's avatar
      Merge branch '100GbE' of git://git.kernel.org/pub/scm/linux/kernel/git/tnguy/next-queue · 502c6f8c
      Jakub Kicinski authored
      Tony Nguyen says:
      
      ====================
      100GbE Intel Wired LAN Driver Updates 2022-07-21
      
      This series contains updates to ice driver only.
      
      Karol adds implementation for GNSS write; data is written to the GNSS
      module through TTY device using u-blox UBX protocol.
      
      * '100GbE' of git://git.kernel.org/pub/scm/linux/kernel/git/tnguy/next-queue:
        ice: add write functionality for GNSS TTY
        ice: add i2c write command
      ====================
      
      Link: https://lore.kernel.org/r/20220721202842.3276257-1-anthony.l.nguyen@intel.comSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      502c6f8c
    • Matthias May's avatar
      ip_tunnels: allow VXLAN/GENEVE to inherit TOS/TTL from VLAN · 7074732c
      Matthias May authored
      The current code allows for VXLAN and GENEVE to inherit the TOS
      respective the TTL when skb-protocol is ETH_P_IP or ETH_P_IPV6.
      However when the payload is VLAN encapsulated, then this inheriting
      does not work, because the visible skb-protocol is of type
      ETH_P_8021Q or ETH_P_8021AD.
      
      Instead of skb->protocol use skb_protocol().
      Signed-off-by: default avatarMatthias May <matthias.may@westermo.com>
      Link: https://lore.kernel.org/r/20220721202718.10092-1-matthias.may@westermo.comSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      7074732c
    • Jakub Kicinski's avatar
      Merge branch 'net-usb-ax88179_178a-improvements-and-bug-fixes' · 7446b157
      Jakub Kicinski authored
      Justin Chen says:
      
      ====================
      net: usb: ax88179_178a: improvements and bug fixes
      
      Power management was partially broken. There were two issues when dropping
      into a sleep state.
      1. Resume was not doing a fully HW restore. Only a partial restore. This
      lead to a couple things being broken on resume. One of them being tcp rx.
      2. wolopt was not being restored properly on resume.
      
      Also did some general improvements and clean up to make it easier to fix
      the issues mentioned above.
      ====================
      
      Link: https://lore.kernel.org/r/1658363296-15734-1-git-send-email-justinpopo6@gmail.comSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      7446b157
    • Justin Chen's avatar
      net: usb: ax88179_178a: wol optimizations · 50505316
      Justin Chen authored
      - Check if wol is supported on reset instead of everytime get_wol
      is called.
      - Save wolopts in private data instead of relying on the HW to save it.
      - Defer enabling WoL until suspend instead of enabling it everytime
      set_wol is called.
      Signed-off-by: default avatarJustin Chen <justinpopo6@gmail.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      50505316
    • Justin Chen's avatar
      net: usb: ax88179_178a: move priv to driver_priv · 2bcbd3d8
      Justin Chen authored
      We need more space to save WoL context. So lets allocate memory
      for ax88179_data instead of using struct usbnet data field which
      only supports 5 words. We continue to use the struct usbnet data
      field for multicast filters. However since we no longer have the
      private data stored there, we can shift it to the beginning.
      Signed-off-by: default avatarJustin Chen <justinpopo6@gmail.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      2bcbd3d8
    • Justin Chen's avatar
      net: usb: ax88179_178a: restore state on resume · c4bf747c
      Justin Chen authored
      The hardware state was only partially restored, which meant certain
      functionality was broken on resume. Do a full HW reset on resume to
      fix this.
      Signed-off-by: default avatarJustin Chen <justinpopo6@gmail.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      c4bf747c
    • Justin Chen's avatar
      net: usb: ax88179_178a: clean up pm calls · 843f9205
      Justin Chen authored
      Instead of passing in_pm flags all over the place, use the private
      struct to handle in_pm mode.
      Signed-off-by: default avatarJustin Chen <justinpopo6@gmail.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      843f9205
    • Justin Chen's avatar
      net: usb: ax88179_178a: remove redundant init code · 9718f9ce
      Justin Chen authored
      Bind and reset are basically doing the same thing. Remove the duplicate
      code and have bind call into reset.
      Signed-off-by: default avatarJustin Chen <justinpopo6@gmail.com>
      Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      9718f9ce
    • Jakub Kicinski's avatar
      Merge tag 'for-net-next-2022-07-22' of... · 4a934eca
      Jakub Kicinski authored
      Merge tag 'for-net-next-2022-07-22' of git://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next
      
      Luiz Augusto von Dentz says:
      
      ====================
      bluetooth-next pull request for net-next:
      
       - Add support for IM Networks PID 0x3568
       - Add support for BCM4349B1
       - Add support for CYW55572
       - Add support for MT7922 VID/PID 0489/e0e2
       - Add support for Realtek RTL8852C
       - Initial support for Isochronous Channels/ISO sockets
       - Remove HCI_QUIRK_BROKEN_ERR_DATA_REPORTING quirk
      
      * tag 'for-net-next-2022-07-22' of git://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next: (58 commits)
        Bluetooth: btusb: Detect if an ACL packet is in fact an ISO packet
        Bluetooth: btusb: Add support for ISO packets
        Bluetooth: ISO: Add broadcast support
        Bluetooth: Add initial implementation of BIS connections
        Bluetooth: Add BTPROTO_ISO socket type
        Bluetooth: Add initial implementation of CIS connections
        Bluetooth: hci_core: Introduce hci_recv_event_data
        Bluetooth: Convert delayed discov_off to hci_sync
        Bluetooth: Remove update_scan hci_request dependancy
        Bluetooth: Remove dead code from hci_request.c
        Bluetooth: btrtl: Fix typo in comment
        Bluetooth: MGMT: Fix holding hci_conn reference while command is queued
        Bluetooth: mgmt: Fix using hci_conn_abort
        Bluetooth: Use bt_status to convert from errno
        Bluetooth: Add bt_status
        Bluetooth: hci_sync: Split hci_dev_open_sync
        Bluetooth: hci_sync: Refactor remove Adv Monitor
        Bluetooth: hci_sync: Refactor add Adv Monitor
        Bluetooth: hci_sync: Remove HCI_QUIRK_BROKEN_ERR_DATA_REPORTING
        Bluetooth: btusb: Remove HCI_QUIRK_BROKEN_ERR_DATA_REPORTING for fake CSR
        ...
      ====================
      
      Link: https://lore.kernel.org/r/20220723002232.964796-1-luiz.dentz@gmail.comSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      4a934eca
    • Luiz Augusto von Dentz's avatar
      Bluetooth: btusb: Detect if an ACL packet is in fact an ISO packet · 14202eff
      Luiz Augusto von Dentz authored
      Fix up the packet type if ISO packets are sent over the bulk endpoint.
      
      Note: This is a stopgap since the Bluetooth specification currently
      doesn't define any endpoint to transport ISO packets.
      Signed-off-by: default avatarLuiz Augusto von Dentz <luiz.von.dentz@intel.com>
      14202eff
    • Luiz Augusto von Dentz's avatar
      Bluetooth: btusb: Add support for ISO packets · 70405f02
      Luiz Augusto von Dentz authored
      This enabled btusb driver to properly transmit ISO packets.
      Signed-off-by: default avatarLuiz Augusto von Dentz <luiz.von.dentz@intel.com>
      70405f02
    • Luiz Augusto von Dentz's avatar
      Bluetooth: ISO: Add broadcast support · f764a6c2
      Luiz Augusto von Dentz authored
      This adds broadcast support for BTPROTO_ISO by extending the
      sockaddr_iso with a new struct sockaddr_iso_bc where the socket user
      can set the broadcast address when receiving, the SID and the BIS
      indexes it wants to synchronize.
      
      When using BTPROTO_ISO for broadcast the roles are:
      
      Broadcaster -> uses connect with address set to BDADDR_ANY:
      > tools/isotest -s 00:00:00:00:00:00
      
      Broadcast Receiver -> uses listen with address set to broadcaster:
      > tools/isotest -d 00:AA:01:00:00:00
      Signed-off-by: default avatarLuiz Augusto von Dentz <luiz.von.dentz@intel.com>
      f764a6c2
    • Luiz Augusto von Dentz's avatar
      Bluetooth: Add initial implementation of BIS connections · eca0ae4a
      Luiz Augusto von Dentz authored
      This adds initial support for BIS/BIG which includes:
      
      == Broadcaster role: Setup a periodic advertising and create a BIG ==
      
      > tools/isotest -s 00:00:00:00:00:00
      isotest[63]: Connected [00:00:00:00:00:00]
      isotest[63]: QoS BIG 0x00 BIS 0x00 Packing 0x00 Framing 0x00]
      isotest[63]: Output QoS [Interval 10000 us Latency 10 ms SDU 40 PHY 0x02
      RTN 2]
      isotest[63]: Sending ...
      isotest[63]: Number of packets: 1
      isotest[63]: Socket jitter buffer: 80 buffer
      < HCI Command: LE Set Perio.. (0x08|0x003e) plen 7
      ...
      > HCI Event: Command Complete (0x0e) plen 4
            LE Set Periodic Advertising Parameters (0x08|0x003e) ncmd 1
              Status: Success (0x00)
      < HCI Command: LE Set Perio.. (0x08|0x003f) plen 7
      ...
      > HCI Event: Command Complete (0x0e) plen 4
            LE Set Periodic Advertising Data (0x08|0x003f) ncmd 1
              Status: Success (0x00)
      < HCI Command: LE Set Perio.. (0x08|0x0040) plen 2
      ...
      > HCI Event: Command Complete (0x0e) plen 4
            LE Set Periodic Advertising Enable (0x08|0x0040) ncmd 1
              Status: Success (0x00)
      < HCI Command: LE Create B.. (0x08|0x0068) plen 31
      ...
      > HCI Event: Command Status (0x0f) plen 4
            LE Create Broadcast Isochronous Group (0x08|0x0068) ncmd 1
              Status: Success (0x00)
      > HCI Event: LE Meta Event (0x3e) plen 21
            LE Broadcast Isochronous Group Complete (0x1b)
            ...
      
      == Broadcast Receiver role: Create a PA Sync and BIG Sync ==
      
      > tools/isotest -i hci1 -d 00:AA:01:00:00:00
      isotest[66]: Waiting for connection 00:AA:01:00:00:00...
      < HCI Command: LE Periodic Advert.. (0x08|0x0044) plen 14
      ...
      > HCI Event: Command Status (0x0f) plen 4
            LE Periodic Advertising Create Sync (0x08|0x0044) ncmd 1
              Status: Success (0x00)
      < HCI Command: LE Set Extended Sca.. (0x08|0x0041) plen 8
      ...
      > HCI Event: Command Complete (0x0e) plen 4
            LE Set Extended Scan Parameters (0x08|0x0041) ncmd 1
              Status: Success (0x00)
      < HCI Command: LE Set Extended Sca.. (0x08|0x0042) plen 6
      ...
      > HCI Event: Command Complete (0x0e) plen 4
            LE Set Extended Scan Enable (0x08|0x0042) ncmd 1
              Status: Success (0x00)
      > HCI Event: LE Meta Event (0x3e) plen 29
            LE Extended Advertising Report (0x0d)
            ...
      > HCI Event: LE Meta Event (0x3e) plen 16
            LE Periodic Advertising Sync Established (0x0e)
            ...
      < HCI Command: LE Broadcast Isoch.. (0x08|0x006b) plen 25
      ...
      > HCI Event: Command Status (0x0f) plen 4
            LE Broadcast Isochronous Group Create Sync (0x08|0x006b) ncmd 1
              Status: Success (0x00)
      > HCI Event: LE Meta Event (0x3e) plen 17
            LE Broadcast Isochronous Group Sync Estabilished (0x1d)
            ...
      Signed-off-by: default avatarLuiz Augusto von Dentz <luiz.von.dentz@intel.com>
      eca0ae4a
    • Luiz Augusto von Dentz's avatar
      Bluetooth: Add BTPROTO_ISO socket type · ccf74f23
      Luiz Augusto von Dentz authored
      This introduces a new socket type BTPROTO_ISO which can be enabled with
      use of ISO Socket experiemental UUID, it can used to initiate/accept
      connections and transfer packets between userspace and kernel similarly
      to how BTPROTO_SCO works:
      
      Central -> uses connect with address set to destination bdaddr:
      > tools/isotest -s 00:AA:01:00:00:00
      
      Peripheral -> uses listen:
      > tools/isotest -d
      Signed-off-by: default avatarLuiz Augusto von Dentz <luiz.von.dentz@intel.com>
      ccf74f23
    • Luiz Augusto von Dentz's avatar
      Bluetooth: Add initial implementation of CIS connections · 26afbd82
      Luiz Augusto von Dentz authored
      This adds the initial implementation of CIS connections and introduces
      the ISO packets/links.
      
      == Central: Set CIG Parameters, create a CIS and Setup Data Path ==
      
      > tools/isotest -s <address>
      
      < HCI Command: LE Extended Create... (0x08|0x0043) plen 26
      ...
      > HCI Event: Command Status (0x0f) plen 4
            LE Extended Create Connection (0x08|0x0043) ncmd 1
              Status: Success (0x00)
      > HCI Event: LE Meta Event (0x3e) plen 31
            LE Enhanced Connection Complete (0x0a)
            ...
      < HCI Command: LE Create Connected... (0x08|0x0064) plen 5
      ...
      > HCI Event: Command Status (0x0f) plen 4
            LE Create Connected Isochronous Stream (0x08|0x0064) ncmd 1
              Status: Success (0x00)
      > HCI Event: LE Meta Event (0x3e) plen 29
            LE Connected Isochronous Stream Established (0x19)
            ...
      < HCI Command: LE Setup Isochronou.. (0x08|0x006e) plen 13
      ...
      > HCI Event: Command Complete (0x0e) plen 6
            LE Setup Isochronous Data Path (0x08|0x006e) ncmd 1
              Status: Success (0x00)
              Handle: 257
      < HCI Command: LE Setup Isochronou.. (0x08|0x006e) plen 13
      ...
      > HCI Event: Command Complete (0x0e) plen 6
            LE Setup Isochronous Data Path (0x08|0x006e) ncmd 1
              Status: Success (0x00)
              Handle: 257
      
      == Peripheral: Accept CIS and Setup Data Path ==
      
      > tools/isotest -d
      
       HCI Event: LE Meta Event (0x3e) plen 7
            LE Connected Isochronous Stream Request (0x1a)
      ...
      < HCI Command: LE Accept Co.. (0x08|0x0066) plen 2
      ...
      > HCI Event: LE Meta Event (0x3e) plen 29
            LE Connected Isochronous Stream Established (0x19)
      ...
      < HCI Command: LE Setup Is.. (0x08|0x006e) plen 13
      ...
      > HCI Event: Command Complete (0x0e) plen 6
            LE Setup Isochronous Data Path (0x08|0x006e) ncmd 1
              Status: Success (0x00)
              Handle: 257
      < HCI Command: LE Setup Is.. (0x08|0x006e) plen 13
      ...
      > HCI Event: Command Complete (0x0e) plen 6
            LE Setup Isochronous Data Path (0x08|0x006e) ncmd 1
              Status: Success (0x00)
              Handle: 257
      Signed-off-by: default avatarLuiz Augusto von Dentz <luiz.von.dentz@intel.com>
      26afbd82
  3. 22 Jul, 2022 17 commits