1. 10 3月, 2021 1 次提交
  2. 26 1月, 2021 1 次提交
  3. 21 1月, 2021 1 次提交
  4. 04 1月, 2021 1 次提交
  5. 28 12月, 2020 6 次提交
  6. 13 11月, 2020 1 次提交
  7. 28 10月, 2020 1 次提交
  8. 05 10月, 2020 1 次提交
    • V
      usb: cdc-acm: add quirk to blacklist ETAS ES58X devices · a4f88430
      Vincent Mailhol 提交于
      The ES58X devices has a CDC ACM interface (used for debug
      purpose). During probing, the device is thus recognized as USB Modem
      (CDC ACM), preventing the etas-es58x module to load:
        usbcore: registered new interface driver etas_es58x
        usb 1-1.1: new full-speed USB device number 14 using xhci_hcd
        usb 1-1.1: New USB device found, idVendor=108c, idProduct=0159, bcdDevice= 1.00
        usb 1-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
        usb 1-1.1: Product: ES581.4
        usb 1-1.1: Manufacturer: ETAS GmbH
        usb 1-1.1: SerialNumber: 2204355
        cdc_acm 1-1.1:1.0: No union descriptor, testing for castrated device
        cdc_acm 1-1.1:1.0: ttyACM0: USB ACM device
      
      Thus, these have been added to the ignore list in
      drivers/usb/class/cdc-acm.c
      
      N.B. Future firmware release of the ES58X will remove the CDC-ACM
      interface.
      
      `lsusb -v` of the three devices variant (ES581.4, ES582.1 and
      ES584.1):
      
        Bus 001 Device 011: ID 108c:0159 Robert Bosch GmbH ES581.4
        Device Descriptor:
          bLength                18
          bDescriptorType         1
          bcdUSB               1.10
          bDeviceClass            2 Communications
          bDeviceSubClass         0
          bDeviceProtocol         0
          bMaxPacketSize0        64
          idVendor           0x108c Robert Bosch GmbH
          idProduct          0x0159
          bcdDevice            1.00
          iManufacturer           1 ETAS GmbH
          iProduct                2 ES581.4
          iSerial                 3 2204355
          bNumConfigurations      1
          Configuration Descriptor:
            bLength                 9
            bDescriptorType         2
            wTotalLength       0x0035
            bNumInterfaces          1
            bConfigurationValue     1
            iConfiguration          5 Bus Powered Configuration
            bmAttributes         0x80
              (Bus Powered)
            MaxPower              100mA
            Interface Descriptor:
              bLength                 9
              bDescriptorType         4
              bInterfaceNumber        0
              bAlternateSetting       0
              bNumEndpoints           3
              bInterfaceClass         2 Communications
              bInterfaceSubClass      2 Abstract (modem)
              bInterfaceProtocol      0
              iInterface              4 ACM Control Interface
              CDC Header:
                bcdCDC               1.10
              CDC Call Management:
                bmCapabilities       0x01
                  call management
                bDataInterface          0
              CDC ACM:
                bmCapabilities       0x06
                  sends break
                  line coding and serial state
              Endpoint Descriptor:
                bLength                 7
                bDescriptorType         5
                bEndpointAddress     0x81  EP 1 IN
                bmAttributes            3
                  Transfer Type            Interrupt
                  Synch Type               None
                  Usage Type               Data
                wMaxPacketSize     0x0010  1x 16 bytes
                bInterval              10
              Endpoint Descriptor:
                bLength                 7
                bDescriptorType         5
                bEndpointAddress     0x82  EP 2 IN
                bmAttributes            2
                  Transfer Type            Bulk
                  Synch Type               None
                  Usage Type               Data
                wMaxPacketSize     0x0040  1x 64 bytes
                bInterval               0
              Endpoint Descriptor:
                bLength                 7
                bDescriptorType         5
                bEndpointAddress     0x03  EP 3 OUT
                bmAttributes            2
                  Transfer Type            Bulk
                  Synch Type               None
                  Usage Type               Data
                wMaxPacketSize     0x0040  1x 64 bytes
                bInterval               0
        Device Status:     0x0000
          (Bus Powered)
      
        Bus 001 Device 012: ID 108c:0168 Robert Bosch GmbH ES582
        Device Descriptor:
          bLength                18
          bDescriptorType         1
          bcdUSB               2.00
          bDeviceClass            2 Communications
          bDeviceSubClass         0
          bDeviceProtocol         0
          bMaxPacketSize0        64
          idVendor           0x108c Robert Bosch GmbH
          idProduct          0x0168
          bcdDevice            1.00
          iManufacturer           1 ETAS GmbH
          iProduct                2 ES582
          iSerial                 3 0108933
          bNumConfigurations      1
          Configuration Descriptor:
            bLength                 9
            bDescriptorType         2
            wTotalLength       0x0043
            bNumInterfaces          2
            bConfigurationValue     1
            iConfiguration          0
            bmAttributes         0x80
              (Bus Powered)
            MaxPower              500mA
            Interface Descriptor:
              bLength                 9
              bDescriptorType         4
              bInterfaceNumber        0
              bAlternateSetting       0
              bNumEndpoints           1
              bInterfaceClass         2 Communications
              bInterfaceSubClass      2 Abstract (modem)
              bInterfaceProtocol      1 AT-commands (v.25ter)
              iInterface              0
              CDC Header:
                bcdCDC               1.10
              CDC ACM:
                bmCapabilities       0x02
                  line coding and serial state
              CDC Union:
                bMasterInterface        0
                bSlaveInterface         1
              CDC Call Management:
                bmCapabilities       0x03
                  call management
                  use DataInterface
                bDataInterface          1
              Endpoint Descriptor:
                bLength                 7
                bDescriptorType         5
                bEndpointAddress     0x83  EP 3 IN
                bmAttributes            3
                  Transfer Type            Interrupt
                  Synch Type               None
                  Usage Type               Data
                wMaxPacketSize     0x0040  1x 64 bytes
                bInterval              16
            Interface Descriptor:
              bLength                 9
              bDescriptorType         4
              bInterfaceNumber        1
              bAlternateSetting       0
              bNumEndpoints           2
              bInterfaceClass        10 CDC Data
              bInterfaceSubClass      0
              bInterfaceProtocol      0
              iInterface              0
              Endpoint Descriptor:
                bLength                 7
                bDescriptorType         5
                bEndpointAddress     0x81  EP 1 IN
                bmAttributes            2
                  Transfer Type            Bulk
                  Synch Type               None
                  Usage Type               Data
                wMaxPacketSize     0x0200  1x 512 bytes
                bInterval               0
              Endpoint Descriptor:
                bLength                 7
                bDescriptorType         5
                bEndpointAddress     0x02  EP 2 OUT
                bmAttributes            2
                  Transfer Type            Bulk
                  Synch Type               None
                  Usage Type               Data
                wMaxPacketSize     0x0200  1x 512 bytes
                bInterval               0
        Device Qualifier (for other device speed):
          bLength                10
          bDescriptorType         6
          bcdUSB               2.00
          bDeviceClass            2 Communications
          bDeviceSubClass         0
          bDeviceProtocol         0
          bMaxPacketSize0        64
          bNumConfigurations      1
        Device Status:     0x0000
          (Bus Powered)
      
        Bus 001 Device 013: ID 108c:0169 Robert Bosch GmbH ES584.1
        Device Descriptor:
          bLength                18
          bDescriptorType         1
          bcdUSB               2.00
          bDeviceClass            2 Communications
          bDeviceSubClass         0
          bDeviceProtocol         0
          bMaxPacketSize0        64
          idVendor           0x108c Robert Bosch GmbH
          idProduct          0x0169
          bcdDevice            1.00
          iManufacturer           1 ETAS GmbH
          iProduct                2 ES584.1
          iSerial                 3 0100320
          bNumConfigurations      1
          Configuration Descriptor:
            bLength                 9
            bDescriptorType         2
            wTotalLength       0x0043
            bNumInterfaces          2
            bConfigurationValue     1
            iConfiguration          0
            bmAttributes         0x80
              (Bus Powered)
            MaxPower              500mA
            Interface Descriptor:
              bLength                 9
              bDescriptorType         4
              bInterfaceNumber        0
              bAlternateSetting       0
              bNumEndpoints           1
              bInterfaceClass         2 Communications
              bInterfaceSubClass      2 Abstract (modem)
              bInterfaceProtocol      1 AT-commands (v.25ter)
              iInterface              0
              CDC Header:
                bcdCDC               1.10
              CDC ACM:
                bmCapabilities       0x02
                  line coding and serial state
              CDC Union:
                bMasterInterface        0
                bSlaveInterface         1
              CDC Call Management:
                bmCapabilities       0x03
                  call management
                  use DataInterface
                bDataInterface          1
              Endpoint Descriptor:
                bLength                 7
                bDescriptorType         5
                bEndpointAddress     0x83  EP 3 IN
                bmAttributes            3
                  Transfer Type            Interrupt
                  Synch Type               None
                  Usage Type               Data
                wMaxPacketSize     0x0040  1x 64 bytes
                bInterval              16
            Interface Descriptor:
              bLength                 9
              bDescriptorType         4
              bInterfaceNumber        1
              bAlternateSetting       0
              bNumEndpoints           2
              bInterfaceClass        10 CDC Data
              bInterfaceSubClass      0
              bInterfaceProtocol      0
              iInterface              0
              Endpoint Descriptor:
                bLength                 7
                bDescriptorType         5
                bEndpointAddress     0x81  EP 1 IN
                bmAttributes            2
                  Transfer Type            Bulk
                  Synch Type               None
                  Usage Type               Data
                wMaxPacketSize     0x0200  1x 512 bytes
                bInterval               0
              Endpoint Descriptor:
                bLength                 7
                bDescriptorType         5
                bEndpointAddress     0x02  EP 2 OUT
                bmAttributes            2
                  Transfer Type            Bulk
                  Synch Type               None
                  Usage Type               Data
                wMaxPacketSize     0x0200  1x 512 bytes
                bInterval               0
        Device Qualifier (for other device speed):
          bLength                10
          bDescriptorType         6
          bcdUSB               2.00
          bDeviceClass            2 Communications
          bDeviceSubClass         0
          bDeviceProtocol         0
          bMaxPacketSize0        64
          bNumConfigurations      1
        Device Status:     0x0000
          (Bus Powered)
      Signed-off-by: NVincent Mailhol <mailhol.vincent@wanadoo.fr>
      Cc: stable <stable@vger.kernel.org>
      Link: https://lore.kernel.org/r/20201002154219.4887-8-mailhol.vincent@wanadoo.frSigned-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      a4f88430
  9. 02 10月, 2020 1 次提交
  10. 25 9月, 2020 4 次提交
  11. 18 9月, 2020 2 次提交
  12. 18 8月, 2020 1 次提交
    • T
      USB: cdc-acm: rework notification_buffer resizing · f4b9d8a5
      Tom Rix 提交于
      Clang static analysis reports this error
      
      cdc-acm.c:409:3: warning: Use of memory after it is freed
              acm_process_notification(acm, (unsigned char *)dr);
      
      There are three problems, the first one is that dr is not reset
      
      The variable dr is set with
      
      if (acm->nb_index)
      	dr = (struct usb_cdc_notification *)acm->notification_buffer;
      
      But if the notification_buffer is too small it is resized with
      
      		if (acm->nb_size) {
      			kfree(acm->notification_buffer);
      			acm->nb_size = 0;
      		}
      		alloc_size = roundup_pow_of_two(expected_size);
      		/*
      		 * kmalloc ensures a valid notification_buffer after a
      		 * use of kfree in case the previous allocation was too
      		 * small. Final freeing is done on disconnect.
      		 */
      		acm->notification_buffer =
      			kmalloc(alloc_size, GFP_ATOMIC);
      
      dr should point to the new acm->notification_buffer.
      
      The second problem is any data in the notification_buffer is lost
      when the pointer is freed.  In the normal case, the current data
      is accumulated in the notification_buffer here.
      
      	memcpy(&acm->notification_buffer[acm->nb_index],
      	       urb->transfer_buffer, copy_size);
      
      When a resize happens, anything before
      notification_buffer[acm->nb_index] is garbage.
      
      The third problem is the acm->nb_index is not reset on a
      resizing buffer error.
      
      So switch resizing to using krealloc and reassign dr and
      reset nb_index.
      
      Fixes: ea258352 ("cdc-acm: reassemble fragmented notifications")
      Signed-off-by: NTom Rix <trix@redhat.com>
      Cc: stable <stable@vger.kernel.org>
      Acked-by: NOliver Neukum <oneukum@suse.com>
      Link: https://lore.kernel.org/r/20200801152154.20683-1-trix@redhat.comSigned-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      f4b9d8a5
  13. 15 7月, 2020 1 次提交
  14. 10 7月, 2020 1 次提交
  15. 03 7月, 2020 1 次提交
  16. 23 6月, 2020 1 次提交
  17. 18 6月, 2020 1 次提交
  18. 14 6月, 2020 1 次提交
    • M
      treewide: replace '---help---' in Kconfig files with 'help' · a7f7f624
      Masahiro Yamada 提交于
      Since commit 84af7a61 ("checkpatch: kconfig: prefer 'help' over
      '---help---'"), the number of '---help---' has been gradually
      decreasing, but there are still more than 2400 instances.
      
      This commit finishes the conversion. While I touched the lines,
      I also fixed the indentation.
      
      There are a variety of indentation styles found.
      
        a) 4 spaces + '---help---'
        b) 7 spaces + '---help---'
        c) 8 spaces + '---help---'
        d) 1 space + 1 tab + '---help---'
        e) 1 tab + '---help---'    (correct indentation)
        f) 1 tab + 1 space + '---help---'
        g) 1 tab + 2 spaces + '---help---'
      
      In order to convert all of them to 1 tab + 'help', I ran the
      following commend:
      
        $ find . -name 'Kconfig*' | xargs sed -i 's/^[[:space:]]*---help---/\thelp/'
      Signed-off-by: NMasahiro Yamada <masahiroy@kernel.org>
      a7f7f624
  19. 27 5月, 2020 1 次提交
  20. 13 5月, 2020 1 次提交
  21. 16 4月, 2020 2 次提交
  22. 27 3月, 2020 1 次提交
  23. 18 3月, 2020 2 次提交
  24. 23 10月, 2019 1 次提交
  25. 16 10月, 2019 1 次提交
  26. 04 10月, 2019 1 次提交
  27. 29 8月, 2019 1 次提交
  28. 22 8月, 2019 1 次提交
  29. 15 8月, 2019 1 次提交