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

C++ GPIO_bit函数代码示例

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

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



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

示例1: corgi_irda_transceiver_mode

/*
 * Irda
 */
static void corgi_irda_transceiver_mode(struct device *dev, int mode)
{
	if (mode & IR_OFF)
		GPSR(CORGI_GPIO_IR_ON) = GPIO_bit(CORGI_GPIO_IR_ON);
	else
		GPCR(CORGI_GPIO_IR_ON) = GPIO_bit(CORGI_GPIO_IR_ON);
}
开发者ID:3sOx,项目名称:asuswrt-merlin,代码行数:10,代码来源:corgi.c


示例2: pxa_gpio_mode

int pxa_gpio_mode(int gpio_mode)
{
	unsigned long flags;
	int gpio = gpio_mode & GPIO_MD_MASK_NR;
	int fn = (gpio_mode & GPIO_MD_MASK_FN) >> 8;
	int gafr;

	if (gpio > pxa_last_gpio)
		return -EINVAL;

	local_irq_save(flags);
	if (gpio_mode & GPIO_DFLT_LOW)
		GPCR(gpio) = GPIO_bit(gpio);
	else if (gpio_mode & GPIO_DFLT_HIGH)
		GPSR(gpio) = GPIO_bit(gpio);
	if (gpio_mode & GPIO_MD_MASK_DIR)
		GPDR(gpio) |= GPIO_bit(gpio);
	else
		GPDR(gpio) &= ~GPIO_bit(gpio);
	gafr = GAFR(gpio) & ~(0x3 << (((gpio) & 0xf)*2));
	GAFR(gpio) = gafr |  (fn  << (((gpio) & 0xf)*2));
	local_irq_restore(flags);

	return 0;
}
开发者ID:bqwd36,项目名称:android-athena,代码行数:25,代码来源:generic.c


示例3: spitz_should_wakeup

static int spitz_should_wakeup(unsigned int resume_on_alarm)
{
    int is_resume = 0;
    int acin = sharpsl_pm.machinfo->read_devdata(SHARPSL_STATUS_ACIN);

    if (spitz_last_ac_status != acin) {
        if (acin) {
            /* charge on */
            sharpsl_pm.flags |= SHARPSL_DO_OFFLINE_CHRG;
            dev_dbg(sharpsl_pm.dev, "AC Inserted\n");
        } else {
            /* charge off */
            dev_dbg(sharpsl_pm.dev, "AC Removed\n");
            sharpsl_pm_led(SHARPSL_LED_OFF);
            sharpsl_pm.machinfo->charge(0);
            sharpsl_pm.charge_mode = CHRG_OFF;
        }
        spitz_last_ac_status = acin;
        /* Return to suspend as this must be what we were woken for */
        return 0;
    }

    if (PEDR & GPIO_bit(SPITZ_GPIO_KEY_INT))
        is_resume |= GPIO_bit(SPITZ_GPIO_KEY_INT);

    if (PKSR & GPIO_bit(SPITZ_GPIO_SYNC))
        is_resume |= GPIO_bit(SPITZ_GPIO_SYNC);

    if (resume_on_alarm && (PEDR & PWER_RTC))
        is_resume |= PWER_RTC;

    dev_dbg(sharpsl_pm.dev, "is_resume: %x\n",is_resume);
    return is_resume;
}
开发者ID:FatSunHYS,项目名称:OSCourseDesign,代码行数:34,代码来源:spitz_pm.c


示例4: pxa2xx_mfp_suspend

static int pxa2xx_mfp_suspend(struct sys_device *d, pm_message_t state)
{
	int i;

	/* set corresponding PGSR bit of those marked MFP_LPM_KEEP_OUTPUT */
	for (i = 0; i < pxa_last_gpio; i++) {
		if ((gpio_desc[i].config & MFP_LPM_KEEP_OUTPUT) &&
		    (GPDR(i) & GPIO_bit(i))) {
			if (GPLR(i) & GPIO_bit(i))
				PGSR(i) |= GPIO_bit(i);
			else
				PGSR(i) &= ~GPIO_bit(i);
		}
	}

	for (i = 0; i <= gpio_to_bank(pxa_last_gpio); i++) {

		saved_gafr[0][i] = GAFR_L(i);
		saved_gafr[1][i] = GAFR_U(i);
		saved_gpdr[i] = GPDR(i * 32);
		saved_pgsr[i] = PGSR(i);

		GPDR(i * 32) = gpdr_lpm[i];
	}
	return 0;
}
开发者ID:12019,项目名称:android_kernel_samsung_xcover,代码行数:26,代码来源:mfp-pxa2xx.c


示例5: palmtx_pcmcia_hw_init

static int palmtx_pcmcia_hw_init (struct soc_pcmcia_socket *skt)
{
        GPSR(GPIO48_nPOE_MD) =	GPIO_bit(GPIO48_nPOE_MD) |
				GPIO_bit(GPIO49_nPWE_MD) |
				GPIO_bit(GPIO50_nPIOR_MD) |
				GPIO_bit(GPIO51_nPIOW_MD) |
				GPIO_bit(GPIO85_nPCE_1_MD) |
				GPIO_bit(GPIO53_nPCE_2_MD) |
				GPIO_bit(GPIO54_pSKTSEL_MD) |
				GPIO_bit(GPIO55_nPREG_MD) |
				GPIO_bit(GPIO56_nPWAIT_MD) |
				GPIO_bit(GPIO57_nIOIS16_MD);

        pxa_gpio_mode(GPIO48_nPOE_MD);
        pxa_gpio_mode(GPIO49_nPWE_MD);
        pxa_gpio_mode(GPIO50_nPIOR_MD);
        pxa_gpio_mode(GPIO51_nPIOW_MD);
        pxa_gpio_mode(GPIO85_nPCE_1_MD);
        pxa_gpio_mode(GPIO53_nPCE_2_MD);
        pxa_gpio_mode(GPIO54_pSKTSEL_MD);
        pxa_gpio_mode(GPIO55_nPREG_MD);
        pxa_gpio_mode(GPIO56_nPWAIT_MD);
        pxa_gpio_mode(GPIO57_nIOIS16_MD);

	skt->irq = IRQ_GPIO(GPIO_NR_PALMTX_PCMCIA_READY);

	palmtx_pcmcia_dbg("%s:%i, Socket:%d\n", __FUNCTION__, __LINE__, skt->nr);
        return soc_pcmcia_request_irqs(skt, palmtx_socket_state_irqs,
				       ARRAY_SIZE(palmtx_socket_state_irqs));
}
开发者ID:ManiacTwister,项目名称:linux-hnd,代码行数:30,代码来源:palmtx_pcmcia.c


示例6: corgi_measure_temp

static void corgi_measure_temp(int on)
{
	if (on)
		GPSR(CORGI_GPIO_ADC_TEMP_ON) = GPIO_bit(CORGI_GPIO_ADC_TEMP_ON);
	else
		GPCR(CORGI_GPIO_ADC_TEMP_ON) = GPIO_bit(CORGI_GPIO_ADC_TEMP_ON);
}
开发者ID:Indigenous,项目名称:linux-2.6,代码行数:7,代码来源:corgi_pm.c


示例7: pm_do_poweroff

void pm_do_poweroff(void)
{
	unsigned long start, flags;

	PWER &= ~0x8000ffff;
	local_irq_save(flags);
	printk("Poweroff, Begin to wait BP_RDY signal.\n");
	pm_send_all(PM_SUSPEND, (void *)3);

	start = OSCR;
	*(unsigned long *)(phys_to_virt(BPSIG_ADDR)) = NO_FLAG;
	do {
		if( !(GPLR(GPIO_BP_RDY) & GPIO_bit(GPIO_BP_RDY))){
			printk(KERN_DEBUG"got BP_RDY signal.\n");
			
			GPDR(GPIO_WDI_AP) |= GPIO_bit(GPIO_WDI_AP);
			GPCR(GPIO_WDI_AP) = GPIO_bit(GPIO_WDI_AP);
			while(1);
		}

		if ((OSCR - start) >= POWER_OFF_TIMEOUT) {
			printk(KERN_DEBUG "timeout when power down\n");
			mdelay(1);
			GPDR(GPIO_WDI_AP) |= GPIO_bit(GPIO_WDI_AP);
			GPCR(GPIO_WDI_AP) = GPIO_bit(GPIO_WDI_AP);
			while(1);
		}
		
	} while(1);
					
	pm_do_useroff();
	printk(KERN_DEBUG "resume from useroff\n");
	pm_send_all(PM_SUSPEND, (void *)0);
	local_irq_restore(flags);	
}
开发者ID:muromec,项目名称:linux-ezxdev,代码行数:35,代码来源:apm.c


示例8: dsp_reset

int dsp_reset(struct inode *inode, struct file *file, unsigned cmd,unsigned long arg)
{
	/* ignore any argument, just do reset here */
	/* raise reset */
	GPSR(73) |= GPIO_bit(73);
	
/*	udelay(1); DAVEDE */ /* wait 1/7.3728MHz = 135.6ns (par 11.13.4) */

	/* sleep 1/10 second */
  set_current_state(TASK_INTERRUPTIBLE);
	schedule_timeout(HZ/10);

/* Same PIOs of sa1110 */
	GPSR(19) |= GPIO_bit(19);
	GPCR(17) |= GPIO_bit(17);

	/* sleep 2/10 second */
  set_current_state(TASK_INTERRUPTIBLE);
	schedule_timeout(2*HZ/10);
	/* lower reset */
	GPCR(73) |= GPIO_bit(73);
	
  set_current_state(TASK_INTERRUPTIBLE);
	schedule_timeout(2*HZ/10);

  writew(DSP_BOB, (unsigned short *)dsp_iopage); // little endian

	return 0;
}
开发者ID:bticino,项目名称:linux-2.4.19-rmk7-pxa2-btweb,代码行数:29,代码来源:btweb_dsp.c


示例9: init_module

static int init_module(void)
{
/*	u32 reg; */
	int result=1;

	result = misc_register(&dsp_misc);

	printk("btpxa_dsp 2.0: dsp_init\n"); 

	if (result)
		printk("btweb: can't register /dev/dsp (error %i)\n",
		       result);
/*	reg = GPDR; */
/*	printk("btweb: dsp_init reg=%x letto\n",reg); DAVEDE */
/*	reg &= ~GPIO_GPIO(1); */ /* GPIO1 is input */
	GPDR(1) &= ~GPIO_bit(1);  /* TODO: Da mettere nel boot loader */
  
/*	reg |= GPIO_GPIO(17) | GPIO_GPIO(19); */ /* 17 and 19 are output DAVEDE */   

/* TODO: Da mettere nel boot loader */
	GPDR(19) |= GPIO_bit(19); 
	GPDR(17) |= GPIO_bit(17); 
	GPDR(73) |= GPIO_bit(73); 

/*	GPDR = reg; */
/*	printk("btweb: dsp_init reg=%x scritto\n",reg); DAVEDE */

/* TODO: Da mettere nel boot loader */
        MCIO0 = 0x00018103;
	MCIO1 = 0x00018103;
	MECR =  0x00000001;

	return result;
}
开发者ID:bticino,项目名称:linux-2.4.19-rmk7-pxa2-btweb,代码行数:34,代码来源:btweb_dsp.c


示例10: corgi_discharge

static void corgi_discharge(int on)
{
	if (on)
		GPSR(CORGI_GPIO_DISCHARGE_ON) = GPIO_bit(CORGI_GPIO_DISCHARGE_ON);
	else
		GPCR(CORGI_GPIO_DISCHARGE_ON) = GPIO_bit(CORGI_GPIO_DISCHARGE_ON);
}
开发者ID:Indigenous,项目名称:linux-2.6,代码行数:7,代码来源:corgi_pm.c


示例11: poodle_irda_transceiver_mode

/*
 * Irda
 */
static void poodle_irda_transceiver_mode(struct device *dev, int mode)
{
	if (mode & IR_OFF) {
		GPSR(POODLE_GPIO_IR_ON) = GPIO_bit(POODLE_GPIO_IR_ON);
	} else {
		GPCR(POODLE_GPIO_IR_ON) = GPIO_bit(POODLE_GPIO_IR_ON);
	}
}
开发者ID:ena30,项目名称:snake-os,代码行数:11,代码来源:poodle.c


示例12: corgiled_amber_set

static void corgiled_amber_set(struct led_classdev *led_cdev,
			       enum led_brightness value)
{
	if (value)
		GPSR0 = GPIO_bit(CORGI_GPIO_LED_ORANGE);
	else
		GPCR0 = GPIO_bit(CORGI_GPIO_LED_ORANGE);
}
开发者ID:maraz,项目名称:linux-2.6,代码行数:8,代码来源:leds-corgi.c


示例13: cmx270_green_set

static void cmx270_green_set(struct led_classdev *led_cdev,
			     enum led_brightness value)
{
	if (value)
		GPCR(GPIO_GREEN_LED) = GPIO_bit(GPIO_GREEN_LED);
	else
		GPSR(GPIO_GREEN_LED) = GPIO_bit(GPIO_GREEN_LED);
}
开发者ID:PennPanda,项目名称:linux-repo,代码行数:8,代码来源:leds-cm-x270.c


示例14: gpio_set

static void gpio_set(int id, int on)
{
	do {
		if (on)
			GPSR(id) = GPIO_bit(id);
		else
			GPCR(id) = GPIO_bit(id);
	} while (0);
}
开发者ID:fourks,项目名称:tools,代码行数:9,代码来源:gpioed.c


示例15: turn_off_gpio

void turn_off_gpio(int gpio) {
	set_GPIO_mode(gpio | GPIO_OUT);
	GPCR(gpio) = GPIO_bit(gpio);
	if (GPLR(gpio) & GPIO_bit(gpio)) {
		PDEBUG("LED gpio %d on\n", gpio);
	} else {
		PDEBUG("LED gpio %d off\n", gpio);
	}
}
开发者ID:pallotron,项目名称:colibri-gpo,代码行数:9,代码来源:gpio-pulse.c


示例16: poodle_mci_setpower

static void poodle_mci_setpower(struct device *dev, unsigned int vdd)
{
	struct pxamci_platform_data* p_d = dev->platform_data;

	if (( 1 << vdd) & p_d->ocr_mask)
		GPSR1 = GPIO_bit(POODLE_GPIO_SD_PWR);
	else
		GPCR1 = GPIO_bit(POODLE_GPIO_SD_PWR);
}
开发者ID:ena30,项目名称:snake-os,代码行数:9,代码来源:poodle.c


示例17: spitz_presuspend

static void spitz_presuspend(void)
{
	spitz_last_ac_status = sharpsl_pm.machinfo->read_devdata(SHARPSL_STATUS_ACIN);

	/* GPIO Sleep Register */
	PGSR0 = 0x00144018;
	PGSR1 = 0x00EF0000;
	if (machine_is_akita()) {
		PGSR2 = 0x2121C000;
		PGSR3 = 0x00600400;
	} else {
		PGSR2 = 0x0121C000;
		PGSR3 = 0x00600000;
	}

	PGSR0 &= ~SPITZ_GPIO_G0_STROBE_BIT;
	PGSR1 &= ~SPITZ_GPIO_G1_STROBE_BIT;
	PGSR2 &= ~SPITZ_GPIO_G2_STROBE_BIT;
	PGSR3 &= ~SPITZ_GPIO_G3_STROBE_BIT;
	PGSR2 |= GPIO_bit(SPITZ_GPIO_KEY_STROBE0);

	pxa_gpio_mode(GPIO18_RDY|GPIO_OUT | GPIO_DFLT_HIGH);

	PRER = GPIO_bit(SPITZ_GPIO_KEY_INT);
	PFER = GPIO_bit(SPITZ_GPIO_KEY_INT) | GPIO_bit(SPITZ_GPIO_RESET);
	PWER = GPIO_bit(SPITZ_GPIO_KEY_INT) | GPIO_bit(SPITZ_GPIO_RESET) | PWER_RTC;
	PKWR = GPIO_bit(SPITZ_GPIO_SYNC) | GPIO_bit(SPITZ_GPIO_KEY_INT) | GPIO_bit(SPITZ_GPIO_RESET);
	PKSR = 0xffffffff; // clear

	/* nRESET_OUT Disable */
	PSLR |= PSLR_SL_ROD;

	/* Stop 3.6MHz and drive HIGH to PCMCIA and CS */
	PCFR = PCFR_GPR_EN | PCFR_OPDE;
}
开发者ID:10x-Amin,项目名称:nAa-kernel,代码行数:35,代码来源:spitz_pm.c


示例18: cmx270_pcmcia_configure_socket

static int cmx270_pcmcia_configure_socket(struct soc_pcmcia_socket *skt,
					  const socket_state_t *state)
{
	GPSR(GPIO49_nPWE) = GPIO_bit(GPIO49_nPWE);
	pxa_gpio_mode(GPIO49_nPWE | GPIO_OUT);

	switch (skt->nr) {
	case 0:
		if (state->flags & SS_RESET) {
			GPCR(GPIO49_nPWE) = GPIO_bit(GPIO49_nPWE);
			GPSR(GPIO53_nPCE_2) = GPIO_bit(GPIO53_nPCE_2);
			udelay(10);
			GPCR(GPIO53_nPCE_2) = GPIO_bit(GPIO53_nPCE_2);
			GPSR(GPIO49_nPWE) = GPIO_bit(GPIO49_nPWE);
		}
		break;
	case 1:
		if (state->flags & SS_RESET) {
			GPCR(GPIO49_nPWE) = GPIO_bit(GPIO49_nPWE);
			GPSR(GPIO53_nPCE_2) = GPIO_bit(GPIO53_nPCE_2);
			udelay(10);
			GPCR(GPIO53_nPCE_2) = GPIO_bit(GPIO53_nPCE_2);
			GPSR(GPIO49_nPWE) = GPIO_bit(GPIO49_nPWE);
		}
		break;
	}

	pxa_gpio_mode(GPIO49_nPWE_MD);

	return 0;
}
开发者ID:PennPanda,项目名称:linux-repo,代码行数:31,代码来源:pxa2xx_cm_x270.c


示例19: poodle_udc_command

/*
 * USB Device Controller
 */
static void poodle_udc_command(int cmd)
{
	switch(cmd)	{
	case PXA2XX_UDC_CMD_CONNECT:
		GPSR(POODLE_GPIO_USB_PULLUP) = GPIO_bit(POODLE_GPIO_USB_PULLUP);
		break;
	case PXA2XX_UDC_CMD_DISCONNECT:
		GPCR(POODLE_GPIO_USB_PULLUP) = GPIO_bit(POODLE_GPIO_USB_PULLUP);
		break;
	}
}
开发者ID:ena30,项目名称:snake-os,代码行数:14,代码来源:poodle.c


示例20: corgi_udc_command

/*
 * USB Device Controller
 */
static void corgi_udc_command(int cmd)
{
	switch(cmd)	{
	case PXA2XX_UDC_CMD_CONNECT:
		GPSR(CORGI_GPIO_USB_PULLUP) = GPIO_bit(CORGI_GPIO_USB_PULLUP);
		break;
	case PXA2XX_UDC_CMD_DISCONNECT:
		GPCR(CORGI_GPIO_USB_PULLUP) = GPIO_bit(CORGI_GPIO_USB_PULLUP);
		break;
	}
}
开发者ID:BackupTheBerlios,项目名称:tuxap,代码行数:14,代码来源:corgi.c



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


鲜花

握手

雷人

路过

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

请发表评论

全部评论

专题导读
上一篇:
C++ GPOINTER_TO_INT函数代码示例发布时间:2022-05-30
下一篇:
C++ GPIO_Write函数代码示例发布时间: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