Merge branch 'mpc86xx'
[oweals/u-boot.git] / include / configs / mcc200.h
index d4dee3b77a1c5b85ec363b71ee61232bf4d9faf9..563f7978d5f3f287deddab43c56fce6abb854267 100644 (file)
 
 /*
  * Serial console configuration
+ *
+ *  To select console on the one of 8 external UARTs,
+ * define CONFIG_QUART_CONSOLE as 1, 2, 3, or 4 for the first Quad UART,
+ * or as 5, 6, 7, or 8 for the second Quad UART.
+ * COM11, COM12, COM13, COM14 are located on the second Quad UART.
+ *
+ *  CONFIG_PSC_CONSOLE must be undefined in this case.
+ */
+#ifdef CONFIG_CONSOLE_COM12
+#define CONFIG_QUART_CONSOLE   6       /* console is on UARTF of QUART2        */
+#else
+#define CONFIG_QUART_CONSOLE   8       /* console is on UARTH of QUART2        */
+#endif
+/*
+ *  To select console on PSC1, define CONFIG_PSC_CONSOLE as 1
+ * and undefine CONFIG_QUART_CONSOLE.
  */
-#define CONFIG_PSC_CONSOLE     1       /* console is on PSC1                   */
+/*#define CONFIG_PSC_CONSOLE   1       */ /* console is on PSC1                */
+#if defined(CONFIG_QUART_CONSOLE) && defined(CONFIG_PSC_CONSOLE)
+#error "Select only one console device!"
+#endif
 #define CONFIG_BAUDRATE                115200
 #define CFG_BAUDRATE_TABLE     { 9600, 19200, 38400, 57600, 115200, 230400 }
 
 #define CONFIG_COMMANDS               (CONFIG_CMD_DFL  | \
                                ADD_USB_CMD     | \
                                CFG_CMD_BEDBUG  | \
-                               CFG_CMD_DATE    | \
-                               CFG_CMD_DHCP    | \
-                               CFG_CMD_EEPROM  | \
                                CFG_CMD_FAT     | \
-                               CFG_CMD_I2C     | \
-                               CFG_CMD_NFS     | \
-                               CFG_CMD_SNTP    )
+                               CFG_CMD_I2C)
 
 /* this must be included AFTER the definition of CONFIG_COMMANDS (if any) */
 #include <cmd_confdefs.h>
  * I2C configuration
  */
 #define CONFIG_HARD_I2C                1       /* I2C with hardware support */
-#define CFG_I2C_MODULE         2       /* Select I2C module #1 or #2 */
+#define CFG_I2C_MODULE         1       /* Select I2C module #1 or #2 */
 
 #define CFG_I2C_SPEED          100000 /* 100 kHz */
 #define CFG_I2C_SLAVE          0x7F
 
-/*
- * EEPROM configuration
- */
-#define CFG_I2C_EEPROM_ADDR            0x58
-#define CFG_I2C_EEPROM_ADDR_LEN                1
-#define CFG_EEPROM_PAGE_WRITE_BITS     4
-#define CFG_EEPROM_PAGE_WRITE_DELAY_MS 10
-
-/*
- * RTC configuration
- */
-#define CONFIG_RTC_PCF8563
-#define CFG_I2C_RTC_ADDR               0x51
-
 /*
  * Flash configuration (8,16 or 32 MB)
  * TEXT base always at 0xFFF00000
 
 #define CONFIG_ENV_OVERWRITE   1       /* allow modification of vendor params */
 
+#if TEXT_BASE == CFG_FLASH_BASE
+#define CFG_LOWBOOT    1
+#endif
+
 /*
  * Memory map
  */
  */
 /* 0x10000004 = 32MB SDRAM */
 /* 0x90000004 = 64MB SDRAM */
-#define CFG_GPS_PORT_CONFIG    0x10000004
+#define CFG_GPS_PORT_CONFIG    0x00000004
 
 /*
  * Miscellaneous configurable options
 #define CFG_CS0_START          CFG_FLASH_BASE
 #define CFG_CS0_SIZE           CFG_FLASH_SIZE
 
+/* Quad UART @0x80000000 (MBAR is relocated to 0xF0000000) */
+#define CFG_CS2_START          0x80000000
+#define CFG_CS2_SIZE           0x00001000
+#define CFG_CS2_CFG            0x1d300
+
+/* Second Quad UART @0x80010000 */
+#define CFG_CS1_START          0x80010000
+#define CFG_CS1_SIZE           0x00001000
+#define CFG_CS1_CFG            0x1d300
+
+/*
+ *  Select one of quarts as a default
+ * console. If undefined - PSC console
+ * wil be default
+ */
 #define CFG_CS_BURST           0x00000000
 #define CFG_CS_DEADCYCLE       0x33333333
 
 #define CFG_RESET_ADDRESS      0xff000000
 
+/*
+ * QUART Expanders support
+ */
+#if defined(CONFIG_QUART_CONSOLE)
+/*
+ * We'll use NS16550 chip routines,
+ */
+#define CFG_NS16550            1
+#define CFG_NS16550_SERIAL     1
+#define CONFIG_CONS_INDEX      1
+/*
+ *  To achieve necessary offset on SC16C554
+ * A0-A2 (register select) pins with NS16550
+ * functions (in struct NS16550), REG_SIZE
+ * should be 4, because A0-A2 pins are connected
+ * to DA2-DA4 address bus lines.
+ */
+#define CFG_NS16550_REG_SIZE   4
+/*
+ * LocalPlus Bus already inited in cpu_init_f(),
+ * so can work with QUART's chip selects.
+ * One of four SC16C554 UARTs is selected with
+ * A3-A4 (DA5-DA6) lines.
+ */
+#if (CONFIG_QUART_CONSOLE > 0) && (CONFIG_QUART_CONSOLE < 5)
+#define CFG_NS16550_COM1       (CFG_CS2_START | (CONFIG_QUART_CONSOLE - 1)<<5)
+#elif (CONFIG_QUART_CONSOLE > 4) && (CONFIG_QUART_CONSOLE < 9)
+#define CFG_NS16550_COM1       (CFG_CS1_START | (CONFIG_QUART_CONSOLE - 5)<<5)
+#elif
+#error "Wrong QUART expander number."
+#endif
+
+/*
+ * SC16C554 chip's external crystal oscillator frequency
+ * is 7.3728 MHz
+ */
+#define CFG_NS16550_CLK                7372800
+#endif /* CONFIG_QUART_CONSOLE */
 /*-----------------------------------------------------------------------
  * USB stuff
  *-----------------------------------------------------------------------