Lines Matching +full:0 +full:x00 +full:- +full:positive

2  * Copyright (c) 2020-2023 IoT.bzh
4 * SPDX-License-Identifier: Apache-2.0
25 ((const struct gpio_rcar_cfg *)(_dev)->config)
26 #define DEV_DATA(_dev) ((struct gpio_rcar_data *)(_dev)->data)
42 #define IOINTSEL 0x00 /* General IO/Interrupt Switching Register */
43 #define INOUTSEL 0x04 /* General Input/Output Switching Register */
44 #define OUTDT 0x08 /* General Output Register */
45 #define INDT 0x0c /* General Input Register */
46 #define INTDT 0x10 /* Interrupt Display Register */
47 #define INTCLR 0x14 /* Interrupt Clear Register */
48 #define INTMSK 0x18 /* Interrupt Mask Register */
49 #define MSKCLR 0x1c /* Interrupt Mask Clear Register */
50 #define POSNEG 0x20 /* Positive/Negative Logic Select Register */
51 #define EDGLEVEL 0x24 /* Edge/level Select Register */
52 #define FILONOFF 0x28 /* Chattering Prevention On/Off Register */
53 #define OUTDTSEL 0x40 /* Output Data Select Register */
54 #define BOTHEDGE 0x4c /* One Edge/Both Edge Select Register */
55 #define INEN 0x50 /* General Input Enable Register */
83 struct gpio_rcar_data *data = dev->data; in gpio_rcar_port_isr()
91 fsb = find_lsb_set(pending) - 1; in gpio_rcar_port_isr()
92 gpio_fire_callbacks(&data->cb, dev, BIT(fsb)); in gpio_rcar_port_isr()
107 /* Configure positive logic in POSNEG */ in gpio_rcar_config_general_input_output_mode()
132 return -ENOTSUP; in gpio_rcar_configure()
135 return -ENOTSUP; in gpio_rcar_configure()
149 return 0; in gpio_rcar_configure()
156 return 0; in gpio_rcar_port_get_raw()
169 return 0; in gpio_rcar_port_set_masked_raw()
181 return 0; in gpio_rcar_port_set_bits_raw()
193 return 0; in gpio_rcar_port_clear_bits_raw()
205 return 0; in gpio_rcar_port_toggle_bits()
214 return -ENOTSUP; in gpio_rcar_pin_interrupt_configure()
217 /* Configure positive or negative logic in POSNEG */ in gpio_rcar_pin_interrupt_configure()
246 return 0; in gpio_rcar_pin_interrupt_configure()
251 const struct gpio_rcar_cfg *config = dev->config; in gpio_rcar_init()
254 if (!device_is_ready(config->clock_dev)) { in gpio_rcar_init()
255 return -ENODEV; in gpio_rcar_init()
258 ret = clock_control_on(config->clock_dev, in gpio_rcar_init()
259 (clock_control_subsys_t) &config->mod_clk); in gpio_rcar_init()
261 if (ret < 0) { in gpio_rcar_init()
266 config->init_func(dev); in gpio_rcar_init()
267 return 0; in gpio_rcar_init()
274 struct gpio_rcar_data *data = dev->data; in gpio_rcar_manage_callback()
276 return gpio_manage_callback(&data->cb, callback, set); in gpio_rcar_manage_callback()
302 DT_INST_CLOCKS_CELL_BY_IDX(n, 0, module), \
304 DT_INST_CLOCKS_CELL_BY_IDX(n, 0, domain), \
320 0, \
322 DEVICE_DT_INST_GET(n), 0); \