1/* 2 * Copyright (c) 2013 Xilinx Inc 3 * Written by Edgar E. Iglesias <edgar.iglesias@xilinx.com> 4 * Written by Peter Crosthwaite <peter.crosthwaite@xilinx.com> 5 * 6 * This code is licensed under the GNU GPL. 7 */ 8#ifndef REMOTE_PORT_GPIO_H 9#define REMOTE_PORT_GPIO_H 10 11#define TYPE_REMOTE_PORT_GPIO "remote-port-gpio" 12#define REMOTE_PORT_GPIO(obj) \ 13 OBJECT_CHECK(RemotePortGPIO, (obj), TYPE_REMOTE_PORT_GPIO) 14 15#define MAX_GPIOS 164 16 17typedef struct RemotePortGPIO { 18 /* private */ 19 SysBusDevice parent; 20 /* public */ 21 22 int8_t cache[MAX_GPIOS]; 23 uint32_t num_gpios; 24 qemu_irq *gpio_out; 25 uint16_t cell_offset_irq_num; 26 27 uint64_t current_id; 28 29 uint32_t rp_dev; 30 struct RemotePort *rp; 31} RemotePortGPIO; 32#endif 33