omap1: convert to memory API (part VI)
Easy RAM stuff. Acked-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Avi Kivity <avi@redhat.com>
This commit is contained in:
parent
90aeba9dac
commit
2654c962b8
@ -841,6 +841,8 @@ struct omap_mpu_state_s {
|
|||||||
MemoryRegion pwl_iomem;
|
MemoryRegion pwl_iomem;
|
||||||
MemoryRegion pwt_iomem;
|
MemoryRegion pwt_iomem;
|
||||||
MemoryRegion mpui_io_iomem;
|
MemoryRegion mpui_io_iomem;
|
||||||
|
MemoryRegion imif_ram;
|
||||||
|
MemoryRegion emiff_ram;
|
||||||
|
|
||||||
struct omap_dma_port_if_s {
|
struct omap_dma_port_if_s {
|
||||||
uint32_t (*read[3])(struct omap_mpu_state_s *s,
|
uint32_t (*read[3])(struct omap_mpu_state_s *s,
|
||||||
|
17
hw/omap1.c
17
hw/omap1.c
@ -3793,7 +3793,6 @@ struct omap_mpu_state_s *omap310_mpu_init(MemoryRegion *system_memory,
|
|||||||
int i;
|
int i;
|
||||||
struct omap_mpu_state_s *s = (struct omap_mpu_state_s *)
|
struct omap_mpu_state_s *s = (struct omap_mpu_state_s *)
|
||||||
g_malloc0(sizeof(struct omap_mpu_state_s));
|
g_malloc0(sizeof(struct omap_mpu_state_s));
|
||||||
ram_addr_t imif_base, emiff_base;
|
|
||||||
qemu_irq *cpu_irq;
|
qemu_irq *cpu_irq;
|
||||||
qemu_irq dma_irqs[6];
|
qemu_irq dma_irqs[6];
|
||||||
DriveInfo *dinfo;
|
DriveInfo *dinfo;
|
||||||
@ -3817,12 +3816,10 @@ struct omap_mpu_state_s *omap310_mpu_init(MemoryRegion *system_memory,
|
|||||||
omap_clk_init(s);
|
omap_clk_init(s);
|
||||||
|
|
||||||
/* Memory-mapped stuff */
|
/* Memory-mapped stuff */
|
||||||
cpu_register_physical_memory(OMAP_EMIFF_BASE, s->sdram_size,
|
memory_region_init_ram(&s->emiff_ram, NULL, "omap1.dram", s->sdram_size);
|
||||||
(emiff_base = qemu_ram_alloc(NULL, "omap1.dram",
|
memory_region_add_subregion(system_memory, OMAP_EMIFF_BASE, &s->emiff_ram);
|
||||||
s->sdram_size)) | IO_MEM_RAM);
|
memory_region_init_ram(&s->imif_ram, NULL, "omap1.sram", s->sram_size);
|
||||||
cpu_register_physical_memory(OMAP_IMIF_BASE, s->sram_size,
|
memory_region_add_subregion(system_memory, OMAP_IMIF_BASE, &s->imif_ram);
|
||||||
(imif_base = qemu_ram_alloc(NULL, "omap1.sram",
|
|
||||||
s->sram_size)) | IO_MEM_RAM);
|
|
||||||
|
|
||||||
omap_clkm_init(system_memory, 0xfffece00, 0xe1008000, s);
|
omap_clkm_init(system_memory, 0xfffece00, 0xe1008000, s);
|
||||||
|
|
||||||
@ -3848,9 +3845,9 @@ struct omap_mpu_state_s *omap310_mpu_init(MemoryRegion *system_memory,
|
|||||||
s->port[tipb_mpui].addr_valid = omap_validate_tipb_mpui_addr;
|
s->port[tipb_mpui].addr_valid = omap_validate_tipb_mpui_addr;
|
||||||
|
|
||||||
/* Register SDRAM and SRAM DMA ports for fast transfers. */
|
/* Register SDRAM and SRAM DMA ports for fast transfers. */
|
||||||
soc_dma_port_add_mem(s->dma, qemu_get_ram_ptr(emiff_base),
|
soc_dma_port_add_mem(s->dma, memory_region_get_ram_ptr(&s->emiff_ram),
|
||||||
OMAP_EMIFF_BASE, s->sdram_size);
|
OMAP_EMIFF_BASE, s->sdram_size);
|
||||||
soc_dma_port_add_mem(s->dma, qemu_get_ram_ptr(imif_base),
|
soc_dma_port_add_mem(s->dma, memory_region_get_ram_ptr(&s->imif_ram),
|
||||||
OMAP_IMIF_BASE, s->sram_size);
|
OMAP_IMIF_BASE, s->sram_size);
|
||||||
|
|
||||||
s->timer[0] = omap_mpu_timer_init(system_memory, 0xfffec500,
|
s->timer[0] = omap_mpu_timer_init(system_memory, 0xfffec500,
|
||||||
|
@ -18,6 +18,8 @@
|
|||||||
* with this program; if not, see <http://www.gnu.org/licenses/>.
|
* with this program; if not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include "memory.h"
|
||||||
|
|
||||||
struct soc_dma_s;
|
struct soc_dma_s;
|
||||||
struct soc_dma_ch_s;
|
struct soc_dma_ch_s;
|
||||||
typedef void (*soc_dma_io_t)(void *opaque, uint8_t *buf, int len);
|
typedef void (*soc_dma_io_t)(void *opaque, uint8_t *buf, int len);
|
||||||
|
Loading…
Reference in New Issue
Block a user