root/include/linux/davinci_emac.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 /*
   2  * TI DaVinci EMAC platform support
   3  *
   4  * Author: Kevin Hilman, Deep Root Systems, LLC
   5  *
   6  * 2007 (c) Deep Root Systems, LLC. This file is licensed under
   7  * the terms of the GNU General Public License version 2. This program
   8  * is licensed "as is" without any warranty of any kind, whether express
   9  * or implied.
  10  */
  11 #ifndef _LINUX_DAVINCI_EMAC_H
  12 #define _LINUX_DAVINCI_EMAC_H
  13 
  14 #include <linux/if_ether.h>
  15 #include <linux/nvmem-consumer.h>
  16 
  17 struct mdio_platform_data {
  18         unsigned long           bus_freq;
  19 };
  20 
  21 struct emac_platform_data {
  22         char mac_addr[ETH_ALEN];
  23         u32 ctrl_reg_offset;
  24         u32 ctrl_mod_reg_offset;
  25         u32 ctrl_ram_offset;
  26         u32 hw_ram_addr;
  27         u32 ctrl_ram_size;
  28 
  29         /*
  30          * phy_id can be one of the following:
  31          *   - NULL             : use the first phy on the bus,
  32          *   - ""               : force to 100/full, no mdio control
  33          *   - "<bus>:<addr>"   : use the specified bus and phy
  34          */
  35         const char *phy_id;
  36 
  37         u8 rmii_en;
  38         u8 version;
  39         bool no_bd_ram;
  40         void (*interrupt_enable) (void);
  41         void (*interrupt_disable) (void);
  42 };
  43 
  44 enum {
  45         EMAC_VERSION_1, /* DM644x */
  46         EMAC_VERSION_2, /* DM646x */
  47 };
  48 
  49 #endif

/* [<][>][^][v][top][bottom][index][help] */