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

📄 skyeye_mach_omap5912.c

📁 skyeye for pxa270
💻 C
📖 第 1 页 / 共 3 页
字号:
	switch (addr) { 		/*os timer*/		case OS_TIMER_TICK_VAL:			data = omap5912_io.os_timer.os_timer_tick_val * (0x00ffffff);			break;		case OS_TIMER_TICK_CNTR:			data = omap5912_io.os_timer.os_timer_tick_cntr & (0x00ffffff);			printf("os timer tick count value\n");			break;		case OS_TIMER_CTRL:			data = omap5912_io.os_timer.os_timer_ctrl;			printf("os timer control%x\n", data);			break;		case TIMER_32K_SYNCHRONIZED:			data = omap5912_io.timer_32k_synchronized;			//printf("32k synchronized%x\n", data);			break;		/*mpu timer*/		case MPU_CNTL_TIMER1: 			data = omap5912_io.timer.mpu_cntl_timer[0];			//printf("timer 1 read control %x\n", omap5912_io.timer.mpu_cntl_timer[0]);			break;		case MPU_READ_TIMER1:			data = omap5912_io.timer.mpu_read_timer[0];			//printf("timer 1 read %x\n", data);			break;		case MPU_CNTL_TIMER2: 			data = omap5912_io.timer.mpu_cntl_timer[1];			//printf("timer 2 read control %x\n", omap5912_io.timer.mpu_cntl_timer[1]);			break;		case MPU_READ_TIMER2:			data = omap5912_io.timer.mpu_read_timer[1];			//printf("timer 2 read %x\n", data);			break;		case MPU_CNTL_TIMER3: 			data = omap5912_io.timer.mpu_cntl_timer[2];			break;		case MPU_READ_TIMER3:			data = omap5912_io.timer.mpu_read_timer[2];			break;		/**interrupt controller*/		case MPU_L2_ITR:			data = omap5912_io.ic.mpu_l2_itr;			//printf("read mpu l2 itr %x\n",data);			break;		case MPU_L2_MIR:			data = omap5912_io.ic.mpu_l2_mir;			//printf("readmpu l2 mir %x\n",data);			break;		case MPU_L2_SIR_IRQ:			data = omap5912_io.ic.mpu_l2_sir_irq;			//omap5912_update_l2_int(state);			//printf("read mpu l2 sir irq %d\n",data);			break;		case MPU_L2_SIR_FIQ:			data = omap5912_io.ic.mpu_l2_sir_fiq;			break;		case MPU_L2_CONTROL:			data = omap5912_io.ic.mpu_l2_control;			break;		case MPU_L2_STATUS:			data = omap5912_io.ic.mpu_l2_status;			break;		case MPU_L2_OCP_CFG:			data = omap5912_io.ic.mpu_l2_ocp_cfg;			break;		case MPU_L1_ITR:			data = omap5912_io.ic.mpu_l1_itr;			break;		case MPU_L1_MIR:			data = omap5912_io.ic.mpu_l1_mir;			//printf("mpul1 mir read %x\n", data);			break;		case MPU_L1_SIR_IRQ_CODE:			data = omap5912_io.ic.mpu_l1_sir_irq_code;			//printf("mpul1 sir_irq code read %x\n", data);			break;		case MPU_L1_SIR_FIQ_CODE:			data = omap5912_io.ic.mpu_l1_sir_fiq_code;			//omap5912_io.ic.mpu_l1_itr &= ~(1 << data);			break;		case MPU_L1_CONTROL:			data = omap5912_io.ic.mpu_l1_control;			//printf("mpul1 control read %x\n", data);			break;		case MPU_L1_ISR:			data = omap5912_io.ic.mpu_l1_isr;			//printf(" mpul1_isr %x \n", data);			break;		case MPU_L1_ENHANCEED_CNTL:			data = omap5912_io.ic.mpu_l1_enhanceed_cntl;			break;		/** gpio1*/		case GPIO1_REVISION:			data = omap5912_io.gpio[0].gpio_reversion;			break;		case GPIO1_SYSSTATUS:			data = omap5912_io.gpio[0].gpio_sysstatus;			break;		case GPIO1_SYSCONFIG:			data = omap5912_io.gpio[0].gpio_sysconfig;			break;		case GPIO1_IRQSTATUS1:			data = omap5912_io.gpio[0].gpio_irqstatus1;			break;		case GPIO1_IRQENABLE1:			data = omap5912_io.gpio[0].gpio_irqenable1;			break;		case GPIO1_IRQSTATUS2:			data = omap5912_io.gpio[0].gpio_irqstatus2;			break;		case GPIO1_IRQENABLE2:			data = omap5912_io.gpio[0].gpio_irqenable2;			break;		case GPIO1_WAKEUPENABLE:			data = omap5912_io.gpio[0].gpio_wakeupenable;			break;		case GPIO1_DATAIN:			data = omap5912_io.gpio[0].gpio_datain;			break;		case GPIO1_DATAOUT:			data = omap5912_io.gpio[0].gpio_dataout;			break;		case GPIO1_DIRECTION:			data = omap5912_io.gpio[0].gpio_direction;			break;		case GPIO1_EDGE_CTRL1:			data = omap5912_io.gpio[0].gpio_edge_ctrl1;			break;		case GPIO1_EDGE_CTRL2:			data = omap5912_io.gpio[0].gpio_edge_ctrl2;			break;		case GPIO1_CLEAR_IRQENABLE1:			data = omap5912_io.gpio[0].gpio_clear_irqenable1;			break;		case GPIO1_CLEAR_IRQENABLE2:			data = omap5912_io.gpio[0].gpio_clear_irqenable2;			break;		case GPIO1_CLEAR_WAKEUPENA:			data = omap5912_io.gpio[0].gpio_clear_wakeupena;			break;		case GPIO1_CLEAR_DATAOUT:			data = omap5912_io.gpio[0].gpio_clear_dataout;			break;		case GPIO1_SET_IRQENABLE1:			data = omap5912_io.gpio[0].gpio_set_irqenable1;			break;		case GPIO1_SET_IRQENABLE2:			data = omap5912_io.gpio[0].gpio_set_irqenable2;			break;		case GPIO1_SET_WAKEUPENA:			data = omap5912_io.gpio[0].gpio_set_wakeupena;			break;		case GPIO1_SET_DATAOUT:			data = omap5912_io.gpio[0].gpio_set_dataout;			break;			/** gpio2*/		case GPIO2_REVISION:			data = omap5912_io.gpio[1].gpio_reversion;			break;		case GPIO2_SYSSTATUS:			data = omap5912_io.gpio[1].gpio_sysstatus;			break;		case GPIO2_SYSCONFIG:			data = omap5912_io.gpio[1].gpio_sysconfig;			break;		case GPIO2_IRQSTATUS1:			data = omap5912_io.gpio[1].gpio_irqstatus1;			break;		case GPIO2_IRQENABLE1:			data = omap5912_io.gpio[1].gpio_irqenable1;			break;		case GPIO2_IRQSTATUS2:			data = omap5912_io.gpio[1].gpio_irqstatus2;			break;		case GPIO2_IRQENABLE2:			data = omap5912_io.gpio[1].gpio_irqenable2;			break;		case GPIO2_WAKEUPENABLE:			data = omap5912_io.gpio[1].gpio_wakeupenable;			break;		case GPIO2_DATAIN:			data = omap5912_io.gpio[1].gpio_datain;			break;		case GPIO2_DATAOUT:			data = omap5912_io.gpio[1].gpio_dataout;			break;		case GPIO2_DIRECTION:			data = omap5912_io.gpio[1].gpio_direction;			break;		case GPIO2_EDGE_CTRL1:			data = omap5912_io.gpio[1].gpio_edge_ctrl1;			break;		case GPIO2_EDGE_CTRL2:			data = omap5912_io.gpio[1].gpio_edge_ctrl2;			break;		case GPIO2_CLEAR_IRQENABLE1:			data = omap5912_io.gpio[1].gpio_clear_irqenable1;			break;		case GPIO2_CLEAR_IRQENABLE2:			data = omap5912_io.gpio[1].gpio_clear_irqenable2;			break;		case GPIO2_CLEAR_WAKEUPENA:			omap5912_io.gpio[1].gpio_clear_wakeupena;			break;		case GPIO2_CLEAR_DATAOUT:			data = omap5912_io.gpio[1].gpio_clear_dataout;			break;		case GPIO2_SET_IRQENABLE1:			data = omap5912_io.gpio[1].gpio_set_irqenable1;			break;		case GPIO2_SET_IRQENABLE2:			data = omap5912_io.gpio[1].gpio_set_irqenable2;			break;		case GPIO2_SET_WAKEUPENA:			data = omap5912_io.gpio[1].gpio_set_wakeupena;			break;		case GPIO2_SET_DATAOUT:			data = omap5912_io.gpio[1].gpio_set_dataout;			break;			/** gpio2*/		case GPIO3_REVISION:			data = omap5912_io.gpio[2].gpio_reversion;			break;		case GPIO3_SYSSTATUS:			data = omap5912_io.gpio[2].gpio_sysstatus;			break;		case GPIO3_SYSCONFIG:			data = omap5912_io.gpio[2].gpio_sysconfig;			break;		case GPIO3_IRQSTATUS1:			data = omap5912_io.gpio[2].gpio_irqstatus1;			break;		case GPIO3_IRQENABLE1:			data = omap5912_io.gpio[2].gpio_irqenable1;			break;		case GPIO3_IRQSTATUS2:			data = omap5912_io.gpio[2].gpio_irqstatus2;			break;		case GPIO3_IRQENABLE2:			data = omap5912_io.gpio[2].gpio_irqenable2;			break;		case GPIO3_WAKEUPENABLE:			data = omap5912_io.gpio[2].gpio_wakeupenable;			break;		case GPIO3_DATAIN:			data = omap5912_io.gpio[2].gpio_datain;			break;		case GPIO3_DATAOUT:			data = omap5912_io.gpio[2].gpio_dataout;			break;		case GPIO3_DIRECTION:			data = omap5912_io.gpio[2].gpio_direction;			break;		case GPIO3_EDGE_CTRL1:			data = omap5912_io.gpio[2].gpio_edge_ctrl1;			break;		case GPIO3_EDGE_CTRL2:			data = omap5912_io.gpio[2].gpio_edge_ctrl2;			break;		case GPIO3_CLEAR_IRQENABLE1:			data = omap5912_io.gpio[2].gpio_clear_irqenable1;			break;		case GPIO3_CLEAR_IRQENABLE2:			data = omap5912_io.gpio[2].gpio_clear_irqenable2;			break;		case GPIO3_CLEAR_WAKEUPENA:			data = omap5912_io.gpio[2].gpio_clear_wakeupena;			break;		case GPIO3_CLEAR_DATAOUT:			data = omap5912_io.gpio[2].gpio_clear_dataout;			break;		case GPIO3_SET_IRQENABLE1:			data = omap5912_io.gpio[2].gpio_set_irqenable1;			break;		case GPIO3_SET_IRQENABLE2:			data = omap5912_io.gpio[2].gpio_set_irqenable2;			break;		case GPIO3_SET_WAKEUPENA:			data =omap5912_io.gpio[2].gpio_set_wakeupena;			break;		case GPIO3_SET_DATAOUT:			data = omap5912_io.gpio[2].gpio_set_dataout;			break;			/** gpio4*/		case GPIO4_REVISION:			data = omap5912_io.gpio[3].gpio_reversion;			break;		case GPIO4_SYSSTATUS:			data = omap5912_io.gpio[3].gpio_sysstatus;			break;		case GPIO4_SYSCONFIG:			data = omap5912_io.gpio[3].gpio_sysconfig;			break;		case GPIO4_IRQSTATUS1:			data = omap5912_io.gpio[3].gpio_irqstatus1;			break;		case GPIO4_IRQENABLE1:			data = omap5912_io.gpio[3].gpio_irqenable1;			break;		case GPIO4_IRQSTATUS2:			data = omap5912_io.gpio[3].gpio_irqstatus2;			break;		case GPIO4_IRQENABLE2:			data = omap5912_io.gpio[3].gpio_irqenable2;			break;		case GPIO4_WAKEUPENABLE:			data = omap5912_io.gpio[3].gpio_wakeupenable;			break;		case GPIO4_DATAIN:			data = omap5912_io.gpio[3].gpio_datain;			break;		case GPIO4_DATAOUT:			data = omap5912_io.gpio[3].gpio_dataout;			break;		case GPIO4_DIRECTION:			data = omap5912_io.gpio[3].gpio_direction;			break;		case GPIO4_EDGE_CTRL1:			data = omap5912_io.gpio[3].gpio_edge_ctrl1;			break;		case GPIO4_EDGE_CTRL2:			data = omap5912_io.gpio[3].gpio_edge_ctrl2;			break;		case GPIO4_CLEAR_IRQENABLE1:			data= omap5912_io.gpio[3].gpio_clear_irqenable1;			break;		case GPIO4_CLEAR_IRQENABLE2:			data = omap5912_io.gpio[3].gpio_clear_irqenable2;			break;		case GPIO4_CLEAR_WAKEUPENA:			data = omap5912_io.gpio[3].gpio_clear_wakeupena;			break;		case GPIO4_CLEAR_DATAOUT:			data = omap5912_io.gpio[3].gpio_clear_dataout;			break;		case GPIO4_SET_IRQENABLE1:			data = omap5912_io.gpio[3].gpio_set_irqenable1;			break;		case GPIO4_SET_IRQENABLE2:			data = omap5912_io.gpio[3].gpio_set_irqenable2;			break;		case GPIO4_SET_WAKEUPENA:			data = omap5912_io.gpio[3].gpio_set_wakeupena;			break;		case GPIO4_SET_DATAOUT:			data = omap5912_io.gpio[3].gpio_set_dataout;			break;			case ULPD_CLOCK_CTRL:			data = omap5912_io.mpu_cfg.ulpd_clock_ctrl;			break;		case SOFT_REQ_REG:		 	data = omap5912_io.mpu_cfg.soft_req_reg;			break;		case SOFT_REQ_REG2:		 	data = omap5912_io.mpu_cfg.soft_req_reg2;			break;		case MOD_CONF_CTRL_0:			data = omap5912_io.mpu_cfg.mod_conf_ctrl_0;			break;		case FUNC_MUX_CTRL_10:			data = omap5912_io.mpu_cfg.func_mux_ctrl_10;			break;		case PULL_DWN_CTRL_4:			data = omap5912_io.mpu_cfg.pull_dwn_ctrl_4;			break;		case EMIFS_CS1_CONFIG:			data = omap5912_io.mpu_cfg.emifs_cs1_config;			break;		case DIE_ID_LSB:			data = omap5912_io.mpu_cfg.die_id_lsb;			break;		case DIE_ID_MSB:			data = omap5912_io.mpu_cfg.die_id_msb;			break;		case PROD_ID_REG0:			data = omap5912_io.mpu_cfg.prod_id_reg0;			break;		case PROD_ID_REG1:			data = omap5912_io.mpu_cfg.prod_id_reg1;			break;		case ARM_CKCTL:			data = omap5912_io.mpu_cfg.arm_ckctl;			break;		case ARM_IDLECT1:			data = omap5912_io.mpu_cfg.arm_idlect1;			break;		case ARM_IDLECT2:			data = omap5912_io.mpu_cfg.arm_idlect2;			break;		case ARM_RSTCT1:			data = omap5912_io.mpu_cfg.arm_rstct1;			break;		case ARM_RSTCT2:			data = omap5912_io.mpu_cfg.arm_rstct2;			break;		case ARM_SYSST:			data = omap5912_io.mpu_cfg.arm_sysst;			break;		case DPLL1_CTL_REG:			data = omap5912_io.mpu_cfg.dpll1_ctl_reg;			break;		default:			//fprintf(stderr, "ERROR: %s(0x%08x) \n", __FUNCTION__, addr);			data = -1;			break;	}//?switch_end		return data;}ARMwordomap5912_io_read_byte (ARMul_State * state, ARMword addr){		return (omap5912_io_read_word(state, addr) & 0xff);}ARMwordomap5912_io_read_halfword (ARMul_State * state, ARMword addr){	return (omap5912_io_read_word(state, addr) & 0xffff);}voidomap5912_mach_init (ARMul_State * state, machine_config_t * mc){	//chy 2003-08-19, setprocessor	ARMul_SelectProcessor (state, ARM_v5_Prop | ARM_v5e_Prop);	//chy 2004-05-09, set lateabtSig	state->lateabtSig = LOW;	state->Reg[1] = 515;	/*mainstone machine id. */	omap5912_io_reset ();	mc->mach_io_do_cycle = omap5912_io_do_cycle;	mc->mach_io_reset = omap5912_io_reset;	mc->mach_io_read_byte = omap5912_io_read_byte;	mc->mach_io_write_byte = omap5912_io_write_byte;	mc->mach_io_read_halfword = omap5912_io_read_halfword;	mc->mach_io_write_halfword = omap5912_io_write_halfword;	mc->mach_io_read_word = omap5912_io_read_word;	mc->mach_io_write_word = omap5912_io_write_word;	mc->mach_update_int = omap5912_update_int;	mc->mach_set_intr = omap_set_intr;	mc->mach_pending_intr = omap_pending_intr;	mc->mach_update_intr = omap_update_intr;	mc->state = (void *) state;}

⌨️ 快捷键说明

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