cc770.h 1.2 KB

12345678910111213141516171819202122232425262728293031323334
  1. /* SPDX-License-Identifier: GPL-2.0 */
  2. #ifndef _CAN_PLATFORM_CC770_H
  3. #define _CAN_PLATFORM_CC770_H
  4. /* CPU Interface Register (0x02) */
  5. #define CPUIF_CEN 0x01 /* Clock Out Enable */
  6. #define CPUIF_MUX 0x04 /* Multiplex */
  7. #define CPUIF_SLP 0x08 /* Sleep */
  8. #define CPUIF_PWD 0x10 /* Power Down Mode */
  9. #define CPUIF_DMC 0x20 /* Divide Memory Clock */
  10. #define CPUIF_DSC 0x40 /* Divide System Clock */
  11. #define CPUIF_RST 0x80 /* Hardware Reset Status */
  12. /* Clock Out Register (0x1f) */
  13. #define CLKOUT_CD_MASK 0x0f /* Clock Divider mask */
  14. #define CLKOUT_SL_MASK 0x30 /* Slew Rate mask */
  15. #define CLKOUT_SL_SHIFT 4
  16. /* Bus Configuration Register (0x2f) */
  17. #define BUSCFG_DR0 0x01 /* Disconnect RX0 Input / Select RX input */
  18. #define BUSCFG_DR1 0x02 /* Disconnect RX1 Input / Silent mode */
  19. #define BUSCFG_DT1 0x08 /* Disconnect TX1 Output */
  20. #define BUSCFG_POL 0x20 /* Polarity dominant or recessive */
  21. #define BUSCFG_CBY 0x40 /* Input Comparator Bypass */
  22. struct cc770_platform_data {
  23. u32 osc_freq; /* CAN bus oscillator frequency in Hz */
  24. u8 cir; /* CPU Interface Register */
  25. u8 cor; /* Clock Out Register */
  26. u8 bcr; /* Bus Configuration Register */
  27. };
  28. #endif /* !_CAN_PLATFORM_CC770_H */