mpc85xx: Add support for the P2020
[oweals/u-boot.git] / include / configs / mgsuvd.h
index 7a80dad0eb269c1873f4da62a4d0229a1de4b960..f53b6d38278365b39236212c2f3a662f5a28705b 100644 (file)
@@ -36,8 +36,8 @@
 #define CONFIG_MPC866          1       /* This is a MPC866 CPU         */
 #define CONFIG_MGSUVD          1       /* ...on a mgsuvd board */
 
-/* Do boardspecific init */
-#define CONFIG_BOARD_EARLY_INIT_R       1
+/* include common defines/options for all Keymile boards */
+#include "keymile-common.h"
 
 #define CONFIG_8xx_GCLK_FREQ           66000000
 
 #define CONFIG_SYS_SMC_DPMEM_OFFSET    0x1fc0
 #define CONFIG_8xx_CONS_SMC1   1       /* Console is on SMC1           */
 
-#define CONFIG_BAUDRATE                115200  /* console baudrate = 115kbps   */
-
-#define CONFIG_BOOTCOUNT_LIMIT
 #define CONFIG_SYS_CPM_BOOTCOUNT_ADDR  0x1eb0  /* In case of SMC relocation, the
                                         * default value is not working */
 
-#define CONFIG_BOOTDELAY       5       /* autoboot after 5 seconds     */
-
-#define CONFIG_BOARD_TYPES     1       /* support board types          */
-
 #define CONFIG_PREBOOT "echo;" \
        "echo Type \\\"run flash_nfs\\\" to mount root filesystem over NFS;" \
        "echo"
 
-#undef CONFIG_BOOTARGS
-
 #define CONFIG_EXTRA_ENV_SETTINGS                                              \
        "netdev=eth0\0"                                                         \
        "addcons=setenv bootargs ${bootargs} console=ttyCPM0,${baudrate}\0"     \
                "cp.b 200000 f0000000 ${filesize};"                             \
                "protect on f0000000 +${filesize}\0"                            \
        ""
-#define CONFIG_BOOTCOMMAND     "run flash_self"
-
-#define CONFIG_LOADS_ECHO      1       /* echo on for serial download  */
-#undef CONFIG_SYS_LOADS_BAUD_CHANGE            /* don't allow baudrate change  */
-
-#undef CONFIG_WATCHDOG                 /* watchdog disabled            */
-
-/*
- * BOOTP options
- */
-#define CONFIG_BOOTP_SUBNETMASK
-#define CONFIG_BOOTP_GATEWAY
-#define CONFIG_BOOTP_HOSTNAME
-#define CONFIG_BOOTP_BOOTPATH
-#define CONFIG_BOOTP_BOOTFILESIZE
 
 #undef CONFIG_RTC_MPC8xx               /* MPC866 does not support RTC  */
 
 #define        CONFIG_TIMESTAMP                /* but print image timestmps    */
 
-/*
- * Command line configuration.
- */
-#include <config_cmd_default.h>
-
-#define CONFIG_CMD_ASKENV
-#define CONFIG_CMD_DHCP
-#define CONFIG_CMD_DTT
-#define CONFIG_CMD_EEPROM
-#define CONFIG_CMD_I2C
-#define CONFIG_CMD_NFS
-#define CONFIG_CMD_PING
-
-/*
- * Miscellaneous configurable options
- */
-#define CONFIG_SYS_LONGHELP                    /* undef to save memory         */
-#define CONFIG_SYS_PROMPT              "=> "   /* Monitor Command Prompt       */
-
-#define CONFIG_CMDLINE_EDITING 1       /* add command line history     */
-#define CONFIG_SYS_HUSH_PARSER         1       /* Use the HUSH parser          */
-#ifdef CONFIG_SYS_HUSH_PARSER
-#define        CONFIG_SYS_PROMPT_HUSH_PS2      "> "
-#define CONFIG_HUSH_INIT_VAR   1
-#endif
-
-#if defined(CONFIG_CMD_KGDB)
-#define CONFIG_SYS_CBSIZE              1024    /* Console I/O Buffer Size      */
-#else
-#define CONFIG_SYS_CBSIZE              256     /* Console I/O Buffer Size      */
-#endif
-#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE+sizeof(CONFIG_SYS_PROMPT)+16) /* Print Buffer Size */
-#define CONFIG_SYS_MAXARGS             16      /* max number of command args   */
-#define CONFIG_SYS_BARGSIZE    CONFIG_SYS_CBSIZE       /* Boot Argument Buffer Size    */
-
-#define CONFIG_SYS_MEMTEST_START       0x0400000       /* memtest works on     */
-#define CONFIG_SYS_MEMTEST_END         0x0C00000       /* 4 ... 12 MB in DRAM  */
-
-#define CONFIG_SYS_LOAD_ADDR           0x100000        /* default load address */
-
-#define CONFIG_SYS_HZ                  1000    /* decrementer freq: 1 ms ticks */
-
-#define CONFIG_SYS_BAUDRATE_TABLE      { 9600, 19200, 38400, 57600, 115200 }
-
 /*
  * Low Level Configuration Settings
  * (address mappings, register initial values, etc.)
 #define CONFIG_ENV_IS_IN_FLASH 1
 #define CONFIG_ENV_OFFSET              0x40000 /*   Offset   of Environment Sector     */
 #define CONFIG_ENV_SIZE                0x08000 /* Total Size of Environment Sector     */
-#define CONFIG_ENV_SECT_SIZE   0x40000 /* Total Size of Environment Sector     */
+#define CONFIG_ENV_SECT_SIZE   0x20000 /* Total Size of Environment Sector     */
 
 /* Address and size of Redundant Environment Sector    */
 #define CONFIG_ENV_OFFSET_REDUND       (CONFIG_ENV_OFFSET+CONFIG_ENV_SECT_SIZE)
 #define CONFIG_ENV_SIZE_REDUND (CONFIG_ENV_SIZE)
 
-#define        CONFIG_SYS_USE_PPCENV                   /* Environment embedded in sect .ppcenv */
-
 /*-----------------------------------------------------------------------
  * Cache Configuration
  */
 #define CONFIG_OF_LIBFDT       1
 #define CONFIG_OF_BOARD_SETUP  1
 
-#define OF_CPU                 "PowerPC,866@0"
-#define OF_SOC                 "soc@fff00000"
-#define OF_TBCLK               (bd->bi_busfreq / 4)
 #define OF_STDOUT_PATH         "/soc/cpm/serial@a80"
 
 /* enable I2C and select the hardware/software driver */
 /*
  * Software (bit-bang) I2C driver configuration
  */
-#define I2C_BASE_DIR   (CONFIG_SYS_PIGGY_BASE + 0x04)
-#define I2C_BASE_PORT  (CONFIG_SYS_PIGGY_BASE + 0x09)
+#define I2C_BASE_DIR   ((u16 *)(CONFIG_SYS_PIGGY_BASE + 0x04))
+#define I2C_BASE_PORT  ((u8 *)(CONFIG_SYS_PIGGY_BASE + 0x09))
 
 #define SDA_BIT                0x40
 #define SCL_BIT                0x80
 
 #define I2C_ACTIVE     do {} while (0)
 #define I2C_TRISTATE   do {} while (0)
-#define I2C_READ       i2c_soft_read_pin ()
+#define I2C_READ       ((in_8(I2C_BASE_PORT) & SDA_BIT) == SDA_BIT)
 #define I2C_SDA(bit)   if(bit) { \
-                               *(unsigned short *)(I2C_BASE_DIR) &=  ~SDA_CONF; \
-                               } \
-                       else    { \
-                               *(unsigned char *)(I2C_BASE_PORT) &= ~SDA_BIT; \
-                               *(unsigned short *)(I2C_BASE_DIR) |= SDA_CONF; \
-                               }
+                               clrbits(be16, I2C_BASE_DIR, SDA_CONF); \
+                       } else { \
+                               clrbits(8, I2C_BASE_PORT, SDA_BIT); \
+                               setbits(be16, I2C_BASE_DIR, SDA_CONF); \
+                       }
 #define I2C_SCL(bit)   if(bit) { \
-                               *(unsigned short *)(I2C_BASE_DIR) &=  ~SCL_CONF; \
-                               } \
-                       else    { \
-                               *(unsigned char *)(I2C_BASE_PORT) &= ~SCL_BIT; \
-                               *(unsigned short *)(I2C_BASE_DIR) |= SCL_CONF; \
-                               }
+                               clrbits(be16, I2C_BASE_DIR, SCL_CONF); \
+                       } else { \
+                               clrbits(8, I2C_BASE_PORT, SCL_BIT); \
+                               setbits(be16, I2C_BASE_DIR, SCL_CONF); \
+                       }
 #define I2C_DELAY      udelay(50)      /* 1/4 I2C clock duration */
 
 #define CONFIG_I2C_MULTI_BUS   1