Backport these patches are mainly for cloud kernel to adapt
some functions of KunPeng920 machine.
1. Add Huawei hinic network card support
2. Add ARMv8 MPAM (cache QoS and memory bandwidth QoS) support
Hongbo Yao (2):
openEuler: mpam: Code security rectification
openEuler: mpam: fix potential resource leak in mpam_domains_init
James Morse (3):
openEuler: ACPI / processor: Add helper to convert acpi_id to a
phys_cpuid
openEuler: ACPI / PPTT: Add helper to validate cache nodes from an
offset [dead]
openEuler: ACPI / PPTT: Filthy hack to find _a_ backwards reference in
the PPTT [ROTTEN]
Jason Yan (1):
openEuler: cmetrics: remove dead code in mpam_ctrlmon.c and
resctrlfs.c
Shaozhengchao (15):
openeuler: net: hinic: fixes dbgtool bugs
openeuler: net/hinic: modify comment
openeuler: net/hinic: fix static check problem
openeuler: net/hinic: fix the problem that memory leak
openeuler: net/hinic: fix return value bug
openeuler: net/hinic: fix review comment
openeuler: net/hinic: fix tx padding bug
openeuler: net/hinic: modify driver version
openeuler: net/hinic: fix static check problem
openeuler: net/hinic: modify hw_layer comment
openeuler: net/hinic: modify nic_layer comment
openeuler: net/hinic: remove redundant code
openeuler: net/hinic: change the tx min frames to 32 Bytes
openeuler: net/hinic: optimize interrupt rush
openeuler: net/hinic: rectify issue
Tan Xiaojun (2):
openEuler: arm64/mpam: define mpam registers
openEuler: arm64/mpam: implenment mpam_sched_in()
Wang ShaoBo (7):
openEuler: mpam : fix missing fill MSMON_CFG_MON_SEL register
openEuler: mpam : fix monitor's disorder from
openEuler: ACPI / PPTT: cacheinfo: Label caches based on fw_token
openEuler: ACPI 6.x: Add definitions for MPAM table
openEuler: MPAM / ACPI: Refactoring MPAM init process and set MPAM
ACPI as entrance
openEuler: arm64/mpam: Fix unreset resources when mkdir ctrl group or
umount resctrl
openEuler: arm64/mpam: Supplement err tips in info/last_cmd_status
Xie XiuQi (56):
openEuler: resctrlfs: init support resctrlfs
openEuler: arm64/mpam: set MPAM1_EL1/MPAM2_EL2 in mpam_sched_in()
openEuler: arm64/mpam: debug: add mpam_{read/write}_sysreg_s for debug
on D05 board
openEuler: arm64/mpam: use mpam_{read/write}_sysreg_s for debug
openEuler: arm64/mpam: add macro helpers for PARTID/PMG
openEuler: arm64/mpam: debug: improve debug info
openEuler: arm64/mpam: debug: fix debug format
openEuler: arm64/mpam: debug: fix debug info print formats
openEuler: arm64/mpam: debug: print partid and pmg in tasks show
openEuler: arm64/mpam: call mpam_sched_in with context switch
openEuler: arm64/mpam: support resctrl_group_schemata_show
openEuler: arm64/mpam: support pmg alloc/free
openEuler: arm64/mpam: support mondata fields
openEuler: arm64/mpam: debug: print more useful info for mon_data
openEuler: arm64/mpam: debug: print debug info when create mon_data
openEuler: arm64/mpam: add group partid/pmg to tasks show
openEuler: arm64/mpam: pass rdtgroup when create mon_data dir
openEuler: arm64/mpam: support monitor read
openEuler: arm64/mpam: support monitor
openEuler: arm64/mpam: support num_partids/num_pmgs
openEuler: arm64/mpam: add mpam extension runtime detection
openEuler: arm64/mpam: print mpam caps info when booting
openEuler: arm64/mpam: disable MPAM_SYS_REG_DEBUG
openEuler: arm64/mpam: support monitor
openEuler: arm64/mpam: operation not permitted when remove a ctrl
group with a mondata
openEuler: arm64/mpam: free mon when remove momgroups
openEuler: arm64/mpam: mon: add WARN_ON for debug free_pmg
openEuler: arm64/mpam: add num_monitors in info dir
openEuler: arm64/mpam: get num_mon & num_pmg from hardware
openEuler: arm64/mpam: don't reserve mon 0, we can use it as nomarl
openEuler: arm64/mpam: get alloc/mon capable/enabled from h/w
openEuler: arm64/mpam: alloc/mon capable/enabled debug
openEuler: arm64/mpam: add L3TALL & HHALL
openEuler: arm64/mpam: enable alloc/mon capable when MPAM enabled
openEuler: arm64/mpam: monitor pmg as a property of partid
openEuler: arm64/mpam: fix HHA MAX SET/GET operation
openEuler: arm64/mpam: don't allowd create mon_groups when out of
mon/pmg
openEuler: arm64/mpam: use 5% as min memory bandwidth
openEuler: arm64/mpam: debug: remove debug pr_info at schemata
openEuler: arm64/mpam: support L3TALL, HHALL
openEuler: arm64/mpam: hard code mpam resource for Hi1620 2P
openEuler: arm64/mpam: delete redundant line in Makefile
openEuler: arm64/mpam: add cmdline option: mpam
openEuler: arm64/mpam: fix hard code address map for 1620 3P
openEuler: arm64/mpam: destroy domain list when failed to init
openEuler: arm64/mpam: unmap all previous address when failed
openEuler: arm64/mpam: only add new domain node to domain list
openEuler: arm64/mpam: remove unsupported resource
openEuler: arm64/mpam: update group flags only when enable sucsses
openEuler: arm64/mpam: get num_partids from system regs instead of
hard code
openEuler: arm64/mpam: correct num of partid/pmg
openEuler: arm64/mpam: remove unnecessary debug message and dead code
openEuler: arm64/mpam: fix a missing unlock in error branch
openEuler: arm64/mpam: cleanup debuging code
openEuler: arm64/mpam: use snprintf instead of sprintf
openEuler: arm64/mpam: cleanup the source file's licence
Xin Hao (1):
config: arm64: Enable MPAM feature default
Xiongfeng Wang (15):
openeuler: firmware: arm_sdei: add interrupt binding api
openeuler: firmware: arm_sdei: make 'sdei_api_event_disable/enable'
public
openeuler: lockup_detector: init lockup detector after all the
init_calls
openeuler: watchdog: add nmi_watchdog support for arm64 based on SDEI
openeuler: sdei_watchdog: use the secure arch timer as SDEI watchdog
timer
openeuler: sdei_watchdog: refresh 'last_timestamp' when enabling
nmi_watchdog
openeuler: sdei_watchdog: do not disable sdei_watchdog event when
failed to initialise SDEI
openeuler: sdei_watchdog: clear EOI of the secure timer before kdump
openeuler: stop_machine: mask sdei before running the callback
openeuler: sdei: fix the wrong SDEI_CLEAR_EOI function number
openeuler: arm64: kexec: only clear EOI for SDEI in NMI context
openeuler: sdei_watchdog: set secure timer period base on
'watchdog_thresh'
openeuler: kprobes/arm64: Blacklist sdei watchdog callback functions
openeuler: firmware: arm_sdei: Prohibit probing in '_sdei_handler'
openeuler: nmi_watchdog: add asm/nmi.h for ARM64
Xue (15):
openeuler: net: hinic: Add Hardware Abstract Layer
openeuler: net: hinic: Add NIC Layer
openeuler: net: hinic: Add ethtool support
openeuler: net: update hi1822 nic driver to 1.8.2.8
openeuler: net: hinic: fix check error in hinic
openeuler: net: hinic: delete address print
openeuler: net: hinic:fix bug in dbgtool
openeuler: net: hinic: cleanup comments
openeuler: net: hinic: add security check
openeuler: net: hinic: fix bug in api_csr_write
openeuler: net: hinic: add card_id protection
openeuler: net: update hinic driver to 2.3.2.1
openeuler: net: hinic: fix bug in set vlan
openeuler: net: hinic: static check warnings fix
openeuler: net: hinic: modify comments
Yang Yingliang (2):
openEuler: resctrlfs: mpam: init struct for mpam
openEuler: arm64/mpam: fix compile warning
arch/arm64/Kconfig | 10 +
arch/arm64/include/asm/acpi.h | 4 +
arch/arm64/include/asm/cpucaps.h | 3 +-
arch/arm64/include/asm/mpam.h | 327 ++
arch/arm64/include/asm/mpam_resource.h | 129 +
arch/arm64/include/asm/mpam_sched.h | 57 +
arch/arm64/include/asm/nmi.h | 5 +
arch/arm64/include/asm/resctrl.h | 70 +
arch/arm64/include/asm/sysreg.h | 2 +
arch/arm64/kernel/Makefile | 2 +
arch/arm64/kernel/cpufeature.c | 13 +
arch/arm64/kernel/machine_kexec.c | 11 +
arch/arm64/kernel/mpam.c | 1499 +++++
arch/arm64/kernel/mpam_ctrlmon.c | 623 ++
arch/arm64/kernel/mpam_mon.c | 124 +
arch/arm64/kernel/process.c | 3 +
arch/arm64/kernel/watchdog_sdei.c | 137 +
configs/config-4.19.y-aarch64 | 2 +
configs/config-4.19.y-aarch64-debug | 2 +
drivers/acpi/arm64/Kconfig | 3 +
drivers/acpi/arm64/Makefile | 1 +
drivers/acpi/arm64/mpam.c | 249 +
drivers/acpi/pptt.c | 143 +
drivers/acpi/processor_core.c | 16 +
drivers/firmware/arm_sdei.c | 29 +-
drivers/net/ethernet/huawei/Kconfig | 1 +
drivers/net/ethernet/huawei/hinic/Kconfig | 5 +-
drivers/net/ethernet/huawei/hinic/Makefile | 14 +-
.../net/ethernet/huawei/hinic/hinic_api_cmd.c | 1183 ++++
.../net/ethernet/huawei/hinic/hinic_api_cmd.h | 298 +
drivers/net/ethernet/huawei/hinic/hinic_cfg.c | 2451 ++++++++
drivers/net/ethernet/huawei/hinic/hinic_cfg.h | 527 ++
.../net/ethernet/huawei/hinic/hinic_cmdq.c | 1560 +++++
.../net/ethernet/huawei/hinic/hinic_cmdq.h | 217 +
drivers/net/ethernet/huawei/hinic/hinic_csr.h | 203 +
.../net/ethernet/huawei/hinic/hinic_ctx_def.h | 253 +
drivers/net/ethernet/huawei/hinic/hinic_dbg.h | 91 +
.../ethernet/huawei/hinic/hinic_dbgtool_knl.c | 910 +++
.../ethernet/huawei/hinic/hinic_dbgtool_knl.h | 122 +
drivers/net/ethernet/huawei/hinic/hinic_dcb.c | 1805 ++++++
drivers/net/ethernet/huawei/hinic/hinic_dcb.h | 67 +
.../net/ethernet/huawei/hinic/hinic_dfx_def.h | 153 +
drivers/net/ethernet/huawei/hinic/hinic_eqs.c | 1430 +++++
drivers/net/ethernet/huawei/hinic/hinic_eqs.h | 181 +
.../net/ethernet/huawei/hinic/hinic_ethtool.c | 2602 +++++++++
drivers/net/ethernet/huawei/hinic/hinic_hw.h | 732 +++
.../net/ethernet/huawei/hinic/hinic_hw_mgmt.h | 601 +-
.../net/ethernet/huawei/hinic/hinic_hwdev.c | 5155 +++++++++++++++++
.../net/ethernet/huawei/hinic/hinic_hwdev.h | 410 ++
.../net/ethernet/huawei/hinic/hinic_hwif.c | 926 +++
.../net/ethernet/huawei/hinic/hinic_hwif.h | 117 +
drivers/net/ethernet/huawei/hinic/hinic_lld.c | 2799 +++++++++
drivers/net/ethernet/huawei/hinic/hinic_lld.h | 128 +
.../net/ethernet/huawei/hinic/hinic_main.c | 3614 +++++++++---
.../net/ethernet/huawei/hinic/hinic_mbox.c | 1686 ++++++
.../net/ethernet/huawei/hinic/hinic_mbox.h | 232 +
.../net/ethernet/huawei/hinic/hinic_mgmt.c | 1452 +++++
.../net/ethernet/huawei/hinic/hinic_mgmt.h | 243 +
.../huawei/hinic/hinic_mgmt_interface.h | 962 +++
.../ethernet/huawei/hinic/hinic_msix_attr.c | 130 +
.../ethernet/huawei/hinic/hinic_msix_attr.h | 69 +
.../huawei/hinic/hinic_multi_host_mgmt.c | 957 +++
.../huawei/hinic/hinic_multi_host_mgmt.h | 107 +
drivers/net/ethernet/huawei/hinic/hinic_nic.h | 112 +
.../net/ethernet/huawei/hinic/hinic_nic_cfg.c | 3873 +++++++++++++
.../net/ethernet/huawei/hinic/hinic_nic_cfg.h | 626 ++
.../net/ethernet/huawei/hinic/hinic_nic_dbg.c | 289 +
.../net/ethernet/huawei/hinic/hinic_nic_dev.h | 299 +
.../net/ethernet/huawei/hinic/hinic_nic_io.c | 1022 ++++
.../net/ethernet/huawei/hinic/hinic_nic_io.h | 99 +
.../net/ethernet/huawei/hinic/hinic_nictool.c | 2421 ++++++++
.../net/ethernet/huawei/hinic/hinic_nictool.h | 288 +
.../ethernet/huawei/hinic/hinic_pci_id_tbl.h | 40 +
.../ethernet/huawei/hinic/hinic_port_cmd.h | 545 ++
.../net/ethernet/huawei/hinic/hinic_qe_def.h | 471 ++
drivers/net/ethernet/huawei/hinic/hinic_qp.c | 222 +
drivers/net/ethernet/huawei/hinic/hinic_qp.h | 152 +
drivers/net/ethernet/huawei/hinic/hinic_rx.c | 1406 +++--
drivers/net/ethernet/huawei/hinic/hinic_rx.h | 121 +-
.../net/ethernet/huawei/hinic/hinic_sm_lt.h | 228 +
.../ethernet/huawei/hinic/hinic_sml_counter.c | 308 +
.../ethernet/huawei/hinic/hinic_sml_counter.h | 118 +
.../net/ethernet/huawei/hinic/hinic_sml_lt.c | 238 +
.../ethernet/huawei/hinic/hinic_sml_table.h | 2728 +++++++++
.../huawei/hinic/hinic_sml_table_pub.h | 277 +
.../net/ethernet/huawei/hinic/hinic_sriov.c | 502 ++
.../net/ethernet/huawei/hinic/hinic_sriov.h | 71 +
drivers/net/ethernet/huawei/hinic/hinic_tx.c | 1470 +++--
drivers/net/ethernet/huawei/hinic/hinic_tx.h | 118 +-
drivers/net/ethernet/huawei/hinic/hinic_wq.c | 687 +++
drivers/net/ethernet/huawei/hinic/hinic_wq.h | 117 +
drivers/net/ethernet/huawei/hinic/ossl_knl.h | 55 +
.../ethernet/huawei/hinic/ossl_knl_linux.c | 138 +
.../ethernet/huawei/hinic/ossl_knl_linux.h | 491 ++
.../net/ethernet/huawei/hinic/ossl_types.h | 41 +
fs/Kconfig | 9 +
fs/Makefile | 1 +
fs/resctrlfs.c | 970 ++++
include/acpi/actbl2.h | 58 +
include/acpi/processor.h | 1 +
include/linux/acpi.h | 8 +
include/linux/arm_sdei.h | 5 +
include/linux/nmi.h | 8 +
include/linux/resctrlfs.h | 97 +
include/linux/sched.h | 2 +-
include/uapi/linux/arm_sdei.h | 2 +
init/main.c | 3 +-
kernel/stop_machine.c | 10 +
kernel/watchdog.c | 2 +
kernel/watchdog_hld.c | 10 +
lib/Kconfig.debug | 5 +
111 files changed, 57014 insertions(+), 1607 deletions(-)
create mode 100644 arch/arm64/include/asm/mpam.h
create mode 100644 arch/arm64/include/asm/mpam_resource.h
create mode 100644 arch/arm64/include/asm/mpam_sched.h
create mode 100644 arch/arm64/include/asm/nmi.h
create mode 100644 arch/arm64/include/asm/resctrl.h
create mode 100644 arch/arm64/kernel/mpam.c
create mode 100644 arch/arm64/kernel/mpam_ctrlmon.c
create mode 100644 arch/arm64/kernel/mpam_mon.c
create mode 100644 arch/arm64/kernel/watchdog_sdei.c
create mode 100644 drivers/acpi/arm64/mpam.c
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_api_cmd.c
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_api_cmd.h
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_cfg.c
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_cfg.h
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_cmdq.c
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_cmdq.h
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_csr.h
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_ctx_def.h
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_dbg.h
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.c
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_dbgtool_knl.h
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_dcb.c
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_dcb.h
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_dfx_def.h
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_eqs.c
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_eqs.h
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_ethtool.c
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_hw.h
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_hwdev.c
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_hwdev.h
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_hwif.c
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_hwif.h
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_lld.c
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_lld.h
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_mbox.c
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_mbox.h
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_mgmt.c
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_mgmt.h
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_mgmt_interface.h
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_msix_attr.c
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_msix_attr.h
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_multi_host_mgmt.c
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_multi_host_mgmt.h
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_nic.h
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_nic_cfg.c
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_nic_cfg.h
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_nic_dbg.c
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_nic_dev.h
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_nic_io.c
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_nic_io.h
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_nictool.c
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_nictool.h
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_pci_id_tbl.h
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_port_cmd.h
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_qe_def.h
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_qp.c
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_qp.h
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_sm_lt.h
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_sml_counter.c
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_sml_counter.h
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_sml_lt.c
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_sml_table.h
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_sml_table_pub.h
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_sriov.c
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_sriov.h
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_wq.c
create mode 100644 drivers/net/ethernet/huawei/hinic/hinic_wq.h
create mode 100644 drivers/net/ethernet/huawei/hinic/ossl_knl.h
create mode 100644 drivers/net/ethernet/huawei/hinic/ossl_knl_linux.c
create mode 100644 drivers/net/ethernet/huawei/hinic/ossl_knl_linux.h
create mode 100644 drivers/net/ethernet/huawei/hinic/ossl_types.h
create mode 100644 fs/resctrlfs.c
create mode 100644 include/linux/resctrlfs.h
--
2.31.0