davinci_emac.h 889 B

1234567891011121314151617181920212223242526272829303132333435363738
  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. #include <linux/if_ether.h>
  14. #include <linux/memory.h>
  15. struct emac_platform_data {
  16. char mac_addr[ETH_ALEN];
  17. u32 ctrl_reg_offset;
  18. u32 ctrl_mod_reg_offset;
  19. u32 ctrl_ram_offset;
  20. u32 mdio_reg_offset;
  21. u32 ctrl_ram_size;
  22. u32 phy_mask;
  23. u32 mdio_max_freq;
  24. u8 rmii_en;
  25. u8 version;
  26. void (*interrupt_enable) (void);
  27. void (*interrupt_disable) (void);
  28. };
  29. enum {
  30. EMAC_VERSION_1, /* DM644x */
  31. EMAC_VERSION_2, /* DM646x */
  32. };
  33. void davinci_get_mac_addr(struct memory_accessor *mem_acc, void *context);
  34. #endif