https://embetronicx.com/tutorials/linux/device-drivers/gpio-linux-device-driver-using-raspberry-pi/
GPIO Linux Device Driver (GPIO Interrupt) – Linux Device Driver Tutorial Part 36