|
发表于 2017-10-11 10:35:56
只看该作者
地板
本帖最后由 怪兽one 于 2017-10-11 15:39 编辑
你说的是kernel阶段是吧?我想要在uboot阶段就配置好gpio功能,
在uboot阶段加入如下代码
//GPIO2_B0 gpio out
static uint32 grf_gpio2b_iomux;
grf_gpio2b_iomux = (grf_readl(GRF_GPIO2B_IOMUX)&0xFFFFFFFC)|(3<<16);
// grf_writel((3 << 16) & grf_gpio2b_iomux, GRF_GPIO2B_IOMUX);
grf_writel(grf_gpio2b_iomux, GRF_GPIO2B_IOMUX);
gpio_direction_output(GPIO_BANK2 | GPIO_B0, 1);
//GPIO2_B1 interrupt
static uint32 grf_gpio2b_iomux;
int gpio_irq;
grf_gpio2b_iomux = (grf_readl(GRF_GPIO2B_IOMUX)&0xFFFFFFF3)|(3<<18);
grf_writel(grf_gpio2b_iomux, GRF_GPIO2B_IOMUX);
gpio_irq = gpio_to_irq(GPIO_BANK2 | GPIO_B1);
这样设理论不知可行不可行 |
|