Re: [PATCH v2 2/2] ARM: imx: Add Support for Webasto ccbv2

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 2020-10-09 at 09:14 +0200, Sascha Hauer wrote:
> On Wed, Oct 07, 2020 at 03:07:58PM +0200, Rouven Czerwinski wrote:
> > +device_initcall(ccbv2_device_init);
> > +
> > +static int ccbv2_apply_overlay(void)
> > +{
> > +	struct device_node *overlay;
> > +	struct fdt_header *fdt;
> > +	int ret;
> > +
> > +	if(!IS_ENABLED(CONFIG_FIRMWARE_CCBV2_OPTEE)
> > +	   || !of_machine_is_compatible("webasto,imx6ul-ccbv2"))
> > +		return 0;
> > +
> > +	fdt = (void*)OPTEE_OVERLAY_LOCATION;
> > +	overlay = of_unflatten_dtb(fdt);
> > +
> > +	if (IS_ERR(overlay))
> > +		return PTR_ERR(overlay);
> > +
> > +	ret = of_register_overlay(overlay);
> > +	if (ret) {
> > +		printf("cannot apply oftree overlay: %s\n", strerror(-
> > ret));
> > +		goto err;
> > +	}
> > +
> > +	return 0;
> > +err:
> > +	of_delete_node(overlay);
> > +	return ret;
> > +}
> > +device_initcall(ccbv2_apply_overlay);
> 
> No need for two initcalls, please combine into one. Also, you could try
> Oleksijs new way of registering board code as a driver, see 5e1fc532538.

Right, will do.

> > +static void configure_uart(void)
> > +{
> > +	void __iomem *iomuxbase = (void *)MX6_IOMUXC_BASE_ADDR;
> > +
> > +	imx6_ungate_all_peripherals();
> > +
> > +	imx_setup_pad(iomuxbase, MX6_PAD_LCD_DATA16__UART7_DCE_TX);
> > +	imx_setup_pad(iomuxbase, MX6_PAD_LCD_DATA17__UART7_DCE_RX);
> > +
> > +	imx6_uart_setup((void *)MX6_UART7_BASE_ADDR);
> > +
> > +	if (IS_ENABLED(CONFIG_DEBUG_LL))
> > +		putc_ll('>');
> 
> No need to put that in a IS_ENABLED(CONFIG_DEBUG_LL), without it
> putc_ll() is a no-op anyway.

Great, will fix.

> > diff --git a/firmware/Kconfig b/firmware/Kconfig
> > index 97b7b3c2ee..c2ff51b911 100644
> > --- a/firmware/Kconfig
> > +++ b/firmware/Kconfig
> > @@ -16,4 +16,9 @@ config FIRMWARE_IMX8MP_ATF
> >  config FIRMWARE_IMX8MQ_ATF
> >          bool
> >  
> > +config FIRMWARE_CCBV2_OPTEE
> > +	bool
> > +	depends on MACH_WEBASTO_CCBV2 && PBL_OPTEE
> > +	default y
> 
> This makes the firmware mandatory for compiling this board, right? Can
> we make this optional so that we can enable the board in
> imx_v7_defconfig?

The firmware is only mandatory if OP-TEE early loading is enabled,
which AFAIK isn't the case for the defconfig, so we should be fine
there.
I'll add it to the defconfig.

Regards,
Rouven


_______________________________________________
barebox mailing list
barebox@xxxxxxxxxxxxxxxxxxx
http://lists.infradead.org/mailman/listinfo/barebox



[Index of Archives]     [Linux Embedded]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux