diff mbox

[U-Boot,2/2] arm920t/at91: use new clock features from libat91-common

Message ID 1307489278-96804-3-git-send-email-andreas.devel@googlemail.com
State Superseded
Delegated to: Reinhard Meyer
Headers show

Commit Message

Andreas Bießmann June 7, 2011, 11:27 p.m. UTC
This patch enables the new clock features from new libat91-common. This
is a required step to get at91rm9200_usart replaced by atmel_usart
driver.

Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
CC: Jens Scharsig <js_at_ng@scharsoft.de>
CC: Eric Bénard <eric@eukrea.com>
---
 arch/arm/cpu/arm920t/at91/Makefile          |    1 +
 arch/arm/include/asm/arch-at91/at91rm9200.h |    1 +
 include/configs/at91rm9200ek.h              |    3 +++
 include/configs/cpuat91.h                   |    5 +++--
 include/configs/eb_cpux9k2.h                |    4 ++--
 5 files changed, 10 insertions(+), 4 deletions(-)

Comments

Jens Scharsig June 8, 2011, 5:06 p.m. UTC | #1
Am 08.06.2011 01:27, schrieb Andreas Bießmann:
>
> diff --git a/arch/arm/cpu/arm920t/at91/Makefile b/arch/arm/cpu/arm920t/at91/Makefile
> index 5c71b77..872461a 100644
> --- a/arch/arm/cpu/arm920t/at91/Makefile
> +++ b/arch/arm/cpu/arm920t/at91/Makefile
> @@ -28,6 +28,7 @@ LIB	= $(obj)lib$(SOC).o
>   SOBJS	+= lowlevel_init.o
>   COBJS	+= reset.o
>   COBJS	+= timer.o
> +COBJS	+= cpu.o
>
>   SRCS	:= $(SOBJS:.o=.S) $(COBJS:.o=.c)
>   OBJS	:= $(addprefix $(obj),$(SOBJS) $(COBJS))
> diff --git a/arch/arm/include/asm/arch-at91/at91rm9200.h b/arch/arm/include/asm/arch-at91/at91rm9200.h
> index ff18014..979241e 100644

Dear Andreas Bießmann,

I am running in the following error:

.....
make -C arch/arm/cpu/arm920t/at91/
make[1]: Entering directory `/home/scharsig/projects/CPUx9K2/u-boot/arch/arm/cpu/arm920t/at91'
make[1]: *** No rule to make target `cpu.c', needed by `.depend'.  Stop.
make[1]: Leaving directory `/home/scharsig/projects/CPUx9K2/u-boot/arch/arm/cpu/arm920t/at91'
make: *** [arch/arm/cpu/arm920t/at91/libat91.o] Error 2


Is it possible that the patch is incomplete
or is an additional patch needed

Best regards

Jens Scharsig
Andreas Bießmann June 9, 2011, 9:49 a.m. UTC | #2
resent to right list ...

Dear Reinhard Meyer,

Am 09.06.2011 11:21, schrieb Reinhard Meyer:
> Dear Andreas Bießmann,
>> This patch enables the new clock features from new libat91-common. This
>> is a required step to get at91rm9200_usart replaced by atmel_usart
>> driver.
>>
>> Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
>>
>> Cc: Jens Scharsig <js_at_ng@scharsoft.de>
>> Cc: Eric Bénard <eric@eukrea.com>

> 
> I think this should go into NEXT unleass it unbreaks that board right now.
> You mentioned in another mail that it would be ok to be in 2011.09.
> Is that OK?

I'm fine with that. The arm920t/at91 boards do build (with minor
warnings in at91_emac and at91rm9200_usart) and work on real hardware
since 9e8df9c4db7835152996c96cc432dc6dd70bb17c

The warnings are:
 - 'at91_emac.c:487:2: warning: dereferencing type-punned pointer will
    break strict-aliasing rules' in at91_emac -> you know about that
   ... it is the same as in macb driver and will also be fixed soon.
 - 'at91rm9200_usart.c:39:2: warning: #warning Please update to use C
    structur SoC access !' -> at91rm9200_usart will be removed soon

Therefore I do not see any reason to remove those arm920t/at91 boards.

I will do some more testing with atmel_usart driver on atrm9200 devices
and send for review this weekend. The big removal of old-style
at91rm9200 boards can begin after that cause the deprecated
at91rm9200_usart driver needs some outdated stuff which will also be
removed in that step.

Besides that, I found out cpu.c (in that commit) is missing a GPL header
and copyright notice. So please do not add this version.

regards

Andreas Bießmann
diff mbox

Patch

diff --git a/arch/arm/cpu/arm920t/at91/Makefile b/arch/arm/cpu/arm920t/at91/Makefile
index 5c71b77..872461a 100644
--- a/arch/arm/cpu/arm920t/at91/Makefile
+++ b/arch/arm/cpu/arm920t/at91/Makefile
@@ -28,6 +28,7 @@  LIB	= $(obj)lib$(SOC).o
 SOBJS	+= lowlevel_init.o
 COBJS	+= reset.o
 COBJS	+= timer.o
+COBJS	+= cpu.o
 
 SRCS	:= $(SOBJS:.o=.S) $(COBJS:.o=.c)
 OBJS	:= $(addprefix $(obj),$(SOBJS) $(COBJS))
diff --git a/arch/arm/include/asm/arch-at91/at91rm9200.h b/arch/arm/include/asm/arch-at91/at91rm9200.h
index ff18014..979241e 100644
--- a/arch/arm/include/asm/arch-at91/at91rm9200.h
+++ b/arch/arm/include/asm/arch-at91/at91rm9200.h
@@ -22,6 +22,7 @@ 
 #define __AT91RM9200_H__
 
 #define CONFIG_AT91FAMILY	/* it's a member of AT91 */
+#define CONFIG_ARCH_CPU_INIT	/* we need arch_cpu_init() for hw timers */
 #define CONFIG_ARM920T		/* This is an ARM920T Core	*/
 
 /* Periperial Identifiers */
diff --git a/include/configs/at91rm9200ek.h b/include/configs/at91rm9200ek.h
index 16cd214..ee199ab 100644
--- a/include/configs/at91rm9200ek.h
+++ b/include/configs/at91rm9200ek.h
@@ -55,6 +55,7 @@ 
  * CONFIG_SYS_HZ is the tick rate for timer tc0
  */
 #define AT91C_XTAL_CLOCK		18432000
+#define CONFIG_SYS_AT91_SLOW_CLOCK	32768
 #define AT91C_MAIN_CLOCK		((AT91C_XTAL_CLOCK / 4) * 39)
 #define AT91C_MASTER_CLOCK		(AT91C_MAIN_CLOCK / 3 )
 #define CONFIG_SYS_HZ_CLOCK		(AT91C_MASTER_CLOCK / 2)
@@ -66,6 +67,8 @@ 
 #define CONFIG_CPUAT91
 #define USE_920T_MMU
 
+#include <asm/hardware.h>	/* needed for port definitions */
+
 #define CONFIG_CMDLINE_TAG
 #define CONFIG_SETUP_MEMORY_TAGS
 #define CONFIG_INITRD_TAG
diff --git a/include/configs/cpuat91.h b/include/configs/cpuat91.h
index cfaef15..2bda72b 100644
--- a/include/configs/cpuat91.h
+++ b/include/configs/cpuat91.h
@@ -37,6 +37,7 @@ 
 #endif
 
 #define AT91C_XTAL_CLOCK		18432000
+#define CONFIG_SYS_AT91_SLOW_CLOCK	32768
 #define AT91C_MAIN_CLOCK		((AT91C_XTAL_CLOCK / 4) * 39)
 #define AT91C_MASTER_CLOCK		(AT91C_MAIN_CLOCK / 3)
 #define CONFIG_SYS_HZ_CLOCK		(AT91C_MASTER_CLOCK / 2)
@@ -45,11 +46,11 @@ 
 #define CONFIG_ARM920T
 #define CONFIG_AT91RM9200
 #define CONFIG_CPUAT91
-#define CONFIG_AT91FAMILY
-
 #undef CONFIG_USE_IRQ
 #define USE_920T_MMU
 
+#include <asm/hardware.h>	/* needed for port definitions */
+
 #define CONFIG_CMDLINE_TAG
 #define CONFIG_SETUP_MEMORY_TAGS
 #define CONFIG_INITRD_TAG
diff --git a/include/configs/eb_cpux9k2.h b/include/configs/eb_cpux9k2.h
index e12770a..25b28f5 100644
--- a/include/configs/eb_cpux9k2.h
+++ b/include/configs/eb_cpux9k2.h
@@ -36,7 +36,7 @@ 
 #define CONFIG_VERSION_VARIABLE
 #define CONFIG_IDENT_STRING	" on EB+CPUx9K2"
 
-#include <asm/arch/hardware.h>	/* needed for port definitions */
+#include <asm/hardware.h>	/* needed for port definitions */
 
 #define CONFIG_MISC_INIT_R
 
@@ -69,7 +69,7 @@ 
 #define CONFIG_SYS_HZ		1000
 #define CONFIG_SYS_HZ_CLOCK 	(AT91C_MASTER_CLOCK / 2)
 
-#define AT91_SLOW_CLOCK			32768		/* slow clock */
+#define CONFIG_SYS_AT91_SLOW_CLOCK	32768		/* slow clock */
 
 #define CONFIG_CMDLINE_TAG		1
 #define CONFIG_SETUP_MEMORY_TAGS	1