[U-Boot-Users] [PATCH/review] Blackfin: update cpu header definitions from latest Blackfin toolchain

Mike Frysinger vapier at gentoo.org
Wed Apr 9 08:17:11 CEST 2008


Signed-off-by: Mike Frysinger <vapier at gentoo.org>
---
 cpu/blackfin/initcode.c                         |    2 +-
 include/asm-blackfin/mach-common/bits/bootrom.h |   11 ++++
 include/asm-blackfin/mach-common/bits/ebiu.h    |    2 +-
 include/asm-blackfin/mach-common/bits/lockbox.h |   68 +++++++++++-----------
 4 files changed, 47 insertions(+), 36 deletions(-)

diff --git a/cpu/blackfin/initcode.c b/cpu/blackfin/initcode.c
index ffc8420..0fa3e53 100644
--- a/cpu/blackfin/initcode.c
+++ b/cpu/blackfin/initcode.c
@@ -212,7 +212,7 @@ static inline void serial_putc(char c)
 # define CONFIG_VR_CTL_VAL (CONFIG_VR_CTL_CLKBUF | CONFIG_VR_CTL_VLEV | CONFIG_VR_CTL_FREQ)
 #endif
 
-__attribute__((saveall))
+BOOTROM_CALLED_FUNC_ATTR
 void initcode(ADI_BOOT_DATA *bootstruct)
 {
 	uint32_t old_baud = serial_init();
diff --git a/include/asm-blackfin/mach-common/bits/bootrom.h b/include/asm-blackfin/mach-common/bits/bootrom.h
index 6cdaa4f..bf661f0 100644
--- a/include/asm-blackfin/mach-common/bits/bootrom.h
+++ b/include/asm-blackfin/mach-common/bits/bootrom.h
@@ -88,6 +88,8 @@
 #define _BOOTROM_REV                   0xEF000040
 #define _BOOTROM_SESR                  0xEF001000
 
+#define BOOTROM_FOLLOWS_C_ABI 1
+
 #define BOOTROM_CAPS_ADI_BOOT_STRUCTS 1
 
 /* Not available on initial BF54x or BF52x */
@@ -100,6 +102,9 @@
 
 #endif
 
+#ifndef BOOTROM_FOLLOWS_C_ABI
+#define BOOTROM_FOLLOWS_C_ABI 0
+#endif
 #ifndef BOOTROM_CAPS_ADI_BOOT_STRUCTS
 #define BOOTROM_CAPS_ADI_BOOT_STRUCTS 0
 #endif
@@ -109,6 +114,12 @@
 
 #ifndef __ASSEMBLY__
 
+#if BOOTROM_FOLLOWS_C_ABI
+# define BOOTROM_CALLED_FUNC_ATTR
+#else
+# define BOOTROM_CALLED_FUNC_ATTR __attribute__((saveall))
+#endif
+
 /* Structures for the syscontrol() function */
 typedef struct ADI_SYSCTRL_VALUES {
 	uint16_t uwVrCtl;
diff --git a/include/asm-blackfin/mach-common/bits/ebiu.h b/include/asm-blackfin/mach-common/bits/ebiu.h
index ab530ad..195ec90 100644
--- a/include/asm-blackfin/mach-common/bits/ebiu.h
+++ b/include/asm-blackfin/mach-common/bits/ebiu.h
@@ -343,7 +343,7 @@
 #define TWR_3		0x00180000	/* SDRAM tWR = 3 cycles */
 #define PUPSD		0x00200000	/* Power-up start delay */
 #define PSM		0x00400000	/* SDRAM power-up sequence = Precharge, mode register set, 8 CBR refresh cycles */
-#define PSS		0x00800000	/* enable SDRAM power-up sequence on next SDRAM access */
+#define PSSE		0x00800000	/* enable SDRAM power-up sequence on next SDRAM access */
 #define SRFS		0x01000000	/* Start SDRAM self-refresh mode */
 #define EBUFE		0x02000000	/* Enable external buffering timing */
 #define FBBRW		0x04000000	/* Fast back-to-back read write enable */
diff --git a/include/asm-blackfin/mach-common/bits/lockbox.h b/include/asm-blackfin/mach-common/bits/lockbox.h
index 8b696f3..09310e1 100644
--- a/include/asm-blackfin/mach-common/bits/lockbox.h
+++ b/include/asm-blackfin/mach-common/bits/lockbox.h
@@ -11,14 +11,14 @@
 
 /* SESR argument structure. Expected to reside at 0xFF900018. */
 typedef struct SESR_args {
-	unsigned short usFlags;		/* security firmware flags		*/
-	unsigned short usIRQMask;	/* interrupt mask			*/
-	unsigned long ulMessageSize;	/* message length in bytes		*/
-	unsigned long ulSFEntryPoint;	/* entry point of secure function	*/
-	unsigned long ulMessagePtr;	/* pointer to the buffer containing	*/
-					/* the digital signature and message	*/
-	unsigned long ulReserved1;	/* reserved				*/
-	unsigned long ulReserved2;	/* reserved				*/
+  unsigned short  usFlags;            /* security firmware flags            */
+  unsigned short  usIRQMask;          /* interrupt mask                     */
+  unsigned long   ulMessageSize;      /* message length in bytes            */
+  unsigned long   ulSFEntryPoint;     /* entry point of secure function     */
+  unsigned long   ulMessagePtr;       /* pointer to the buffer containing
+                                         the digital signature and message  */
+  unsigned long   ulReserved1;        /* reserved                           */
+  unsigned long   ulReserved2;        /* reserved                           */
 } tSESR_args;
 
 /* Secure Entry Service Routine */
@@ -26,37 +26,37 @@ void (* const sesr)(void) = (void *)_BOOTROM_SESR;
 
 #endif
 
-/* SESR flags argument bitfields					    */
-#define SESR_FLAGS_STAY_AT_NMI		    0x0000
-#define SESR_FLAGS_DROP_BELOW_NMI	    0x0001
-#define SESR_FLAGS_NO_SF_DMA		    0x0000
-#define SESR_FLAGS_DMA_SF_TO_RUN_DEST	    0x0002
-#define SESR_FLAGS_USE_ADI_PUB_KEY	    0x0000
-#define SESR_FLAGS_USE_CUST_PUB_KEY	    0x0100
+/* SESR flags argument bitfields                                            */
+#define SESR_FLAGS_STAY_AT_NMI              0x0000
+#define SESR_FLAGS_DROP_BELOW_NMI           0x0001
+#define SESR_FLAGS_NO_SF_DMA                0x0000
+#define SESR_FLAGS_DMA_SF_TO_RUN_DEST       0x0002
+#define SESR_FLAGS_USE_ADI_PUB_KEY          0x0000
+#define SESR_FLAGS_USE_CUST_PUB_KEY         0x0100
 
 /* Bit masks for SECURE_SYSSWT */
-#define EMUDABL		       0x00000001    /* Emulation Disable */
-#define RSTDABL		       0x00000002    /* Reset Disable */
-#define L1IDABL		       0x0000001c    /* L1 Instruction Memory Disable */
-#define L1DADABL	       0x000000e0    /* L1 Data Bank A Memory Disable */
-#define L1DBDABL	       0x00000700    /* L1 Data Bank B Memory Disable */
-#define DMA0OVR		       0x00000800    /* DMA0 Memory Access Override */
-#define DMA1OVR		       0x00001000    /* DMA1 Memory Access Override */
-#define EMUOVR		       0x00004000    /* Emulation Override */
-#define OTPSEN		       0x00008000    /* OTP Secrets Enable */
-#define L2DABL		       0x00070000    /* L2 Memory Disable */
+#define EMUDABL                0x00000001    /* Emulation Disable */
+#define RSTDABL                0x00000002    /* Reset Disable */
+#define L1IDABL                0x0000001c    /* L1 Instruction Memory Disable */
+#define L1DADABL               0x000000e0    /* L1 Data Bank A Memory Disable */
+#define L1DBDABL               0x00000700    /* L1 Data Bank B Memory Disable */
+#define DMA0OVR                0x00000800    /* DMA0 Memory Access Override */
+#define DMA1OVR                0x00001000    /* DMA1 Memory Access Override */
+#define EMUOVR                 0x00004000    /* Emulation Override */
+#define OTPSEN                 0x00008000    /* OTP Secrets Enable */
+#define L2DABL                 0x00070000    /* L2 Memory Disable */
 
 /* Bit masks for SECURE_CONTROL */
-#define SECURE0		       0x0001	     /* SECURE 0 */
-#define SECURE1		       0x0002	     /* SECURE 1 */
-#define SECURE2		       0x0004	     /* SECURE 2 */
-#define SECURE3		       0x0008	     /* SECURE 3 */
+#define SECURE0                0x0001        /* SECURE 0 */
+#define SECURE1                0x0002        /* SECURE 1 */
+#define SECURE2                0x0004        /* SECURE 2 */
+#define SECURE3                0x0008        /* SECURE 3 */
 
 /* Bit masks for SECURE_STATUS */
-#define SECMODE		       0x0003	     /* Secured Mode Control State */
-#define NMI		       0x0004	     /* Non Maskable Interrupt */
-#define AFVALID		       0x0008	     /* Authentication Firmware Valid */
-#define AFEXIT		       0x0010	     /* Authentication Firmware Exit */
-#define SECSTAT		       0x00e0	     /* Secure Status */
+#define SECMODE                0x0003        /* Secured Mode Control State */
+#define NMI                    0x0004        /* Non Maskable Interrupt */
+#define AFVALID                0x0008        /* Authentication Firmware Valid */
+#define AFEXIT                 0x0010        /* Authentication Firmware Exit */
+#define SECSTAT                0x00e0        /* Secure Status */
 
 #endif
-- 
1.5.4.4





More information about the U-Boot mailing list