pinmux.h 870 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. #ifndef _ASM_CRIS_ARCH_PINMUX_H
  2. #define _ASM_CRIS_ARCH_PINMUX_H
  3. #define PORT_A 0
  4. #define PORT_B 1
  5. #define PORT_C 2
  6. enum pin_mode {
  7. pinmux_none = 0,
  8. pinmux_fixed,
  9. pinmux_gpio,
  10. pinmux_iop
  11. };
  12. enum fixed_function {
  13. pinmux_eth,
  14. pinmux_geth,
  15. pinmux_tg_ccd,
  16. pinmux_tg_cmos,
  17. pinmux_vout,
  18. pinmux_ser1,
  19. pinmux_ser2,
  20. pinmux_ser3,
  21. pinmux_ser4,
  22. pinmux_sser,
  23. pinmux_pio,
  24. pinmux_pwm0,
  25. pinmux_pwm1,
  26. pinmux_pwm2,
  27. pinmux_i2c0,
  28. pinmux_i2c1,
  29. pinmux_i2c1_3wire,
  30. pinmux_i2c1_sda1,
  31. pinmux_i2c1_sda2,
  32. pinmux_i2c1_sda3,
  33. };
  34. int crisv32_pinmux_init(void);
  35. int crisv32_pinmux_alloc(int port, int first_pin, int last_pin, enum pin_mode);
  36. int crisv32_pinmux_alloc_fixed(enum fixed_function function);
  37. int crisv32_pinmux_dealloc(int port, int first_pin, int last_pin);
  38. int crisv32_pinmux_dealloc_fixed(enum fixed_function function);
  39. void crisv32_pinmux_dump(void);
  40. #endif