mirror of
https://git.openwrt.org/openwrt/openwrt.git
synced 2025-08-28 16:43:06 +00:00
Qualcomm Atheros IPQ807x is a modern WiSoC featuring: * Quad Core ARMv8 Cortex A-53 * @ 2.2 GHz (IPQ8072A/4A/6A/8A) Codename Hawkeye * @ 1.4 GHz (IPQ8070A/1A) Codename Acorn * Dual Band simultaneaous IEEE 802.11ax * 5G: 8x8/80 or 4x4/160MHz (IPQ8074A/8A) * 5G: 4x4/80 or 2x2/160MHz (IPQ8071A/2A/6A) * 5G: 2x2/80MHz (IPQ8070A) * 2G: 4x4/40MHz (IPQ8072A/4A/6A/8A) * 2G: 2x2/40MHz (IPQ8070A/1A) * 1x PSGMII via QCA8072/5 (Max 5x 1GbE ports) * 2x SGMII/USXGMII (1/2.5/5/10 GbE) on Hawkeye * 2x SGMII/USXGMII (1/2.5/5 GbE) on Acorn * DDR3L/4 32/16 bit up to 2400MT/s * SDIO 3.0/SD card 3.0/eMMC 5.1 * Dual USB 3.0 * One PCIe Gen2.1 and one PCIe Gen3.0 port (Single lane) * Parallel NAND (ONFI)/LCD * 6x QUP BLSP SPI/I2C/UART * I2S, PCM, and TDMA * HW PWM * 1.8V configurable GPIO * Companion PMP8074 PMIC via SPMI (GPIOS, RTC etc) Note that only v2 SOC models aka the ones ending with A suffix are supported, v1 models do not comply to the final 802.11ax and have lower clocks, lack the Gen3 PCIe etc. SoC itself has two UBI32 cores for the NSS offloading system, however currently no offloading is supported. Signed-off-by: Robert Marko <robimarko@gmail.com>
69 lines
2.5 KiB
Diff
69 lines
2.5 KiB
Diff
From 3e3da8da25f81fa3f0f3a37f60d10b17d1166864 Mon Sep 17 00:00:00 2001
|
|
From: Robert Marko <robimarko@gmail.com>
|
|
Date: Mon, 4 Jul 2022 23:23:57 +0200
|
|
Subject: [PATCH] regulator: qcom_spmi: add support for PMP8074 regulators
|
|
|
|
PMP8074 is a companion PMIC for the Qualcomm IPQ8074 WiSoC-s.
|
|
|
|
It features 5 HF-SMPS and 13 LDO regulators.
|
|
|
|
HF-SMPS regulators are Buck HFS430 regulators.
|
|
L1, L2 and L3 are HT_N1200_ST subtype LDO regulators.
|
|
L4 is HT_N300_ST subtype LDO regulator.
|
|
L5 and L6 are HT_P600 subtype LDO regulators.
|
|
L7, L11, L12 and L13 are HT_P150 subtype LDO regulators.
|
|
L10 is HT_P50 subtype LDO regulator.
|
|
|
|
This commit adds support for all of the buck regulators and LDO-s except
|
|
for L10 as I dont have documentation on its output voltage range.
|
|
|
|
S3 is the CPU cluster voltage supply, S4 supplies the UBI32 NPU cores
|
|
and L11 is the SDIO/eMMC I/O voltage regulator required for high speeds.
|
|
|
|
Signed-off-by: Robert Marko <robimarko@gmail.com>
|
|
Link: https://lore.kernel.org/r/20220704212402.1715182-7-robimarko@gmail.com
|
|
Signed-off-by: Mark Brown <broonie@kernel.org>
|
|
---
|
|
drivers/regulator/qcom_spmi-regulator.c | 23 +++++++++++++++++++++++
|
|
1 file changed, 23 insertions(+)
|
|
|
|
--- a/drivers/regulator/qcom_spmi-regulator.c
|
|
+++ b/drivers/regulator/qcom_spmi-regulator.c
|
|
@@ -2101,6 +2101,28 @@ static const struct spmi_regulator_data
|
|
{ }
|
|
};
|
|
|
|
+static const struct spmi_regulator_data pmp8074_regulators[] = {
|
|
+ { "s1", 0x1400, "vdd_s1"},
|
|
+ { "s2", 0x1700, "vdd_s2"},
|
|
+ { "s3", 0x1a00, "vdd_s3"},
|
|
+ { "s4", 0x1d00, "vdd_s4"},
|
|
+ { "s5", 0x2000, "vdd_s5"},
|
|
+ { "l1", 0x4000, "vdd_l1_l2"},
|
|
+ { "l2", 0x4100, "vdd_l1_l2"},
|
|
+ { "l3", 0x4200, "vdd_l3_l8"},
|
|
+ { "l4", 0x4300, "vdd_l4"},
|
|
+ { "l5", 0x4400, "vdd_l5_l6_l15"},
|
|
+ { "l6", 0x4500, "vdd_l5_l6_l15"},
|
|
+ { "l7", 0x4600, "vdd_l7"},
|
|
+ { "l8", 0x4700, "vdd_l3_l8"},
|
|
+ { "l9", 0x4800, "vdd_l9"},
|
|
+ /* l10 is currently unsupported HT_P50 */
|
|
+ { "l11", 0x4a00, "vdd_l10_l11_l12_l13"},
|
|
+ { "l12", 0x4b00, "vdd_l10_l11_l12_l13"},
|
|
+ { "l13", 0x4c00, "vdd_l10_l11_l12_l13"},
|
|
+ { }
|
|
+};
|
|
+
|
|
static const struct spmi_regulator_data pms405_regulators[] = {
|
|
{ "s3", 0x1a00, "vdd_s3"},
|
|
{ }
|
|
@@ -2117,6 +2139,7 @@ static const struct of_device_id qcom_sp
|
|
{ .compatible = "qcom,pmi8994-regulators", .data = &pmi8994_regulators },
|
|
{ .compatible = "qcom,pm660-regulators", .data = &pm660_regulators },
|
|
{ .compatible = "qcom,pm660l-regulators", .data = &pm660l_regulators },
|
|
+ { .compatible = "qcom,pmp8074-regulators", .data = &pmp8074_regulators },
|
|
{ .compatible = "qcom,pms405-regulators", .data = &pms405_regulators },
|
|
{ }
|
|
};
|