]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - include/linux/mv643xx.h
Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6
[linux-2.6-omap-h63xx.git] / include / linux / mv643xx.h
index 0b08cd6922012589a938209b240a27f7bb898580..9c8049005052ccb27343e8197e266e7dd8543157 100644 (file)
 #ifndef __ASM_MV643XX_H
 #define __ASM_MV643XX_H
 
-#ifdef __MIPS__
-#include <asm/addrspace.h>
-#include <asm/marvell.h>
-#endif
 #include <asm/types.h>
 
 /****************************************/
 #define MV643XX_ETH_RX_FIFO_URGENT_THRESHOLD_REG(port)             (0x2470 + (port<<10))
 #define MV643XX_ETH_TX_FIFO_URGENT_THRESHOLD_REG(port)             (0x2474 + (port<<10))
 #define MV643XX_ETH_RX_MINIMAL_FRAME_SIZE_REG(port)                (0x247c + (port<<10))
-#define MV643XX_ETH_RX_DISCARDED_FRAMES_COUNTER(port)              (0x2484 + (port<<10)
+#define MV643XX_ETH_RX_DISCARDED_FRAMES_COUNTER(port)              (0x2484 + (port<<10))
 #define MV643XX_ETH_PORT_DEBUG_0_REG(port)                         (0x248c + (port<<10))
 #define MV643XX_ETH_PORT_DEBUG_1_REG(port)                         (0x2490 + (port<<10))
 #define MV643XX_ETH_PORT_INTERNAL_ADDR_ERROR_REG(port)             (0x2494 + (port<<10))
@@ -1135,7 +1131,7 @@ struct mv64xxx_i2c_pdata {
 #define MV643XX_ETH_DEFAULT_RX_UDP_QUEUE_1     (1<<19)
 #define MV643XX_ETH_DEFAULT_RX_UDP_QUEUE_2     (1<<20)
 #define MV643XX_ETH_DEFAULT_RX_UDP_QUEUE_3     ((1<<20) | (1<<19))
-#define MV643XX_ETH_DEFAULT_RX_UDP_QUEUE_4     ((1<<21)
+#define MV643XX_ETH_DEFAULT_RX_UDP_QUEUE_4     (1<<21)
 #define MV643XX_ETH_DEFAULT_RX_UDP_QUEUE_5     ((1<<21) | (1<<19))
 #define MV643XX_ETH_DEFAULT_RX_UDP_QUEUE_6     ((1<<21) | (1<<20))
 #define MV643XX_ETH_DEFAULT_RX_UDP_QUEUE_7     ((1<<21) | (1<<20) | (1<<19))
@@ -1214,6 +1210,7 @@ struct mv64xxx_i2c_pdata {
 #define MV643XX_ETH_FORCE_BP_MODE_NO_JAM               0
 #define MV643XX_ETH_FORCE_BP_MODE_JAM_TX               (1<<7)
 #define MV643XX_ETH_FORCE_BP_MODE_JAM_TX_ON_RX_ERR     (1<<8)
+#define MV643XX_ETH_SERIAL_PORT_CONTROL_RESERVED       (1<<9)
 #define MV643XX_ETH_FORCE_LINK_FAIL                    0
 #define MV643XX_ETH_DO_NOT_FORCE_LINK_FAIL             (1<<10)
 #define MV643XX_ETH_RETRANSMIT_16_ATTEMPTS             0
@@ -1243,6 +1240,8 @@ struct mv64xxx_i2c_pdata {
 #define MV643XX_ETH_SET_MII_SPEED_TO_10                        0
 #define MV643XX_ETH_SET_MII_SPEED_TO_100               (1<<24)
 
+#define MV643XX_ETH_MAX_RX_PACKET_MASK                 (0x7<<17)
+
 #define        MV643XX_ETH_PORT_SERIAL_CONTROL_DEFAULT_VALUE           \
                MV643XX_ETH_DO_NOT_FORCE_LINK_PASS      |       \
                MV643XX_ETH_ENABLE_AUTO_NEG_FOR_DUPLX   |       \
@@ -1285,29 +1284,30 @@ struct mv64xxx_i2c_pdata {
 #define MV643XX_ETH_NAME       "mv643xx_eth"
 
 struct mv643xx_eth_platform_data {
-       /* 
-        * Non-values for mac_addr, phy_addr, port_config, etc.
-        * override the default value.  Setting the corresponding
-        * force_* field, causes the default value to be overridden
-        * even when zero.
-        */
-       unsigned int    force_phy_addr:1;
-       unsigned int    force_port_config:1;
-       unsigned int    force_port_config_extend:1;
-       unsigned int    force_port_sdma_config:1;
-       unsigned int    force_port_serial_control:1;
-       int             phy_addr;
-       char            *mac_addr;      /* pointer to mac address */
-       u32             port_config;
-       u32             port_config_extend;
-       u32             port_sdma_config;
-       u32             port_serial_control;
+       int             port_number;
+       u16             force_phy_addr; /* force override if phy_addr == 0 */
+       u16             phy_addr;
+
+       /* If speed is 0, then speed and duplex are autonegotiated. */
+       int             speed;          /* 0, SPEED_10, SPEED_100, SPEED_1000 */
+       int             duplex;         /* DUPLEX_HALF or DUPLEX_FULL */
+
+       /* non-zero values of the following fields override defaults */
        u32             tx_queue_size;
        u32             rx_queue_size;
        u32             tx_sram_addr;
        u32             tx_sram_size;
        u32             rx_sram_addr;
        u32             rx_sram_size;
+       u8              mac_addr[6];    /* mac address if non-zero*/
+};
+
+/* Watchdog Platform Device, Driver Data */
+#define        MV64x60_WDT_NAME                        "mv64x60_wdt"
+
+struct mv64x60_wdt_pdata {
+       int     timeout;        /* watchdog expiry in seconds, default 10 */
+       int     bus_clk;        /* bus clock in MHz, default 133 */
 };
 
 #endif /* __ASM_MV643XX_H */