diff options
author | balrog <balrog@c046a42c-6fe2-441c-8c8c-71466251a162> | 2007-11-17 14:07:13 +0000 |
---|---|---|
committer | balrog <balrog@c046a42c-6fe2-441c-8c8c-71466251a162> | 2007-11-17 14:07:13 +0000 |
commit | 38641a52f2335c470349c55d9b1679112da99399 (patch) | |
tree | bf249a04efe5bb74fd36c6cb99a8cdd3c95f3dbc /hw/pxa.h | |
parent | 6c41b2723f5cac6e62e68925e7a73f30b11a7a06 (diff) | |
download | qemu-38641a52f2335c470349c55d9b1679112da99399.tar.gz qemu-38641a52f2335c470349c55d9b1679112da99399.tar.bz2 qemu-38641a52f2335c470349c55d9b1679112da99399.zip |
Convert PXA2xx GPIOs and SCOOP GPIOs to a qemu_irq based api (similar to omap, max7310 and s3c gpios).
Convert spitz and gumstix boards to use new api.
Remove now obsolete gpio_handler_t definition.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3670 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'hw/pxa.h')
-rw-r--r-- | hw/pxa.h | 15 |
1 files changed, 6 insertions, 9 deletions
@@ -72,11 +72,10 @@ void pxa27x_timer_init(target_phys_addr_t base, qemu_irq *irqs, qemu_irq irq4); struct pxa2xx_gpio_info_s; struct pxa2xx_gpio_info_s *pxa2xx_gpio_init(target_phys_addr_t base, CPUState *env, qemu_irq *pic, int lines); -void pxa2xx_gpio_set(struct pxa2xx_gpio_info_s *s, int line, int level); -void pxa2xx_gpio_handler_set(struct pxa2xx_gpio_info_s *s, int line, - gpio_handler_t handler, void *opaque); -void pxa2xx_gpio_read_notifier(struct pxa2xx_gpio_info_s *s, - void (*handler)(void *opaque), void *opaque); +qemu_irq *pxa2xx_gpio_in_get(struct pxa2xx_gpio_info_s *s); +void pxa2xx_gpio_out_set(struct pxa2xx_gpio_info_s *s, + int line, qemu_irq handler); +void pxa2xx_gpio_read_notifier(struct pxa2xx_gpio_info_s *s, qemu_irq handler); /* pxa2xx_dma.c */ struct pxa2xx_dma_state_s; @@ -90,8 +89,7 @@ void pxa2xx_dma_request(struct pxa2xx_dma_state_s *s, int req_num, int on); struct pxa2xx_lcdc_s; struct pxa2xx_lcdc_s *pxa2xx_lcdc_init(target_phys_addr_t base, qemu_irq irq, DisplayState *ds); -void pxa2xx_lcd_vsync_cb(struct pxa2xx_lcdc_s *s, - void (*cb)(void *opaque), void *opaque); +void pxa2xx_lcd_vsync_notifier(struct pxa2xx_lcdc_s *s, qemu_irq handler); void pxa2xx_lcdc_oritentation(void *opaque, int angle); /* pxa2xx_mmci.c */ @@ -126,6 +124,7 @@ struct pxa2xx_fir_s; struct pxa2xx_state_s { CPUState *env; qemu_irq *pic; + qemu_irq reset; struct pxa2xx_dma_state_s *dma; struct pxa2xx_gpio_info_s *gpio; struct pxa2xx_lcdc_s *lcd; @@ -209,6 +208,4 @@ struct pxa2xx_state_s *pxa270_init(unsigned int sdram_size, DisplayState *ds, const char *revision); struct pxa2xx_state_s *pxa255_init(unsigned int sdram_size, DisplayState *ds); -void pxa2xx_reset(int line, int level, void *opaque); - #endif /* PXA_H */ |