mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-29 18:19:02 +00:00
b5f32064ed
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>
49 lines
1.5 KiB
Diff
49 lines
1.5 KiB
Diff
From 406a332fd1bcc4e18d73cce390f56272fe9111d7 Mon Sep 17 00:00:00 2001
|
|
From: Sivaprakash Murugesan <sivaprak@codeaurora.org>
|
|
Date: Fri, 17 Apr 2020 16:37:10 +0530
|
|
Subject: [PATCH] remoteproc: wcss: disable auto boot for IPQ8074
|
|
|
|
There is no need for remoteproc to boot automatically, ath11k will trigger
|
|
booting when its probing.
|
|
|
|
Signed-off-by: Sivaprakash Murugesan <sivaprak@codeaurora.org>
|
|
Signed-off-by: Robert Marko <robimarko@gmail.com>
|
|
---
|
|
drivers/remoteproc/qcom_q6v5_wcss.c | 4 ++++
|
|
1 file changed, 4 insertions(+)
|
|
|
|
--- a/drivers/remoteproc/qcom_q6v5_wcss.c
|
|
+++ b/drivers/remoteproc/qcom_q6v5_wcss.c
|
|
@@ -161,6 +161,7 @@ struct wcss_data {
|
|
const struct rproc_ops *ops;
|
|
bool requires_force_stop;
|
|
bool need_mem_protection;
|
|
+ bool need_auto_boot;
|
|
};
|
|
|
|
static int q6v5_wcss_reset(struct q6v5_wcss *wcss)
|
|
@@ -1151,6 +1152,7 @@ static int q6v5_wcss_probe(struct platfo
|
|
desc->sysmon_name,
|
|
desc->ssctl_id);
|
|
|
|
+ rproc->auto_boot = desc->need_auto_boot;
|
|
ret = rproc_add(rproc);
|
|
if (ret)
|
|
goto free_rproc;
|
|
@@ -1187,6 +1189,7 @@ static const struct wcss_data wcss_ipq80
|
|
.ops = &q6v5_wcss_ipq8074_ops,
|
|
.requires_force_stop = true,
|
|
.need_mem_protection = true,
|
|
+ .need_auto_boot = false,
|
|
};
|
|
|
|
static const struct wcss_data wcss_qcs404_res_init = {
|
|
@@ -1203,6 +1206,7 @@ static const struct wcss_data wcss_qcs40
|
|
.ssctl_id = 0x12,
|
|
.ops = &q6v5_wcss_qcs404_ops,
|
|
.requires_force_stop = false,
|
|
+ .need_auto_boot = true,
|
|
};
|
|
|
|
static const struct of_device_id q6v5_wcss_of_match[] = {
|