⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ar531x.h

📁 atheros ar531x watchdog driver
💻 H
📖 第 1 页 / 共 4 页
字号:
#else/* * Add support for Cobra * * AR531XPLUSreg.h Register definitions for Atheros AR5311 and AR5312 chipsets. *   - WLAN registers are listed in *         hal/ar5211/ar5211Reg.h *         hal/ar5212/ar5212Reg.h *   - Ethernet registers are listed in ar531xenet.h *   - Standard UART is 16550 compatible. *//* * Address map */#define AR531XPLUS_SDRAM0           0x00000000      /* DRAM */#define AR531XPLUS_SPI_READ         0x08000000      /* SPI FLASH */#define AR531XPLUS_WLAN0            0xB0000000      /* Wireless MMR */#define AR531XPLUS_PCI              0xB0100000      /* PCI MMR */#define AR531XPLUS_SDRAMCTL         0xB0300000      /* SDRAM MMR */#define AR531XPLUS_LOCAL            0xB0400000      /* LOCAL BUS MMR */#define AR531XPLUS_ENET0            0xB0500000      /* ETHERNET MMR */#define AR531XPLUS_DSLBASE          0xB1000000      /* RESET CONTROL MMR */#define AR531XPLUS_UART0            0xB1100003      /* UART MMR */#define AR531XPLUS_SPI              0xB1300000      /* SPI FLASH MMR */#define AR531XPLUS_FLASHBT          0xBfc00000      /* ro boot alias to FLASH */#define AR531XPLUS_RAM1             0x40000000      /* ram alias */#define AR531XPLUS_PCIEXT           0x80000000      /* pci external */#define AR531XPLUS_RAM2             0xc0000000      /* ram alias */#define AR531XPLUS_RAM3             0xe0000000      /* ram alias */#define AR531X_ENET0  AR531XPLUS_ENET0       #define AR531X_ENET1  0 /* * Reset Register */#define AR531XPLUS_COLD_RESET       (AR531XPLUS_DSLBASE + 0x0000)/* Cold Reset */#define RESET_COLD_AHB              0x00000001#define RESET_COLD_APB              0x00000002#define RESET_COLD_CPU              0x00000004#define RESET_COLD_CPUWARM          0x00000008#define RESET_SYSTEM                (RESET_COLD_CPU | RESET_COLD_APB | RESET_COLD_AHB)      /* full system *//* Warm Reset */#define AR531XPLUS_RESET            (AR531XPLUS_DSLBASE + 0x0004)#define AR531X_RESET AR531XPLUS_RESET#define RESET_WARM_WLAN0_MAC        0x00000001      /* warm reset WLAN0 MAC */#define RESET_WARM_WLAN0_BB         0x00000002      /* warm reset WLAN0 BaseBand */#define RESET_MPEGTS_RSVD           0x00000004      /* warm reset MPEG-TS */#define RESET_PCIDMA                0x00000008      /* warm reset PCI ahb/dma */#define RESET_MEMCTL                0x00000010      /* warm reset memory controller */#define RESET_LOCAL                 0x00000020      /* warm reset local bus */#define RESET_I2C_RSVD              0x00000040      /* warm reset I2C bus */#define RESET_SPI                   0x00000080      /* warm reset SPI interface */#define RESET_UART0                 0x00000100      /* warm reset UART0 */#define RESET_IR_RSVD               0x00000200      /* warm reset IR interface */#define RESET_EPHY0                 0x00000400      /* cold reset ENET0 phy */#define RESET_ENET0                 0x00000800      /* cold reset ENET0 mac */#define AR531X_RESET_ENET0 RESET_ENET0#define AR531X_RESET_EPHY0 RESET_EPHY0#define AR531X_RESET_ENET1 0#define AR531X_RESET_EPHY1 0/* * AHB master arbitration control */#define AR531XPLUS_AHB_ARB_CTL      (AR531XPLUS_DSLBASE + 0x0008)#define ARB_CPU                     0x00000001      /* CPU, default */#define ARB_WLAN                    0x00000002      /* WLAN */#define ARB_MPEGTS_RSVD             0x00000004      /* MPEG-TS */#define ARB_LOCAL                   0x00000008      /* LOCAL */#define ARB_PCI                     0x00000010      /* PCI */#define ARB_ETHERNET                0x00000020      /* Ethernet */#define ARB_RETRY                   0x00000100      /* retry policy, debug only *//* * Config Register */#define AR531XPLUS_ENDIAN_CTL       (AR531XPLUS_DSLBASE + 0x000c)#define CONFIG_AHB                  0x00000001      /* EC - AHB bridge endianess */#define CONFIG_WLAN                 0x00000002      /* WLAN byteswap */#define CONFIG_MPEGTS_RSVD          0x00000004      /* MPEG-TS byteswap */#define CONFIG_PCI                  0x00000008      /* PCI byteswap */#define CONFIG_MEMCTL               0x00000010      /* Memory controller endianess */#define CONFIG_LOCAL                0x00000020      /* Local bus byteswap */#define CONFIG_ETHERNET             0x00000040      /* Ethernet byteswap */#define CONFIG_MERGE                0x00000200      /* CPU write buffer merge */#define CONFIG_CPU                  0x00000400      /* CPU big endian */#define CONFIG_PCIAHB               0x00000800#define CONFIG_PCIAHB_BRIDGE        0x00001000#define CONFIG_SPI                  0x00008000      /* SPI byteswap */#define CONFIG_CPU_DRAM             0x00010000#define CONFIG_CPU_PCI              0x00020000#define CONFIG_CPU_MMR              0x00040000#define CONFIG_BIG                  0x00000400      /* * NMI control */#define AR531XPLUS_NMI_CTL          (AR531XPLUS_DSLBASE + 0x0010)#define NMI_EN  1/* * Revision Register - Initial value is 0x3010 (WMAC 3.0, AR531X 1.0). */#define AR531XPLUS_SREV             (AR531XPLUS_DSLBASE + 0x0014)#define AR531X_REV  AR531XPLUS_SREV#define REV_MAJ                     0x00f0#define REV_MAJ_S                   4#define REV_MIN                     0x000f#define REV_MIN_S                   0#define REV_CHIP                    (REV_MAJ|REV_MIN)#define AR531X_REV_MAJ REV_MAJ#define AR531X_REV_MAJ_S REV_MAJ_S#define AR531X_REV_MIN REV_MIN #define AR531X_REV_MIN_S REV_MIN_S #define REV_CHIP                    (REV_MAJ|REV_MIN)/* * Need these defines to determine true number of ethernet MACs */#define AR5212_AR5312_REV2      0x0052          /* AR5312 WMAC (AP31) */#define AR5212_AR5312_REV7      0x0057          /* AR5312 WMAC (AP30-040) */#define AR5212_AR2313_REV8      0x0058          /* AR2313 WMAC (AP43-030) */#define AR531X_RADIO_MASK_OFF  0xc8#define AR531X_RADIO0_MASK     0x0003#define AR531X_RADIO1_MASK     0x000c#define AR531X_RADIO1_S        2 /* Major revision numbers, bits 7..4 of Revision ID register */#define AR531X_REV_MAJ_AR5312          0x4#define AR531X_REV_MAJ_AR2313          0x5/* * AR531X_NUM_ENET_MAC defines the number of ethernet MACs that * should be considered available.  The AR5312 supports 2 enet MACS, * even though many reference boards only actually use 1 of them * (i.e. Only MAC 0 is actually connected to an enet PHY or PHY switch. * The AR2312 supports 1 enet MAC. */#define AR531X_NUM_ENET_MAC             1/* * Interface Enable */#define AR531XPLUS_IF_CTL           (AR531XPLUS_DSLBASE + 0x0018)#define IF_MASK                     0x00000007#define IF_DISABLED                 0#define IF_PCI                      1#define IF_TS_LOCAL                 2#define IF_ALL                      3   /* only for emulation with separate pins */#define IF_LOCAL_HOST               0x00000008#define IF_PCI_HOST                 0x00000010#define IF_PCI_INTR                 0x00000020#define IF_PCI_CLK_MASK             0x00030000#define IF_PCI_CLK_INPUT            0 #define IF_PCI_CLK_OUTPUT_LOW       1#define IF_PCI_CLK_OUTPUT_CLK       2#define IF_PCI_CLK_OUTPUT_HIGH      3#define IF_PCI_CLK_SHIFT            16                  /* Major revision numbers, bits 7..4 of Revision ID register */#define REV_MAJ_AR5311              0x01#define REV_MAJ_AR5312              0x04#define REV_MAJ_AR5315              0x0B/* * APB Interrupt control */#define AR531XPLUS_ISR              (AR531XPLUS_DSLBASE + 0x0020)#define AR531XPLUS_IMR              (AR531XPLUS_DSLBASE + 0x0024)#define AR531XPLUS_GISR             (AR531XPLUS_DSLBASE + 0x0028)#define ISR_UART0                   0x0001           /* high speed UART */#define ISR_I2C_RSVD                0x0002           /* I2C bus */#define ISR_SPI                     0x0004           /* SPI bus */#define ISR_AHB                     0x0008           /* AHB error */#define ISR_APB                     0x0010           /* APB error */#define ISR_TIMER                   0x0020           /* timer */#define ISR_GPIO                    0x0040           /* GPIO */#define ISR_WD                      0x0080           /* watchdog */#define ISR_IR_RSVD                 0x0100           /* IR */                                #define IMR_UART0                   ISR_UART0#define IMR_I2C_RSVD                ISR_I2C_RSVD#define IMR_SPI                     ISR_SPI#define IMR_AHB                     ISR_AHB#define IMR_APB                     ISR_APB#define IMR_TIMER                   ISR_TIMER#define IMR_GPIO                    ISR_GPIO#define IMR_WD                      ISR_WD#define IMR_IR_RSVD                 ISR_IR_RSVD#define GISR_MISC                   0x0001#define GISR_WLAN0                  0x0002#define GISR_MPEGTS_RSVD            0x0004#define GISR_LOCALPCI               0x0008#define GISR_WMACPOLL               0x0010#define GISR_TIMER                  0x0020#define GISR_ETHERNET               0x0040/* * Interrupt routing from IO to the processor IP bits * Define our inter mask and level */#define AR531XPLUS_INTR_MISCIO      SR_IBIT3#define AR531XPLUS_INTR_WLAN0       SR_IBIT4#define AR531XPLUS_INTR_ENET0       SR_IBIT5#define AR531XPLUS_INTR_LOCALPCI    SR_IBIT6#define AR531XPLUS_INTR_WMACPOLL    SR_IBIT7#define AR531XPLUS_INTR_COMPARE     SR_IBIT8/* * Timers */#define AR531XPLUS_TIMER            (AR531XPLUS_DSLBASE + 0x0030)#define AR531XPLUS_RELOAD           (AR531XPLUS_DSLBASE + 0x0034)#define AR531XPLUS_WD               (AR531XPLUS_DSLBASE + 0x0038)#define AR531XPLUS_WDC              (AR531XPLUS_DSLBASE + 0x003c)#define WDC_AHB_INTR                0x00000004               /* AHB error interrupt on watchdog */#define WDC_RESET                   0x00000002               /* reset on watchdog */#define WDC_NMI                     0x00000001               /* NMI on watchdog */#define WDC_IGNORE_EXPIRATION       0x00000000/* * Interface Debug */#define AR531X_FLASHDBG             (AR531X_RESETTMR + 0x0040)#define AR531X_MIIDBG               (AR531X_RESETTMR + 0x0044)/* * CPU Performance Counters */#define AR531XPLUS_PERFCNT0         (AR531XPLUS_DSLBASE + 0x0048)#define AR531XPLUS_PERFCNT1         (AR531XPLUS_DSLBASE + 0x004c)#define PERF_DATAHIT                0x0001  /* Count Data Cache Hits */#define PERF_DATAMISS               0x0002  /* Count Data Cache Misses */#define PERF_INSTHIT                0x0004  /* Count Instruction Cache Hits */#define PERF_INSTMISS               0x0008  /* Count Instruction Cache Misses */#define PERF_ACTIVE                 0x0010  /* Count Active Processor Cycles */#define PERF_WBHIT                  0x0020  /* Count CPU Write Buffer Hits */#define PERF_WBMISS                 0x0040  /* Count CPU Write Buffer Misses */                                #define PERF_EB_ARDY                0x0001  /* Count EB_ARdy signal */#define PERF_EB_AVALID              0x0002  /* Count EB_AValid signal */#define PERF_EB_WDRDY               0x0004  /* Count EB_WDRdy signal */#define PERF_EB_RDVAL               0x0008  /* Count EB_RdVal signal */#define PERF_VRADDR                 0x0010  /* Count valid read address cycles */#define PERF_VWADDR                 0x0020  /* Count valid write address cycles */#define PERF_VWDATA                 0x0040  /* Count valid write data cycles *//* * AHB Error Reporting. */#define AR531XPLUS_AHB_ERR0         (AR531XPLUS_DSLBASE + 0x0050)  /* error  */#define AR531XPLUS_AHB_ERR1         (AR531XPLUS_DSLBASE + 0x0054)  /* haddr  */#define AR531XPLUS_AHB_ERR2         (AR531XPLUS_DSLBASE + 0x0058)  /* hwdata */#define AR531XPLUS_AHB_ERR3         (AR531XPLUS_DSLBASE + 0x005c)  /* hrdata */#define AR531XPLUS_AHB_ERR4         (AR531XPLUS_DSLBASE + 0x0060)  /* status */#define AHB_ERROR_DET               1   /* AHB Error has been detected,          */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -