ti_hecc.h 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. #ifndef _CAN_PLATFORM_TI_HECC_H
  2. #define _CAN_PLATFORM_TI_HECC_H
  3. /*
  4. * TI HECC (High End CAN Controller) driver platform header
  5. *
  6. * Copyright (C) 2009 Texas Instruments Incorporated - http://www.ti.com/
  7. *
  8. * This program is free software; you can redistribute it and/or
  9. * modify it under the terms of the GNU General Public License as
  10. * published by the Free Software Foundation version 2.
  11. *
  12. * This program is distributed as is WITHOUT ANY WARRANTY of any
  13. * kind, whether express or implied; without even the implied warranty
  14. * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  15. * GNU General Public License for more details.
  16. *
  17. */
  18. /**
  19. * struct hecc_platform_data - HECC Platform Data
  20. *
  21. * @scc_hecc_offset: mostly 0 - should really never change
  22. * @scc_ram_offset: SCC RAM offset
  23. * @hecc_ram_offset: HECC RAM offset
  24. * @mbx_offset: Mailbox RAM offset
  25. * @int_line: Interrupt line to use - 0 or 1
  26. * @version: version for future use
  27. * @transceiver_switch: platform specific callback fn for transceiver control
  28. *
  29. * Platform data structure to get all platform specific settings.
  30. * this structure also accounts the fact that the IP may have different
  31. * RAM and mailbox offsets for different SOC's
  32. */
  33. struct ti_hecc_platform_data {
  34. u32 scc_hecc_offset;
  35. u32 scc_ram_offset;
  36. u32 hecc_ram_offset;
  37. u32 mbx_offset;
  38. u32 int_line;
  39. u32 version;
  40. void (*transceiver_switch) (int);
  41. };
  42. #endif /* !_CAN_PLATFORM_TI_HECC_H */