158d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#ifndef __timer_defs_h 258d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define __timer_defs_h 358d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson 458d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson/* 558d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson * This file is autogenerated from 658d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson * file: timer.r 758d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson * 858d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson * by ../../../tools/rdesc/bin/rdes2c -outfile timer_defs.h timer.r 958d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson * Any changes here will be lost. 1058d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson * 1158d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson * -*- buffer-read-only: t -*- 1258d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson */ 1358d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson/* Main access macros */ 1458d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#ifndef REG_RD 1558d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_RD( scope, inst, reg ) \ 1658d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson REG_READ( reg_##scope##_##reg, \ 1758d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson (inst) + REG_RD_ADDR_##scope##_##reg ) 1858d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#endif 1958d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson 2058d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#ifndef REG_WR 2158d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_WR( scope, inst, reg, val ) \ 2258d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson REG_WRITE( reg_##scope##_##reg, \ 2358d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson (inst) + REG_WR_ADDR_##scope##_##reg, (val) ) 2458d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#endif 2558d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson 2658d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#ifndef REG_RD_VECT 2758d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_RD_VECT( scope, inst, reg, index ) \ 2858d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson REG_READ( reg_##scope##_##reg, \ 2958d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson (inst) + REG_RD_ADDR_##scope##_##reg + \ 3058d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson (index) * STRIDE_##scope##_##reg ) 3158d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#endif 3258d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson 3358d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#ifndef REG_WR_VECT 3458d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_WR_VECT( scope, inst, reg, index, val ) \ 3558d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson REG_WRITE( reg_##scope##_##reg, \ 3658d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson (inst) + REG_WR_ADDR_##scope##_##reg + \ 3758d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson (index) * STRIDE_##scope##_##reg, (val) ) 3858d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#endif 3958d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson 4058d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#ifndef REG_RD_INT 4158d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_RD_INT( scope, inst, reg ) \ 4258d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson REG_READ( int, (inst) + REG_RD_ADDR_##scope##_##reg ) 4358d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#endif 4458d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson 4558d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#ifndef REG_WR_INT 4658d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_WR_INT( scope, inst, reg, val ) \ 4758d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson REG_WRITE( int, (inst) + REG_WR_ADDR_##scope##_##reg, (val) ) 4858d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#endif 4958d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson 5058d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#ifndef REG_RD_INT_VECT 5158d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_RD_INT_VECT( scope, inst, reg, index ) \ 5258d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson REG_READ( int, (inst) + REG_RD_ADDR_##scope##_##reg + \ 5358d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson (index) * STRIDE_##scope##_##reg ) 5458d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#endif 5558d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson 5658d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#ifndef REG_WR_INT_VECT 5758d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_WR_INT_VECT( scope, inst, reg, index, val ) \ 5858d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson REG_WRITE( int, (inst) + REG_WR_ADDR_##scope##_##reg + \ 5958d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson (index) * STRIDE_##scope##_##reg, (val) ) 6058d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#endif 6158d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson 6258d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#ifndef REG_TYPE_CONV 6358d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_TYPE_CONV( type, orgtype, val ) \ 6458d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson ( { union { orgtype o; type n; } r; r.o = val; r.n; } ) 6558d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#endif 6658d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson 6758d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#ifndef reg_page_size 6858d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define reg_page_size 8192 6958d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#endif 7058d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson 7158d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#ifndef REG_ADDR 7258d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_ADDR( scope, inst, reg ) \ 7358d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson ( (inst) + REG_RD_ADDR_##scope##_##reg ) 7458d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#endif 7558d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson 7658d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#ifndef REG_ADDR_VECT 7758d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_ADDR_VECT( scope, inst, reg, index ) \ 7858d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson ( (inst) + REG_RD_ADDR_##scope##_##reg + \ 7958d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson (index) * STRIDE_##scope##_##reg ) 8058d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#endif 8158d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson 8258d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson/* C-code for register scope timer */ 8358d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson 8458d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson/* Register rw_tmr0_div, scope timer, type rw */ 8558d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilssontypedef unsigned int reg_timer_rw_tmr0_div; 8658d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_RD_ADDR_timer_rw_tmr0_div 0 8758d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_WR_ADDR_timer_rw_tmr0_div 0 8858d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson 8958d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson/* Register r_tmr0_data, scope timer, type r */ 9058d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilssontypedef unsigned int reg_timer_r_tmr0_data; 9158d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_RD_ADDR_timer_r_tmr0_data 4 9258d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson 9358d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson/* Register rw_tmr0_ctrl, scope timer, type rw */ 9458d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilssontypedef struct { 9558d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int op : 2; 9658d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int freq : 3; 9758d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int dummy1 : 27; 9858d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson} reg_timer_rw_tmr0_ctrl; 9958d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_RD_ADDR_timer_rw_tmr0_ctrl 8 10058d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_WR_ADDR_timer_rw_tmr0_ctrl 8 10158d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson 10258d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson/* Register rw_tmr1_div, scope timer, type rw */ 10358d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilssontypedef unsigned int reg_timer_rw_tmr1_div; 10458d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_RD_ADDR_timer_rw_tmr1_div 16 10558d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_WR_ADDR_timer_rw_tmr1_div 16 10658d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson 10758d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson/* Register r_tmr1_data, scope timer, type r */ 10858d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilssontypedef unsigned int reg_timer_r_tmr1_data; 10958d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_RD_ADDR_timer_r_tmr1_data 20 11058d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson 11158d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson/* Register rw_tmr1_ctrl, scope timer, type rw */ 11258d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilssontypedef struct { 11358d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int op : 2; 11458d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int freq : 3; 11558d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int dummy1 : 27; 11658d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson} reg_timer_rw_tmr1_ctrl; 11758d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_RD_ADDR_timer_rw_tmr1_ctrl 24 11858d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_WR_ADDR_timer_rw_tmr1_ctrl 24 11958d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson 12058d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson/* Register rs_cnt_data, scope timer, type rs */ 12158d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilssontypedef struct { 12258d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int tmr : 24; 12358d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int cnt : 8; 12458d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson} reg_timer_rs_cnt_data; 12558d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_RD_ADDR_timer_rs_cnt_data 32 12658d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson 12758d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson/* Register r_cnt_data, scope timer, type r */ 12858d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilssontypedef struct { 12958d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int tmr : 24; 13058d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int cnt : 8; 13158d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson} reg_timer_r_cnt_data; 13258d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_RD_ADDR_timer_r_cnt_data 36 13358d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson 13458d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson/* Register rw_cnt_cfg, scope timer, type rw */ 13558d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilssontypedef struct { 13658d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int clk : 2; 13758d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int dummy1 : 30; 13858d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson} reg_timer_rw_cnt_cfg; 13958d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_RD_ADDR_timer_rw_cnt_cfg 40 14058d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_WR_ADDR_timer_rw_cnt_cfg 40 14158d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson 14258d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson/* Register rw_trig, scope timer, type rw */ 14358d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilssontypedef unsigned int reg_timer_rw_trig; 14458d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_RD_ADDR_timer_rw_trig 48 14558d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_WR_ADDR_timer_rw_trig 48 14658d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson 14758d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson/* Register rw_trig_cfg, scope timer, type rw */ 14858d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilssontypedef struct { 14958d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int tmr : 2; 15058d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int dummy1 : 30; 15158d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson} reg_timer_rw_trig_cfg; 15258d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_RD_ADDR_timer_rw_trig_cfg 52 15358d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_WR_ADDR_timer_rw_trig_cfg 52 15458d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson 15558d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson/* Register r_time, scope timer, type r */ 15658d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilssontypedef unsigned int reg_timer_r_time; 15758d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_RD_ADDR_timer_r_time 56 15858d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson 15958d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson/* Register rw_out, scope timer, type rw */ 16058d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilssontypedef struct { 16158d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int tmr : 2; 16258d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int dummy1 : 30; 16358d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson} reg_timer_rw_out; 16458d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_RD_ADDR_timer_rw_out 60 16558d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_WR_ADDR_timer_rw_out 60 16658d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson 16758d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson/* Register rw_wd_ctrl, scope timer, type rw */ 16858d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilssontypedef struct { 16958d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int cnt : 8; 17058d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int cmd : 1; 17158d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int key : 7; 17258d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int dummy1 : 16; 17358d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson} reg_timer_rw_wd_ctrl; 17458d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_RD_ADDR_timer_rw_wd_ctrl 64 17558d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_WR_ADDR_timer_rw_wd_ctrl 64 17658d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson 17758d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson/* Register r_wd_stat, scope timer, type r */ 17858d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilssontypedef struct { 17958d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int cnt : 8; 18058d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int cmd : 1; 18158d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int dummy1 : 23; 18258d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson} reg_timer_r_wd_stat; 18358d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_RD_ADDR_timer_r_wd_stat 68 18458d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson 18558d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson/* Register rw_intr_mask, scope timer, type rw */ 18658d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilssontypedef struct { 18758d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int tmr0 : 1; 18858d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int tmr1 : 1; 18958d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int cnt : 1; 19058d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int trig : 1; 19158d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int dummy1 : 28; 19258d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson} reg_timer_rw_intr_mask; 19358d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_RD_ADDR_timer_rw_intr_mask 72 19458d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_WR_ADDR_timer_rw_intr_mask 72 19558d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson 19658d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson/* Register rw_ack_intr, scope timer, type rw */ 19758d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilssontypedef struct { 19858d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int tmr0 : 1; 19958d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int tmr1 : 1; 20058d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int cnt : 1; 20158d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int trig : 1; 20258d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int dummy1 : 28; 20358d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson} reg_timer_rw_ack_intr; 20458d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_RD_ADDR_timer_rw_ack_intr 76 20558d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_WR_ADDR_timer_rw_ack_intr 76 20658d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson 20758d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson/* Register r_intr, scope timer, type r */ 20858d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilssontypedef struct { 20958d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int tmr0 : 1; 21058d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int tmr1 : 1; 21158d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int cnt : 1; 21258d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int trig : 1; 21358d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int dummy1 : 28; 21458d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson} reg_timer_r_intr; 21558d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_RD_ADDR_timer_r_intr 80 21658d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson 21758d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson/* Register r_masked_intr, scope timer, type r */ 21858d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilssontypedef struct { 21958d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int tmr0 : 1; 22058d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int tmr1 : 1; 22158d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int cnt : 1; 22258d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int trig : 1; 22358d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int dummy1 : 28; 22458d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson} reg_timer_r_masked_intr; 22558d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_RD_ADDR_timer_r_masked_intr 84 22658d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson 22758d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson/* Register rw_test, scope timer, type rw */ 22858d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilssontypedef struct { 22958d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int dis : 1; 23058d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int en : 1; 23158d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson unsigned int dummy1 : 30; 23258d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson} reg_timer_rw_test; 23358d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_RD_ADDR_timer_rw_test 88 23458d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#define REG_WR_ADDR_timer_rw_test 88 23558d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson 23658d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson 23758d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson/* Constants */ 23858d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilssonenum { 23958d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson regk_timer_ext = 0x00000001, 24058d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson regk_timer_f100 = 0x00000007, 24158d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson regk_timer_f29_493 = 0x00000004, 24258d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson regk_timer_f32 = 0x00000005, 24358d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson regk_timer_f32_768 = 0x00000006, 24458d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson regk_timer_f90 = 0x00000003, 24558d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson regk_timer_hold = 0x00000001, 24658d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson regk_timer_ld = 0x00000000, 24758d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson regk_timer_no = 0x00000000, 24858d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson regk_timer_off = 0x00000000, 24958d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson regk_timer_run = 0x00000002, 25058d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson regk_timer_rw_cnt_cfg_default = 0x00000000, 25158d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson regk_timer_rw_intr_mask_default = 0x00000000, 25258d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson regk_timer_rw_out_default = 0x00000000, 25358d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson regk_timer_rw_test_default = 0x00000000, 25458d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson regk_timer_rw_tmr0_ctrl_default = 0x00000000, 25558d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson regk_timer_rw_tmr1_ctrl_default = 0x00000000, 25658d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson regk_timer_rw_trig_cfg_default = 0x00000000, 25758d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson regk_timer_start = 0x00000001, 25858d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson regk_timer_stop = 0x00000000, 25958d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson regk_timer_time = 0x00000001, 26058d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson regk_timer_tmr0 = 0x00000002, 26158d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson regk_timer_tmr1 = 0x00000003, 26258d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson regk_timer_vclk = 0x00000002, 26358d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson regk_timer_yes = 0x00000001 26458d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson}; 26558d083192825c5fbd46fa0b1ff4d1ecc9118b692Jesper Nilsson#endif /* __timer_defs_h */ 266