summaryrefslogtreecommitdiff
path: root/cleopatre/u-boot-1.1.6/include/asm-arm
diff options
context:
space:
mode:
Diffstat (limited to 'cleopatre/u-boot-1.1.6/include/asm-arm')
-rw-r--r--cleopatre/u-boot-1.1.6/include/asm-arm/arch-spc300/bus_sys.h4
-rw-r--r--cleopatre/u-boot-1.1.6/include/asm-arm/arch-spc300/miu.h28
-rw-r--r--cleopatre/u-boot-1.1.6/include/asm-arm/arch-spc300/nvram.h21
3 files changed, 49 insertions, 4 deletions
diff --git a/cleopatre/u-boot-1.1.6/include/asm-arm/arch-spc300/bus_sys.h b/cleopatre/u-boot-1.1.6/include/asm-arm/arch-spc300/bus_sys.h
index e4070dd1e3..b0ce550a14 100644
--- a/cleopatre/u-boot-1.1.6/include/asm-arm/arch-spc300/bus_sys.h
+++ b/cleopatre/u-boot-1.1.6/include/asm-arm/arch-spc300/bus_sys.h
@@ -41,6 +41,10 @@
#define TCU_BASE (0x20000000)
+#define MIU_REG_BASE (0xC8050000)
+#define MIU_ATOP_REG_BASE (0xC8060000)
+#include "miu.h"
+
#define SDRAM_CTRL_BASE (0xE0000000)
#include "sdram.h"
diff --git a/cleopatre/u-boot-1.1.6/include/asm-arm/arch-spc300/miu.h b/cleopatre/u-boot-1.1.6/include/asm-arm/arch-spc300/miu.h
new file mode 100644
index 0000000000..eb74a5177b
--- /dev/null
+++ b/cleopatre/u-boot-1.1.6/include/asm-arm/arch-spc300/miu.h
@@ -0,0 +1,28 @@
+/*
+ * include/asm-arm/arch-spc300/miu.h
+ *
+ * Copyright (C) 2012 SPiDCOM Technologies
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of
+ * the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ */
+
+#ifndef __ASM_ARCH_MIU_H
+#define __ASM_ARCH_MIU_H
+
+#define MIU_INIT_DONE_REG 0
+#define MIU_INIT_DONE_BIT 15
+
+#endif /* __ASM_ARCH_MIU_H */
diff --git a/cleopatre/u-boot-1.1.6/include/asm-arm/arch-spc300/nvram.h b/cleopatre/u-boot-1.1.6/include/asm-arm/arch-spc300/nvram.h
index 879fe3f29a..51ece26abe 100644
--- a/cleopatre/u-boot-1.1.6/include/asm-arm/arch-spc300/nvram.h
+++ b/cleopatre/u-boot-1.1.6/include/asm-arm/arch-spc300/nvram.h
@@ -32,6 +32,8 @@
#define NVRAM_SDRAM_TIMING0_OFFSET 0x1C
#define NVRAM_SDRAM_TIMING1_OFFSET 0x20
#define NVRAM_SDRAM_REFRESH_OFFSET 0x24
+#define NVRAM_MIU_CONFIG_OFFSET 0x18
+#define NVRAM_MIU_RAM_SIZE_OFFSET 0x1C
#define NVRAM_FLASH_ORG_OFFSET 0x28
#define NVRAM_IMG_0_OFFSET_OFFSET 0x2C
#define NVRAM_NB_IMAGES_OFFSET 0x30
@@ -183,10 +185,20 @@ typedef struct
uint32_t gpio_0_7_cfg; // SPC300 GPIO 0 to 7 configuration register
uint32_t gpio_8_15_cfg; // SPC300 GPIO 8 to 15 configuration register
uint32_t gpio_allow_dir; // SPC300 GPIO allowed direction 0:none 1:in 2:out 3:bi
- uint32_t sdram_config; // SPC300 SDRAM configuration register
- uint32_t sdram_timing0; // SPC300 SDRAM timing register 0
- uint32_t sdram_timing1; // SPC300 SDRAM timing register 1
- uint32_t sdram_refresh; // SPC300 SDRAM refresh register
+ union {
+ struct {
+ uint32_t config; // SPC300 SDRAM configuration register
+ uint32_t timing0; // SPC300 SDRAM timing register 0
+ uint32_t timing1; // SPC300 SDRAM timing register 1
+ uint32_t refresh; // SPC300 SDRAM refresh register
+ } sdram;
+ struct {
+ uint16_t config_offset; // Offset of MIU config in nvram
+ uint16_t config_size; // Size of MIU config in words
+ uint32_t ram_size; // Size of MIU connected RAM in bytes
+ uint32_t reserved[2];
+ } miu;
+ } dram;
uint32_t flash_org; // Flash organization
uint32_t img_0_offset; // Offset of first image address
uint32_t nb_images; // Max Number of Images present in flash
@@ -205,6 +217,7 @@ typedef struct
char manufactory_info[64]; // Name of the product manufacturer
uint32_t img_max_size; // Max size of an image in flash
uint32_t cpu_partnb; // SPC3x0 partnb
+ uint32_t dynamic[256]; // Dynamic data (see miu_config)
} spc300_nvram_t; //Currently __attribute__((packed)) not needed
// Bit manipulation macros