madman 发表于 2016-2-24 10:55:49

Firefly-rk3288 I2C 驱动

本帖最后由 F_madman 于 2017-2-9 18:24 编辑

之前学习的过程中大概整理了下pwm和spi的驱动,现在继续整理下i2c的驱动,只是一个简单的收发程序配了个proc的接口。感觉相对来说i2c的驱动还是比较简便的。在对应的i2c上加上dts的配置:
+      vol@34 {
+                compatible = "nxp,volume";
+                reg = <0x34>;
+      };
配置好Makefile
--- a/kernel/drivers/Makefile
+++ b/kernel/drivers/Makefile
@@ -157,3 +157,4 @@ obj-$(CONFIG_NTB)         += ntb/
obj-$(CONFIG_GATOR)            += gator/
obj-y                        += headset_observe/
+obj-y                        += volume_control.o
因为懒~所以只配了Makefile,没配Kconfig~{:3_55:}

下面是驱动的代码。有需要的初学者可以看看
ps:
经论坛的朋友提醒
大家要用这个驱动的话
去掉MODULE_DEVICE_TABLE(of, volume_of_match);这句

更新个i2coled的驱动,源码见附件

carlinluo 发表于 2016-2-24 11:44:27

:victory:支持

carlinluo 发表于 2016-2-24 11:59:17




晒晒 SPI接口的指纹识别,在firefly3288上

linjc 发表于 2016-2-24 14:21:53

赞一个!

junhai 发表于 2016-3-28 22:36:51

请问:I2C4的GPIO要用做普通GPIO的话,删除设备树中的配置就可以了吗?

madman 发表于 2016-3-29 08:59:15

junhai 发表于 2016-3-28 22:36
请问:I2C4的GPIO要用做普通GPIO的话,删除设备树中的配置就可以了吗?

dts里disabled掉,然后按普通io那样申请使用就可以了

junhai 发表于 2016-3-29 10:19:14

madman 发表于 2016-3-29 08:59
dts里disabled掉,然后按普通io那样申请使用就可以了

        i2c4: i2c@ff160000 {
                compatible = "rockchip,rk30-i2c";
                reg = <0xff160000 0x1000>;
                interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>;
                #address-cells = <1>;
                #size-cells = <0>;
                pinctrl-names = "default", "gpio";
                pinctrl-0 = <&i2c4_sda &i2c4_scl>;
                pinctrl-1 = <&i2c4_gpio>;
                gpios = <&gpio7 GPIO_C1 GPIO_ACTIVE_LOW>, <&gpio7 GPIO_C2 GPIO_ACTIVE_LOW>;
                clocks = <&clk_gates6 15>;
                rockchip,check-idle = <1>;
                status = "disabled";
        };

i2c4在dts中的status = "disabled"的,但是为什么dev/下还有i2c4设备(crw-rw-rw- root   root      89,   4 2011-01-01 12:00 i2c-4)?
我在自己的驱动中申请gpio是失败的啊!

madman 发表于 2016-3-29 14:04:52

去dts里面disabled,你这个是dtsi里面的,dts使能了的话会覆盖dtsi

hahath_Th 发表于 2016-3-29 14:18:44

   用的是谁家的模块啊

hahath_Th 发表于 2016-3-29 14:27:31

carlinluo 发表于 2016-2-24 11:59
晒晒 SPI接口的指纹识别,在firefly3288上

用的是哪家的模块啊,可以给个链接吗
页: [1] 2 3 4 5 6 7
查看完整版本: Firefly-rk3288 I2C 驱动