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