Changeset 11530


Ignore:
Timestamp:
2008-06-18T00:14:08+02:00 (8 years ago)
Author:
blogic
Message:

adds timer unit to ifxmips tree

Location:
trunk/target/linux/ifxmips/files
Files:
4 added
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/target/linux/ifxmips/files/arch/mips/ifxmips/Makefile

    r9921 r11530  
    1 obj-y := reset.o prom.o setup.o interrupt.o dma-core.o pmu.o board.o  
    2 #mps/ 
    3  
     1obj-y := reset.o prom.o setup.o interrupt.o dma-core.o pmu.o board.o cgu.o gptu.o 
    42obj-$(CONFIG_PCI) += pci.o 
    5 obj-$(CONFIG_KGDB) += kgdb_serial.o 
  • trunk/target/linux/ifxmips/files/arch/mips/ifxmips/board.c

    r11405 r11530  
    3636#include <asm/ifxmips/ifxmips.h> 
    3737 
    38 #define MAX_IFXMIPS_DEVS                6 
     38#define MAX_IFXMIPS_DEVS                7 
    3939 
    4040#define BOARD_DANUBE                    "Danube" 
     
    7171                .id = 0, 
    7272                .name = "ifxmips_mii0", 
     73        }, 
     74}; 
     75 
     76static struct platform_device ifxmips_wdt[] = 
     77{ 
     78        { 
     79                .id = 0, 
     80                .name = "ifxmips_wdt", 
    7381        }, 
    7482}; 
     
    149157        ifxmips_devs[dev++] = ifxmips_mii; 
    150158        ifxmips_devs[dev++] = ifxmips_mtd; 
     159        ifxmips_devs[dev++] = ifxmips_wdt; 
    151160#ifdef CONFIG_GPIO_DEVICE 
    152161        ifxmips_devs[dev++] = ifxmips_gpio_dev; 
  • trunk/target/linux/ifxmips/files/drivers/watchdog/ifxmips_wdt.c

    r11396 r11530  
    2828#include <linux/miscdevice.h> 
    2929#include <asm-mips/ifxmips/ifxmips_wdt.h> 
     30#include <asm-mips/ifxmips/ifxmips_cgu.h> 
    3031#include <asm-mips/ifxmips/ifxmips.h> 
    3132 
     
    3637 
    3738static int ifxmips_wdt_inuse = 0; 
    38 static int ifxmips_wdt_major = 0; 
    3939 
    4040int 
     
    5050        wdt_pwl = 0x8000 >> IFXMIPS_BIU_WDT_CR_PWL_GET(ifxmips_r32(IFXMIPS_BIU_WDT_CR)); 
    5151 
    52         //TODO 
    53         printk("WARNING FUNCTION CALL MISSING!!!"); 
    54         //ffpi = cgu_get_io_region_clock(); 
     52        ffpi = cgu_get_io_region_clock(); 
    5553        printk("cpu clock = %d\n", ffpi); 
    5654 
  • trunk/target/linux/ifxmips/files/include/asm-mips/ifxmips/ifxmips.h

    r11396 r11530  
    149149 
    150150/*------------ CGU */ 
    151  
    152 #define IFXMIPS_CGU_BASE_ADDR   0xBF103000 
     151#define IFXMIPS_CGU_BASE_ADDR           (KSEG1 + 0x1F103000) 
     152#define IFXMIPS_CGU_PLL0_CFG            ((u32*)(IFXMIPS_CGU_BASE_ADDR + 0x0004)) 
     153#define IFXMIPS_CGU_PLL1_CFG            ((u32*)(IFXMIPS_CGU_BASE_ADDR + 0x0008)) 
     154#define IFXMIPS_CGU_PLL2_CFG            ((u32*)(IFXMIPS_CGU_BASE_ADDR + 0x000C)) 
     155#define IFXMIPS_CGU_SYS                         ((u32*)(IFXMIPS_CGU_BASE_ADDR + 0x0010)) 
     156#define IFXMIPS_CGU_UPDATE                      ((u32*)(IFXMIPS_CGU_BASE_ADDR + 0x0014)) 
     157#define IFXMIPS_CGU_IF_CLK                      ((u32*)(IFXMIPS_CGU_BASE_ADDR + 0x0018)) 
     158#define IFXMIPS_CGU_OSC_CON                     ((u32*)(IFXMIPS_CGU_BASE_ADDR + 0x001C)) 
     159#define IFXMIPS_CGU_SMD                         ((u32*)(IFXMIPS_CGU_BASE_ADDR + 0x0020)) 
     160#define IFXMIPS_CGU_CT1SR                       ((u32*)(IFXMIPS_CGU_BASE_ADDR + 0x0028)) 
     161#define IFXMIPS_CGU_CT2SR                       ((u32*)(IFXMIPS_CGU_BASE_ADDR + 0x002C)) 
     162#define IFXMIPS_CGU_PCMCR                       ((u32*)(IFXMIPS_CGU_BASE_ADDR + 0x0030)) 
     163#define IFXMIPS_CGU_PCI_CR                      ((u32*)(IFXMIPS_CGU_BASE_ADDR + 0x0034)) 
     164#define IFXMIPS_CGU_PD_PC                       ((u32*)(IFXMIPS_CGU_BASE_ADDR + 0x0038)) 
     165#define IFXMIPS_CGU_FMR                         ((u32*)(IFXMIPS_CGU_BASE_ADDR + 0x003C)) 
    153166 
    154167/* clock mux */ 
     
    180193#define IFXMIPS_ICU_IM0_ISR             ((u32*)(IFXMIPS_ICU_BASE_ADDR + 0x0000)) 
    181194#define IFXMIPS_ICU_IM0_IER             ((u32*)(IFXMIPS_ICU_BASE_ADDR + 0x0008)) 
    182 #define IFXMIPS_ICU_IM0_IOSR            ((u32*)(IFXMIPS_ICU_BASE_ADDR + 0x0010)) 
    183 #define IFXMIPS_ICU_IM0_IRSR            ((u32*)(IFXMIPS_ICU_BASE_ADDR + 0x0018)) 
     195#define IFXMIPS_ICU_IM0_IOSR    ((u32*)(IFXMIPS_ICU_BASE_ADDR + 0x0010)) 
     196#define IFXMIPS_ICU_IM0_IRSR    ((u32*)(IFXMIPS_ICU_BASE_ADDR + 0x0018)) 
    184197#define IFXMIPS_ICU_IM0_IMR             ((u32*)(IFXMIPS_ICU_BASE_ADDR + 0x0020)) 
    185198 
    186199#define IFXMIPS_ICU_IM1_ISR             ((u32*)(IFXMIPS_ICU_BASE_ADDR + 0x0028)) 
     200#define IFXMIPS_ICU_IM5_IER             ((u32*)(IFXMIPS_ICU_BASE_ADDR + 0x00D0)) 
    187201 
    188202#define IFXMIPS_ICU_OFFSET              (IFXMIPS_ICU_IM1_ISR - IFXMIPS_ICU_IM0_ISR) 
     
    437451 
    438452#define IFXMIPS_MPS_CHIPID              ((u32*)(IFXMIPS_MPS_BASE_ADDR + 0x0344)) 
     453#define IFXMIPS_MPS_VC0ENR              ((u32*)(IFXMIPS_MPS_BASE_ADDR + 0x0000)) 
     454#define IFXMIPS_MPS_VC1ENR              ((u32*)(IFXMIPS_MPS_BASE_ADDR + 0x0004)) 
     455#define IFXMIPS_MPS_VC2ENR              ((u32*)(IFXMIPS_MPS_BASE_ADDR + 0x0008)) 
     456#define IFXMIPS_MPS_VC3ENR              ((u32*)(IFXMIPS_MPS_BASE_ADDR + 0x000C)) 
     457#define IFXMIPS_MPS_RVC0SR              ((u32*)(IFXMIPS_MPS_BASE_ADDR + 0x0010)) 
     458#define IFXMIPS_MPS_RVC1SR              ((u32*)(IFXMIPS_MPS_BASE_ADDR + 0x0014)) 
     459#define IFXMIPS_MPS_RVC2SR              ((u32*)(IFXMIPS_MPS_BASE_ADDR + 0x0018)) 
     460#define IFXMIPS_MPS_RVC3SR              ((u32*)(IFXMIPS_MPS_BASE_ADDR + 0x001C)) 
     461#define IFXMIPS_MPS_SVC0SR              ((u32*)(IFXMIPS_MPS_BASE_ADDR + 0x0020)) 
     462#define IFXMIPS_MPS_SVC1SR              ((u32*)(IFXMIPS_MPS_BASE_ADDR + 0x0024)) 
     463#define IFXMIPS_MPS_SVC2SR              ((u32*)(IFXMIPS_MPS_BASE_ADDR + 0x0028)) 
     464#define IFXMIPS_MPS_SVC3SR              ((u32*)(IFXMIPS_MPS_BASE_ADDR + 0x002C)) 
     465#define IFXMIPS_MPS_CVC0SR              ((u32*)(IFXMIPS_MPS_BASE_ADDR + 0x0030)) 
     466#define IFXMIPS_MPS_CVC1SR              ((u32*)(IFXMIPS_MPS_BASE_ADDR + 0x0034)) 
     467#define IFXMIPS_MPS_CVC2SR              ((u32*)(IFXMIPS_MPS_BASE_ADDR + 0x0038)) 
     468#define IFXMIPS_MPS_CVC3SR              ((u32*)(IFXMIPS_MPS_BASE_ADDR + 0x003C)) 
     469#define IFXMIPS_MPS_RAD0SR              ((u32*)(IFXMIPS_MPS_BASE_ADDR + 0x0040)) 
     470#define IFXMIPS_MPS_RAD1SR              ((u32*)(IFXMIPS_MPS_BASE_ADDR + 0x0044)) 
     471#define IFXMIPS_MPS_SAD0SR              ((u32*)(IFXMIPS_MPS_BASE_ADDR + 0x0048)) 
     472#define IFXMIPS_MPS_SAD1SR              ((u32*)(IFXMIPS_MPS_BASE_ADDR + 0x004C)) 
     473#define IFXMIPS_MPS_CAD0SR              ((u32*)(IFXMIPS_MPS_BASE_ADDR + 0x0050)) 
     474#define IFXMIPS_MPS_CAD1SR              ((u32*)(IFXMIPS_MPS_BASE_ADDR + 0x0054)) 
     475#define IFXMIPS_MPS_AD0ENR              ((u32*)(IFXMIPS_MPS_BASE_ADDR + 0x0058)) 
     476#define IFXMIPS_MPS_AD1ENR              ((u32*)(IFXMIPS_MPS_BASE_ADDR + 0x005C)) 
     477 
     478#define IFXMIPS_MPS_CHIPID_VERSION_GET(value)    (((value) >> 28) & ((1 << 4) - 1)) 
     479#define IFXMIPS_MPS_CHIPID_VERSION_SET(value)   (((( 1 << 4) - 1) & (value)) << 28) 
     480#define IFXMIPS_MPS_CHIPID_PARTNUM_GET(value)   (((value) >> 12) & ((1 << 16) - 1)) 
     481#define IFXMIPS_MPS_CHIPID_PARTNUM_SET(value)   (((( 1 << 16) - 1) & (value)) << 12) 
     482#define IFXMIPS_MPS_CHIPID_MANID_GET(value)             (((value) >> 1) & ((1 << 10) - 1)) 
     483#define IFXMIPS_MPS_CHIPID_MANID_SET(value)             (((( 1 << 10) - 1) & (value)) << 1) 
    439484 
    440485#endif 
Note: See TracChangeset for help on using the changeset viewer.