From b4e3104b518eda149c72863a7fe3ccea33f2e4ff Mon Sep 17 00:00:00 2001 From: balrog Date: Thu, 6 Mar 2008 21:07:38 +0000 Subject: Split OMAP DMA out to a file apart. Rename omap files to better reflect OMAP1-specific parts. git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4025 c046a42c-6fe2-441c-8c8c-71466251a162 --- hw/omap.h | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) (limited to 'hw/omap.h') diff --git a/hw/omap.h b/hw/omap.h index 5177529b4e..ecfd54d1db 100644 --- a/hw/omap.h +++ b/hw/omap.h @@ -1,7 +1,7 @@ /* * Texas Instruments OMAP processors. * - * Copyright (C) 2006-2007 Andrzej Zaborowski + * Copyright (C) 2006-2008 Andrzej Zaborowski * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as @@ -54,7 +54,7 @@ void omap_clk_setrate(omap_clk clk, int divide, int multiply); int64_t omap_clk_getrate(omap_clk clk); void omap_clk_reparent(omap_clk clk, omap_clk parent); -/* omap.c */ +/* omap[123].c */ struct omap_intr_handler_s; struct omap_intr_handler_s *omap_inth_init(target_phys_addr_t base, unsigned long size, unsigned char nbanks, @@ -340,16 +340,26 @@ static inline target_phys_addr_t omap_l4_attach(struct omap_target_agent_s *ta, # define OMAP_INT_243X_HS_USB_DMA 93 # define OMAP_INT_243X_CARKIT 94 +/* omap_dma.c */ enum omap_dma_model { - omap_dma_3_1 = 0, - omap_dma_3_2 + omap_dma_3_0, + omap_dma_3_1, + omap_dma_3_2, + omap_dma_4, }; struct omap_dma_s; struct omap_dma_s *omap_dma_init(target_phys_addr_t base, qemu_irq *irqs, qemu_irq lcd_irq, struct omap_mpu_state_s *mpu, omap_clk clk, enum omap_dma_model model); +void omap_dma_reset(struct omap_dma_s *s); +struct dma_irq_map { + int ih; + int intr; +}; + +/* Only used in OMAP DMA 3.x gigacells */ enum omap_dma_port { emiff = 0, emifs, @@ -367,6 +377,7 @@ typedef enum { double_index, } omap_dma_addressing_t; +/* Only used in OMAP DMA 3.x gigacells */ struct omap_dma_lcd_channel_s { enum omap_dma_port src; target_phys_addr_t src_f1_top; @@ -411,7 +422,7 @@ struct omap_dma_lcd_channel_s { ram_addr_t phys_framebuffer[2]; qemu_irq irq; struct omap_mpu_state_s *mpu; -}; +} *omap_dma_get_lcdch(struct omap_dma_s *s); /* * DMA request numbers for OMAP1 @@ -477,6 +488,7 @@ struct omap_dma_lcd_channel_s { # define OMAP_DMA_MMC2_RX 55 # define OMAP_DMA_CRYPTO_DES_OUT 56 +/* omap[123].c */ struct omap_mpu_timer_s; struct omap_mpu_timer_s *omap_mpu_timer_init(target_phys_addr_t base, qemu_irq irq, omap_clk clk); -- cgit v1.2.1