This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DM8168,avs驱动,tps40041

Other Parts Discussed in Thread: TPS40041, TPS40400

      版主好,最近在调dm8168的avs驱动,在网址http://processors.wiki.ti.com/index.php/TI81XX_PSP_AVS_FAQ中,说ti的evm版本中用的是tps40041,但是我们

用的rdk3.5和rdk4.1中没有tps40041驱动,只有tps40400驱动,请问在哪个版本中有tps40041驱动代码,或者版主有tps40041驱动代码,可以把.c和.h相关文件发我

一份吗?邮箱地址:659570065@qq.com.谢谢!

  • TPS40041的驱动就是原版DVRRDK代码里面的默认驱动,应该就不用去改的。如果你的板子也是按照EVM来设计的,那完全就不用改,甚至可以不用关心这部分。

  • 你的意思是DVRRDK默认的是tps40041驱动,但是tps40041驱动代码在RDK中找不到吗?如果需要其他的tps驱动的话,可以用RDK自带的或者自己编写,不知道我理解的对不对?

  • 这个TPS40041是基于GPIO来做调节的电压芯片。驱动的名字不带TPS40041...

    这个驱动怎么用, 这两个文档能给你答案

    http://processors.wiki.ti.com/index.php/TI81XX_PSP_PM_AVS_Driver_User_Guide

    http://processors.wiki.ti.com/index.php/TI81XX_PSP_AVS_FAQ

    BR,

    Eason

  •      版主你好,你给的文档,我仔细了看了,按照里面的步骤进行了配置,我们的配置和你们的evm版本一样的,我现在又几点疑惑,希望版主能够给予解答,谢谢!

    1、文档中提到gpio-regulator.c,我看了这部分代码,

    static int gpio_vr_dcdc_enable(struct regulator_dev *dev)
    {
     /* Add your PMIC specific enable code */
     return 0;
    }  这部分需不需要加代码?

    2、文档中提到的SmartReflex-ti816x.c代码,

    /* sr_enable - Enable SR module
     * @sr:  contains SR driver data
     * @srid: contains the srid, specify whether it is HVT or SVT
     *
     * Enable SR module by writing nTarget values to corresponding SR
     * NVALUERECIPROCAL register, enable the interrupt and enable SR
     */
    static void sr_enable(struct ti816x_sr *sr, u32 srid)

    SR* NVALUERECIPROCAL register在哪里?

    3、有配置Uncheck the GPIO voltage regulator from the menu,我想确定是不是真的不选gpio电压调节这个模块。

    4、还有没有其他地方的代码需要修改。

    最近刚刚调avs驱动,有很多地方不是很清楚,希望版主给以指教,谢谢!

  • 什么都不用改。。。

    你的linux boot起来的时候,有没有打印电压调整方面的东西?有了的话就可以了,不用再管avs driver了。

    PS, 你用的具体是什么版本的DVRRDK?

  • 1、DVR_RDK版本是DVRRDK_04.01.00.02,

    2、omap_voltage_late_init: Voltage driver support not added Power Management for TI81XX.smartreflex smartreflex: Driver initialized这个打印表示是不是表示avs驱动没有启动?

    3、还有怎么看电压调整的信息?是在SmartReflex-ti816x.c文件中描述的吗?

    4、root@HD_EX1002F:~# cat /sys/kernel/debug/smartreflex/sr_hvt/nvalue
    0x00aae1fa
    root@HD_EX1002F:~# cat /sys/kernel/debug/smartreflex/initial_voltage
    1010000
    root@HD_EX1002F:~# cat /sys/kernel/debug/smartreflex/current_voltage
    1010000    这些信息可以获得,是不是表示avs在工作,还是avs不工作,也能正常打印这些信息?  麻烦版主了!

  • 你的驱动是工作了,电压值也是可以读出来的。

    附件是我从EVM板子上跑出来的启动log, 可以看到 里面和你打的一样的。    还注意一下prev_voltage这样的打印,这是在做电压调整的时候才会出现

  •      版主你好,请问有什么好方法,让板子跑起来,电压作出调整,然后能够检测到?

    还有板子刚刚启动时,需要的电压是不是最低的电压?谢谢!

  •   版主你好,我对比了你的和我的log文件,prev_volt is 1010000;Sending DHCP requests .prev_volt is 995000.prev_volt is 980000.

    你上面的信息是怎么打印出来的?我这边没有这个打印信息。

  • 不好意思,这个打印可能是我自己以前加的。。。

    smartreflex-ti816x.c里面, set_voltage函数里面加的,就是当AVS在进行调整的动作时打个东西出来看看

  •    我也在set_voltage函数加了打印,显示这个函数没有没有执行。是不是我的avs驱动没有电压变化,导致这个函数没有调用。

      版主你好,请问有什么好方法,让板子跑起来,电压作出调整,然后能够检测到?

    还有板子刚刚启动时,需要的电压是不是最低的电压?谢谢!

  • 那个,本人最近也需要写avs驱动,第一次接触ti的,想请问dm8168上的带avs的功能芯片是tps40400吗还是什么?都还没找到dm8168的电路图,如果版主已调好avs驱动,希望可以给发一份,如果有什么不能透漏具体代码,给个程序框架也行,还有是在什么内核版本上开发的,到时候好看API。邮箱地址:821894237@qq.com,先谢谢了。

  • 开发板上是40041, 用GPIO控的,有原理图。

    40400是新的PMIC,用I2C控的。我记得DVVRDK4.01里面的原理图是基于它的。

    驱动都在,menu config中使能即可。

    这个基本不需要你自己编程去控制的。

  • 你的意思是Linux内核已经有avs驱动了吗?请问是什么版本,具体相关代码的路径是什么?还是说你们在说的DVRRDK?完全不知道这个了,版主有的话可否发一份,还有具体相关代码的路径?原理图找到了这个:evm816x_Schematics_RevD。还有就是我看了

    http://processors.wiki.ti.com/index.php/TI81XX_PSP_PM_AVS_Driver_User_Guide

    http://processors.wiki.ti.com/index.php/TI81XX_PSP_AVS_FAQ

    ;还有另外两个pdf文件也看过,但是按照文件里面说的,在我这3.18.30的内核版本中要不就是在所说的目录中根本就没有那个源文件,要么就是有那个源文件,但是源文件里面并没有相关的成员变量啊,数组啊什么的。还有虚拟机ubuntu上编译了的3.18.30的内核,在其上进行文档中所说的make meniconfig后也是有的配置有,有的又没有,导致很多接下来的操作都不能进行。求解答,先谢。

  • 不公开,好吧。写论文的,没买开发板。那只是跟avs驱动有关的几个源文件呢?再不行可否秘传其中使用到的API(不会也是内部实现的而不是内核的吧?那只能拜拜了)?难道上面说的种种问题也是因为没有DVRRDK的缘故?

  • 3.18内核里面就不会有这个AVS驱动。。。你在想些什么呢。。。

    或者弄到DVRRDK,或者换个题目