设备树解析:gpio2 c4 上拉设置

gpio2: gpio@fec30000 {
			compatible = "rockchip,gpio-bank";
			reg = <0x0 0xfec30000 0x0 0x100>;
			interrupts = <GIC_SPI 279 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&cru PCLK_GPIO2>, <&cru DBCLK_GPIO2>;
			rockchip,pins = <2 RK_PC4 RK_FUNC_GPIO &pcfg_pull_up>;
			gpio-controller;
			#gpio-cells = <2>;
			gpio-ranges = <&pinctrl 0 64 32>;
			interrupt-controller;
			#interrupt-cells = <2>;
		};

在您提供的更新后的设备树(Device Tree)片段中,gpio2节点除了之前已有的属性外,还增加了一个新的属性rockchip,pins。下面是对这个新属性以及整个节点配置的详细解释:

  • gpio2: GPIO控制器的标签名,用于在设备树中唯一标识这个节点。

  • gpio@fec30000: GPIO控制器的基地址是0xfec30000gpio是节点名。

  • compatible = "rockchip,gpio-bank";: 兼容性字符串,表明这个GPIO控制器是由Rockchip公司生产的,并且属于gpio-bank类型。

  • reg = <0x0 0xfec30000 0x0 0x100>;: 寄存器地址范围,起始地址为0xfec30000,长度为256字节(0x100)。

  • interrupts = <GIC_SPI 279 IRQ_TYPE_LEVEL_HIGH>;: 中断配置,表示这是一个GIC的SPI中断,中断号为279,触发类型为电平高触发。

  • clocks = <&cru PCLK_GPIO2>, <&cru DBCLK_GPIO2>;: 时钟源配置,指定了GPIO控制器使用的时钟信号。

  • rockchip,pins = <2 RK_PC4 RK_FUNC_GPIO &pcfg_pull_up>;: 这是一个特定于Rockchip的GPIO配置属性。它定义了GPIO引脚的特定配置:

    • 2:可能是指引脚号或者是一个配置索引。
    • RK_PC4:通常指的是引脚的功能复用选择,RK_PC4可能是Rockchip定义的一个特定功能码,用于选择引脚的功能模式。
    • RK_FUNC_GPIO:明确指定引脚的功能为GPIO。
    • &pcfg_pull_up:是对另一个节点(可能是一个引脚配置节点)的引用,表示这个引脚应该配置为上拉模式。
  • gpio-controller;:表明这个节点是一个GPIO控制器。

  • #gpio-cells = <2>;:指定了每个GPIO引脚配置所需的单元(cell)数量,这里是2个。

  • gpio-ranges = <&pinctrl 0 64 32>;:定义了GPIO控制器管理的引脚范围。&pinctrl是对引脚控制器的引用,0是起始引脚号,64是引脚总数,32可能表示这个范围内的某些特定属性或分组。

  • interrupt-controller;:表明这个节点也是一个中断控制器。

  • #interrupt-cells = <2>;:指定了定义中断所需的单元数量,这里是2个。

rockchip,pins属性允许在设备树中直接为特定的GPIO引脚指定配置,这对于初始化硬件和减少操作系统启动时的配置工作非常有用。在这个例子中,它指定了引脚2(或某个特定的引脚)应该被配置为GPIO功能,并且是上拉模式。这样的配置通常是在硬件设计时就已经确定的,并且会在设备树中被操作系统读取和应用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值