[PATCH 2/4] imx: imx8mp: disable fused IP for UltraLite

Teresa Remmet T.Remmet at phytec.de
Fri Feb 18 10:59:01 CET 2022


Hello Peng,

Am Montag, dem 14.02.2022 um 20:55 +0800 schrieb Peng Fan (OSS):
> From: Peng Fan <peng.fan at nxp.com>
> 
> Beside the fused modules on iMX8MP Lite, this part has also fused
> GPU3D/2D, LVDS and MIPI DSI.
> So we have to disable them for kernel and also disable MIPI DSI
> in u-boot DTS for splash screen at runtime.
> 
> Signed-off-by: Ye Li <ye.li at nxp.com>
> Signed-off-by: Peng Fan <peng.fan at nxp.com>
> ---
>  arch/arm/mach-imx/imx8m/soc.c | 147
> ++++++++++++++++++++++++++++++++--
>  1 file changed, 142 insertions(+), 5 deletions(-)
> 
> diff --git a/arch/arm/mach-imx/imx8m/soc.c b/arch/arm/mach-
> imx/imx8m/soc.c
> index e2d21bf6b8..91ff7eca59 100644
> --- a/arch/arm/mach-imx/imx8m/soc.c
> +++ b/arch/arm/mach-imx/imx8m/soc.c
> @@ -905,6 +905,90 @@ static int low_drive_gpu_freq(void *blob)
>  }
>  #endif
>  
> 

[...]

>  
> +#ifdef CONFIG_OF_BOARD_FIXUP
> +#ifndef CONFIG_SPL_BUILD
> +int board_fix_fdt(void *fdt)

I stumbled over this already in the NXP U-Boot. We 
implemented there on top our own board_fix_fdt() callback on board
level. So this caused a conflict. This will be a issue for upstream
also when a imx8m* board tries to use it. 
Is there not any other way to solve this than implementing board
callbacks on soc level?

Regards,
Teresa   

> +{
> +	if (is_imx8mpul()) {
> +		int i = 0;
> +		int nodeoff, ret;
> +		const char *status = "disabled";
> +		static const char * const dsi_nodes[] = {
> +			"/soc at 0/bus at 32c00000/mipi_dsi at 32e60000",
> +			"/soc at 0/bus at 32c00000/lcd-controller at 32e80000",
> +			"/dsi-host"
> +		};
> +
> +		for (i = 0; i < ARRAY_SIZE(dsi_nodes); i++) {
> +			nodeoff = fdt_path_offset(fdt, dsi_nodes[i]);
> +			if (nodeoff > 0) {
> +set_status:
> +				ret = fdt_setprop(fdt, nodeoff,
> "status", status,
> +						  strlen(status) + 1);
> +				if (ret == -FDT_ERR_NOSPACE) {
> +					ret = fdt_increase_size(fdt,
> 512);
> +					if (!ret)
> +						goto set_status;
> +				}
> +			}
> +		}
> +	}
> +
> +	return 0;
> +}
> +#endif
> +#endif
> +
>  #if !CONFIG_IS_ENABLED(SYSRESET)
>  void reset_cpu(void)
>  {
-- 
PHYTEC Messtechnik GmbH | Robert-Koch-Str. 39 | 55129 Mainz, Germany

Geschäftsführer: Dipl.-Ing. Michael Mitezki, Dipl.-Ing. Bodo Huber |
Handelsregister Mainz HRB 4656 | Finanzamt Mainz | St.Nr. 266500608, DE
149059855


More information about the U-Boot mailing list