[U-Boot] [PATCH 03/12 v2] serial: atmel_usart: Use fixed clock value in SPL version with DM_SERIAL

Eugen.Hristev at microchip.com Eugen.Hristev at microchip.com
Fri Mar 29 09:54:06 UTC 2019



On 26.03.2019 14:16, Stefan Roese wrote:

> This patch adds an alterative SPL version of atmel_serial_enable_clk().
> This enables the usage of this driver without full clock support (in
> drivers and DT nodes). This saves some space in the SPL image.
> 
> Please note that this fixed clock support is only added to the SPL code
> in the DM_SERIAL part of this file. All boards not using SPL & DM_SERIAL
> should not be affected.

Hello Stefan,

For example, sama5d2_xplained_mmc_defconfig has DM_SERIAL and SPL.
This means it's affected ? If so, then it's not OK to take it as-is.

And another question, is the rest of your patch series OK if this patch 
is missing ? Or it's any dependency on this ? the SPL for Gardena will 
not fit in the SRAM without this patch ?

Eugen

> 
> If some boards need a different clock than the one provided with this
> patch, then support for this needs to be added later.
> 
> Signed-off-by: Stefan Roese <sr at denx.de>
> Cc: Heiko Schocher <hs at denx.de>
> Cc: Andreas Bießmann <andreas at biessmann.org>
> Cc: Eugen Hristev <eugen.hristev at microchip.com>
> ---
> v2:
> - Reword patch subject and commit text to make it more clear, that
>    this change only affects ports with SPL and DM_SERIAL enabled
> 
>   drivers/serial/atmel_usart.c | 12 ++++++++++++
>   1 file changed, 12 insertions(+)
> 
> diff --git a/drivers/serial/atmel_usart.c b/drivers/serial/atmel_usart.c
> index aa8cdff840..049172baef 100644
> --- a/drivers/serial/atmel_usart.c
> +++ b/drivers/serial/atmel_usart.c
> @@ -218,6 +218,17 @@ static const struct dm_serial_ops atmel_serial_ops = {
>   	.setbrg = atmel_serial_setbrg,
>   };
>   
> +#ifdef CONFIG_SPL_BUILD
> +static int atmel_serial_enable_clk(struct udevice *dev)
> +{
> +	struct atmel_serial_priv *priv = dev_get_priv(dev);
> +
> +	/* Use fixed clock value in SPL */
> +	priv->usart_clk_rate = 132096000;
> +
> +	return 0;
> +}
> +#else
>   static int atmel_serial_enable_clk(struct udevice *dev)
>   {
>   	struct atmel_serial_priv *priv = dev_get_priv(dev);
> @@ -245,6 +256,7 @@ static int atmel_serial_enable_clk(struct udevice *dev)
>   
>   	return 0;
>   }
> +#endif
>   
>   static int atmel_serial_probe(struct udevice *dev)
>   {
> 


More information about the U-Boot mailing list