162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0+ 262306a36Sopenharmony_ci# 362306a36Sopenharmony_ci# Loongson-2 series SoC drivers 462306a36Sopenharmony_ci# 562306a36Sopenharmony_ci 662306a36Sopenharmony_ciconfig LOONGSON2_GUTS 762306a36Sopenharmony_ci tristate "Loongson-2 SoC Global UtiliTieS (GUTS) register block" 862306a36Sopenharmony_ci depends on LOONGARCH || COMPILE_TEST 962306a36Sopenharmony_ci select SOC_BUS 1062306a36Sopenharmony_ci help 1162306a36Sopenharmony_ci The global utilities block controls PCIE device enabling, alternate 1262306a36Sopenharmony_ci function selection for multiplexed signals, consistency of HDA, USB 1362306a36Sopenharmony_ci and PCIE, configuration of memory controller, rtc controller, lio 1462306a36Sopenharmony_ci controller, and clock control. This patch adds a driver to manage 1562306a36Sopenharmony_ci and access global utilities block for LoongArch architecture Loongson-2 1662306a36Sopenharmony_ci SoCs. Initially only reading SVR and registering soc device are 1762306a36Sopenharmony_ci supported. Other guts accesses, such as reading firmware configuration 1862306a36Sopenharmony_ci by default, should eventually be added into this driver as well. 1962306a36Sopenharmony_ci 2062306a36Sopenharmony_ciconfig LOONGSON2_PM 2162306a36Sopenharmony_ci bool "Loongson-2 SoC Power Management Controller Driver" 2262306a36Sopenharmony_ci depends on LOONGARCH && OF 2362306a36Sopenharmony_ci depends on INPUT=y 2462306a36Sopenharmony_ci help 2562306a36Sopenharmony_ci The Loongson-2's power management controller was ACPI, supports ACPI 2662306a36Sopenharmony_ci S2Idle (Suspend To Idle), ACPI S3 (Suspend To RAM), ACPI S4 (Suspend To 2762306a36Sopenharmony_ci Disk), ACPI S5 (Soft Shutdown) and supports multiple wake-up methods 2862306a36Sopenharmony_ci (USB, GMAC, PWRBTN, etc.). This driver was to add power management 2962306a36Sopenharmony_ci controller support that base on dts for Loongson-2 series SoCs. 30