[PATCH 1/4] arm: at91: move atmel_serial.h to include/dm/platform_data
Robert Marko
robert.marko at sartura.hr
Mon Jan 12 10:52:49 CET 2026
On Mon, Jan 12, 2026 at 9:46 AM Eugen Hristev <eugen.hristev at linaro.org> wrote:
>
>
>
> On 12/30/25 23:01, Robert Marko wrote:
> > Move the arch specific atmel_serial.h header from AT91 to the generic
> > include/dm/platform_data.
> >
> > This will be used for support on Microchip LAN969x.
> >
> > Signed-off-by: Robert Marko <robert.marko at sartura.hr>
> > ---
> > board/bluewater/gurnard/gurnard.c | 2 +-
> > board/siemens/corvus/board.c | 2 +-
> > board/siemens/smartweb/smartweb.c | 2 +-
> > board/siemens/taurus/taurus.c | 2 +-
> > drivers/serial/atmel_usart.c | 2 +-
> > .../include/mach => include/dm/platform_data}/atmel_serial.h | 0
> > 6 files changed, 5 insertions(+), 5 deletions(-)
> > rename {arch/arm/mach-at91/include/mach => include/dm/platform_data}/atmel_serial.h (100%)
> >
> > diff --git a/board/bluewater/gurnard/gurnard.c b/board/bluewater/gurnard/gurnard.c
> > index 3275803226a..71db6409721 100644
> > --- a/board/bluewater/gurnard/gurnard.c
> > +++ b/board/bluewater/gurnard/gurnard.c
> > @@ -29,7 +29,7 @@
> > #include <asm/arch/at91_rstc.h>
> > #include <asm/arch/at91_rtc.h>
> > #include <asm/arch/at91_sck.h>
> > -#include <asm/arch/atmel_serial.h>
> > +#include <dm/platform_data/atmel_serial.h>
> > #include <asm/arch/clk.h>
> > #include <asm/arch/gpio.h>
> > #include <dm/uclass-internal.h>
> > diff --git a/board/siemens/corvus/board.c b/board/siemens/corvus/board.c
> > index a8714e055d7..7a70a7dfc8b 100644
> > --- a/board/siemens/corvus/board.c
> > +++ b/board/siemens/corvus/board.c
> > @@ -20,7 +20,7 @@
> > #include <asm/arch/at91sam9_smc.h>
> > #include <asm/arch/at91_common.h>
> > #include <asm/arch/at91_rstc.h>
> > -#include <asm/arch/atmel_serial.h>
> > +#include <dm/platform_data/atmel_serial.h>
> > #include <asm/arch/gpio.h>
> > #include <asm/gpio.h>
> > #include <asm/arch/clk.h>
> > diff --git a/board/siemens/smartweb/smartweb.c b/board/siemens/smartweb/smartweb.c
> > index 6fa3ca573ae..ce16aad3b98 100644
> > --- a/board/siemens/smartweb/smartweb.c
> > +++ b/board/siemens/smartweb/smartweb.c
> > @@ -25,7 +25,7 @@
> > #include <asm/arch/at91sam9260_matrix.h>
> > #include <asm/arch/at91sam9_smc.h>
> > #include <asm/arch/at91_common.h>
> > -#include <asm/arch/atmel_serial.h>
> > +#include <dm/platform_data/atmel_serial.h>
> > #include <asm/arch/at91_spi.h>
> > #include <spi.h>
> > #include <asm/arch/clk.h>
> > diff --git a/board/siemens/taurus/taurus.c b/board/siemens/taurus/taurus.c
> > index 252b0787124..690c00046fa 100644
> > --- a/board/siemens/taurus/taurus.c
> > +++ b/board/siemens/taurus/taurus.c
> > @@ -24,7 +24,7 @@
> > #include <asm/arch/at91_rstc.h>
> > #include <asm/arch/gpio.h>
> > #include <asm/arch/at91sam9_sdramc.h>
> > -#include <asm/arch/atmel_serial.h>
> > +#include <dm/platform_data/atmel_serial.h>
> > #include <asm/arch/clk.h>
> > #include <asm/gpio.h>
> > #include <linux/mtd/rawnand.h>
> > diff --git a/drivers/serial/atmel_usart.c b/drivers/serial/atmel_usart.c
> > index 0b35582aaa4..d6c3d4cbcc8 100644
> > --- a/drivers/serial/atmel_usart.c
> > +++ b/drivers/serial/atmel_usart.c
> > @@ -18,7 +18,7 @@
> >
> > #include <asm/io.h>
> > #if CONFIG_IS_ENABLED(DM_SERIAL)
> > -#include <asm/arch/atmel_serial.h>
> > +#include <dm/platform_data/atmel_serial.h>
> > #endif
> > #include <asm/arch/clk.h>
> > #include <asm/arch/hardware.h>
> > diff --git a/arch/arm/mach-at91/include/mach/atmel_serial.h b/include/dm/platform_data/atmel_serial.h
> > similarity index 100%
> > rename from arch/arm/mach-at91/include/mach/atmel_serial.h
> > rename to include/dm/platform_data/atmel_serial.h
>
> Hello Robert,
>
> These patches break the build for some boards. e.g. corvus_defconfig
>
>
> drivers/serial/atmel_usart.c: In function ‘atmel_serial_setbrg_internal’:
> drivers/serial/atmel_usart.c:44:20: error: implicit declaration of
> function ‘get_usart_clk_rate’ [-Werror=implicit-function-declaration]
> 44 | usart_hz = get_usart_clk_rate(id);
> | ^~~~~~~~~~~~~~~~~~
> AR spl/disk/built-in.a
> CC spl/fs/fs_internal.o
> cc1: some warnings being treated as errors
So, somehow during the SPL build, the following is not evaluated as true:
#if CONFIG_IS_ENABLED(ARCH_AT91)
Which is rather weird as u-boot.cfg in the spl dir has:
#define CONFIG_ARCH_AT91 1
So, this is some CONFIG_IS_ENABLED interaction with SPL that I am not
really familiar with as
#if IS_ENABLED(CONFIG_ARCH_AT91) works just fine and gets the header included.
Regards,
Robert
>
>
> Please have a look,
> thanks,
> Eugen
>
--
Robert Marko
Staff Embedded Linux Engineer
Sartura d.d.
Lendavska ulica 16a
10000 Zagreb, Croatia
Email: robert.marko at sartura.hr
Web: www.sartura.hr
More information about the U-Boot
mailing list