1. 12 Apr, 2021 9 commits
    • Felix Fietkau's avatar
      mt76: mt7615: always add rx header translation tlv when adding stations · 66978204
      Felix Fietkau authored
      Ensures that header translation is disabled for interfaces that do not support
      it.
      
      Fixes: d4b98c63 ("mt76: mt7615: add support for rx decapsulation offload")
      Signed-off-by: default avatarFelix Fietkau <nbd@nbd.name>
      66978204
    • Ryder Lee's avatar
      mt76: mt7615: add missing SPDX tag in mmio.c · 30ad3621
      Ryder Lee authored
      Resolve the following checkpatch.pl script warning:
      
      WARNING: Missing or malformed SPDX-License-Identifier tag in line 1
      Signed-off-by: default avatarRyder Lee <ryder.lee@mediatek.com>
      Signed-off-by: default avatarFelix Fietkau <nbd@nbd.name>
      30ad3621
    • Ryder Lee's avatar
      mt76: mt7915: add mmio.c · 6d88629e
      Ryder Lee authored
      Add mmio.c in order to use mt76_bus_ops throughout the driver.
      It will be also shared with the future APSoC revision.
      Signed-off-by: default avatarRyder Lee <ryder.lee@mediatek.com>
      Signed-off-by: default avatarFelix Fietkau <nbd@nbd.name>
      6d88629e
    • Ryder Lee's avatar
      mt76: report Rx timestamp · 0fda6d7b
      Ryder Lee authored
      Frame reception timestamp (low 32-bits) that indicates the value of the
      local TSF timer value at the time the first bit of the MAC header in the
      received frame (PPDU unit) arriving at the MAC.
      Signed-off-by: default avatarRyder Lee <ryder.lee@mediatek.com>
      Signed-off-by: default avatarFelix Fietkau <nbd@nbd.name>
      0fda6d7b
    • Felix Fietkau's avatar
      mt76: mt7921: remove 80+80 MHz support capabilities · 92e91636
      Felix Fietkau authored
      This mode is not supported by the hardware
      Signed-off-by: default avatarFelix Fietkau <nbd@nbd.name>
      92e91636
    • Felix Fietkau's avatar
      mt76: fix potential DMA mapping leak · b4403cee
      Felix Fietkau authored
      With buf uninitialized in mt76_dma_tx_queue_skb_raw, its field skip_unmap
      could potentially inherit a non-zero value from stack garbage.
      If this happens, it will cause DMA mappings for MCU command frames to not be
      unmapped after completion
      
      Fixes: 27d5c528 ("mt76: fix double DMA unmap of the first buffer on 7615/7915")
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarFelix Fietkau <nbd@nbd.name>
      b4403cee
    • Sean Wang's avatar
      mt76: mt7921: reduce the data latency during hw scan · 4da64fe0
      Sean Wang authored
      Reduce the data latency during hw_scan by the split scan which would switch
      back to operational channel right after scanning each channel done.
      Suggested-by: default avatarAsda Wen <Asda.Wen@mediatek.com>
      Suggested-by: default avatarSoul Huang <Soul.Huang@mediatek.com>
      Co-developed-by: default avatarYN Chen <YN.Chen@mediatek.com>
      Signed-off-by: default avatarYN Chen <YN.Chen@mediatek.com>
      Signed-off-by: default avatarSean Wang <sean.wang@mediatek.com>
      Signed-off-by: default avatarFelix Fietkau <nbd@nbd.name>
      4da64fe0
    • Sean Wang's avatar
      mt76: mt7921: fix the insmod hangs · 49897c52
      Sean Wang authored
      Fix the second insert module causing the device hangs after remove module.
      
      Fixes: 1c099ab4 ("mt76: mt7921: add MCU support")
      Signed-off-by: default avatarSean Wang <sean.wang@mediatek.com>
      Signed-off-by: default avatarFelix Fietkau <nbd@nbd.name>
      49897c52
    • Sean Wang's avatar
      mt76: mt7921: fix kernel crash when the firmware fails to download · e230f0c4
      Sean Wang authored
      Fix kernel crash when the firmware is missing or fails to download.
      
      [    9.444758] kernel BUG at drivers/pci/msi.c:375!
      [    9.449363] Internal error: Oops - BUG: 0 [#1] PREEMPT SMP
      [    9.501033] pstate: a0400009 (NzCv daif +PAN -UAO)
      [    9.505814] pc : free_msi_irqs+0x180/0x184
      [    9.509897] lr : free_msi_irqs+0x40/0x184
      [    9.513893] sp : ffffffc015193870
      [    9.517194] x29: ffffffc015193870 x28: 00000000f0e94fa2
      [    9.522492] x27: 0000000000000acd x26: 000000000000009a
      [    9.527790] x25: ffffffc0152cee58 x24: ffffffdbb383e0d8
      [    9.533087] x23: ffffffdbb38628d0 x22: 0000000000040200
      [    9.538384] x21: ffffff8cf7de7318 x20: ffffff8cd65a2480
      [    9.543681] x19: ffffff8cf7de7000 x18: 0000000000000000
      [    9.548979] x17: ffffff8cf9ca03b4 x16: ffffffdc13ad9a34
      [    9.554277] x15: 0000000000000000 x14: 0000000000080800
      [    9.559575] x13: ffffff8cd65a2980 x12: 0000000000000000
      [    9.564873] x11: ffffff8cfa45d820 x10: ffffff8cfa45d6d0
      [    9.570171] x9 : 0000000000000040 x8 : ffffff8ccef1b780
      [    9.575469] x7 : aaaaaaaaaaaaaaaa x6 : 0000000000000000
      [    9.580766] x5 : ffffffdc13824900 x4 : ffffff8ccefe0000
      [    9.586063] x3 : 0000000000000000 x2 : 0000000000000000
      [    9.591362] x1 : 0000000000000125 x0 : ffffff8ccefe0000
      [    9.596660] Call trace:
      [    9.599095]  free_msi_irqs+0x180/0x184
      [    9.602831]  pci_disable_msi+0x100/0x130
      [    9.606740]  pci_free_irq_vectors+0x24/0x30
      [    9.610915]  mt7921_pci_probe+0xbc/0x250 [mt7921e]
      [    9.615693]  pci_device_probe+0xd4/0x14c
      [    9.619604]  really_probe+0x134/0x2ec
      [    9.623252]  driver_probe_device+0x64/0xfc
      [    9.627335]  device_driver_attach+0x4c/0x6c
      [    9.631506]  __driver_attach+0xac/0xc0
      [    9.635243]  bus_for_each_dev+0x8c/0xd4
      [    9.639066]  driver_attach+0x2c/0x38
      [    9.642628]  bus_add_driver+0xfc/0x1d0
      [    9.646365]  driver_register+0x64/0xf8
      [    9.650101]  __pci_register_driver+0x6c/0x7c
      [    9.654360]  init_module+0x28/0xfdc [mt7921e]
      [    9.658704]  do_one_initcall+0x13c/0x2d0
      [    9.662615]  do_init_module+0x58/0x1e8
      [    9.666351]  load_module+0xd80/0xeb4
      [    9.669912]  __arm64_sys_finit_module+0xa8/0xe0
      [    9.674430]  el0_svc_common+0xa4/0x16c
      [    9.678168]  el0_svc_compat_handler+0x2c/0x40
      [    9.682511]  el0_svc_compat+0x8/0x10
      [    9.686076] Code: a94257f6 f9400bf7 a8c47bfd d65f03c0 (d4210000)
      [    9.692155] ---[ end trace 7621f966afbf0a29 ]---
      [    9.697385] Kernel panic - not syncing: Fatal exception
      [    9.702599] SMP: stopping secondary CPUs
      [    9.706549] Kernel Offset: 0x1c03600000 from 0xffffffc010000000
      [    9.712456] PHYS_OFFSET: 0xfffffff440000000
      [    9.716625] CPU features: 0x080026,2a80aa18
      [    9.720795] Memory Limit: none
      
      Fixes: 5c14a5f9 ("mt76: mt7921: introduce mt7921e support")
      Reported-by: default avatarClaire Chang <tientzu@google.com>
      Co-developed-by: default avatarYN Chen <YN.Chen@mediatek.com>
      Signed-off-by: default avatarYN Chen <YN.Chen@mediatek.com>
      Signed-off-by: default avatarSean Wang <sean.wang@mediatek.com>
      Signed-off-by: default avatarFelix Fietkau <nbd@nbd.name>
      e230f0c4
  2. 11 Apr, 2021 31 commits