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

C++ davinci_cfg_reg函数代码示例

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

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



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

示例1: dm365_init_vc

void __init dm365_init_vc(struct snd_platform_data *pdata)
{
	davinci_cfg_reg(DM365_EVT2_VC_TX);
	davinci_cfg_reg(DM365_EVT3_VC_RX);
	dm365_vc_device.dev.platform_data = pdata;
	platform_device_register(&dm365_vc_device);
}
开发者ID:020gzh,项目名称:linux,代码行数:7,代码来源:dm365.c


示例2: dm646x_setup_vpif

void dm646x_setup_vpif(struct vpif_display_config *display_config,
		       struct vpif_capture_config *capture_config)
{
	unsigned int value;
	void __iomem *base = IO_ADDRESS(DAVINCI_SYSTEM_MODULE_BASE);

	value = __raw_readl(base + VSCLKDIS_OFFSET);
	value &= ~VSCLKDIS_MASK;
	__raw_writel(value, base + VSCLKDIS_OFFSET);

	value = __raw_readl(base + VDD3P3V_PWDN_OFFSET);
	value &= ~VDD3P3V_VID_MASK;
	__raw_writel(value, base + VDD3P3V_PWDN_OFFSET);

	davinci_cfg_reg(DM646X_STSOMUX_DISABLE);
	davinci_cfg_reg(DM646X_STSIMUX_DISABLE);
	davinci_cfg_reg(DM646X_PTSOMUX_DISABLE);
	davinci_cfg_reg(DM646X_PTSIMUX_DISABLE);

	if (cpu_is_davinci_dm646x_v30()) {
		display_config->ch2_clip_en = true;
		display_config->ch3_clip_en = true;
	}

	vpif_display_dev.dev.platform_data = display_config;
	vpif_capture_dev.dev.platform_data = capture_config;
	platform_device_register(&vpif_dev);
	platform_device_register(&vpif_display_dev);
	platform_device_register(&vpif_capture_dev);
}
开发者ID:bticino,项目名称:linux,代码行数:30,代码来源:dm646x.c


示例3: spi_gpio_open

static int spi_gpio_open(struct inode *inode, struct file *filp)
{
	davinci_cfg_reg(DM365_GPIO35, PINMUX_RESV);
	davinci_cfg_reg(DM365_GPIO36, PINMUX_RESV);
	davinci_cfg_reg(DM365_GPIO37, PINMUX_RESV);
	printk("[email protected]@@spi_gpio_open \n");
	return 0;
}
开发者ID:NearZhxiAo,项目名称:3730,代码行数:8,代码来源:davincifb_r61505w.c


示例4: dm365_isif_setup_pinmux

static void dm365_isif_setup_pinmux(void)
{
	davinci_cfg_reg(DM365_VIN_CAM_WEN);
	davinci_cfg_reg(DM365_VIN_CAM_VD);
	davinci_cfg_reg(DM365_VIN_CAM_HD);
	davinci_cfg_reg(DM365_VIN_YIN4_7_EN);
	davinci_cfg_reg(DM365_VIN_YIN0_3_EN);
}
开发者ID:020gzh,项目名称:linux,代码行数:8,代码来源:dm365.c


示例5: spi_gpio_release

static int spi_gpio_release(struct inode *inode, struct file *filp)
{

	davinci_cfg_reg(DM365_GPIO35, PINMUX_FREE);
	davinci_cfg_reg(DM365_GPIO36, PINMUX_FREE);
	davinci_cfg_reg(DM365_GPIO37, PINMUX_FREE);	
	printk("[email protected]@@spi_gpio_release \n");
	return 0;
}
开发者ID:NearZhxiAo,项目名称:3730,代码行数:9,代码来源:davincifb_r61505w.c


示例6: da850_evm_setup_nor_nand

static inline void da850_evm_setup_nor_nand(void)
{
	int ret = 0;

	if (ui_card_detected && !HAS_MMC) {
		ret = davinci_cfg_reg_list(da850_evm_nand_pins);
		if (ret)
			pr_warning("da850_evm_init: nand mux setup failed: "
					"%d\n", ret);

		ret = davinci_cfg_reg(DA850_GPIO0_11);
		if (ret)
			pr_warning("da850_evm_init:GPIO(0,11) mux setup "
					"failed\n");

		ret = gpio_request(DA850_SD_ENABLE_PIN, "mmc_sd_en");
		if (ret)
			pr_warning("Cannot open GPIO %d\n",
					DA850_SD_ENABLE_PIN);

		/* Driver GP0[11] low for NOR to work */
		gpio_direction_output(DA850_SD_ENABLE_PIN, 0);

		ret = davinci_cfg_reg_list(da850_evm_nor_pins);
		if (ret)
			pr_warning("da850_evm_init: nor mux setup failed: %d\n",
				ret);

		platform_add_devices(da850_evm_devices,
					ARRAY_SIZE(da850_evm_devices));
	} else if (ui_card_detected && HAS_MMC) {
		/*
		 * On Logic PD Rev.3 EVMs GP0[11] pin needs to be configured
		 * for MMC and NOR to work. When GP0[11] is low, the SD0
		 * interface will not work, but NOR flash will. When GP0[11]
		 * is high, SD0 will work but NOR flash will not. By default
		 * we are assuming that GP0[11] pin is driven high, when UI
		 * card is not connected. Hence we are not configuring the
		 * GP0[11] pin when MMC/SD is enabled and UI card is not
		 * connected. Not configuring the GPIO pin will enable the
		 * bluetooth to work on AM18x as it requires the GP0[11]
		 * pin for UART flow control.
		 */
		ret = davinci_cfg_reg(DA850_GPIO0_11);
		if (ret)
			pr_warning("da850_evm_init:GPIO(0,11) mux setup "
					"failed\n");

		ret = gpio_request(DA850_SD_ENABLE_PIN, "mmc_sd_en");
		if (ret)
			pr_warning("Cannot open GPIO %d\n",
					DA850_SD_ENABLE_PIN);

		/* Driver GP0[11] high for SD to work */
		gpio_direction_output(DA850_SD_ENABLE_PIN, 1);
	}
}
开发者ID:Klaus-schwarzkopf,项目名称:linux-davinci-sensortherm,代码行数:57,代码来源:board-da850-evm.c


示例7: r61505w_probe

static int __init r61505w_probe(struct spi_device *spi)
{
	int ret;

	spi->bits_per_word = 24;
	ret = spi_setup(spi);
	g_spi = spi;
	printk("[email protected]@r61505w_probe\n\r");
	davinci_cfg_reg(DM365_GPIO35, PINMUX_RESV);
	davinci_cfg_reg(DM365_GPIO36, PINMUX_RESV);
	davinci_cfg_reg(DM365_GPIO37, PINMUX_RESV);
	gpio_direction_output(SPI_GPIO_SCL, 1);
	gpio_direction_output(SPI_GPIO_SDI, 1);
//	gpio_direction_output(SPI_GPIO_SDO, 1);
	gpio_direction_output(SPI_GPIO_CS, 1);
	
	r61505w_ldi_init();
//	r61505w_ldi_enable();

	r61505w_updata_backlight(BL_LEVEL3);

	davinci_cfg_reg(DM365_GPIO35, PINMUX_FREE);
	davinci_cfg_reg(DM365_GPIO36, PINMUX_FREE);
	davinci_cfg_reg(DM365_GPIO37, PINMUX_FREE);

	davinci_cfg_reg(DM365_SPI4_SCLK, PINMUX_RESV);
	davinci_cfg_reg(DM365_SPI4_SDO, PINMUX_RESV);
	davinci_cfg_reg(DM365_SPI4_SDENA0, PINMUX_RESV);

	if (ret < 0)
		return 0;

	return ret;
}
开发者ID:NearZhxiAo,项目名称:3730,代码行数:34,代码来源:davincifb_r61505w.c


示例8: dm355_init_asp1

void __init dm355_init_asp1(u32 evt_enable, struct snd_platform_data *pdata)
{
	/* we don't use ASP1 IRQs, or we'd need to mux them ... */
	if (evt_enable & ASP1_TX_EVT_EN)
		davinci_cfg_reg(DM355_EVT8_ASP1_TX);

	if (evt_enable & ASP1_RX_EVT_EN)
		davinci_cfg_reg(DM355_EVT9_ASP1_RX);

	dm355_asp1_device.dev.platform_data = pdata;
	platform_device_register(&dm355_asp1_device);
}
开发者ID:CybrixSystems,项目名称:linux,代码行数:12,代码来源:dm355.c


示例9: evm_init_i2c

static void __init evm_init_i2c(void)
{
	davinci_cfg_reg(DM365_I2C_SDA);
	davinci_cfg_reg(DM365_I2C_SCL);

	davinci_init_i2c(&i2c_pdata);
	//if (have_imager())
	//	i2c_add_driver(&pca9543a_driver);
	if( LENA_GROUND == device_lena_air_id )
	{
		i2c_register_board_info(1, i2c_info, ARRAY_SIZE(i2c_info));
	}
}
开发者ID:shenbokeji,项目名称:SinoMT,代码行数:13,代码来源:board-dm365-evm.c


示例10: dm644x_vpbe_setup_pinmux

static int dm644x_vpbe_setup_pinmux(enum v4l2_mbus_pixelcode if_type,
				    int field)
{
	int ret = 0;

	switch (if_type) {
	case V4L2_MBUS_FMT_SGRBG8_1X8:
		/*
		 * This was VPBE_DIGITAL_IF_PRGB. Replace the enum accordingly
		 * when the right one gets into open source
		 */
		davinci_cfg_reg(DM644X_GPIO46_47);
		davinci_cfg_reg(DM644X_GPIO0);
		davinci_cfg_reg(DM644X_RGB666);
		davinci_cfg_reg(DM644X_LOEEN);
		davinci_cfg_reg(DM644X_GPIO3);
		break;
	case V4L2_MBUS_FMT_YUYV10_1X20:
		/*
		 * This was VPBE_DIGITAL_IF_YCC16. Replace the enum accordingly
		 * when the right one gets into open source
		 */
		if (field)
			davinci_cfg_reg(DM644X_LFLDEN);
		else
			davinci_cfg_reg(DM644X_GPIO3);
		davinci_cfg_reg(DM644X_LOEEN);
		break;
	default:
		ret = -EINVAL;
	}

	return ret;
}
开发者ID:Klaus-schwarzkopf,项目名称:linux-davinci-sensortherm,代码行数:34,代码来源:dm644x.c


示例11: davinci_sffsdr_init

static __init void davinci_sffsdr_init(void)
{
	struct davinci_soc_info *soc_info = &davinci_soc_info;

	platform_add_devices(davinci_sffsdr_devices,
			     ARRAY_SIZE(davinci_sffsdr_devices));
	sffsdr_init_i2c();
	davinci_serial_init(&uart_config);
	soc_info->emac_pdata->phy_id = SFFSDR_PHY_ID;
	davinci_setup_usb(0, 0); /* We support only peripheral mode. */

	/* mux VLYNQ pins */
	davinci_cfg_reg(DM644X_VLYNQEN);
	davinci_cfg_reg(DM644X_VLYNQWD);
}
开发者ID:1youhun1,项目名称:linux,代码行数:15,代码来源:board-sffsdr.c


示例12: image_sensor_hw_reset

/* Om DM365, Imager and TVP5146 I2C address collide. So we need to
 * keep imager on reset when working with tvp5146 and vice-versa
 * This function use GIO40 to act as reset to imager
 */
void image_sensor_hw_reset(int state)
{
	u32 val1;
	if (cpu_is_davinci_dm365()) {
		val1 = cpld_read(DM365_CPLD_REGISTER3);
		val1 |= DM365_IMAGER_RST_MASK;
		cpld_write(val1, DM365_CPLD_REGISTER3);
		/* CPLD to Route GPIO to Imager Reset line */
		val1 = cpld_read(DM365_CPLD_REGISTER16);
		val1 &= ~0x40404040;
		cpld_write(val1, DM365_CPLD_REGISTER16);
		val1 = cpld_read(DM365_CPLD_REGISTER18);
		val1 |= 0x20202020;
		cpld_write(val1, DM365_CPLD_REGISTER18);
		val1 = cpld_read(DM365_CPLD_REGISTER18);
		val1 &= ~0x01010101;
		cpld_write(val1, DM365_CPLD_REGISTER18);
                
#ifndef CONFIG_MTD_CFI /* When NOR flash is use and at 16-bit access mode. GPIO 40 is used as address bus */ 
		/* Pin mux to use GPIO40 */
		davinci_cfg_reg(DM365_GPIO40, PINMUX_RESV);

		/* Configure GPIO40 to be output and hight */
		if (state)
			gpio_direction_output(40, 1);
		else
			gpio_direction_output(40, 0);
#endif
	}
}
开发者ID:gtvhacker,项目名称:Logitech-Revue,代码行数:34,代码来源:video_davinci_evm.c


示例13: led_off

static int led_off(void)
{
	int ret; 
	
	/*Free gpio */
	gpio_free(PIN_LED);
	
	/*Configure in mux.h  */
	ret = davinci_cfg_reg (MUX_LED); 
		if (ret<0)
		{
			printk(KERN_INFO "No es posible configurar el led 1\n"); 
			return ret;
		}
	
	/*Configure as out put */
	ret = gpio_request(PIN_LED, "led");
		if (ret) 
		{
			printk(KERN_INFO "No es posible configurar el led 2\n"); 
			return ret;
		}
		
	

	/*Configure as out put */
	gpio_direction_output(PIN_LED, 1); 

	/*TURN OFF */
	gpio_set_value(PIN_LED, 0);


	return 0 ; 

}
开发者ID:MrJaguar,项目名称:linux_device_drivers_tutorial,代码行数:35,代码来源:led.c


示例14: dm365evm_usb_configure

static void dm365evm_usb_configure(void)
{
	davinci_cfg_reg(DM365_GPIO33);
	gpio_request(33, "usb");
	gpio_direction_output(33, 1);
	setup_usb(500, 8);
}
开发者ID:shenbokeji,项目名称:SinoMT,代码行数:7,代码来源:board-dm365-evm.c


示例15: dm365evm_reset_imager

/**
 * dm365evm_reset_imager() - reset the image sensor
 * @en: enable/disable flag
 */
static void dm365evm_reset_imager(int rst)
{
	u8 val;

	val = __raw_readb(cpld + CPLD_POWER) | BIT(3) | BIT(11) | BIT(19)
	| BIT(27);
	__raw_writeb(val, (cpld + CPLD_POWER));

	val = __raw_readb(cpld + CPLD_MUX) | BIT(6) | BIT(14) | BIT(22)
	| BIT(30);
	__raw_writeb(val, (cpld + CPLD_MUX));

	/* Reset bit6 of CPLD_IMG_DIR2 */
	val = __raw_readb(cpld + CPLD_IMG_DIR2) & ~BIT(6);
	__raw_writeb(val, (cpld + CPLD_IMG_DIR2));

	/* Set bit5 of CPLD_IMG_MUX5 */
	val = __raw_readb(cpld + CPLD_IMG_MUX5) | BIT(5);
	__raw_writeb(val, (cpld + CPLD_IMG_MUX5));

	/* Reset bit 0 of CPLD_IMG_MUX5 */
	val = __raw_readb(cpld + CPLD_IMG_MUX5) & ~BIT(0);
	__raw_writeb(val, (cpld + CPLD_IMG_MUX5));

	/**
	 * Configure GPIO40 to be output and high. This has dependency on MMC1
	 */
	davinci_cfg_reg(DM365_GPIO40);
	gpio_request(40, "sensor_reset");
	if (rst)
		gpio_direction_output(40, 1);
	else
		gpio_direction_output(40, 0);
}
开发者ID:Klaus-schwarzkopf,项目名称:linux-davinci-sensortherm,代码行数:38,代码来源:board-dm365-evm.c


示例16: dm365_init_devices

static int __init dm365_init_devices(void)
{
	if (!cpu_is_davinci_dm365())
		return 0;

	davinci_cfg_reg(DM365_INT_EDMA_CC);
	platform_device_register(&dm365_edma_device);
	platform_device_register(&dm365_emac_device);

	/*
	* setup Mux configuration for vpfe input and register
	* vpfe capture platform device
	*/
	platform_device_register(&dm365_vpss_device);
	platform_device_register(&dm365_ipipeif_dev);
	platform_device_register(&dm365_isif_dev);
	platform_device_register(&vpfe_capture_dev);

	/* Register OSD device */
	platform_device_register(&dm365_osd_dev);

	/* Register VENC device */
	platform_device_register(&dm365_venc_dev);

	return 0;
}
开发者ID:virt2real,项目名称:dm36x-kernel,代码行数:26,代码来源:dm365.c


示例17: davinci_init_ide

void __init davinci_init_ide(void)
{
	if (cpu_is_davinci_dm644x()) {
		davinci_cfg_reg(DM644X_HPIEN_DISABLE);
		davinci_cfg_reg(DM644X_ATAEN);
		davinci_cfg_reg(DM644X_HDIREN);
	} else if (cpu_is_davinci_dm646x()) {
		/* IRQ_DM646X_IDE is the same as IRQ_IDE */
		davinci_cfg_reg(DM646X_ATAEN);
	} else {
		WARN_ON(1);
		return;
	}

	platform_device_register(&ide_device);
}
开发者ID:cake654326,项目名称:xpenology,代码行数:16,代码来源:devices.c


示例18: dm355_init_spi0

void __init dm355_init_spi0(unsigned chipselect_mask,
		const struct spi_board_info *info, unsigned len)
{
	/* for now, assume we need MISO */
	davinci_cfg_reg(DM355_SPI0_SDI);

	/* not all slaves will be wired up */
	if (chipselect_mask & BIT(0))
		davinci_cfg_reg(DM355_SPI0_SDENA0);
	if (chipselect_mask & BIT(1))
		davinci_cfg_reg(DM355_SPI0_SDENA1);

	spi_register_board_info(info, len);

	platform_device_register(&dm355_spi0_device);
}
开发者ID:CybrixSystems,项目名称:linux,代码行数:16,代码来源:dm355.c


示例19: da850_evm_config_emac

static int __init da850_evm_config_emac(void)
{
	void __iomem *cfg_chip3_base;
	int ret;
	u32 val;
	struct davinci_soc_info *soc_info = &davinci_soc_info;
	u8 rmii_en = soc_info->emac_pdata->rmii_en;

	if (!machine_is_davinci_da850_evm())
		return 0;

	cfg_chip3_base = DA8XX_SYSCFG0_VIRT(DA8XX_CFGCHIP3_REG);

	val = __raw_readl(cfg_chip3_base);

	if (rmii_en) {
		val |= BIT(8);
		ret = davinci_cfg_reg_list(da850_rmii_pins);
		pr_info("EMAC: RMII PHY configured, MII PHY will not be"
							" functional\n");
	} else {
		val &= ~BIT(8);
		ret = davinci_cfg_reg_list(da850_cpgmac_pins);
		pr_info("EMAC: MII PHY configured, RMII PHY will not be"
							" functional\n");
	}

	if (ret)
		pr_warning("da850_evm_init: cpgmac/rmii mux setup failed: %d\n",
				ret);

	/* configure the CFGCHIP3 register for RMII or MII */
	__raw_writel(val, cfg_chip3_base);

	ret = davinci_cfg_reg(DA850_GPIO2_6);
	if (ret)
		pr_warning("da850_evm_init:GPIO(2,6) mux setup "
							"failed\n");

	ret = gpio_request(DA850_MII_MDIO_CLKEN_PIN, "mdio_clk_en");
	if (ret) {
		pr_warning("Cannot open GPIO %d\n",
					DA850_MII_MDIO_CLKEN_PIN);
		return ret;
	}

	/* Enable/Disable MII MDIO clock */
	gpio_direction_output(DA850_MII_MDIO_CLKEN_PIN, rmii_en);

	soc_info->emac_pdata->phy_mask = DA850_EVM_PHY_MASK;
	soc_info->emac_pdata->mdio_max_freq = DA850_EVM_MDIO_FREQUENCY;

	ret = da8xx_register_emac();
	if (ret)
		pr_warning("da850_evm_init: emac registration failed: %d\n",
				ret);

	return 0;
}
开发者ID:andikleen,项目名称:linux-mce,代码行数:59,代码来源:board-da850-evm.c


示例20: davinci_init_i2c

void __init davinci_init_i2c(struct davinci_i2c_platform_data *pdata)
{
	if (cpu_is_davinci_dm644x())
		davinci_cfg_reg(DM644X_I2C);

	davinci_i2c_device.dev.platform_data = pdata;
	(void) platform_device_register(&davinci_i2c_device);
}
开发者ID:cake654326,项目名称:xpenology,代码行数:8,代码来源:devices.c



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


鲜花

握手

雷人

路过

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

请发表评论

全部评论

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