linux/arch/unicore32/include/mach/PKUnity.h
<<
>>
Prefs
   1/*
   2 * linux/arch/unicore32/include/mach/PKUnity.h
   3 *
   4 * Code specific to PKUnity SoC and UniCore ISA
   5 *
   6 * Copyright (C) 2001-2010 GUAN Xue-tao
   7 *
   8 * This program is free software; you can redistribute it and/or modify
   9 * it under the terms of the GNU General Public License version 2 as
  10 * published by the Free Software Foundation.
  11 */
  12
  13/* Be sure that virtual mapping is defined right */
  14#ifndef __MACH_PUV3_HARDWARE_H__
  15#error You must include hardware.h not PKUnity.h
  16#endif
  17
  18#include <mach/bitfield.h>
  19
  20/*
  21 * Memory Definitions
  22 */
  23#define PKUNITY_SDRAM_BASE              0x00000000 /* 0x00000000 - 0x7FFFFFFF 2GB */
  24#define PKUNITY_MMIO_BASE               0x80000000 /* 0x80000000 - 0xFFFFFFFF 2GB */
  25
  26/*
  27 * PKUNITY System Bus Addresses (PCI): 0x80000000 - 0xBFFFFFFF (1GB)
  28 * 0x80000000 - 0x8000000B 12B    PCI Configuration regs
  29 * 0x80010000 - 0x80010250 592B   PCI Bridge Base
  30 * 0x80030000 - 0x8003FFFF 64KB   PCI Legacy IO
  31 * 0x90000000 - 0x97FFFFFF 128MB  PCI AHB-PCI MEM-mapping
  32 * 0x98000000 - 0x9FFFFFFF 128MB  PCI PCI-AHB MEM-mapping
  33 */
  34#define PKUNITY_PCI_BASE                io_p2v(0x80000000) /* 0x80000000 - 0xBFFFFFFF 1GB */
  35#include <mach/regs-pci.h>
  36
  37#define PKUNITY_PCICFG_BASE             (PKUNITY_PCI_BASE + 0x0)
  38#define PKUNITY_PCIBRI_BASE             (PKUNITY_PCI_BASE + 0x00010000)
  39#define PKUNITY_PCILIO_BASE             (PKUNITY_PCI_BASE + 0x00030000)
  40#define PKUNITY_PCIMEM_BASE             (PKUNITY_PCI_BASE + 0x10000000)
  41#define PKUNITY_PCIAHB_BASE             (PKUNITY_PCI_BASE + 0x18000000)
  42
  43/*
  44 * PKUNITY System Bus Addresses (AHB): 0xC0000000 - 0xEDFFFFFF (640MB)
  45 */
  46#define PKUNITY_AHB_BASE                io_p2v(0xC0000000)
  47
  48/* AHB-0 is DDR2 SDRAM */
  49/* AHB-1 is PCI Space */
  50#define PKUNITY_ARBITER_BASE            (PKUNITY_AHB_BASE + 0x000000) /* AHB-2 */
  51#define PKUNITY_DDR2CTRL_BASE           (PKUNITY_AHB_BASE + 0x100000) /* AHB-3 */
  52#define PKUNITY_DMAC_BASE               (PKUNITY_AHB_BASE + 0x200000) /* AHB-4 */
  53#include <mach/regs-dmac.h>
  54#define PKUNITY_UMAL_BASE               (PKUNITY_AHB_BASE + 0x300000) /* AHB-5 */
  55#include <mach/regs-umal.h>
  56#define PKUNITY_USB_BASE                (PKUNITY_AHB_BASE + 0x400000) /* AHB-6 */
  57#define PKUNITY_SATA_BASE               (PKUNITY_AHB_BASE + 0x500000) /* AHB-7 */
  58#define PKUNITY_SMC_BASE                (PKUNITY_AHB_BASE + 0x600000) /* AHB-8 */
  59/* AHB-9 is for APB bridge */
  60#define PKUNITY_MME_BASE                (PKUNITY_AHB_BASE + 0x700000) /* AHB-10 */
  61#define PKUNITY_UNIGFX_BASE             (PKUNITY_AHB_BASE + 0x800000) /* AHB-11 */
  62#include <mach/regs-unigfx.h>
  63#define PKUNITY_NAND_BASE               (PKUNITY_AHB_BASE + 0x900000) /* AHB-12 */
  64#include <mach/regs-nand.h>
  65#define PKUNITY_H264D_BASE              (PKUNITY_AHB_BASE + 0xA00000) /* AHB-13 */
  66#define PKUNITY_H264E_BASE              (PKUNITY_AHB_BASE + 0xB00000) /* AHB-14 */
  67
  68/*
  69 * PKUNITY Peripheral Bus Addresses (APB): 0xEE000000 - 0xEFFFFFFF (128MB)
  70 */
  71#define PKUNITY_APB_BASE                io_p2v(0xEE000000)
  72
  73#define PKUNITY_UART0_BASE              (PKUNITY_APB_BASE + 0x000000) /* APB-0 */
  74#define PKUNITY_UART1_BASE              (PKUNITY_APB_BASE + 0x100000) /* APB-1 */
  75#include <mach/regs-uart.h>
  76#define PKUNITY_I2C_BASE                (PKUNITY_APB_BASE + 0x200000) /* APB-2 */
  77#include <mach/regs-i2c.h>
  78#define PKUNITY_SPI_BASE                (PKUNITY_APB_BASE + 0x300000) /* APB-3 */
  79#include <mach/regs-spi.h>
  80#define PKUNITY_AC97_BASE               (PKUNITY_APB_BASE + 0x400000) /* APB-4 */
  81#include <mach/regs-ac97.h>
  82#define PKUNITY_GPIO_BASE               (PKUNITY_APB_BASE + 0x500000) /* APB-5 */
  83#include <mach/regs-gpio.h>
  84#define PKUNITY_INTC_BASE               (PKUNITY_APB_BASE + 0x600000) /* APB-6 */
  85#include <mach/regs-intc.h>
  86#define PKUNITY_RTC_BASE                (PKUNITY_APB_BASE + 0x700000) /* APB-7 */
  87#include <mach/regs-rtc.h>
  88#define PKUNITY_OST_BASE                (PKUNITY_APB_BASE + 0x800000) /* APB-8 */
  89#include <mach/regs-ost.h>
  90#define PKUNITY_RESETC_BASE             (PKUNITY_APB_BASE + 0x900000) /* APB-9 */
  91#include <mach/regs-resetc.h>
  92#define PKUNITY_PM_BASE                 (PKUNITY_APB_BASE + 0xA00000) /* APB-10 */
  93#include <mach/regs-pm.h>
  94#define PKUNITY_PS2_BASE                (PKUNITY_APB_BASE + 0xB00000) /* APB-11 */
  95#include <mach/regs-ps2.h>
  96#define PKUNITY_SDC_BASE                (PKUNITY_APB_BASE + 0xC00000) /* APB-12 */
  97#include <mach/regs-sdc.h>
  98
  99