mbox series

[Pull,Focal] Add support for Realtek 8723DE wireless adapter

Message ID 20200219145304.25919-1-kai.heng.feng@canonical.com
State New
Headers show
Series [Pull,Focal] Add support for Realtek 8723DE wireless adapter | expand

Pull-request

https://git.launchpad.net/~kaihengfeng/linux lp1780590-focal

Message

Kai-Heng Feng Feb. 19, 2020, 2:53 p.m. UTC
BugLink: https://bugs.launchpad.net/bugs/1780590

[Impact]
There's no in-kernel support for Realtek 8723DE, so users need to use
out-of-tree DKMS which is not from Ubuntu archive. This has security
implication and should be avoided. Also this provides pretty bad user
experience.

[Fix]
Add support to Realtek 8723DE.
All commits are cherry-picked from Realtek maintained repo:
https://github.com/rtlwifi-linux/rtw88_8723de

[Test]
With the patch series applied, 8723DE can scan and connect to APs
succesfully. Also did some S3 smoke test, it continues to work.

[Regression Potential]
Low. The device in question was never supported, and if there's any
regression, we can count on Realtek Wireless team, thy are now pretty
responsive on upstream mailing list.

[Pull]
The following changes since commit 0efe88b03bdc64cef646c9ea785c464a3f4952dd:

  UBUNTU: Ubuntu-5.4-5.4.0-15.18 (2020-02-18 12:19:31 +0100)

are available in the Git repository at:

  https://git.launchpad.net/~kaihengfeng/linux lp1780590-focal

for you to fetch changes up to 1fe3af62dbee1784cfd23e7d755186ee2fc542b6:

  UBUNTU: [Config] CONFIG_RTW88_8723DE=y (2020-02-19 19:50:47 +0800)

----------------------------------------------------------------
Brian Norris (5):
      rtw88: use a for loop in rtw_power_mode_change(), not goto
      rtw88: include interrupt.h for tasklet_struct
      rtw88: mark rtw_fw_hdr __packed
      rtw88: signal completion even on firmware-request failure
      UBUNTU: SAUCE: rtw88: don't hold all IRQs disabled for PS operations

Chien-Hsun Liao (1):
      UBUNTU: SAUCE: rtw88: 8822c: modify rf protection setting

Chin-Yen Lee (9):
      rtw88: check firmware leave lps successfully
      rtw88: pci: reset ring index when release skbs in tx ring
      rtw88: pci: reset dma when reset pci trx ring
      rtw88: load wowlan firmware if wowlan is supported
      rtw88: support wowlan feature for 8822c
      rtw88: Add wowlan pattern match support
      rtw88: Add wowlan net-detect support
      rtw88: use rtw_hci_stop() instead of rtwdev->hci.ops->stop()
      rtw88: Fix return value of rtw_wow_check_fw_status

Colin Ian King (1):
      rtw88: remove redundant null pointer check on arrays

Dan Carpenter (1):
      rtw88: Fix an error message

Johannes Berg (1):
      mac80211: simplify TX aggregation start

Kai-Heng Feng (1):
      UBUNTU: [Config] CONFIG_RTW88_8723DE=y

Ping-Ke Shih (46):
      rtw88: Don't set RX_FLAG_DECRYPTED if packet has no encryption
      rtw88: use struct rtw_fw_hdr to access firmware header
      rtw88: fix rate mask for 1SS chip
      rtw88: fix TX secondary channel offset of 40M if current bw is 20M or 40M
      UBUNTU: SAUCE: rtw88: Use secondary channel offset enumeration
      UBUNTU: SAUCE: rtw88: move rtw_enter_ips() to the last when config
      UBUNTU: SAUCE: rtw88: add ciphers to suppress error message
      UBUNTU: SAUCE: rtw88: 8723d: Add basic chip capabilities
      UBUNTU: SAUCE: rtw88: 8723d: add beamform wrapper functions
      UBUNTU: SAUCE: rtw88: 8723d: Add power sequence
      UBUNTU: SAUCE: rtw88: 8723d: Add RF read/write ops
      UBUNTU: SAUCE: rtw88: 8723d: Add mac/bb/rf/agc/power_limit tables
      UBUNTU: SAUCE: rtw88: 8723d: Add cfg_ldo25 to control LDO25
      UBUNTU: SAUCE: rtw88: 8723d: Add new chip op efuse_grant() to control efuse access
      UBUNTU: SAUCE: rtw88: 8723d: Add read_efuse to recognize efuse info from map
      UBUNTU: SAUCE: rtw88: add legacy firmware download for 8723D devices
      UBUNTU: SAUCE: rtw88: no need to send additional information to legacy firmware
      UBUNTU: SAUCE: rtw88: 8723d: Add mac power-on/-off function
      UBUNTU: SAUCE: rtw88: decompose while(1) loop of power sequence polling command
      UBUNTU: SAUCE: rtw88: 8723d: 11N chips don't support H2C queue
      UBUNTU: SAUCE: rtw88: 8723d: implement set_tx_power_index ops
      UBUNTU: SAUCE: rtw88: 8723d: Organize chip TX/RX FIFO
      UBUNTU: SAUCE: rtw88: 8723d: initialize mac/bb/rf basic functions
      UBUNTU: SAUCE: rtw88: 8723d: Add DIG parameter
      UBUNTU: SAUCE: rtw88: 8723d: Add query_rx_desc
      UBUNTU: SAUCE: rtw88: 8723d: Add set_channel
      UBUNTU: SAUCE: rtw88: handle C2H_CCX_TX_RPT to know if packet TX'ed successfully
      UBUNTU: SAUCE: rtw88: 8723d: 11N chips don't support LDPC
      UBUNTU: SAUCE: rtw88: sar: add SAR of TX power limit
      UBUNTU: SAUCE: rtw88: sar: Load static SAR table from ACPI WRDS method
      UBUNTU: SAUCE: rtw88: sar: Load dynamic SAR table from ACPI methods
      UBUNTU: SAUCE: rtw88: sar: apply dynamic SAR table to tx power limit
      UBUNTU: SAUCE: rtw88: sar: add sar_work to poll if dynamic SAR table is changed
      UBUNTU: SAUCE: rtw88: sar: dump sar information via debugfs
      UBUNTU: SAUCE: rtw88: 8723d: Add chip_ops::false_alarm_statistics
      UBUNTU: SAUCE: rtw88: 8723d: Set IG register for CCK rate
      UBUNTU: SAUCE: rtw88: 8723d: add interface configurations table
      UBUNTU: SAUCE: rtw88: 8723d: Add LC calibration
      UBUNTU: SAUCE: rtw88: 8723d: add IQ calibration
      UBUNTU: SAUCE: rtw88: 8723d: Add power tracking
      UBUNTU: SAUCE: rtw88: 8723d: Add shutdown callback to disable BT USB suspend
      UBUNTU: SAUCE: rtw88: 8723d: implement flush queue
      UBUNTU: SAUCE: rtw88: 8723d: set ltecoex register address in chip_info
      UBUNTU: SAUCE: rtw88: 8723d: Add coex support
      UBUNTU: SAUCE: rtw88: fill zeros to words 0x06 and 0x07 of security cam entry
      UBUNTU: SAUCE: rtw88: 8723d: Add 8723DE to Kconfig and Makefile

Tsang-Shian Lin (1):
      rtw88: add phy_info debugfs to show Tx/Rx physical status

Tzu-En Huang (14):
      rtw88: report tx rate to mac80211 stack
      rtw88: config 8822c multicast address in MAC init flow
      rtw88: add NL80211_EXT_FEATURE_CAN_REPLACE_PTK0 support
      rtw88: add power tracking support
      rtw88: Enable 802.11ac beamformee support
      rtw88: add set_bitrate_mask support
      rtw88: 8822c: update power sequence to v15
      rtw88: remove unused spinlock
      UBUNTU: SAUCE: rtw88: add regulatory process strategy for different chipset
      UBUNTU: SAUCE: rtw88: support dynamic user regulatory setting
      UBUNTU: SAUCE: rtw88: 8822c: update power sequence to v16
      UBUNTU: SAUCE: rtw88: Fix incorrect beamformee role setting
      UBUNTU: SAUCE: rtw88: add adaptivity support for EU/JP regulatory
      UBUNTU: SAUCE: rtw88: update tx descriptor of mgmt and rsvd page packets

Yan-Hsuan Chuang (52):
      rtw88: 8822c: fix boolreturn.cocci warnings
      rtw88: remove redundant flag check helper function
      rtw88: pci: reset H2C queue indexes in a single write
      rtw88: not to enter or leave PS under IRQ
      rtw88: not to control LPS by each vif
      rtw88: remove unused lps state check helper
      rtw88: LPS enter/leave should be protected by lock
      rtw88: leave PS state for dynamic mechanism
      rtw88: add deep power save support
      rtw88: not to enter LPS by coex strategy
      rtw88: select deep PS mode when module is inserted
      rtw88: add deep PS PG mode for 8822c
      rtw88: remove misleading module parameter rtw_fw_support_lps
      rtw88: allows to set RTS in TX descriptor
      rtw88: add driver TX queue support
      rtw88: take over rate control from mac80211
      rtw88: add TX-AMSDU support
      rtw88: flush hardware tx queues
      rtw88: configure TX queue EDCA parameters
      rtw88: raise firmware version debug level
      rtw88: Use rtw_write8_set to set SYS_FUNC
      rtw88: pci: config phy after chip info is setup
      rtw88: use macro to check the current band
      rtw88: fix GENMASK_ULL for u64
      rtw88: fix sparse warnings for DPK
      rtw88: fix sparse warnings for power tracking
      rtw88: 8822b: add RFE type 3 support
      rtw88: use rtw_phy_pg_cfg_pair struct, not arrays
      rtw88: rearrange if..else statements for rx rate indexes
      rtw88: avoid FW info flood
      rtw88: raise LPS threshold to 50, for less power consumption
      rtw88: fix potential NULL pointer access for firmware
      rtw88: pci: use macros to access PCI DBI/MDIO registers
      rtw88: pci: use for loop instead of while loop for DBI/MDIO
      rtw88: pci: enable CLKREQ function if host supports it
      rtw88: allows to enable/disable HCI link PS mechanism
      rtw88: add interface config for 8822c
      rtw88: remove unused variable 'in_lps'
      rtw88: remove unused vif pointer in struct rtw_vif
      rtw88: assign NULL to skb after being kfree()'ed
      rtw88: fix potential NULL skb access in TX ISR
      rtw88: use shorter delay time to poll PS state
      UBUNTU: SAUCE: rtw88: disable TX-AMSDU on 2.4G band
      UBUNTU: SAUCE: Revert "rtw88: disable TX-AMSDU on 2.4G band"
      UBUNTU: SAUCE: rtw88: disable TX-AMSDU on 2.4G band
      UBUNTU: SAUCE: rtw88: remove unused parameter vif in rtw_lps_pg_info_get()
      UBUNTU: SAUCE: rtw88: add rtw_read8_mask and rtw_read16_mask
      UBUNTU: SAUCE: rtw88: pci: 8822c should set clock delay to zero
      UBUNTU: SAUCE: rtw88: avoid holding mutex for cancel_delayed_work_sync()
      UBUNTU: SAUCE: rtw88: extract alloc rsvd_page and h2c skb routines
      UBUNTU: SAUCE: rtw88: associate reserved pages with each vif
      UBUNTU: SAUCE: rtw88: set default port to firmware

YueHaibing (1):
      rtw88: remove duplicated include from ps.c

Zong-Zhe Yang (1):
      rtw88: change max_num_of_tx_queue() definition to inline in pci.h

zhengbin (1):
      rtw88: use true,false for bool variable

 debian.master/config/annotations                   |    2 +
 debian.master/config/config.common.ubuntu          |    2 +
 drivers/net/wireless/ath/ath9k/htc_drv_main.c      |    2 +-
 drivers/net/wireless/ath/ath9k/main.c              |    2 +-
 drivers/net/wireless/ath/carl9170/main.c           |    3 +-
 drivers/net/wireless/ath/wcn36xx/main.c            |    5 +-
 .../broadcom/brcm80211/brcmsmac/mac80211_if.c      |    3 +-
 drivers/net/wireless/intel/iwlegacy/4965-mac.c     |    2 +-
 drivers/net/wireless/intel/iwlwifi/dvm/tx.c        |    2 +-
 drivers/net/wireless/intel/iwlwifi/mvm/sta.c       |    5 +-
 drivers/net/wireless/mac80211_hwsim.c              |    3 +-
 drivers/net/wireless/marvell/mwl8k.c               |    2 +-
 drivers/net/wireless/mediatek/mt76/mt7603/main.c   |    3 +-
 drivers/net/wireless/mediatek/mt76/mt7615/main.c   |    3 +-
 drivers/net/wireless/mediatek/mt76/mt76x02_util.c  |    3 +-
 drivers/net/wireless/mediatek/mt7601u/main.c       |    3 +-
 drivers/net/wireless/ralink/rt2x00/rt2800lib.c     |    4 +-
 drivers/net/wireless/realtek/rtlwifi/base.c        |    3 +-
 drivers/net/wireless/realtek/rtw88/Kconfig         |   20 +
 drivers/net/wireless/realtek/rtw88/Makefile        |    4 +
 drivers/net/wireless/realtek/rtw88/bf.c            |  397 +++
 drivers/net/wireless/realtek/rtw88/bf.h            |  114 +
 drivers/net/wireless/realtek/rtw88/coex.c          |   17 +-
 drivers/net/wireless/realtek/rtw88/debug.c         |  225 +-
 drivers/net/wireless/realtek/rtw88/debug.h         |    3 +
 drivers/net/wireless/realtek/rtw88/efuse.c         |    4 +
 drivers/net/wireless/realtek/rtw88/fw.c            |  852 +++++-
 drivers/net/wireless/realtek/rtw88/fw.h            |  323 ++-
 drivers/net/wireless/realtek/rtw88/hci.h           |   44 +
 drivers/net/wireless/realtek/rtw88/mac.c           |  546 +++-
 drivers/net/wireless/realtek/rtw88/mac.h           |    7 +
 drivers/net/wireless/realtek/rtw88/mac80211.c      |  357 ++-
 drivers/net/wireless/realtek/rtw88/main.c          |  471 +++-
 drivers/net/wireless/realtek/rtw88/main.h          |  459 +++-
 drivers/net/wireless/realtek/rtw88/pci.c           |  421 ++-
 drivers/net/wireless/realtek/rtw88/pci.h           |   23 +-
 drivers/net/wireless/realtek/rtw88/phy.c           |  462 +++-
 drivers/net/wireless/realtek/rtw88/phy.h           |   33 +
 drivers/net/wireless/realtek/rtw88/ps.c            |  191 +-
 drivers/net/wireless/realtek/rtw88/ps.h            |   18 +-
 drivers/net/wireless/realtek/rtw88/reg.h           |  146 ++
 drivers/net/wireless/realtek/rtw88/regd.c          |   63 +-
 drivers/net/wireless/realtek/rtw88/rtw8723d.c      | 2762 ++++++++++++++++++++
 drivers/net/wireless/realtek/rtw88/rtw8723d.h      |  245 ++
 .../net/wireless/realtek/rtw88/rtw8723d_table.c    | 1196 +++++++++
 .../net/wireless/realtek/rtw88/rtw8723d_table.h    |   15 +
 drivers/net/wireless/realtek/rtw88/rtw8822b.c      |  540 +++-
 drivers/net/wireless/realtek/rtw88/rtw8822b.h      |   18 +
 .../net/wireless/realtek/rtw88/rtw8822b_table.c    |  829 +++++-
 .../net/wireless/realtek/rtw88/rtw8822b_table.h    |    2 +
 drivers/net/wireless/realtek/rtw88/rtw8822c.c      |  491 +++-
 drivers/net/wireless/realtek/rtw88/rtw8822c.h      |   19 +
 .../net/wireless/realtek/rtw88/rtw8822c_table.c    |   94 +-
 drivers/net/wireless/realtek/rtw88/rx.c            |  101 +-
 drivers/net/wireless/realtek/rtw88/rx.h            |   11 +
 drivers/net/wireless/realtek/rtw88/sar.c           |  778 ++++++
 drivers/net/wireless/realtek/rtw88/sar.h           |   15 +
 drivers/net/wireless/realtek/rtw88/sec.c           |   27 +-
 drivers/net/wireless/realtek/rtw88/sec.h           |    1 +
 drivers/net/wireless/realtek/rtw88/tx.c            |  310 ++-
 drivers/net/wireless/realtek/rtw88/tx.h            |   39 +-
 drivers/net/wireless/realtek/rtw88/util.c          |   45 +-
 drivers/net/wireless/realtek/rtw88/util.h          |    2 +
 drivers/net/wireless/realtek/rtw88/wow.c           |  882 +++++++
 drivers/net/wireless/realtek/rtw88/wow.h           |   58 +
 drivers/net/wireless/rsi/rsi_91x_mac80211.c        |    3 +-
 include/net/mac80211.h                             |   11 +-
 net/mac80211/agg-tx.c                              |    9 +-
 68 files changed, 12865 insertions(+), 890 deletions(-)
 create mode 100644 drivers/net/wireless/realtek/rtw88/bf.c
 create mode 100644 drivers/net/wireless/realtek/rtw88/bf.h
 create mode 100644 drivers/net/wireless/realtek/rtw88/rtw8723d.c
 create mode 100644 drivers/net/wireless/realtek/rtw88/rtw8723d.h
 create mode 100644 drivers/net/wireless/realtek/rtw88/rtw8723d_table.c
 create mode 100644 drivers/net/wireless/realtek/rtw88/rtw8723d_table.h
 create mode 100644 drivers/net/wireless/realtek/rtw88/sar.c
 create mode 100644 drivers/net/wireless/realtek/rtw88/sar.h
 create mode 100644 drivers/net/wireless/realtek/rtw88/wow.c
 create mode 100644 drivers/net/wireless/realtek/rtw88/wow.h

Comments

Timo Aaltonen Feb. 19, 2020, 4:26 p.m. UTC | #1
On 19.2.2020 16.53, Kai-Heng Feng wrote:
> BugLink: https://bugs.launchpad.net/bugs/1780590
> 
> [Impact]
> There's no in-kernel support for Realtek 8723DE, so users need to use
> out-of-tree DKMS which is not from Ubuntu archive. This has security
> implication and should be avoided. Also this provides pretty bad user
> experience.
> 
> [Fix]
> Add support to Realtek 8723DE.
> All commits are cherry-picked from Realtek maintained repo:
> https://github.com/rtlwifi-linux/rtw88_8723de
> 
> [Test]
> With the patch series applied, 8723DE can scan and connect to APs
> succesfully. Also did some S3 smoke test, it continues to work.
> 
> [Regression Potential]
> Low. The device in question was never supported, and if there's any
> regression, we can count on Realtek Wireless team, thy are now pretty
> responsive on upstream mailing list.
> 
> [Pull]
> The following changes since commit 0efe88b03bdc64cef646c9ea785c464a3f4952dd:
> 
>   UBUNTU: Ubuntu-5.4-5.4.0-15.18 (2020-02-18 12:19:31 +0100)
> 
> are available in the Git repository at:
> 
>   https://git.launchpad.net/~kaihengfeng/linux lp1780590-focal
> 
> for you to fetch changes up to 1fe3af62dbee1784cfd23e7d755186ee2fc542b6:
> 
>   UBUNTU: [Config] CONFIG_RTW88_8723DE=y (2020-02-19 19:50:47 +0800)
> 
> ----------------------------------------------------------------
> Brian Norris (5):
>       rtw88: use a for loop in rtw_power_mode_change(), not goto
>       rtw88: include interrupt.h for tasklet_struct
>       rtw88: mark rtw_fw_hdr __packed
>       rtw88: signal completion even on firmware-request failure
>       UBUNTU: SAUCE: rtw88: don't hold all IRQs disabled for PS operations
> 
> Chien-Hsun Liao (1):
>       UBUNTU: SAUCE: rtw88: 8822c: modify rf protection setting
> 
> Chin-Yen Lee (9):
>       rtw88: check firmware leave lps successfully
>       rtw88: pci: reset ring index when release skbs in tx ring
>       rtw88: pci: reset dma when reset pci trx ring
>       rtw88: load wowlan firmware if wowlan is supported
>       rtw88: support wowlan feature for 8822c
>       rtw88: Add wowlan pattern match support
>       rtw88: Add wowlan net-detect support
>       rtw88: use rtw_hci_stop() instead of rtwdev->hci.ops->stop()
>       rtw88: Fix return value of rtw_wow_check_fw_status
> 
> Colin Ian King (1):
>       rtw88: remove redundant null pointer check on arrays
> 
> Dan Carpenter (1):
>       rtw88: Fix an error message
> 
> Johannes Berg (1):
>       mac80211: simplify TX aggregation start
> 
> Kai-Heng Feng (1):
>       UBUNTU: [Config] CONFIG_RTW88_8723DE=y
> 
> Ping-Ke Shih (46):
>       rtw88: Don't set RX_FLAG_DECRYPTED if packet has no encryption
>       rtw88: use struct rtw_fw_hdr to access firmware header
>       rtw88: fix rate mask for 1SS chip
>       rtw88: fix TX secondary channel offset of 40M if current bw is 20M or 40M
>       UBUNTU: SAUCE: rtw88: Use secondary channel offset enumeration
>       UBUNTU: SAUCE: rtw88: move rtw_enter_ips() to the last when config
>       UBUNTU: SAUCE: rtw88: add ciphers to suppress error message
>       UBUNTU: SAUCE: rtw88: 8723d: Add basic chip capabilities
>       UBUNTU: SAUCE: rtw88: 8723d: add beamform wrapper functions
>       UBUNTU: SAUCE: rtw88: 8723d: Add power sequence
>       UBUNTU: SAUCE: rtw88: 8723d: Add RF read/write ops
>       UBUNTU: SAUCE: rtw88: 8723d: Add mac/bb/rf/agc/power_limit tables
>       UBUNTU: SAUCE: rtw88: 8723d: Add cfg_ldo25 to control LDO25
>       UBUNTU: SAUCE: rtw88: 8723d: Add new chip op efuse_grant() to control efuse access
>       UBUNTU: SAUCE: rtw88: 8723d: Add read_efuse to recognize efuse info from map
>       UBUNTU: SAUCE: rtw88: add legacy firmware download for 8723D devices
>       UBUNTU: SAUCE: rtw88: no need to send additional information to legacy firmware
>       UBUNTU: SAUCE: rtw88: 8723d: Add mac power-on/-off function
>       UBUNTU: SAUCE: rtw88: decompose while(1) loop of power sequence polling command
>       UBUNTU: SAUCE: rtw88: 8723d: 11N chips don't support H2C queue
>       UBUNTU: SAUCE: rtw88: 8723d: implement set_tx_power_index ops
>       UBUNTU: SAUCE: rtw88: 8723d: Organize chip TX/RX FIFO
>       UBUNTU: SAUCE: rtw88: 8723d: initialize mac/bb/rf basic functions
>       UBUNTU: SAUCE: rtw88: 8723d: Add DIG parameter
>       UBUNTU: SAUCE: rtw88: 8723d: Add query_rx_desc
>       UBUNTU: SAUCE: rtw88: 8723d: Add set_channel
>       UBUNTU: SAUCE: rtw88: handle C2H_CCX_TX_RPT to know if packet TX'ed successfully
>       UBUNTU: SAUCE: rtw88: 8723d: 11N chips don't support LDPC
>       UBUNTU: SAUCE: rtw88: sar: add SAR of TX power limit
>       UBUNTU: SAUCE: rtw88: sar: Load static SAR table from ACPI WRDS method
>       UBUNTU: SAUCE: rtw88: sar: Load dynamic SAR table from ACPI methods
>       UBUNTU: SAUCE: rtw88: sar: apply dynamic SAR table to tx power limit
>       UBUNTU: SAUCE: rtw88: sar: add sar_work to poll if dynamic SAR table is changed
>       UBUNTU: SAUCE: rtw88: sar: dump sar information via debugfs
>       UBUNTU: SAUCE: rtw88: 8723d: Add chip_ops::false_alarm_statistics
>       UBUNTU: SAUCE: rtw88: 8723d: Set IG register for CCK rate
>       UBUNTU: SAUCE: rtw88: 8723d: add interface configurations table
>       UBUNTU: SAUCE: rtw88: 8723d: Add LC calibration
>       UBUNTU: SAUCE: rtw88: 8723d: add IQ calibration
>       UBUNTU: SAUCE: rtw88: 8723d: Add power tracking
>       UBUNTU: SAUCE: rtw88: 8723d: Add shutdown callback to disable BT USB suspend
>       UBUNTU: SAUCE: rtw88: 8723d: implement flush queue
>       UBUNTU: SAUCE: rtw88: 8723d: set ltecoex register address in chip_info
>       UBUNTU: SAUCE: rtw88: 8723d: Add coex support
>       UBUNTU: SAUCE: rtw88: fill zeros to words 0x06 and 0x07 of security cam entry
>       UBUNTU: SAUCE: rtw88: 8723d: Add 8723DE to Kconfig and Makefile
> 
> Tsang-Shian Lin (1):
>       rtw88: add phy_info debugfs to show Tx/Rx physical status
> 
> Tzu-En Huang (14):
>       rtw88: report tx rate to mac80211 stack
>       rtw88: config 8822c multicast address in MAC init flow
>       rtw88: add NL80211_EXT_FEATURE_CAN_REPLACE_PTK0 support
>       rtw88: add power tracking support
>       rtw88: Enable 802.11ac beamformee support
>       rtw88: add set_bitrate_mask support
>       rtw88: 8822c: update power sequence to v15
>       rtw88: remove unused spinlock
>       UBUNTU: SAUCE: rtw88: add regulatory process strategy for different chipset
>       UBUNTU: SAUCE: rtw88: support dynamic user regulatory setting
>       UBUNTU: SAUCE: rtw88: 8822c: update power sequence to v16
>       UBUNTU: SAUCE: rtw88: Fix incorrect beamformee role setting
>       UBUNTU: SAUCE: rtw88: add adaptivity support for EU/JP regulatory
>       UBUNTU: SAUCE: rtw88: update tx descriptor of mgmt and rsvd page packets
> 
> Yan-Hsuan Chuang (52):
>       rtw88: 8822c: fix boolreturn.cocci warnings
>       rtw88: remove redundant flag check helper function
>       rtw88: pci: reset H2C queue indexes in a single write
>       rtw88: not to enter or leave PS under IRQ
>       rtw88: not to control LPS by each vif
>       rtw88: remove unused lps state check helper
>       rtw88: LPS enter/leave should be protected by lock
>       rtw88: leave PS state for dynamic mechanism
>       rtw88: add deep power save support
>       rtw88: not to enter LPS by coex strategy
>       rtw88: select deep PS mode when module is inserted
>       rtw88: add deep PS PG mode for 8822c
>       rtw88: remove misleading module parameter rtw_fw_support_lps
>       rtw88: allows to set RTS in TX descriptor
>       rtw88: add driver TX queue support
>       rtw88: take over rate control from mac80211
>       rtw88: add TX-AMSDU support
>       rtw88: flush hardware tx queues
>       rtw88: configure TX queue EDCA parameters
>       rtw88: raise firmware version debug level
>       rtw88: Use rtw_write8_set to set SYS_FUNC
>       rtw88: pci: config phy after chip info is setup
>       rtw88: use macro to check the current band
>       rtw88: fix GENMASK_ULL for u64
>       rtw88: fix sparse warnings for DPK
>       rtw88: fix sparse warnings for power tracking
>       rtw88: 8822b: add RFE type 3 support
>       rtw88: use rtw_phy_pg_cfg_pair struct, not arrays
>       rtw88: rearrange if..else statements for rx rate indexes
>       rtw88: avoid FW info flood
>       rtw88: raise LPS threshold to 50, for less power consumption
>       rtw88: fix potential NULL pointer access for firmware
>       rtw88: pci: use macros to access PCI DBI/MDIO registers
>       rtw88: pci: use for loop instead of while loop for DBI/MDIO
>       rtw88: pci: enable CLKREQ function if host supports it
>       rtw88: allows to enable/disable HCI link PS mechanism
>       rtw88: add interface config for 8822c
>       rtw88: remove unused variable 'in_lps'
>       rtw88: remove unused vif pointer in struct rtw_vif
>       rtw88: assign NULL to skb after being kfree()'ed
>       rtw88: fix potential NULL skb access in TX ISR
>       rtw88: use shorter delay time to poll PS state
>       UBUNTU: SAUCE: rtw88: disable TX-AMSDU on 2.4G band
>       UBUNTU: SAUCE: Revert "rtw88: disable TX-AMSDU on 2.4G band"
>       UBUNTU: SAUCE: rtw88: disable TX-AMSDU on 2.4G band
>       UBUNTU: SAUCE: rtw88: remove unused parameter vif in rtw_lps_pg_info_get()
>       UBUNTU: SAUCE: rtw88: add rtw_read8_mask and rtw_read16_mask
>       UBUNTU: SAUCE: rtw88: pci: 8822c should set clock delay to zero
>       UBUNTU: SAUCE: rtw88: avoid holding mutex for cancel_delayed_work_sync()
>       UBUNTU: SAUCE: rtw88: extract alloc rsvd_page and h2c skb routines
>       UBUNTU: SAUCE: rtw88: associate reserved pages with each vif
>       UBUNTU: SAUCE: rtw88: set default port to firmware
> 
> YueHaibing (1):
>       rtw88: remove duplicated include from ps.c
> 
> Zong-Zhe Yang (1):
>       rtw88: change max_num_of_tx_queue() definition to inline in pci.h
> 
> zhengbin (1):
>       rtw88: use true,false for bool variable
> 
>  debian.master/config/annotations                   |    2 +
>  debian.master/config/config.common.ubuntu          |    2 +
>  drivers/net/wireless/ath/ath9k/htc_drv_main.c      |    2 +-
>  drivers/net/wireless/ath/ath9k/main.c              |    2 +-
>  drivers/net/wireless/ath/carl9170/main.c           |    3 +-
>  drivers/net/wireless/ath/wcn36xx/main.c            |    5 +-
>  .../broadcom/brcm80211/brcmsmac/mac80211_if.c      |    3 +-
>  drivers/net/wireless/intel/iwlegacy/4965-mac.c     |    2 +-
>  drivers/net/wireless/intel/iwlwifi/dvm/tx.c        |    2 +-
>  drivers/net/wireless/intel/iwlwifi/mvm/sta.c       |    5 +-
>  drivers/net/wireless/mac80211_hwsim.c              |    3 +-
>  drivers/net/wireless/marvell/mwl8k.c               |    2 +-
>  drivers/net/wireless/mediatek/mt76/mt7603/main.c   |    3 +-
>  drivers/net/wireless/mediatek/mt76/mt7615/main.c   |    3 +-
>  drivers/net/wireless/mediatek/mt76/mt76x02_util.c  |    3 +-
>  drivers/net/wireless/mediatek/mt7601u/main.c       |    3 +-
>  drivers/net/wireless/ralink/rt2x00/rt2800lib.c     |    4 +-
>  drivers/net/wireless/realtek/rtlwifi/base.c        |    3 +-
>  drivers/net/wireless/realtek/rtw88/Kconfig         |   20 +
>  drivers/net/wireless/realtek/rtw88/Makefile        |    4 +
>  drivers/net/wireless/realtek/rtw88/bf.c            |  397 +++
>  drivers/net/wireless/realtek/rtw88/bf.h            |  114 +
>  drivers/net/wireless/realtek/rtw88/coex.c          |   17 +-
>  drivers/net/wireless/realtek/rtw88/debug.c         |  225 +-
>  drivers/net/wireless/realtek/rtw88/debug.h         |    3 +
>  drivers/net/wireless/realtek/rtw88/efuse.c         |    4 +
>  drivers/net/wireless/realtek/rtw88/fw.c            |  852 +++++-
>  drivers/net/wireless/realtek/rtw88/fw.h            |  323 ++-
>  drivers/net/wireless/realtek/rtw88/hci.h           |   44 +
>  drivers/net/wireless/realtek/rtw88/mac.c           |  546 +++-
>  drivers/net/wireless/realtek/rtw88/mac.h           |    7 +
>  drivers/net/wireless/realtek/rtw88/mac80211.c      |  357 ++-
>  drivers/net/wireless/realtek/rtw88/main.c          |  471 +++-
>  drivers/net/wireless/realtek/rtw88/main.h          |  459 +++-
>  drivers/net/wireless/realtek/rtw88/pci.c           |  421 ++-
>  drivers/net/wireless/realtek/rtw88/pci.h           |   23 +-
>  drivers/net/wireless/realtek/rtw88/phy.c           |  462 +++-
>  drivers/net/wireless/realtek/rtw88/phy.h           |   33 +
>  drivers/net/wireless/realtek/rtw88/ps.c            |  191 +-
>  drivers/net/wireless/realtek/rtw88/ps.h            |   18 +-
>  drivers/net/wireless/realtek/rtw88/reg.h           |  146 ++
>  drivers/net/wireless/realtek/rtw88/regd.c          |   63 +-
>  drivers/net/wireless/realtek/rtw88/rtw8723d.c      | 2762 ++++++++++++++++++++
>  drivers/net/wireless/realtek/rtw88/rtw8723d.h      |  245 ++
>  .../net/wireless/realtek/rtw88/rtw8723d_table.c    | 1196 +++++++++
>  .../net/wireless/realtek/rtw88/rtw8723d_table.h    |   15 +
>  drivers/net/wireless/realtek/rtw88/rtw8822b.c      |  540 +++-
>  drivers/net/wireless/realtek/rtw88/rtw8822b.h      |   18 +
>  .../net/wireless/realtek/rtw88/rtw8822b_table.c    |  829 +++++-
>  .../net/wireless/realtek/rtw88/rtw8822b_table.h    |    2 +
>  drivers/net/wireless/realtek/rtw88/rtw8822c.c      |  491 +++-
>  drivers/net/wireless/realtek/rtw88/rtw8822c.h      |   19 +
>  .../net/wireless/realtek/rtw88/rtw8822c_table.c    |   94 +-
>  drivers/net/wireless/realtek/rtw88/rx.c            |  101 +-
>  drivers/net/wireless/realtek/rtw88/rx.h            |   11 +
>  drivers/net/wireless/realtek/rtw88/sar.c           |  778 ++++++
>  drivers/net/wireless/realtek/rtw88/sar.h           |   15 +
>  drivers/net/wireless/realtek/rtw88/sec.c           |   27 +-
>  drivers/net/wireless/realtek/rtw88/sec.h           |    1 +
>  drivers/net/wireless/realtek/rtw88/tx.c            |  310 ++-
>  drivers/net/wireless/realtek/rtw88/tx.h            |   39 +-
>  drivers/net/wireless/realtek/rtw88/util.c          |   45 +-
>  drivers/net/wireless/realtek/rtw88/util.h          |    2 +
>  drivers/net/wireless/realtek/rtw88/wow.c           |  882 +++++++
>  drivers/net/wireless/realtek/rtw88/wow.h           |   58 +
>  drivers/net/wireless/rsi/rsi_91x_mac80211.c        |    3 +-
>  include/net/mac80211.h                             |   11 +-
>  net/mac80211/agg-tx.c                              |    9 +-
>  68 files changed, 12865 insertions(+), 890 deletions(-)
>  create mode 100644 drivers/net/wireless/realtek/rtw88/bf.c
>  create mode 100644 drivers/net/wireless/realtek/rtw88/bf.h
>  create mode 100644 drivers/net/wireless/realtek/rtw88/rtw8723d.c
>  create mode 100644 drivers/net/wireless/realtek/rtw88/rtw8723d.h
>  create mode 100644 drivers/net/wireless/realtek/rtw88/rtw8723d_table.c
>  create mode 100644 drivers/net/wireless/realtek/rtw88/rtw8723d_table.h
>  create mode 100644 drivers/net/wireless/realtek/rtw88/sar.c
>  create mode 100644 drivers/net/wireless/realtek/rtw88/sar.h
>  create mode 100644 drivers/net/wireless/realtek/rtw88/wow.c
>  create mode 100644 drivers/net/wireless/realtek/rtw88/wow.h
> 

This should probably be added for the unstable tree as well?
Timo Aaltonen Feb. 19, 2020, 4:28 p.m. UTC | #2
On 19.2.2020 18.26, Timo Aaltonen wrote:
> On 19.2.2020 16.53, Kai-Heng Feng wrote:
>> BugLink: https://bugs.launchpad.net/bugs/1780590
>>
>> [Impact]
>> There's no in-kernel support for Realtek 8723DE, so users need to use
>> out-of-tree DKMS which is not from Ubuntu archive. This has security
>> implication and should be avoided. Also this provides pretty bad user
>> experience.
>>
>> [Fix]
>> Add support to Realtek 8723DE.
>> All commits are cherry-picked from Realtek maintained repo:
>> https://github.com/rtlwifi-linux/rtw88_8723de
>>
>> [Test]
>> With the patch series applied, 8723DE can scan and connect to APs
>> succesfully. Also did some S3 smoke test, it continues to work.
>>
>> [Regression Potential]
>> Low. The device in question was never supported, and if there's any
>> regression, we can count on Realtek Wireless team, thy are now pretty
>> responsive on upstream mailing list.
>>
>> [Pull]
>> The following changes since commit 0efe88b03bdc64cef646c9ea785c464a3f4952dd:
>>
>>   UBUNTU: Ubuntu-5.4-5.4.0-15.18 (2020-02-18 12:19:31 +0100)
>>
>> are available in the Git repository at:
>>
>>   https://git.launchpad.net/~kaihengfeng/linux lp1780590-focal
>>
>> for you to fetch changes up to 1fe3af62dbee1784cfd23e7d755186ee2fc542b6:
>>
>>   UBUNTU: [Config] CONFIG_RTW88_8723DE=y (2020-02-19 19:50:47 +0800)
>>
>> ----------------------------------------------------------------
>> Brian Norris (5):
>>       rtw88: use a for loop in rtw_power_mode_change(), not goto
>>       rtw88: include interrupt.h for tasklet_struct
>>       rtw88: mark rtw_fw_hdr __packed
>>       rtw88: signal completion even on firmware-request failure
>>       UBUNTU: SAUCE: rtw88: don't hold all IRQs disabled for PS operations
>>
>> Chien-Hsun Liao (1):
>>       UBUNTU: SAUCE: rtw88: 8822c: modify rf protection setting
>>
>> Chin-Yen Lee (9):
>>       rtw88: check firmware leave lps successfully
>>       rtw88: pci: reset ring index when release skbs in tx ring
>>       rtw88: pci: reset dma when reset pci trx ring
>>       rtw88: load wowlan firmware if wowlan is supported
>>       rtw88: support wowlan feature for 8822c
>>       rtw88: Add wowlan pattern match support
>>       rtw88: Add wowlan net-detect support
>>       rtw88: use rtw_hci_stop() instead of rtwdev->hci.ops->stop()
>>       rtw88: Fix return value of rtw_wow_check_fw_status
>>
>> Colin Ian King (1):
>>       rtw88: remove redundant null pointer check on arrays
>>
>> Dan Carpenter (1):
>>       rtw88: Fix an error message
>>
>> Johannes Berg (1):
>>       mac80211: simplify TX aggregation start
>>
>> Kai-Heng Feng (1):
>>       UBUNTU: [Config] CONFIG_RTW88_8723DE=y
>>
>> Ping-Ke Shih (46):
>>       rtw88: Don't set RX_FLAG_DECRYPTED if packet has no encryption
>>       rtw88: use struct rtw_fw_hdr to access firmware header
>>       rtw88: fix rate mask for 1SS chip
>>       rtw88: fix TX secondary channel offset of 40M if current bw is 20M or 40M
>>       UBUNTU: SAUCE: rtw88: Use secondary channel offset enumeration
>>       UBUNTU: SAUCE: rtw88: move rtw_enter_ips() to the last when config
>>       UBUNTU: SAUCE: rtw88: add ciphers to suppress error message
>>       UBUNTU: SAUCE: rtw88: 8723d: Add basic chip capabilities
>>       UBUNTU: SAUCE: rtw88: 8723d: add beamform wrapper functions
>>       UBUNTU: SAUCE: rtw88: 8723d: Add power sequence
>>       UBUNTU: SAUCE: rtw88: 8723d: Add RF read/write ops
>>       UBUNTU: SAUCE: rtw88: 8723d: Add mac/bb/rf/agc/power_limit tables
>>       UBUNTU: SAUCE: rtw88: 8723d: Add cfg_ldo25 to control LDO25
>>       UBUNTU: SAUCE: rtw88: 8723d: Add new chip op efuse_grant() to control efuse access
>>       UBUNTU: SAUCE: rtw88: 8723d: Add read_efuse to recognize efuse info from map
>>       UBUNTU: SAUCE: rtw88: add legacy firmware download for 8723D devices
>>       UBUNTU: SAUCE: rtw88: no need to send additional information to legacy firmware
>>       UBUNTU: SAUCE: rtw88: 8723d: Add mac power-on/-off function
>>       UBUNTU: SAUCE: rtw88: decompose while(1) loop of power sequence polling command
>>       UBUNTU: SAUCE: rtw88: 8723d: 11N chips don't support H2C queue
>>       UBUNTU: SAUCE: rtw88: 8723d: implement set_tx_power_index ops
>>       UBUNTU: SAUCE: rtw88: 8723d: Organize chip TX/RX FIFO
>>       UBUNTU: SAUCE: rtw88: 8723d: initialize mac/bb/rf basic functions
>>       UBUNTU: SAUCE: rtw88: 8723d: Add DIG parameter
>>       UBUNTU: SAUCE: rtw88: 8723d: Add query_rx_desc
>>       UBUNTU: SAUCE: rtw88: 8723d: Add set_channel
>>       UBUNTU: SAUCE: rtw88: handle C2H_CCX_TX_RPT to know if packet TX'ed successfully
>>       UBUNTU: SAUCE: rtw88: 8723d: 11N chips don't support LDPC
>>       UBUNTU: SAUCE: rtw88: sar: add SAR of TX power limit
>>       UBUNTU: SAUCE: rtw88: sar: Load static SAR table from ACPI WRDS method
>>       UBUNTU: SAUCE: rtw88: sar: Load dynamic SAR table from ACPI methods
>>       UBUNTU: SAUCE: rtw88: sar: apply dynamic SAR table to tx power limit
>>       UBUNTU: SAUCE: rtw88: sar: add sar_work to poll if dynamic SAR table is changed
>>       UBUNTU: SAUCE: rtw88: sar: dump sar information via debugfs
>>       UBUNTU: SAUCE: rtw88: 8723d: Add chip_ops::false_alarm_statistics
>>       UBUNTU: SAUCE: rtw88: 8723d: Set IG register for CCK rate
>>       UBUNTU: SAUCE: rtw88: 8723d: add interface configurations table
>>       UBUNTU: SAUCE: rtw88: 8723d: Add LC calibration
>>       UBUNTU: SAUCE: rtw88: 8723d: add IQ calibration
>>       UBUNTU: SAUCE: rtw88: 8723d: Add power tracking
>>       UBUNTU: SAUCE: rtw88: 8723d: Add shutdown callback to disable BT USB suspend
>>       UBUNTU: SAUCE: rtw88: 8723d: implement flush queue
>>       UBUNTU: SAUCE: rtw88: 8723d: set ltecoex register address in chip_info
>>       UBUNTU: SAUCE: rtw88: 8723d: Add coex support
>>       UBUNTU: SAUCE: rtw88: fill zeros to words 0x06 and 0x07 of security cam entry
>>       UBUNTU: SAUCE: rtw88: 8723d: Add 8723DE to Kconfig and Makefile
>>
>> Tsang-Shian Lin (1):
>>       rtw88: add phy_info debugfs to show Tx/Rx physical status
>>
>> Tzu-En Huang (14):
>>       rtw88: report tx rate to mac80211 stack
>>       rtw88: config 8822c multicast address in MAC init flow
>>       rtw88: add NL80211_EXT_FEATURE_CAN_REPLACE_PTK0 support
>>       rtw88: add power tracking support
>>       rtw88: Enable 802.11ac beamformee support
>>       rtw88: add set_bitrate_mask support
>>       rtw88: 8822c: update power sequence to v15
>>       rtw88: remove unused spinlock
>>       UBUNTU: SAUCE: rtw88: add regulatory process strategy for different chipset
>>       UBUNTU: SAUCE: rtw88: support dynamic user regulatory setting
>>       UBUNTU: SAUCE: rtw88: 8822c: update power sequence to v16
>>       UBUNTU: SAUCE: rtw88: Fix incorrect beamformee role setting
>>       UBUNTU: SAUCE: rtw88: add adaptivity support for EU/JP regulatory
>>       UBUNTU: SAUCE: rtw88: update tx descriptor of mgmt and rsvd page packets
>>
>> Yan-Hsuan Chuang (52):
>>       rtw88: 8822c: fix boolreturn.cocci warnings
>>       rtw88: remove redundant flag check helper function
>>       rtw88: pci: reset H2C queue indexes in a single write
>>       rtw88: not to enter or leave PS under IRQ
>>       rtw88: not to control LPS by each vif
>>       rtw88: remove unused lps state check helper
>>       rtw88: LPS enter/leave should be protected by lock
>>       rtw88: leave PS state for dynamic mechanism
>>       rtw88: add deep power save support
>>       rtw88: not to enter LPS by coex strategy
>>       rtw88: select deep PS mode when module is inserted
>>       rtw88: add deep PS PG mode for 8822c
>>       rtw88: remove misleading module parameter rtw_fw_support_lps
>>       rtw88: allows to set RTS in TX descriptor
>>       rtw88: add driver TX queue support
>>       rtw88: take over rate control from mac80211
>>       rtw88: add TX-AMSDU support
>>       rtw88: flush hardware tx queues
>>       rtw88: configure TX queue EDCA parameters
>>       rtw88: raise firmware version debug level
>>       rtw88: Use rtw_write8_set to set SYS_FUNC
>>       rtw88: pci: config phy after chip info is setup
>>       rtw88: use macro to check the current band
>>       rtw88: fix GENMASK_ULL for u64
>>       rtw88: fix sparse warnings for DPK
>>       rtw88: fix sparse warnings for power tracking
>>       rtw88: 8822b: add RFE type 3 support
>>       rtw88: use rtw_phy_pg_cfg_pair struct, not arrays
>>       rtw88: rearrange if..else statements for rx rate indexes
>>       rtw88: avoid FW info flood
>>       rtw88: raise LPS threshold to 50, for less power consumption
>>       rtw88: fix potential NULL pointer access for firmware
>>       rtw88: pci: use macros to access PCI DBI/MDIO registers
>>       rtw88: pci: use for loop instead of while loop for DBI/MDIO
>>       rtw88: pci: enable CLKREQ function if host supports it
>>       rtw88: allows to enable/disable HCI link PS mechanism
>>       rtw88: add interface config for 8822c
>>       rtw88: remove unused variable 'in_lps'
>>       rtw88: remove unused vif pointer in struct rtw_vif
>>       rtw88: assign NULL to skb after being kfree()'ed
>>       rtw88: fix potential NULL skb access in TX ISR
>>       rtw88: use shorter delay time to poll PS state
>>       UBUNTU: SAUCE: rtw88: disable TX-AMSDU on 2.4G band
>>       UBUNTU: SAUCE: Revert "rtw88: disable TX-AMSDU on 2.4G band"
>>       UBUNTU: SAUCE: rtw88: disable TX-AMSDU on 2.4G band
>>       UBUNTU: SAUCE: rtw88: remove unused parameter vif in rtw_lps_pg_info_get()
>>       UBUNTU: SAUCE: rtw88: add rtw_read8_mask and rtw_read16_mask
>>       UBUNTU: SAUCE: rtw88: pci: 8822c should set clock delay to zero
>>       UBUNTU: SAUCE: rtw88: avoid holding mutex for cancel_delayed_work_sync()
>>       UBUNTU: SAUCE: rtw88: extract alloc rsvd_page and h2c skb routines
>>       UBUNTU: SAUCE: rtw88: associate reserved pages with each vif
>>       UBUNTU: SAUCE: rtw88: set default port to firmware
>>
>> YueHaibing (1):
>>       rtw88: remove duplicated include from ps.c
>>
>> Zong-Zhe Yang (1):
>>       rtw88: change max_num_of_tx_queue() definition to inline in pci.h
>>
>> zhengbin (1):
>>       rtw88: use true,false for bool variable
>>
>>  debian.master/config/annotations                   |    2 +
>>  debian.master/config/config.common.ubuntu          |    2 +
>>  drivers/net/wireless/ath/ath9k/htc_drv_main.c      |    2 +-
>>  drivers/net/wireless/ath/ath9k/main.c              |    2 +-
>>  drivers/net/wireless/ath/carl9170/main.c           |    3 +-
>>  drivers/net/wireless/ath/wcn36xx/main.c            |    5 +-
>>  .../broadcom/brcm80211/brcmsmac/mac80211_if.c      |    3 +-
>>  drivers/net/wireless/intel/iwlegacy/4965-mac.c     |    2 +-
>>  drivers/net/wireless/intel/iwlwifi/dvm/tx.c        |    2 +-
>>  drivers/net/wireless/intel/iwlwifi/mvm/sta.c       |    5 +-
>>  drivers/net/wireless/mac80211_hwsim.c              |    3 +-
>>  drivers/net/wireless/marvell/mwl8k.c               |    2 +-
>>  drivers/net/wireless/mediatek/mt76/mt7603/main.c   |    3 +-
>>  drivers/net/wireless/mediatek/mt76/mt7615/main.c   |    3 +-
>>  drivers/net/wireless/mediatek/mt76/mt76x02_util.c  |    3 +-
>>  drivers/net/wireless/mediatek/mt7601u/main.c       |    3 +-
>>  drivers/net/wireless/ralink/rt2x00/rt2800lib.c     |    4 +-
>>  drivers/net/wireless/realtek/rtlwifi/base.c        |    3 +-
>>  drivers/net/wireless/realtek/rtw88/Kconfig         |   20 +
>>  drivers/net/wireless/realtek/rtw88/Makefile        |    4 +
>>  drivers/net/wireless/realtek/rtw88/bf.c            |  397 +++
>>  drivers/net/wireless/realtek/rtw88/bf.h            |  114 +
>>  drivers/net/wireless/realtek/rtw88/coex.c          |   17 +-
>>  drivers/net/wireless/realtek/rtw88/debug.c         |  225 +-
>>  drivers/net/wireless/realtek/rtw88/debug.h         |    3 +
>>  drivers/net/wireless/realtek/rtw88/efuse.c         |    4 +
>>  drivers/net/wireless/realtek/rtw88/fw.c            |  852 +++++-
>>  drivers/net/wireless/realtek/rtw88/fw.h            |  323 ++-
>>  drivers/net/wireless/realtek/rtw88/hci.h           |   44 +
>>  drivers/net/wireless/realtek/rtw88/mac.c           |  546 +++-
>>  drivers/net/wireless/realtek/rtw88/mac.h           |    7 +
>>  drivers/net/wireless/realtek/rtw88/mac80211.c      |  357 ++-
>>  drivers/net/wireless/realtek/rtw88/main.c          |  471 +++-
>>  drivers/net/wireless/realtek/rtw88/main.h          |  459 +++-
>>  drivers/net/wireless/realtek/rtw88/pci.c           |  421 ++-
>>  drivers/net/wireless/realtek/rtw88/pci.h           |   23 +-
>>  drivers/net/wireless/realtek/rtw88/phy.c           |  462 +++-
>>  drivers/net/wireless/realtek/rtw88/phy.h           |   33 +
>>  drivers/net/wireless/realtek/rtw88/ps.c            |  191 +-
>>  drivers/net/wireless/realtek/rtw88/ps.h            |   18 +-
>>  drivers/net/wireless/realtek/rtw88/reg.h           |  146 ++
>>  drivers/net/wireless/realtek/rtw88/regd.c          |   63 +-
>>  drivers/net/wireless/realtek/rtw88/rtw8723d.c      | 2762 ++++++++++++++++++++
>>  drivers/net/wireless/realtek/rtw88/rtw8723d.h      |  245 ++
>>  .../net/wireless/realtek/rtw88/rtw8723d_table.c    | 1196 +++++++++
>>  .../net/wireless/realtek/rtw88/rtw8723d_table.h    |   15 +
>>  drivers/net/wireless/realtek/rtw88/rtw8822b.c      |  540 +++-
>>  drivers/net/wireless/realtek/rtw88/rtw8822b.h      |   18 +
>>  .../net/wireless/realtek/rtw88/rtw8822b_table.c    |  829 +++++-
>>  .../net/wireless/realtek/rtw88/rtw8822b_table.h    |    2 +
>>  drivers/net/wireless/realtek/rtw88/rtw8822c.c      |  491 +++-
>>  drivers/net/wireless/realtek/rtw88/rtw8822c.h      |   19 +
>>  .../net/wireless/realtek/rtw88/rtw8822c_table.c    |   94 +-
>>  drivers/net/wireless/realtek/rtw88/rx.c            |  101 +-
>>  drivers/net/wireless/realtek/rtw88/rx.h            |   11 +
>>  drivers/net/wireless/realtek/rtw88/sar.c           |  778 ++++++
>>  drivers/net/wireless/realtek/rtw88/sar.h           |   15 +
>>  drivers/net/wireless/realtek/rtw88/sec.c           |   27 +-
>>  drivers/net/wireless/realtek/rtw88/sec.h           |    1 +
>>  drivers/net/wireless/realtek/rtw88/tx.c            |  310 ++-
>>  drivers/net/wireless/realtek/rtw88/tx.h            |   39 +-
>>  drivers/net/wireless/realtek/rtw88/util.c          |   45 +-
>>  drivers/net/wireless/realtek/rtw88/util.h          |    2 +
>>  drivers/net/wireless/realtek/rtw88/wow.c           |  882 +++++++
>>  drivers/net/wireless/realtek/rtw88/wow.h           |   58 +
>>  drivers/net/wireless/rsi/rsi_91x_mac80211.c        |    3 +-
>>  include/net/mac80211.h                             |   11 +-
>>  net/mac80211/agg-tx.c                              |    9 +-
>>  68 files changed, 12865 insertions(+), 890 deletions(-)
>>  create mode 100644 drivers/net/wireless/realtek/rtw88/bf.c
>>  create mode 100644 drivers/net/wireless/realtek/rtw88/bf.h
>>  create mode 100644 drivers/net/wireless/realtek/rtw88/rtw8723d.c
>>  create mode 100644 drivers/net/wireless/realtek/rtw88/rtw8723d.h
>>  create mode 100644 drivers/net/wireless/realtek/rtw88/rtw8723d_table.c
>>  create mode 100644 drivers/net/wireless/realtek/rtw88/rtw8723d_table.h
>>  create mode 100644 drivers/net/wireless/realtek/rtw88/sar.c
>>  create mode 100644 drivers/net/wireless/realtek/rtw88/sar.h
>>  create mode 100644 drivers/net/wireless/realtek/rtw88/wow.c
>>  create mode 100644 drivers/net/wireless/realtek/rtw88/wow.h
>>
> 
> This should probably be added for the unstable tree as well?

..point being that it'd then automatically end up in oem-5.6.
Kai-Heng Feng Feb. 20, 2020, 6:03 a.m. UTC | #3
> On Feb 20, 2020, at 00:28, Timo Aaltonen <tjaalton@ubuntu.com> wrote:
> 
> On 19.2.2020 18.26, Timo Aaltonen wrote:
>> On 19.2.2020 16.53, Kai-Heng Feng wrote:
>>> BugLink: https://bugs.launchpad.net/bugs/1780590
>>> 
>>> [Impact]
>>> There's no in-kernel support for Realtek 8723DE, so users need to use
>>> out-of-tree DKMS which is not from Ubuntu archive. This has security
>>> implication and should be avoided. Also this provides pretty bad user
>>> experience.
>>> 
>>> [Fix]
>>> Add support to Realtek 8723DE.
>>> All commits are cherry-picked from Realtek maintained repo:
>>> https://github.com/rtlwifi-linux/rtw88_8723de
>>> 
>>> [Test]
>>> With the patch series applied, 8723DE can scan and connect to APs
>>> succesfully. Also did some S3 smoke test, it continues to work.
>>> 
>>> [Regression Potential]
>>> Low. The device in question was never supported, and if there's any
>>> regression, we can count on Realtek Wireless team, thy are now pretty
>>> responsive on upstream mailing list.
>>> 
>>> [Pull]
>>> The following changes since commit 0efe88b03bdc64cef646c9ea785c464a3f4952dd:
>>> 
>>>  UBUNTU: Ubuntu-5.4-5.4.0-15.18 (2020-02-18 12:19:31 +0100)
>>> 
>>> are available in the Git repository at:
>>> 
>>>  https://git.launchpad.net/~kaihengfeng/linux lp1780590-focal
>>> 
>>> for you to fetch changes up to 1fe3af62dbee1784cfd23e7d755186ee2fc542b6:
>>> 
>>>  UBUNTU: [Config] CONFIG_RTW88_8723DE=y (2020-02-19 19:50:47 +0800)
>>> 
>>> ----------------------------------------------------------------
>>> Brian Norris (5):
>>>      rtw88: use a for loop in rtw_power_mode_change(), not goto
>>>      rtw88: include interrupt.h for tasklet_struct
>>>      rtw88: mark rtw_fw_hdr __packed
>>>      rtw88: signal completion even on firmware-request failure
>>>      UBUNTU: SAUCE: rtw88: don't hold all IRQs disabled for PS operations
>>> 
>>> Chien-Hsun Liao (1):
>>>      UBUNTU: SAUCE: rtw88: 8822c: modify rf protection setting
>>> 
>>> Chin-Yen Lee (9):
>>>      rtw88: check firmware leave lps successfully
>>>      rtw88: pci: reset ring index when release skbs in tx ring
>>>      rtw88: pci: reset dma when reset pci trx ring
>>>      rtw88: load wowlan firmware if wowlan is supported
>>>      rtw88: support wowlan feature for 8822c
>>>      rtw88: Add wowlan pattern match support
>>>      rtw88: Add wowlan net-detect support
>>>      rtw88: use rtw_hci_stop() instead of rtwdev->hci.ops->stop()
>>>      rtw88: Fix return value of rtw_wow_check_fw_status
>>> 
>>> Colin Ian King (1):
>>>      rtw88: remove redundant null pointer check on arrays
>>> 
>>> Dan Carpenter (1):
>>>      rtw88: Fix an error message
>>> 
>>> Johannes Berg (1):
>>>      mac80211: simplify TX aggregation start
>>> 
>>> Kai-Heng Feng (1):
>>>      UBUNTU: [Config] CONFIG_RTW88_8723DE=y
>>> 
>>> Ping-Ke Shih (46):
>>>      rtw88: Don't set RX_FLAG_DECRYPTED if packet has no encryption
>>>      rtw88: use struct rtw_fw_hdr to access firmware header
>>>      rtw88: fix rate mask for 1SS chip
>>>      rtw88: fix TX secondary channel offset of 40M if current bw is 20M or 40M
>>>      UBUNTU: SAUCE: rtw88: Use secondary channel offset enumeration
>>>      UBUNTU: SAUCE: rtw88: move rtw_enter_ips() to the last when config
>>>      UBUNTU: SAUCE: rtw88: add ciphers to suppress error message
>>>      UBUNTU: SAUCE: rtw88: 8723d: Add basic chip capabilities
>>>      UBUNTU: SAUCE: rtw88: 8723d: add beamform wrapper functions
>>>      UBUNTU: SAUCE: rtw88: 8723d: Add power sequence
>>>      UBUNTU: SAUCE: rtw88: 8723d: Add RF read/write ops
>>>      UBUNTU: SAUCE: rtw88: 8723d: Add mac/bb/rf/agc/power_limit tables
>>>      UBUNTU: SAUCE: rtw88: 8723d: Add cfg_ldo25 to control LDO25
>>>      UBUNTU: SAUCE: rtw88: 8723d: Add new chip op efuse_grant() to control efuse access
>>>      UBUNTU: SAUCE: rtw88: 8723d: Add read_efuse to recognize efuse info from map
>>>      UBUNTU: SAUCE: rtw88: add legacy firmware download for 8723D devices
>>>      UBUNTU: SAUCE: rtw88: no need to send additional information to legacy firmware
>>>      UBUNTU: SAUCE: rtw88: 8723d: Add mac power-on/-off function
>>>      UBUNTU: SAUCE: rtw88: decompose while(1) loop of power sequence polling command
>>>      UBUNTU: SAUCE: rtw88: 8723d: 11N chips don't support H2C queue
>>>      UBUNTU: SAUCE: rtw88: 8723d: implement set_tx_power_index ops
>>>      UBUNTU: SAUCE: rtw88: 8723d: Organize chip TX/RX FIFO
>>>      UBUNTU: SAUCE: rtw88: 8723d: initialize mac/bb/rf basic functions
>>>      UBUNTU: SAUCE: rtw88: 8723d: Add DIG parameter
>>>      UBUNTU: SAUCE: rtw88: 8723d: Add query_rx_desc
>>>      UBUNTU: SAUCE: rtw88: 8723d: Add set_channel
>>>      UBUNTU: SAUCE: rtw88: handle C2H_CCX_TX_RPT to know if packet TX'ed successfully
>>>      UBUNTU: SAUCE: rtw88: 8723d: 11N chips don't support LDPC
>>>      UBUNTU: SAUCE: rtw88: sar: add SAR of TX power limit
>>>      UBUNTU: SAUCE: rtw88: sar: Load static SAR table from ACPI WRDS method
>>>      UBUNTU: SAUCE: rtw88: sar: Load dynamic SAR table from ACPI methods
>>>      UBUNTU: SAUCE: rtw88: sar: apply dynamic SAR table to tx power limit
>>>      UBUNTU: SAUCE: rtw88: sar: add sar_work to poll if dynamic SAR table is changed
>>>      UBUNTU: SAUCE: rtw88: sar: dump sar information via debugfs
>>>      UBUNTU: SAUCE: rtw88: 8723d: Add chip_ops::false_alarm_statistics
>>>      UBUNTU: SAUCE: rtw88: 8723d: Set IG register for CCK rate
>>>      UBUNTU: SAUCE: rtw88: 8723d: add interface configurations table
>>>      UBUNTU: SAUCE: rtw88: 8723d: Add LC calibration
>>>      UBUNTU: SAUCE: rtw88: 8723d: add IQ calibration
>>>      UBUNTU: SAUCE: rtw88: 8723d: Add power tracking
>>>      UBUNTU: SAUCE: rtw88: 8723d: Add shutdown callback to disable BT USB suspend
>>>      UBUNTU: SAUCE: rtw88: 8723d: implement flush queue
>>>      UBUNTU: SAUCE: rtw88: 8723d: set ltecoex register address in chip_info
>>>      UBUNTU: SAUCE: rtw88: 8723d: Add coex support
>>>      UBUNTU: SAUCE: rtw88: fill zeros to words 0x06 and 0x07 of security cam entry
>>>      UBUNTU: SAUCE: rtw88: 8723d: Add 8723DE to Kconfig and Makefile
>>> 
>>> Tsang-Shian Lin (1):
>>>      rtw88: add phy_info debugfs to show Tx/Rx physical status
>>> 
>>> Tzu-En Huang (14):
>>>      rtw88: report tx rate to mac80211 stack
>>>      rtw88: config 8822c multicast address in MAC init flow
>>>      rtw88: add NL80211_EXT_FEATURE_CAN_REPLACE_PTK0 support
>>>      rtw88: add power tracking support
>>>      rtw88: Enable 802.11ac beamformee support
>>>      rtw88: add set_bitrate_mask support
>>>      rtw88: 8822c: update power sequence to v15
>>>      rtw88: remove unused spinlock
>>>      UBUNTU: SAUCE: rtw88: add regulatory process strategy for different chipset
>>>      UBUNTU: SAUCE: rtw88: support dynamic user regulatory setting
>>>      UBUNTU: SAUCE: rtw88: 8822c: update power sequence to v16
>>>      UBUNTU: SAUCE: rtw88: Fix incorrect beamformee role setting
>>>      UBUNTU: SAUCE: rtw88: add adaptivity support for EU/JP regulatory
>>>      UBUNTU: SAUCE: rtw88: update tx descriptor of mgmt and rsvd page packets
>>> 
>>> Yan-Hsuan Chuang (52):
>>>      rtw88: 8822c: fix boolreturn.cocci warnings
>>>      rtw88: remove redundant flag check helper function
>>>      rtw88: pci: reset H2C queue indexes in a single write
>>>      rtw88: not to enter or leave PS under IRQ
>>>      rtw88: not to control LPS by each vif
>>>      rtw88: remove unused lps state check helper
>>>      rtw88: LPS enter/leave should be protected by lock
>>>      rtw88: leave PS state for dynamic mechanism
>>>      rtw88: add deep power save support
>>>      rtw88: not to enter LPS by coex strategy
>>>      rtw88: select deep PS mode when module is inserted
>>>      rtw88: add deep PS PG mode for 8822c
>>>      rtw88: remove misleading module parameter rtw_fw_support_lps
>>>      rtw88: allows to set RTS in TX descriptor
>>>      rtw88: add driver TX queue support
>>>      rtw88: take over rate control from mac80211
>>>      rtw88: add TX-AMSDU support
>>>      rtw88: flush hardware tx queues
>>>      rtw88: configure TX queue EDCA parameters
>>>      rtw88: raise firmware version debug level
>>>      rtw88: Use rtw_write8_set to set SYS_FUNC
>>>      rtw88: pci: config phy after chip info is setup
>>>      rtw88: use macro to check the current band
>>>      rtw88: fix GENMASK_ULL for u64
>>>      rtw88: fix sparse warnings for DPK
>>>      rtw88: fix sparse warnings for power tracking
>>>      rtw88: 8822b: add RFE type 3 support
>>>      rtw88: use rtw_phy_pg_cfg_pair struct, not arrays
>>>      rtw88: rearrange if..else statements for rx rate indexes
>>>      rtw88: avoid FW info flood
>>>      rtw88: raise LPS threshold to 50, for less power consumption
>>>      rtw88: fix potential NULL pointer access for firmware
>>>      rtw88: pci: use macros to access PCI DBI/MDIO registers
>>>      rtw88: pci: use for loop instead of while loop for DBI/MDIO
>>>      rtw88: pci: enable CLKREQ function if host supports it
>>>      rtw88: allows to enable/disable HCI link PS mechanism
>>>      rtw88: add interface config for 8822c
>>>      rtw88: remove unused variable 'in_lps'
>>>      rtw88: remove unused vif pointer in struct rtw_vif
>>>      rtw88: assign NULL to skb after being kfree()'ed
>>>      rtw88: fix potential NULL skb access in TX ISR
>>>      rtw88: use shorter delay time to poll PS state
>>>      UBUNTU: SAUCE: rtw88: disable TX-AMSDU on 2.4G band
>>>      UBUNTU: SAUCE: Revert "rtw88: disable TX-AMSDU on 2.4G band"
>>>      UBUNTU: SAUCE: rtw88: disable TX-AMSDU on 2.4G band
>>>      UBUNTU: SAUCE: rtw88: remove unused parameter vif in rtw_lps_pg_info_get()
>>>      UBUNTU: SAUCE: rtw88: add rtw_read8_mask and rtw_read16_mask
>>>      UBUNTU: SAUCE: rtw88: pci: 8822c should set clock delay to zero
>>>      UBUNTU: SAUCE: rtw88: avoid holding mutex for cancel_delayed_work_sync()
>>>      UBUNTU: SAUCE: rtw88: extract alloc rsvd_page and h2c skb routines
>>>      UBUNTU: SAUCE: rtw88: associate reserved pages with each vif
>>>      UBUNTU: SAUCE: rtw88: set default port to firmware
>>> 
>>> YueHaibing (1):
>>>      rtw88: remove duplicated include from ps.c
>>> 
>>> Zong-Zhe Yang (1):
>>>      rtw88: change max_num_of_tx_queue() definition to inline in pci.h
>>> 
>>> zhengbin (1):
>>>      rtw88: use true,false for bool variable
>>> 
>>> debian.master/config/annotations                   |    2 +
>>> debian.master/config/config.common.ubuntu          |    2 +
>>> drivers/net/wireless/ath/ath9k/htc_drv_main.c      |    2 +-
>>> drivers/net/wireless/ath/ath9k/main.c              |    2 +-
>>> drivers/net/wireless/ath/carl9170/main.c           |    3 +-
>>> drivers/net/wireless/ath/wcn36xx/main.c            |    5 +-
>>> .../broadcom/brcm80211/brcmsmac/mac80211_if.c      |    3 +-
>>> drivers/net/wireless/intel/iwlegacy/4965-mac.c     |    2 +-
>>> drivers/net/wireless/intel/iwlwifi/dvm/tx.c        |    2 +-
>>> drivers/net/wireless/intel/iwlwifi/mvm/sta.c       |    5 +-
>>> drivers/net/wireless/mac80211_hwsim.c              |    3 +-
>>> drivers/net/wireless/marvell/mwl8k.c               |    2 +-
>>> drivers/net/wireless/mediatek/mt76/mt7603/main.c   |    3 +-
>>> drivers/net/wireless/mediatek/mt76/mt7615/main.c   |    3 +-
>>> drivers/net/wireless/mediatek/mt76/mt76x02_util.c  |    3 +-
>>> drivers/net/wireless/mediatek/mt7601u/main.c       |    3 +-
>>> drivers/net/wireless/ralink/rt2x00/rt2800lib.c     |    4 +-
>>> drivers/net/wireless/realtek/rtlwifi/base.c        |    3 +-
>>> drivers/net/wireless/realtek/rtw88/Kconfig         |   20 +
>>> drivers/net/wireless/realtek/rtw88/Makefile        |    4 +
>>> drivers/net/wireless/realtek/rtw88/bf.c            |  397 +++
>>> drivers/net/wireless/realtek/rtw88/bf.h            |  114 +
>>> drivers/net/wireless/realtek/rtw88/coex.c          |   17 +-
>>> drivers/net/wireless/realtek/rtw88/debug.c         |  225 +-
>>> drivers/net/wireless/realtek/rtw88/debug.h         |    3 +
>>> drivers/net/wireless/realtek/rtw88/efuse.c         |    4 +
>>> drivers/net/wireless/realtek/rtw88/fw.c            |  852 +++++-
>>> drivers/net/wireless/realtek/rtw88/fw.h            |  323 ++-
>>> drivers/net/wireless/realtek/rtw88/hci.h           |   44 +
>>> drivers/net/wireless/realtek/rtw88/mac.c           |  546 +++-
>>> drivers/net/wireless/realtek/rtw88/mac.h           |    7 +
>>> drivers/net/wireless/realtek/rtw88/mac80211.c      |  357 ++-
>>> drivers/net/wireless/realtek/rtw88/main.c          |  471 +++-
>>> drivers/net/wireless/realtek/rtw88/main.h          |  459 +++-
>>> drivers/net/wireless/realtek/rtw88/pci.c           |  421 ++-
>>> drivers/net/wireless/realtek/rtw88/pci.h           |   23 +-
>>> drivers/net/wireless/realtek/rtw88/phy.c           |  462 +++-
>>> drivers/net/wireless/realtek/rtw88/phy.h           |   33 +
>>> drivers/net/wireless/realtek/rtw88/ps.c            |  191 +-
>>> drivers/net/wireless/realtek/rtw88/ps.h            |   18 +-
>>> drivers/net/wireless/realtek/rtw88/reg.h           |  146 ++
>>> drivers/net/wireless/realtek/rtw88/regd.c          |   63 +-
>>> drivers/net/wireless/realtek/rtw88/rtw8723d.c      | 2762 ++++++++++++++++++++
>>> drivers/net/wireless/realtek/rtw88/rtw8723d.h      |  245 ++
>>> .../net/wireless/realtek/rtw88/rtw8723d_table.c    | 1196 +++++++++
>>> .../net/wireless/realtek/rtw88/rtw8723d_table.h    |   15 +
>>> drivers/net/wireless/realtek/rtw88/rtw8822b.c      |  540 +++-
>>> drivers/net/wireless/realtek/rtw88/rtw8822b.h      |   18 +
>>> .../net/wireless/realtek/rtw88/rtw8822b_table.c    |  829 +++++-
>>> .../net/wireless/realtek/rtw88/rtw8822b_table.h    |    2 +
>>> drivers/net/wireless/realtek/rtw88/rtw8822c.c      |  491 +++-
>>> drivers/net/wireless/realtek/rtw88/rtw8822c.h      |   19 +
>>> .../net/wireless/realtek/rtw88/rtw8822c_table.c    |   94 +-
>>> drivers/net/wireless/realtek/rtw88/rx.c            |  101 +-
>>> drivers/net/wireless/realtek/rtw88/rx.h            |   11 +
>>> drivers/net/wireless/realtek/rtw88/sar.c           |  778 ++++++
>>> drivers/net/wireless/realtek/rtw88/sar.h           |   15 +
>>> drivers/net/wireless/realtek/rtw88/sec.c           |   27 +-
>>> drivers/net/wireless/realtek/rtw88/sec.h           |    1 +
>>> drivers/net/wireless/realtek/rtw88/tx.c            |  310 ++-
>>> drivers/net/wireless/realtek/rtw88/tx.h            |   39 +-
>>> drivers/net/wireless/realtek/rtw88/util.c          |   45 +-
>>> drivers/net/wireless/realtek/rtw88/util.h          |    2 +
>>> drivers/net/wireless/realtek/rtw88/wow.c           |  882 +++++++
>>> drivers/net/wireless/realtek/rtw88/wow.h           |   58 +
>>> drivers/net/wireless/rsi/rsi_91x_mac80211.c        |    3 +-
>>> include/net/mac80211.h                             |   11 +-
>>> net/mac80211/agg-tx.c                              |    9 +-
>>> 68 files changed, 12865 insertions(+), 890 deletions(-)
>>> create mode 100644 drivers/net/wireless/realtek/rtw88/bf.c
>>> create mode 100644 drivers/net/wireless/realtek/rtw88/bf.h
>>> create mode 100644 drivers/net/wireless/realtek/rtw88/rtw8723d.c
>>> create mode 100644 drivers/net/wireless/realtek/rtw88/rtw8723d.h
>>> create mode 100644 drivers/net/wireless/realtek/rtw88/rtw8723d_table.c
>>> create mode 100644 drivers/net/wireless/realtek/rtw88/rtw8723d_table.h
>>> create mode 100644 drivers/net/wireless/realtek/rtw88/sar.c
>>> create mode 100644 drivers/net/wireless/realtek/rtw88/sar.h
>>> create mode 100644 drivers/net/wireless/realtek/rtw88/wow.c
>>> create mode 100644 drivers/net/wireless/realtek/rtw88/wow.h
>>> 
>> 
>> This should probably be added for the unstable tree as well?
> 
> ..point being that it'd then automatically end up in oem-5.6.

Eventually 8723de support will land to upstream.
However, if it doesn't make in time for GG series, I'll request another pull.

Kai-Heng

> 
> 
> -- 
> t
Seth Forshee March 21, 2020, 12:40 a.m. UTC | #4
On Wed, Feb 19, 2020 at 10:53:04PM +0800, Kai-Heng Feng wrote:
> BugLink: https://bugs.launchpad.net/bugs/1780590
> 
> [Impact]
> There's no in-kernel support for Realtek 8723DE, so users need to use
> out-of-tree DKMS which is not from Ubuntu archive. This has security
> implication and should be avoided. Also this provides pretty bad user
> experience.
> 
> [Fix]
> Add support to Realtek 8723DE.
> All commits are cherry-picked from Realtek maintained repo:
> https://github.com/rtlwifi-linux/rtw88_8723de
> 
> [Test]
> With the patch series applied, 8723DE can scan and connect to APs
> succesfully. Also did some S3 smoke test, it continues to work.
> 
> [Regression Potential]
> Low. The device in question was never supported, and if there's any
> regression, we can count on Realtek Wireless team, thy are now pretty
> responsive on upstream mailing list.
> 
> [Pull]
> The following changes since commit 0efe88b03bdc64cef646c9ea785c464a3f4952dd:
> 
>   UBUNTU: Ubuntu-5.4-5.4.0-15.18 (2020-02-18 12:19:31 +0100)
> 
> are available in the Git repository at:
> 
>   https://git.launchpad.net/~kaihengfeng/linux lp1780590-focal
> 
> for you to fetch changes up to 1fe3af62dbee1784cfd23e7d755186ee2fc542b6:

A couple of the patches had already been applied from upstream stable
updates. Applied the rest, and added your sign-off to the config change.
Thanks!