• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

C++ reg_write函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了C++中reg_write函数的典型用法代码示例。如果您正苦于以下问题:C++ reg_write函数的具体用法?C++ reg_write怎么用?C++ reg_write使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



在下文中一共展示了reg_write函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: gs_set_offset

static int gs_set_offset( void  )
{	
	int ret;
	ret = reg_write(this_gs_data,GS_ADI_REG_OFSX,0x03);   /* set  OFSX offset value*/
	if (ret < 0) {
		printk(KERN_DEBUG "reg_write  GS_ADI_REG_OFSX failed\n");
	}
	ret = reg_write(this_gs_data,GS_ADI_REG_OFSY,0x03);	 /* set OFSY offset value*/
	if (ret < 0) {
		printk(KERN_DEBUG "reg_write  GS_ADI_REG_OFSY failed\n");
	}

	ret = reg_write(this_gs_data,GS_ADI_REG_OFSZ,0x0B);	/* set OFSZ offset value*/

	if (ret < 0) {
		printk(KERN_DEBUG "reg_write GS_ADI_REG_OFSZ  failed\n");
	}
	return ret;
		
}
开发者ID:rex12345,项目名称:kernel-2.6.29-M860,代码行数:20,代码来源:gsdev.c


示例2: mv88e6060_phy_write

static int
mv88e6060_phy_write(struct dsa_switch *ds, int port, int regnum, u16 val)
{
	int addr;

	addr = mv88e6060_port_to_phy_addr(port);
	if (addr == -1)
		return 0xffff;

	return reg_write(ds, addr, regnum, val);
}
开发者ID:DirtyDroidX,项目名称:android_kernel_htc_m8ul,代码行数:11,代码来源:mv88e6060.c


示例3: gs_resume

static int gs_resume(struct i2c_client *client)
{
	struct gs_data *gs = i2c_get_clientdata(client);
	
	reg_write(gs, GS_ST_REG_CTRL1, GS_ST_CTRL1_PD|
						GS_ST_CTRL1_Zen|
						GS_ST_CTRL1_Yen|
						GS_ST_CTRL1_Xen); /* enable abs int */
	
       reg_write(gs, GS_ST_REG_CTRL3, GS_INTMODE_DATA_READY);/*active mode*/
    
	if (!gs->use_irq)
		hrtimer_start(&gs->timer, ktime_set(1, 0), HRTIMER_MODE_REL);
	else
		enable_irq(client->irq);
	
	

	return 0;
}
开发者ID:Anteus,项目名称:kernel_u8800,代码行数:20,代码来源:gs_st.c


示例4: snd_ak4117_reinit

void snd_ak4117_reinit(struct ak4117 *chip)
{
	unsigned char old = chip->regmap[AK4117_REG_PWRDN], reg;

	del_timer(&chip->timer);
	chip->init = 1;
	/* bring the chip to reset state and powerdown state */
	reg_write(chip, AK4117_REG_PWRDN, 0);
	udelay(200);
	/* release reset, but leave powerdown */
	reg_write(chip, AK4117_REG_PWRDN, (old | AK4117_RST) & ~AK4117_PWN);
	udelay(200);
	for (reg = 1; reg < 5; reg++)
		reg_write(chip, reg, chip->regmap[reg]);
	/* release powerdown, everything is initialized now */
	reg_write(chip, AK4117_REG_PWRDN, old | AK4117_RST | AK4117_PWN);
	chip->init = 0;
	chip->timer.expires = 1 + jiffies;
	add_timer(&chip->timer);
}
开发者ID:LouZiffer,项目名称:m900_kernel_cupcake-SDX,代码行数:20,代码来源:ak4117.c


示例5: timer_inc

//This function is called on all IRQ interrupts
void timer_inc(void)
{
    //increment the number of the timer ticks
    ++num_timer_tick;
    
    //reset the OSSR[M0]bit
    reg_set(OSTMR_OSSR_ADDR, OSTMR_OSSR_M0);
    
	osmr_count += CLOCKS_PER_TICK;
    //reset the OSCR to 0
    reg_write(OSTMR_OSMR_ADDR(0), osmr_count);
}
开发者ID:bujar,项目名称:ARM-Gumstix,代码行数:13,代码来源:timer.c


示例6: top_write_pin

static void top_write_pin(int pin, TOP_PINMUX_t reg)
{

	switch (pin) {
	case 4:
		reg_write(FWSRAM_TOP_SCL_CFG(FWSRAM_BASE), reg.reg);
		break;
	case 5:
		reg_write(FWSRAM_TOP_SDA_CFG(FWSRAM_BASE), reg.reg);
		break;
	case 7:
		reg_write(FWSRAM_TOP_TDO_CFG(FWSRAM_BASE), reg.reg);
		break;
	case 8:
		reg_write(FWSRAM_TOP_GPIO2_0_CFG(FWSRAM_BASE), reg.reg);
		break;
	case 10:
	case 11:
	case 12:
	case 13:
	case 14:
	case 15:
	case 16:
		reg_write(FWSRAM_BASE + FWSRAM_TOP_GPIO2_1_CFG_OFFS +
			  ((pin - 10) * 4), reg.reg);
		break;
	default:
		reg_write(TOP_BASE + (pin * 4), reg.reg);
		break;
	}
}
开发者ID:Medvedroid,项目名称:OT_903D-kernel-2.6.35.7,代码行数:31,代码来源:top.c


示例7: dcm_armcore

int dcm_armcore(ENUM_ARMCORE_DCM mode)
{

        if (mode == ARMCORE_DCM_OFF) {
                //swithc to mode 2, and turn wfi/wfe-enable off
                reg_write(INFRA_TOPCKGEN_DCMDBC, 
                          and(reg_read(INFRA_TOPCKGEN_DCMDBC), ~(1<<0)));  //disable mode 1
                reg_write(INFRA_TOPCKGEN_DCMCTL, 
                          aor(reg_read(INFRA_TOPCKGEN_DCMCTL), ~(0x3<<1), (0<<1)));  //disable wfi/wfe-en

                return 0;
        }

        if (mode == ARMCORE_DCM_MODE2) {
                //switch to mode 2
                reg_write(INFRA_TOPCKGEN_DCMDBC, 
                          and(reg_read(INFRA_TOPCKGEN_DCMDBC), ~(1<<0)));  //disable mode 1
                reg_write(INFRA_TOPCKGEN_DCMCTL, 
                          aor(reg_read(INFRA_TOPCKGEN_DCMCTL), ~(3<<1), (3<<1))); 

                // OVERRIDE pll mux and clkdiv !!
                dcm_armcore_pll_clkdiv(1, (3<<3)|(0)); // armpll, 6/6
        }

        else if (mode == ARMCORE_DCM_MODE1) {
                //switch to mode 1, and mode 2 off
                reg_write(INFRA_TOPCKGEN_DCMDBC, 
                          aor(reg_read(INFRA_TOPCKGEN_DCMDBC), ~(1<<0), (1<<0)));  //enable mode 1
                reg_write(INFRA_TOPCKGEN_DCMCTL, 
                          aor(reg_read(INFRA_TOPCKGEN_DCMCTL), ~(3<<1), (0<<1))); 
        }

        return 0;
}
开发者ID:nxglabs,项目名称:mt6735-kernel-3.10.61,代码行数:34,代码来源:mt_dcm.c


示例8: irq_handler

void irq_handler(void) {
	disable_interrupts();

	irq_time ++;
	dev_update(irq_time);
	reg_set(OSTMR_OSSR_ADDR, OSTMR_OSSR_M0);
	reg_write(OSTMR_OSCR_ADDR, TIMER_CLEAR);

	/* Wait for timer to reset */
	while(((volatile unsigned)reg_read(INT_ICPR_ADDR) >>INT_OSTMR_0) & 0x1);

	dispatch_save();
}
开发者ID:349team21,项目名称:lab4,代码行数:13,代码来源:time.c


示例9: timer_init

/* in this function, we configure the OS timer register */
void timer_init(void)
{
    //size_t num_clock;
    
    //calculate the clocks for a time unit: 10ms for now
    //Will change to the following line if set to 10ms
    //num_clock = OSTMR_FREQ/OS_TICKS_PER_SEC;
    //num_clock = OSTMR_FREQ/(S_TO_MS/MS_PER_TICK);
	
	osmr_count = CLOCKS_PER_TICK;
    //init OSCR to 0
    reg_write(OSTMR_OSCR_ADDR, 0);
    
    //init OSMR0 to num_clock
    reg_write(OSTMR_OSMR_ADDR(0), osmr_count);

    /* 
     * set OIER last bit 1 to enbale match between OSCR 
     * and OSMR0 to assert OSSR[M0]
     */			
    reg_set(OSTMR_OIER_ADDR, OSTMR_OIER_E0);
}
开发者ID:bujar,项目名称:ARM-Gumstix,代码行数:23,代码来源:timer.c


示例10: aac_sensor_probe

/*
 * platform operation relate functions
 */
static int aac_sensor_probe(struct i2c_client *client,const struct i2c_device_id *idp)
{
    struct sensor_device *dev;
	u8  val;

    dev=&sensor_priv;
	/* initualize wait queue */
	init_completion(&dev->data_comp);
    INIT_DELAYED_WORK(&dev->data_work,aac_sensor_work);

    if(sensor_interrupt_init()){
        sensor_error("Fail to config gpio port\n");
        return -1;
    }


	if(request_irq(IRQ_EINT5, aac_sensor_irq,IRQF_DISABLED,"aac_sensor",dev)){
        sensor_error("Fail to request gpio interrupt\n");
        return -1;
	}
	sensor_interrupt_disable();
	sensor_interrupt_clear();
	
	
    reg_write(client,MMA_MODE,0); //Make 7660 enter standby mode to set registers

    reg_write(client,MMA_SPCNT,0xff);
    reg_write(client,MMA_INTSU,MMA_INT_FB|MMA_INT_PL/*|MMA_INT_PD*/);

    val=0;
    SET_BITS(val,MMA_SR_AMSR,AMSR_RATE_128);
    SET_BITS(val,MMA_SR_AWSR,AWSR_RATE_32);
    SET_BITS(val,MMA_SR_FILT,FILT_DISABLE);
    reg_write(client,MMA_SR,val);

    val=0;
    SET_BITS(val,MMA_PDET_PDTH,2);
    SET_BITS(val,MMA_PDET_XDA,1);
    SET_BITS(val,MMA_PDET_YDA,1);
    SET_BITS(val,MMA_PDET_ZDA,1);
    reg_write(client,MMA_PDET,val);
    
    reg_write(client,MMA_PD,0x1f);

    reg_write(client,MMA_MODE,
                        MMA_MODE_MODE|MMA_MODE_AWE|  //active
                        MMA_MODE_ASE/*|MMA_MODE_SCPS*/|  //auto wake/suspend
                        MMA_MODE_IPP);               //int active low

    sensor_priv.client=client;

	//i2c_set_clientdata(client, nas_priv);
	return 0;
}
开发者ID:hellove1985,项目名称:ZT-180,代码行数:57,代码来源:sensor_aac.c


示例11: ak881x_s_register

static int ak881x_s_register(struct v4l2_subdev *sd,
			     const struct v4l2_dbg_register *reg)
{
	struct i2c_client *client = v4l2_get_subdevdata(sd);

	if (reg->reg > 0x26)
		return -EINVAL;

	if (reg_write(client, reg->reg, reg->val) < 0)
		return -EIO;

	return 0;
}
开发者ID:OSPro,项目名称:wpj344_compatwireless,代码行数:13,代码来源:ak881x.c


示例12: mv_xor_ctrl_set

/*
 * mv_xor_ctrl_set - Set XOR channel control registers
 *
 * DESCRIPTION:
 *
 * INPUT:
 *
 * OUTPUT:
 *       None.
 *
 * RETURN:
 *       MV_BAD_PARAM if parameters to function invalid, MV_OK otherwise.
 * NOTE:
 *  This function does not modify the Operation_mode field of control register.
 */
int mv_xor_ctrl_set(u32 chan, u32 xor_ctrl)
{
	u32 old_value;

	/* update the XOR Engine [0..1] Configuration Registers (XEx_c_r) */
	old_value = reg_read(XOR_CONFIG_REG(XOR_UNIT(chan), XOR_CHAN(chan))) &
		XEXCR_OPERATION_MODE_MASK;
	xor_ctrl &= ~XEXCR_OPERATION_MODE_MASK;
	xor_ctrl |= old_value;
	reg_write(XOR_CONFIG_REG(XOR_UNIT(chan), XOR_CHAN(chan)), xor_ctrl);

	return MV_OK;
}
开发者ID:0xFelix,项目名称:u-boot-edminiv2,代码行数:28,代码来源:xor.c


示例13: hw_r5_enable_clock

static void hw_r5_enable_clock(struct zynqmp_r5_rproc_pdata *pdata)
{
	u32 tmp;

	pr_debug("%s: mode: %d\n", __func__, pdata->rpu_mode);
	tmp = reg_read(pdata->crl_apb_base, CPU_R5_CTRL_OFFSET);
	if (!(tmp & RPU_CLKACT_MASK)) {
		tmp |= RPU_CLKACT_MASK;
		reg_write(pdata->crl_apb_base, CPU_R5_CTRL_OFFSET, tmp);
		/* Give some delay for clock to propogate */
		udelay(500);
	}
}
开发者ID:digideskio,项目名称:linux-digilent,代码行数:13,代码来源:zynqmp_r5_remoteproc.c


示例14: hw_clear_ipi

/*
 * TODO: Update HW ipi operation when the driver is ready
 */
static irqreturn_t hw_clear_ipi(struct zynqmp_r5_rproc_pdata *pdata)
{
	u32 ipi_reg = 0;
	pr_debug("%s: irq issuer %08x clear IPI\n", __func__,
			 pdata->ipi_dest_mask);
	ipi_reg = reg_read(pdata->ipi_base, ISR_OFFSET);
	if (ipi_reg & pdata->ipi_dest_mask) {
		reg_write(pdata->ipi_base, ISR_OFFSET, pdata->ipi_dest_mask);
		return IRQ_HANDLED;
	}

	return IRQ_NONE;
}
开发者ID:digideskio,项目名称:linux-digilent,代码行数:16,代码来源:zynqmp_r5_remoteproc.c


示例15: gs_st_open

static int gs_st_open(struct inode *inode, struct file *file)
{			
       reg_read(this_gs_data, GS_ST_REG_STATUS ); /* read status */
	
	reg_write(this_gs_data, GS_ST_REG_CTRL1, GS_ST_CTRL1_PD|
								          GS_ST_CTRL1_Zen|
		                                                  GS_ST_CTRL1_Yen|
		                                                  GS_ST_CTRL1_Xen); 
	
	reg_write(this_gs_data, GS_ST_REG_CTRL3, GS_INTMODE_DATA_READY); 
	reg_read(this_gs_data, GS_ST_REG_OUT_X ); /* read X */
	reg_read(this_gs_data, GS_ST_REG_OUT_Y ); /* read Y */
	reg_read(this_gs_data, GS_ST_REG_OUT_Z ); /* read Z*/

	if (this_gs_data->use_irq)
		enable_irq(this_gs_data->client->irq);
	else
		 hrtimer_start(&this_gs_data->timer, ktime_set(1, 0), HRTIMER_MODE_REL);
	
		
	return nonseekable_open(inode, file);
}
开发者ID:SonicGen,项目名称:android_kernel_huawei_msm7x27,代码行数:22,代码来源:gs_st.c


示例16: get_phy_reg

static int get_phy_reg(struct ti_lynx *lynx, int addr)
{
    int retval;
    int i = 0;

    unsigned long flags;

    if (addr > 15) {
        PRINT(KERN_ERR, lynx->id,
              "%s: PHY register address %d out of range",
              __FUNCTION__, addr);
        return -1;
    }

    spin_lock_irqsave(&lynx->phy_reg_lock, flags);

    reg_write(lynx, LINK_PHY, LINK_PHY_READ | LINK_PHY_ADDR(addr));
    do {
        retval = reg_read(lynx, LINK_PHY);

        if (i > 10000) {
            PRINT(KERN_ERR, lynx->id, "%s: runaway loop, aborting",
                  __FUNCTION__);
            retval = -1;
            break;
        }
        i++;
    } while ((retval & 0xf00) != LINK_PHY_RADDR(addr));

    reg_write(lynx, LINK_INT_STATUS, LINK_INT_PHY_REG_RCVD);
    spin_unlock_irqrestore(&lynx->phy_reg_lock, flags);

    if (retval != -1) {
        return retval & 0xff;
    } else {
        return -1;
    }
}
开发者ID:rcplay,项目名称:snake-os,代码行数:38,代码来源:pcilynx.c


示例17: mxci2c_hs_read

static int mxci2c_hs_read(mxc_i2c_hs *i2c_hs, int repeat_start,
			  struct i2c_msg *msg)
{
	int ret;

	if (msg->len > HIRDCR_MAX_COUNT) {
		printk(KERN_ERR "%s: error: msg too long, max longth 256\n",
		       __func__);
		return -1;
	}

	ret = 0;
	i2c_hs->msg = msg;
	i2c_hs->index = 0;

	/*set address */
	reg_write(i2c_hs, HIMADR, HIMADR_LSB_ADR(msg->addr));

	/*receive mode */
	reg_clear_mask(i2c_hs, HICR, HICR_MTX);

	reg_clear_mask(i2c_hs, HICR, HICR_HIIEN);

	 /*FIFO*/ reg_set_mask(i2c_hs, HIRFR, HIRFR_RFEN | HIRFR_RFWM(7));
	reg_set_mask(i2c_hs, HIRFR, HIRFR_RFLSH);

	 /*TDCR*/
	    reg_write(i2c_hs, HIRDCR, HIRDCR_RDC_EN | HIRDCR_RDC(msg->len));

	mxci2c_hs_start(i2c_hs, repeat_start, msg->addr);

	ret = mxci2c_wait_readfifo(i2c_hs);

	if (ret < 0)
		return ret;
	else
		return msg->len;
}
开发者ID:hemool,项目名称:kernel_613,代码行数:38,代码来源:mxc_i2c_hs.c


示例18: top_set_pin

int top_set_pin(int pin, int func)
{
	TOP_PINMUX_t reg;

	/* check global range */
	if ((pin < 0) || (pin > 158))
		return -1;	/* pin number or function out of valid range */

	reg.reg = reg_read(TOP_BASE + (pin * 4));
	reg.Bits.funsel = func;
	reg_write(TOP_BASE + (pin * 4), reg.reg);

	return 0;
}
开发者ID:Medvedroid,项目名称:OT_903D-kernel-2.6.35.7,代码行数:14,代码来源:top.c


示例19: hw_r5_reset

static void hw_r5_reset(struct zynqmp_r5_rproc_pdata *pdata,
						bool do_reset)
{
	u32 tmp;

	pr_debug("%s: R5 ID: %d, reset %d\n", __func__, pdata->rpu_id,
			 do_reset);
	tmp = reg_read(pdata->crl_apb_base, RST_LPD_TOP_OFFSET);
	if (do_reset)
		tmp |= (RPU0_RESET_BIT << pdata->rpu_id);
	else
		tmp &= ~(RPU0_RESET_BIT << pdata->rpu_id);
	reg_write(pdata->crl_apb_base, RST_LPD_TOP_OFFSET, tmp);
}
开发者ID:LCameron,项目名称:linux-xlnx,代码行数:14,代码来源:zynqmp_r5_remoteproc.c


示例20: unicam_isr

static irqreturn_t unicam_isr(int irq, void *dev_id)
{
	struct unicam *dev;
	unsigned int rx_status, image_intr;
	dev = dev_id;

	rx_status = reg_read(unicam_base, CAM_STA_OFFSET);
	image_intr = reg_read(unicam_base, CAM_ISTA_OFFSET);
	/*  enable access */
	reg_write(unicam_base, CAM_ISTA_OFFSET, image_intr);
	reg_write(unicam_base, CAM_STA_OFFSET, rx_status);

	if (dev->irq_start == 1) {
		if (dev->irq_pending == 0) {
			dev->unicam_isr_reg_status.rx_status = rx_status;
			dev->unicam_isr_reg_status.image_intr = image_intr;
			complete(&dev->irq_sem);
		}
		dev->irq_pending++;
	}

	return IRQ_RETVAL(1);
}
开发者ID:dhinesh77,项目名称:Xkernel,代码行数:23,代码来源:unicam.c



注:本文中的reg_write函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C++ regalloc函数代码示例发布时间:2022-05-30
下一篇:
C++ reg_set函数代码示例发布时间:2022-05-30
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap