Hello everyone, this is the second version with most of the review points addressed.
Two notable exceptions: * The bank registers are handled like in the original patch * I couldn't get rid of the intermediate set_irq callbacks because qdev_init_gpio_in_named won't allow me to set the opaque data to another value. I retested basic I/O on different banks and IRQ handling. Both with the stock Linux 3.12 driver. Cheers, Colin Colin Leitner (2): zynq_gpio: GPIO model for Zynq SoC xilinx_zynq: Add zynq-gpio to the machine hw/arm/xilinx_zynq.c | 2 + hw/gpio/Makefile.objs | 1 + hw/gpio/zynq-gpio.c | 386 +++++++++++++++++++++++++++++++++++++++++++++++++ hw/gpio/zynq-gpio.h | 79 ++++++++++ 4 files changed, 468 insertions(+) create mode 100644 hw/gpio/zynq-gpio.c create mode 100644 hw/gpio/zynq-gpio.h -- 1.7.10.4