[PATCH v3 04/10] misc: qcom_geni: Add minicore support
Simon Glass
sjg at chromium.org
Thu Apr 16 22:53:22 CEST 2026
Hi Varadarajan,
On 2026-04-16T05:39:18, Varadarajan Narayanan
<varadarajan.narayanan at oss.qualcomm.com> wrote:
> misc: qcom_geni: Add minicore support
>
> The qcom_geni driver reads an ELF from storage and configures a set of
> registers and programs the firmware to the GENI Serial Engine (GENI-SE)
> wrapper device for the expected functionality.
>
> Unlike the GENI-SE wrapper found in MSM SoCs, the IPQ5210's GENI-SE
> wrapper is pre-configured for one of the functions defined in 'enum
> geni_se_protocol_type'. Hence, the firmware download is not needed.
> Only the register configuration part is needed.
>
> Earlier, the boot stages before U-Boot would configure the GENI-SE (to
> access UART/SPI etc). Since for IPQ5210 U-Boot SPL, the previous stage
> (i.e. boot ROM) doesn't do that modify the driver to do the register
> configuration part alone without reading an ELF from the storage.
>
> Signed-off-by: Varadarajan Narayanan <varadarajan.narayanan at oss.qualcomm.com>
>
> drivers/misc/Kconfig | 6 +++
> drivers/misc/Makefile | 1 +
> drivers/misc/qcom_geni-minicore.c | 102 ++++++++++++++++++++++++++++++++++++++
> drivers/misc/qcom_geni.c | 94 ++++++++++++++++++++++++++++++-----
> include/soc/qcom/geni-se.h | 2 +
> include/soc/qcom/qup-fw-load.h | 15 ++++++
> 6 files changed, 208 insertions(+), 12 deletions(-)
> +config QCOM_GENI_MINICORE
> + bool "Support minicores in Qualcomm Generic Interface (GENI) driver"
> + depends on QCOM_GENI
> + help
> + Enable support for minicores in Qualcomm GENI and it's peripherals.
its
> + } else if (IS_ENABLED(CONFIG_QCOM_GENI_MINICORE)) {
> + struct qup_mini_core_info *qmc = info;
> +
> + for (; qmc->serial_protocol != GENI_SE_INVALID_PROTO; qmc++)
> + if (qmc->serial_protocol == rsc->protocol)
> + break;
> +
> + tmp_hdr.magic = MAGIC_NUM_SE;
Please add an error return when no matching protocol is found.
> +#define QUPV3_SE_HW_PARAM_2 0xe2c
> +#define GENI_USE_MINICORES BIT(12)
SE_HW_PARAM_2 is already added in geni-se.h in this same patch - maybe
use the one in geni-se.h and move the GENI_USE_MINICORES definition
there as well?
Regards,
Simon
More information about the U-Boot
mailing list