Lines Matching full:ppi
25 static int i8255_get_port(struct i8255 __iomem *const ppi, in i8255_get_port() argument
31 return ioread8(&ppi[bank].port[ppi_port]) & mask; in i8255_get_port()
56 static void i8255_set_port(struct i8255 __iomem *const ppi, in i8255_set_port() argument
68 out_state = ioread8(&ppi[bank].port[ppi_port]); in i8255_set_port()
70 iowrite8(out_state, &ppi[bank].port[ppi_port]); in i8255_set_port()
77 * @ppi: Intel 8255 Programmable Peripheral Interface banks
78 * @state: devices states of the respective PPI banks
82 * Programmable Peripheral Interface (@ppi) banks. The @state control_state
85 void i8255_direction_input(struct i8255 __iomem *const ppi, in i8255_direction_input() argument
98 iowrite8(state[bank].control_state, &ppi[bank].control); in i8255_direction_input()
106 * @ppi: Intel 8255 Programmable Peripheral Interface banks
107 * @state: devices states of the respective PPI banks
112 * Programmable Peripheral Interface (@ppi) banks and sets the respective signal
116 void i8255_direction_output(struct i8255 __iomem *const ppi, in i8255_direction_output() argument
130 iowrite8(state[bank].control_state, &ppi[bank].control); in i8255_direction_output()
134 i8255_set(ppi, state, offset, value); in i8255_direction_output()
140 * @ppi: Intel 8255 Programmable Peripheral Interface banks
144 * respective Intel 8255 Programmable Peripheral Interface (@ppi) banks.
146 int i8255_get(struct i8255 __iomem *const ppi, const unsigned long offset) in i8255_get() argument
151 return !!i8255_get_port(ppi, io_port, offset_mask); in i8255_get()
157 * @state: devices states of the respective PPI banks
174 * @ppi: Intel 8255 Programmable Peripheral Interface banks
177 * @ngpio: number of GPIO signals of the respective PPI banks
180 * for the respective Intel 8255 Programmable Peripheral Interface (@ppi) banks.
182 void i8255_get_multiple(struct i8255 __iomem *const ppi, in i8255_get_multiple() argument
195 port_state = i8255_get_port(ppi, io_port, port_mask); in i8255_get_multiple()
203 * i8255_mode0_output - configure all PPI ports to MODE 0 output mode
204 * @ppi: Intel 8255 Programmable Peripheral Interface bank
206 * Configures all Intel 8255 Programmable Peripheral Interface (@ppi) ports to
209 void i8255_mode0_output(struct i8255 __iomem *const ppi) in i8255_mode0_output() argument
211 iowrite8(I8255_CONTROL_MODE_SET, &ppi->control); in i8255_mode0_output()
217 * @ppi: Intel 8255 Programmable Peripheral Interface banks
218 * @state: devices states of the respective PPI banks
223 * Programmable Peripheral Interface (@ppi) banks.
225 void i8255_set(struct i8255 __iomem *const ppi, struct i8255_state *const state, in i8255_set() argument
233 i8255_set_port(ppi, state, io_port, mask, bits); in i8255_set()
239 * @ppi: Intel 8255 Programmable Peripheral Interface banks
240 * @state: devices states of the respective PPI banks
243 * @ngpio: number of GPIO signals of the respective PPI banks
246 * the respective Intel 8255 Programmable Peripheral Interface (@ppi) banks.
248 void i8255_set_multiple(struct i8255 __iomem *const ppi, in i8255_set_multiple() argument
262 i8255_set_port(ppi, state, io_port, port_mask, value); in i8255_set_multiple()
269 * @state: devices states of the respective PPI banks