msm8937之I2C配置

msm8937之I2C配置msm8937.dtsi中aliases{i2c1=&i2c_1;i2c2=&i2c_2;i2c3=&i2c_3;i2c4=&i2c_4;i2c5=&i2c_5;i2c6=&i2c_6;i…


Jetbrains全系列IDE稳定放心使用

msm8937.dtsi中

    aliases {

        i2c1 = &i2c_1;
        i2c2 = &i2c_2;
        i2c3 = &i2c_3;
        i2c4 = &i2c_4;
        i2c5 = &i2c_5;
        i2c6 = &i2c_6;
        i2c8 = &i2c_8;
    };

    i2c_1: i2c@78b5000 { /* BLSP1 QUP1 */
        compatible = “qcom,i2c-msm-v2”;
        #address-cells = <1>;
        #size-cells = <0>;
        reg-names = “qup_phys_addr”;
        reg = <0x78b5000 0x600>;
        interrupt-names = “qup_irq”;
        interrupts = <0 95 0>;
        qcom,clk-freq-out = <400000>;
        qcom,clk-freq-in  = <19200000>;
        clock-names = “iface_clk”, “core_clk”;
        clocks = <&clock_gcc clk_gcc_blsp1_ahb_clk>,
            <&clock_gcc clk_gcc_blsp1_qup1_i2c_apps_clk>;

        pinctrl-names = “i2c_active”, “i2c_sleep”;
        pinctrl-0 = <&i2c_1_active>;
        pinctrl-1 = <&i2c_1_sleep>;
        qcom,noise-rjct-scl = <0>;
        qcom,noise-rjct-sda = <0>;
        qcom,master-id = <86>;
        dmas = <&dma_blsp1 4 64 0x20000020 0x20>,
            <&dma_blsp1 5 32 0x20000020 0x20>;
        dma-names = “tx”, “rx”;
    };

    i2c_2: i2c@78b6000 { /* BLSP1 QUP2 */
        compatible = “qcom,i2c-msm-v2”;
        #address-cells = <1>;
        #size-cells = <0>;
        reg-names = “qup_phys_addr”;
        reg = <0x78b6000 0x600>;
        interrupt-names = “qup_irq”;
        interrupts = <0 96 0>;
        qcom,clk-freq-out = <400000>;
        qcom,clk-freq-in  = <19200000>;
        clock-names = “iface_clk”, “core_clk”;
        clocks = <&clock_gcc clk_gcc_blsp1_ahb_clk>,
            <&clock_gcc clk_gcc_blsp1_qup2_i2c_apps_clk>;

        pinctrl-names = “i2c_active”, “i2c_sleep”;
        pinctrl-0 = <&i2c_2_active>;
        pinctrl-1 = <&i2c_2_sleep>;
        qcom,noise-rjct-scl = <0>;
        qcom,noise-rjct-sda = <0>;
        qcom,master-id = <86>;
        dmas = <&dma_blsp1 6 64 0x20000020 0x20>,
            <&dma_blsp1 7 32 0x20000020 0x20>;
        dma-names = “tx”, “rx”;
    };

    i2c_3: i2c@78b7000 { /* BLSP1 QUP3 */
        compatible = “qcom,i2c-msm-v2”;
        #address-cells = <1>;
        #size-cells = <0>;
        reg-names = “qup_phys_addr”;
        reg = <0x78b7000 0x600>;
        interrupt-names = “qup_irq”;
        interrupts = <0 97 0>;
        qcom,clk-freq-out = <400000>;
        qcom,clk-freq-in  = <19200000>;
        clock-names = “iface_clk”, “core_clk”;
        clocks = <&clock_gcc clk_gcc_blsp1_ahb_clk>,
            <&clock_gcc clk_gcc_blsp1_qup3_i2c_apps_clk>;

        pinctrl-names = “i2c_active”, “i2c_sleep”;
        pinctrl-0 = <&i2c_3_active>;
        pinctrl-1 = <&i2c_3_sleep>;
        qcom,noise-rjct-scl = <0>;
        qcom,noise-rjct-sda = <0>;
        qcom,master-id = <86>;
        dmas = <&dma_blsp1 8 64 0x20000020 0x20>,
            <&dma_blsp1 9 32 0x20000020 0x20>;
        dma-names = “tx”, “rx”;
    };

    i2c_4: i2c@78b8000 { /* BLSP1 QUP3 */
        compatible = “qcom,i2c-msm-v2”;
        #address-cells = <1>;
        #size-cells = <0>;
        reg-names = “qup_phys_addr”;
        reg = <0x78b8000 0x600>;
        interrupt-names = “qup_irq”;
        interrupts = <0 98 0>;
        qcom,clk-freq-out = <400000>;
        qcom,clk-freq-in  = <19200000>;
        clock-names = “iface_clk”, “core_clk”;
        clocks = <&clock_gcc clk_gcc_blsp1_ahb_clk>,
            <&clock_gcc clk_gcc_blsp1_qup4_i2c_apps_clk>;

        pinctrl-names = “i2c_active”, “i2c_sleep”;
        pinctrl-0 = <&i2c_4_active>;
        pinctrl-1 = <&i2c_4_sleep>;
        qcom,noise-rjct-scl = <0>;
        qcom,noise-rjct-sda = <0>;
        qcom,master-id = <86>;
        dmas = <&dma_blsp1 10 64 0x20000020 0x20>,
            <&dma_blsp1 11 32 0x20000020 0x20>;
        dma-names = “tx”, “rx”;
    };

    i2c_5: i2c@7af5000 { // BLSP2 QUP1
        compatible = “qcom,i2c-msm-v2”;
        #address-cells = <1>;
        #size-cells = <0>;
        reg-names = “qup_phys_addr”;
        reg = <0x7af5000 0x600>;
        interrupt-names = “qup_irq”;
        interrupts = <0 299 0>;
        qcom,clk-freq-out = <400000>;
        qcom,clk-freq-in  = <19200000>;
        clock-names = “iface_clk”, “core_clk”;
        clocks = <&clock_gcc clk_gcc_blsp2_ahb_clk>,
            <&clock_gcc clk_gcc_blsp2_qup1_i2c_apps_clk>;

        pinctrl-names = “i2c_active”, “i2c_sleep”;
        pinctrl-0 = <&i2c_5_active>;
        pinctrl-1 = <&i2c_5_sleep>;
        qcom,noise-rjct-scl = <0>;
        qcom,noise-rjct-sda = <0>;
        qcom,master-id = <84>;
        dmas = <&dma_blsp2 4 64 0x20000020 0x20>,
            <&dma_blsp2 5 32 0x20000020 0x20>;
        dma-names = “tx”, “rx”;
    };

    i2c_6: i2c@7af6000 {

        compatible = “qcom,i2c-msm-v2”;
        #address-cells = <1>;
        #size-cells = <0>;
        reg-names = “qup_phys_addr”;
        reg = <0x7af6000 0x600>;
        interrupt-names = “qup_irq”;
        interrupts = <0 300 0>;
        qcom,clk-freq-out = <400000>;
        qcom,clk-freq-in  = <19200000>;
        clock-names = “iface_clk”, “core_clk”;
        clocks = <&clock_gcc clk_gcc_blsp2_ahb_clk>,
            <&clock_gcc clk_gcc_blsp2_qup2_i2c_apps_clk>;

        pinctrl-names = “i2c_active”, “i2c_sleep”;
        pinctrl-0 = <&i2c_6_active>;
        pinctrl-1 = <&i2c_6_sleep>;
        qcom,noise-rjct-scl = <0>;
        qcom,noise-rjct-sda = <0>;
        qcom,master-id = <84>;
        dmas = <&dma_blsp2 6 64 0x20000020 0x20>,
            <&dma_blsp2 7 32 0x20000020 0x20>;
        dma-names = “tx”, “rx”;
    };

    i2c_8: i2c@7af8000 { // BLSP2 QUP4
        compatible = “qcom,i2c-msm-v2”;
        #address-cells = <1>;
        #size-cells = <0>;
        reg-names = “qup_phys_addr”;
        reg = <0x7af8000 0x600>;
        interrupt-names = “qup_irq”;
        interrupts = <0 302 0>;
        qcom,clk-freq-out = <400000>;
        qcom,clk-freq-in  = <19200000>;
        clock-names = “iface_clk”, “core_clk”;
        clocks = <&clock_gcc clk_gcc_blsp2_ahb_clk>,
            <&clock_gcc clk_gcc_blsp2_qup4_i2c_apps_clk>;

        pinctrl-names = “i2c_active”, “i2c_sleep”;
        pinctrl-0 = <&i2c_8_active>;
        pinctrl-1 = <&i2c_8_sleep>;
        qcom,noise-rjct-scl = <0>;
        qcom,noise-rjct-sda = <0>;
        qcom,master-id = <84>;
        dmas = <&dma_blsp2 10 64 0x20000020 0x20>,
            <&dma_blsp2 11 32 0x20000020 0x20>;
        dma-names = “tx”, “rx”;
    };

msm8937-pinctrl.dtsi

        i2c_1 {

            i2c_1_active: i2c_1_active {

                /* active state */
                mux {

                    pins = “gpio2”, “gpio3”;
                    function = “blsp_i2c1”;
                };

                config {

                    pins = “gpio2”, “gpio3”;
                    drive-strength = <2>;
                    bias-disable;
                };
            };

            i2c_1_sleep: i2c_1_sleep {

                /* suspended state */
                mux {

                    pins = “gpio2”, “gpio3”;
                    function = “gpio”;
                };

                config {

                    pins = “gpio2”, “gpio3”;
                    drive-strength = <2>;
                    bias-disable;
                };
            };
        };

        i2c_2 {

            i2c_2_active: i2c_2_active {

                /* active state */
                mux {

                    pins = “gpio6”, “gpio7”;
                    function = “blsp_i2c2”;
                };

                config {

                    pins = “gpio6”, “gpio7”;
                    drive-strength = <2>;
                    bias-disable;
                };
            };

            i2c_2_sleep: i2c_2_sleep {

                /* suspended state */
                mux {

                    pins = “gpio6”, “gpio7”;
                    function = “gpio”;
                };

                config {

                    pins = “gpio6”, “gpio7”;
                    drive-strength = <2>;
                    bias-disable;
                };
            };
        };

        i2c_3 {

            i2c_3_active: i2c_3_active {

                /* active state */
                mux {

                    pins = “gpio10”, “gpio11”;
                    function = “blsp_i2c3”;
                };

                config {

                    pins = “gpio10”, “gpio11”;
                    drive-strength = <2>;
                    bias-disable;
                };
            };

            i2c_3_sleep: i2c_3_sleep {

                /* suspended state */
                mux {

                    pins = “gpio10”, “gpio11”;
                    function = “gpio”;
                };

                config {

                    pins = “gpio10”, “gpio11”;
                    drive-strength = <2>;
                    bias-disable;
                };
            };
        };

        i2c_4 {

            i2c_4_active: i2c_4_active {

                /* active state */
                mux {

                    pins = “gpio14”, “gpio15”;
                    function = “blsp_i2c4”;
                };

                config {

                    pins = “gpio14”, “gpio15”;
                    drive-strength = <2>;
                    bias-disable;
                };
            };

            i2c_4_sleep: i2c_4_sleep {

                /* suspended state */
                mux {

                    pins = “gpio14”, “gpio15”;
                    function = “gpio”;
                };

                config {

                    pins = “gpio14”, “gpio15”;
                    drive-strength = <2>;
                    bias-disable;
                };
            };
        };

        i2c_5 {

            i2c_5_active: i2c_5_active {

                /* active state */
                mux {

                    pins = “gpio18”, “gpio19”;
                    function = “blsp_i2c5”;
                };

                config {

                    pins = “gpio18”, “gpio19”;
                    drive-strength = <2>;
                    bias-disable;
                };
            };

            i2c_5_sleep: i2c_5_sleep {

                /* suspended state */
                mux {

                    pins = “gpio18”, “gpio19”;
                    function = “gpio”;
                };

                config {

                    pins = “gpio18”, “gpio19”;
                    drive-strength = <2>;
                    bias-disable;
                };
            };
        };

        i2c_6 {

            i2c_6_active: i2c_6_active {

                /* active state */
                mux {

                    pins = “gpio22”, “gpio23”;
                    function = “blsp_i2c6”;
                };

                config {

                    pins = “gpio22”, “gpio23”;
                    drive-strength = <2>;
                    bias-disable;
                };
            };

            i2c_6_sleep: i2c_6_sleep {

                /* suspended state */
                mux {

                    pins = “gpio22”, “gpio23”;
                    function = “gpio”;
                };

                config {

                    pins = “gpio22”, “gpio23”;
                    drive-strength = <2>;
                    bias-disable;
                };
            };
        };

        i2c_8 {

            i2c_8_active: i2c_8_active {

                /* active state */
                mux {

                    pins = “gpio98”, “gpio99”;
                    function = “blsp_i2c8”;
                };

                config {

                    pins = “gpio98”, “gpio99”;
                    drive-strength = <2>;
                    bias-disable;
                };
            };

            i2c_8_sleep: i2c_8_sleep {

                /* suspended state */
                mux {

                    pins = “gpio98”, “gpio99”;
                    function = “gpio”;
                };

                config {

                    pins = “gpio98”, “gpio99”;
                    drive-strength = <2>;
                    bias-disable;
                };
            };
        };

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/180479.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • Jmeter的正则表达式提取参数「建议收藏」

    Jmeter的正则表达式提取参数「建议收藏」1:Jmeter正则表达式提取器提取制定的值1.1:添加http请求(80端口不用写端口号)1.2:添加正则表达式提取器.表示匹配任意字符+表示匹配一个或者多个?表示匹配到结束为止PS:下面的正则表达式还可以写成province:'([^’]+)’,       表示:[^’]匹配到不是单引号’;+表示它内的多个字符1.3:添加Debugsampler(用Debug取样器可以方便tes…

    2022年9月10日
  • oracle修改sequence最大最小值_oracle取最大值的记录

    oracle修改sequence最大最小值_oracle取最大值的记录序列是oracle提供的用于生成一系列唯一数字的数据库对象,序列会自动生成顺序递增的序列号,以实现自动提供唯一的主键值,系列可以在多个用户并发环境中使用,并且可以为所有用户生成不重复的顺序数字,而不需要任何额外的I/O开销。创建序列序列和视图一样,并不占用实际的存储空间,只是在数据字典中保存他的定义信息。当创建序列时必须拥有createsequence系统权限。语法格式:createsequ…

    2022年10月18日
  • pycharm如何打开原来的项目_terminal怎么打开

    pycharm如何打开原来的项目_terminal怎么打开Pycharm的下方工具栏中有两个窗口:PythonConsole和Terminal(如下图)其中,PythonConsole叫做Python控制台,即Python交互模式;Terminal叫做终端,即命令行模式。Python交互模式主要有两种:CPython用>>>作为提示符,而IPython用In[序号]:作为提示符。Python交互式模式可以直接输入代码,然后执行,并立刻得到结果,因此Python交互模式主要是为了调试Python代码用的。命..

    2022年8月28日
  • mysql数据库主从复制原理_数据库主从一致性验证

    mysql数据库主从复制原理_数据库主从一致性验证文章目录前言一、MySQL主从复制1.支持的复制类型2.主从复制的工作过程是基于日志3.请求方式4.主从复制的原理5.MySQL集群和主从复制分别适合在什么场景下使用6.为什么使用主从复制、读写分离7.用途及条件8.mysql主从复制存在的问题9.MySQL主从复制延迟二、主从复制的形式三、读写分离1.原理2.为什么要读写分离呢?3.什么时候要读写分离?4.主从复制与读写分离5.目前较为常见的MySQL读写分离分为以下两种①基于程序代码内部实现②基于中间代理层实现四、案例实施1.案例环境2.实验思路(解决需

    2022年8月13日
  • IIS 无法启动:发生意外错误0x8ffe2740 的原因

    IIS 无法启动:发生意外错误0x8ffe2740 的原因发生意外错误0x8ffe2740原因如果系统中存在端口冲突就有可能发生本情况.IIS默认使用80端口进行HTTP通信.如果除IIS外的应用程序正在运行并且正在相同的IP地址上使用80端口,在您试图使用IIS管理器启动网站时您也可能收到该错误讯息.解决方法要解决这个问题,您可以进行以下任一项操作:•在IIS管理器中更改网站绑定端口为除80端口外的其它端口.•停止正在使用80端口…

    2022年7月26日
  • arpspoof怎么用_技术分析实战工具

    arpspoof怎么用_技术分析实战工具需求太奇葩!arpspoof渗透工具使用方法

    2022年10月7日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号