zephyr/tests/drivers
Manimaran A 79ee5a876f drivers: gpio: Microchip MEC172x GPIO driver glitch fix
A glitch was observed if a GPIO PIN was configured to a
non-default state by ROM and then Zephyr programs the pin
for the same configuration. Root cause is GPIO hardware
implementing two output bits for each pin. The alternate
output bit is in the pin control register and is r/w by
default. The other bit exists in the GPIO parallel ouput
register and is read-only by default. The hardware actually
reflects the pin's output value into both bits. The fix is
to configure the pin with alternate output bit read-write
and the last step is to disable alternate output which
enabled read-write of the parallel bit. GPIO API's can
then use the GPIO parallel out registers. Add logic to
return an error from the GPIO interrupt configure API if
a pin is not configured as an input. Hardware only performs
interrupt detection if the input pad is enabled.
Hardware supports a pin being configured for both input
and output. Applications should add the GPIO_INPUT flag
to all pin configuration requiring interrupt detection.
The interpretation of input and output flags for the
get configuration API appears to be only one of the
flags can be set. Please refer to the GPIO driver tests.
Updated GPIO interrupt configure to clear the input pad
disable bit due to interrupt detection HW is connected
only to input side of pin.

Signed-off-by: Manimaran A <manimaran.a@microchip.com>
2023-05-16 18:52:44 -04:00
..
adc boards: Board definition for the Raspberry Pi Pico W. 2023-05-12 10:04:03 +02:00
bbram samples, tests: convert string-based twister lists to YAML lists 2023-05-10 09:52:37 +02:00
bc12 samples, tests: convert string-based twister lists to YAML lists 2023-05-10 09:52:37 +02:00
build_all tests: drivers: build_all: gpio: add ADS114S08 to tests 2023-05-11 12:04:15 -04:00
can samples, tests: convert string-based twister lists to YAML lists 2023-05-10 09:52:37 +02:00
clock_control tests: drivers: clock_control of the stm32h5 core 2023-05-15 13:09:46 +02:00
console samples, tests: convert string-based twister lists to YAML lists 2023-05-10 09:52:37 +02:00
coredump/coredump_api yamllint: fix all yamllint truthy errors 2023-01-04 01:16:45 +09:00
counter samples, tests: convert string-based twister lists to YAML lists 2023-05-10 09:52:37 +02:00
dac samples, tests: convert string-based twister lists to YAML lists 2023-05-10 09:52:37 +02:00
disk tests/disk: Add NVMe disk to disk_performance 2023-04-07 13:28:47 +02:00
dma tests: drivers: dma: add esp32s3 support 2023-05-10 10:15:05 +02:00
eeprom samples, tests: convert string-based twister lists to YAML lists 2023-05-10 09:52:37 +02:00
entropy/api samples, tests: convert string-based twister lists to YAML lists 2023-05-10 09:52:37 +02:00
espi samples, tests: convert string-based twister lists to YAML lists 2023-05-10 09:52:37 +02:00
ethernet/eth_ivshmem_queue tests: drivers: ethernet: Add eth_ivshmem_queue unit tests 2023-05-14 18:17:33 -04:00
flash samples, tests: convert string-based twister lists to YAML lists 2023-05-10 09:52:37 +02:00
flash_simulator samples, tests: convert string-based twister lists to YAML lists 2023-05-10 09:52:37 +02:00
fuel_gauge drivers: sbs_gauge: Add support for Alarm properties 2023-05-16 12:07:14 +02:00
gpio drivers: gpio: Microchip MEC172x GPIO driver glitch fix 2023-05-16 18:52:44 -04:00
hwinfo/api samples, tests: convert string-based twister lists to YAML lists 2023-05-10 09:52:37 +02:00
i2c boards: arm: mixmrt1040_evk: enable RT1040 EVK I2C support 2023-05-11 10:35:40 -05:00
i2s i2s : mimxrt595_evk_cm33: enablement of driver 2023-05-12 13:50:33 -05:00
input/gpio_keys samples, tests: convert string-based twister lists to YAML lists 2023-05-10 09:52:37 +02:00
ipm samples, tests: convert string-based twister lists to YAML lists 2023-05-10 09:52:37 +02:00
kscan samples, tests: convert string-based twister lists to YAML lists 2023-05-10 09:52:37 +02:00
led/led_api samples, tests: convert string-based twister lists to YAML lists 2023-05-10 09:52:37 +02:00
memc/ram samples, tests: convert string-based twister lists to YAML lists 2023-05-10 09:52:37 +02:00
mipi_dsi/api samples, tests: convert string-based twister lists to YAML lists 2023-05-10 09:52:37 +02:00
mm samples, tests: convert string-based twister lists to YAML lists 2023-05-10 09:52:37 +02:00
pinctrl samples, tests: convert string-based twister lists to YAML lists 2023-05-10 09:52:37 +02:00
pwm samples, tests: convert string-based twister lists to YAML lists 2023-05-10 09:52:37 +02:00
regulator samples, tests: convert string-based twister lists to YAML lists 2023-05-10 09:52:37 +02:00
retained_mem/api samples, tests: convert string-based twister lists to YAML lists 2023-05-10 09:52:37 +02:00
rtc tests: samples: Resolve duplicates in names. 2023-05-16 06:21:25 -04:00
sdhc samples, tests: convert string-based twister lists to YAML lists 2023-05-10 09:52:37 +02:00
sensor samples, tests: convert string-based twister lists to YAML lists 2023-05-10 09:52:37 +02:00
smbus samples, tests: convert string-based twister lists to YAML lists 2023-05-10 09:52:37 +02:00
spi boards: arm: mixmrt1040_evk: enable SPI support 2023-05-11 10:35:40 -05:00
syscon samples, tests: convert string-based twister lists to YAML lists 2023-05-10 09:52:37 +02:00
timer/nrf_rtc_timer samples, tests: convert string-based twister lists to YAML lists 2023-05-10 09:52:37 +02:00
uart tests: drivers: uart async testing on the stm32f103 nucleo 2023-05-16 13:26:28 +00:00
udc samples, tests: convert string-based twister lists to YAML lists 2023-05-10 09:52:37 +02:00
virtualization/ivshmem/plain samples, tests: convert string-based twister lists to YAML lists 2023-05-10 09:52:37 +02:00
w1/w1_api samples, tests: convert string-based twister lists to YAML lists 2023-05-10 09:52:37 +02:00
watchdog samples, tests: convert string-based twister lists to YAML lists 2023-05-10 09:52:37 +02:00