Linux-2.6.12-rc2
[cascardo/linux.git] / include / asm-ppc / fsl_ocp.h
1 /*
2  * include/asm-ppc/fsl_ocp.h
3  *
4  * Definitions for the on-chip peripherals on Freescale PPC processors
5  *
6  * Maintainer: Kumar Gala (kumar.gala@freescale.com)
7  *
8  * Copyright 2004 Freescale Semiconductor, Inc
9  *
10  * This program is free software; you can redistribute  it and/or modify it
11  * under  the terms of  the GNU General  Public License as published by the
12  * Free Software Foundation;  either version 2 of the  License, or (at your
13  * option) any later version.
14  */
15
16 #ifdef __KERNEL__
17 #ifndef __ASM_FS_OCP_H__
18 #define __ASM_FS_OCP_H__
19
20 /* A table of information for supporting the Gianfar Ethernet Controller
21  * This helps identify which enet controller we are dealing with,
22  * and what type of enet controller it is
23  */
24 struct ocp_gfar_data {
25         uint interruptTransmit;
26         uint interruptError;
27         uint interruptReceive;
28         uint interruptPHY;
29         uint flags;
30         uint phyid;
31         uint phyregidx;
32         unsigned char mac_addr[6];
33 };
34
35 /* Flags in the flags field */
36 #define GFAR_HAS_COALESCE               0x20
37 #define GFAR_HAS_RMON                   0x10
38 #define GFAR_HAS_MULTI_INTR             0x08
39 #define GFAR_FIRM_SET_MACADDR           0x04
40 #define GFAR_HAS_PHY_INTR               0x02    /* if not set use a timer */
41 #define GFAR_HAS_GIGABIT                0x01
42
43 /* Data structure for I2C support.  Just contains a couple flags
44  * to distinguish various I2C implementations*/
45 struct ocp_fs_i2c_data {
46         uint flags;
47 };
48
49 /* Flags for I2C */
50 #define FS_I2C_SEPARATE_DFSRR   0x02
51 #define FS_I2C_CLOCK_5200       0x01
52
53 #endif  /* __ASM_FS_OCP_H__ */
54 #endif  /* __KERNEL__ */