1.使用老方法(android L)配置中断,调用request_irq函数时出错,错误代码 -22
 Dear Customer:
您好!
如电话沟通,贵司可以在发过来的code基础上做下面的修改再试试:
(1)修改aw8155.c

static int aw8155_drv_probe(struct platform_device *dev)
{
//...

// ------------------ here add your code to init device tree
-------------------- start
aw8155_pinctrl1 =
devm_pinctrl_get(&dev->dev);
if (IS_ERR(aw8155_pinctrl1)) {

AW8155_LOGE("devm_pinctrl_get error\n");
}
else{ //add

pins_default = pinctrl_lookup_state(aw8155_pinctrl1, "default");
if
(IS_ERR(pins_default)) {
AW8155_LOGE("pinctrl_lookup_state default
error\n");
}

pa_pins_int = pinctrl_lookup_state(aw8155_pinctrl1,
"pa_ctl_output0");
if (IS_ERR(pa_pins_int)) {

AW8155_LOGE("pinctrl_lookup_state pa_ctl_output0 error\n");
}
else
//add
pinctrl_select_state(aw8155_pinctrl1, pa_pins_int);
}
//
------------------ here add your code to init device tree ----------------------
end
//...

#if 0 //add
static struct platform_device
aw8155_platform_device = {
.name = "aw8155",
.id = -1,
.dev = {

.release = aw8155_dev_release,
}
};
#endif
static int __init
aw8155_init(void)
{
int ret = 0;
AW8155_LOGD("+%s\n", __func__);

#if 0 //add
ret = platform_device_register
(&aw8155_platform_device);
if (ret) {

AW8155_LOGE("platform_device_register fail\n");
return ret;
}

#endif

(2)修改fc8180_spi.c
static int dtveint_drv_probe(struct
platform_device *dev)
{
//...
eint_pinctrl =
devm_pinctrl_get(&dev->dev);
if (IS_ERR(eint_pinctrl)) {

printk(KERN_INFO "eintDebug devm_pinctrl_get error\n");
}
else{
//add
pins_default = pinctrl_lookup_state(eint_pinctrl, "default");
if
(IS_ERR(pins_default)) {
printk(KERN_INFO "eintDebug pinctrl_lookup_state
default error\n");
}

eint_pins = pinctrl_lookup_state(eint_pinctrl,
"eint_cfg");
if (IS_ERR(eint_pins)) {
printk(KERN_INFO "eintDebug
pinctrl_lookup_state pa_ctl_output0 error\n");
}
else //add

pinctrl_select_state(eint_pinctrl, eint_pins);
}
//...

#if 0
//add
static struct platform_device dtveint_platform_device = {
.name =
"dtveint",
.id = -1,
.dev = {
.release = dtveint_dev_release,
}

};
#endif
static int dtveint_init(void)
{
int ret = 0;

printk(KERN_INFO "eintDebug +%s\n", __func__);
#if 0 //add
ret =
platform_device_register (&dtveint_platform_device);
if (ret) {

printk("eintDebug platform_device_register fail\n");
return ret;
}

#endif
//...
谢谢!

2.使用spi_device驱动调用devm_pinctrl_get(&spi->dev),出现错误,反复重启,错误
”log见反复重启.log“

 
Dear Customer:
您好!
您这个cust_eint.dtsi文件是通过window下运行dct
tool生成的吧,这个只是做个参考。我们真正使用的是编译生成的cust.dtsi。所以您要check的话,可以check文件cust.dtsi。或者在linux下运行
dct生成相应的文件。

example:
(1)在window下运行dct
tool生成的cust_eint.dtsi文件中的accdet中断为:
ACCDET@6 {
compatible = "mediatek,
ACCDET-eint";
interrupt-parent = <&eintc>;
interrupts = <6
8>;
debounce = <6 256000>;
};
(2)在linux下运行dct
生成的cust_eint_dtsi文件会在编译生成cust.dtsi文件中的accdet中断为:
&accdet {

interrupt-parent = <&eintc>;
interrupts = <6
IRQ_TYPE_LEVEL_LOW>;
debounce = <6 256000>;
status = "okay";

};

谢谢!

 
3.能否提供一个spi驱动设备树配置的样板,可能过后需要在spi驱动的probe中进行中断和gpio的配置?
 
Dear Customer:
您好!
举例,在SPI0 bus上挂device
(kernel-3.18\arch\arm64\boot\dts\xxxx.dts)

&spi0 {

#address-cells = <1>;
#size-cells = <0>;

label:Your
device name@0 {
compatible = "your compatible name";
reg = <0>;
=> 表示SPI0上的第一个device
spi-max-frequency = <xxxx>; =>
如有需要,可自行添加SPI相关的info,这里以max freq为例
/* your device info ….*/
};
};

 
 
 

MTK平台释疑android M 配置中断相关问题的更多相关文章

  1. 关于MTK平台SIM-ME Lock的配置方案

    针对一些运营商的锁网需求,MTK平台已经对其有很好的支持.绝大多数的海外需求可以通过直接配置相关文件来完成.这里简单描述一下配置方法,不做原理分析. 相关数据结构分析: Modem中与SML锁网配置相 ...

  2. 【转】高通平台android 环境配置编译及开发经验总结

    原文网址:http://blog.csdn.net/dongwuming/article/details/12784535 1.高通平台android开发总结 1.1 搭建高通平台环境开发环境 在高通 ...

  3. MTK平台 GPU 相关知识

    一.什么是Render script,以及mtk平台GPU support情况 [DESCRIPTION] 1.什么是RenderScript ? 2.RenderScript 干什么? 3.MTK平 ...

  4. 关于MTK平台CC相关的Log查询

    关于MTK平台CC相关的Log查询 在外场问题中,经常会出现通话相关的故障.这里简单总结一下通话相关log的分析点: 主叫方:主叫方,是指主动发起通话的一方. 初步定位问题, 用户发起通话时,AP端的 ...

  5. MTK平台Android项目APK预置方案

    项目开发中,通常需要向系统中预置一些APK,这里简单介绍一下MTK平台预置APK的方法. 需要预置的apk可以放置在目录:vendor/mediate/${Project}/artifacts/out ...

  6. Android8.1 MTK平台 SystemUI源码分析之 网络信号栏显示刷新

    SystemUI系列文章 Android8.1 MTK平台 SystemUI源码分析之 Notification流程 Android8.1 MTK平台 SystemUI源码分析之 电池时钟刷新 And ...

  7. Android开发环境搭建相关文章列表(转载)

    Android开发虽然有所了解,但是一直没有搭建开发环境去学习,Android的更新速度比较快了,Android1.0是2008年发布的,截止到目前为止Android已经更新Android5.0.1, ...

  8. MTK 平台上查询当前使用的摄像头模组及所支持预览分辨率

    1,MTK 平台如何查询当前使用的是哪颗摄像头及相关的模组信息? 在该目录下可以查到当前平台及相关项目的配置文件 ProjectConfig.mk \ALPS.JB.MP.V1_W_20120919\ ...

  9. 【React Native开发】React Native For Android环境配置以及第一个实例(1)

    年9月15日也公布了ReactNative for Android,尽管Android版本号的项目公布比較迟,可是也没有阻挡了广大开发人员的热情.能够这样讲在2015年移动平台市场上有两个方向技术研究 ...

随机推荐

  1. 升序 Collections.sort(list) 降序 Collections.reserve(list) 随机 Collections.shuffle(list)

    package Day28ketangzuoye; import java.util.ArrayList; import java.util.Collections; import java.util ...

  2. D. Leaving Auction 一题很好的思维题

    http://codeforces.com/contest/749/problem/D 现在发现做题要把样例抄下来,然后画一画,这样才容易发现新大陆.嗯,以后做题就这样. 如果排除了被删除了的人,那么 ...

  3. 外文翻译 《How we decide》赛场上的四分卫 第四节

    这是第一章的最后一节. 书的导言 本章第一节 本章第二节 本章第三节 制作肥皂剧是非常不易的.整个制作组都要很紧张的工作,每天都要拍摄一些新的事件.新的大转折的剧情需要被想象出来,新的剧本需要被编写, ...

  4. 工厂方法模式及php实现

    工厂方法模式: 工厂方法模式(Factory Method Pattern)又称为工厂模式,也叫虚拟构造器(Virtual Constructor)模式或者多态工厂(Polymorphic Facto ...

  5. flex弹性布局操练2

    上一个是练习的1个内元素的,这次练习两个元素的. ul.box1 { list-style:none; background-color:black; display:flex; justify-co ...

  6. Objective-C 里面的类对象复用小结

    OC 提供了单继承 (Inheritance), Category, Extension, Protocol 这几种基本的类与对象层面的复用机制,作一小结. 在这几个机制中,继承提供了纵向的复用,可以 ...

  7. Net作业调度

    Net作业调度(一) -Quartz.Net入门 2014-11-01 13:14 by 蘑菇先生, 13954 阅读, 7 评论, 收藏, 编辑 背景 很多时候,项目需要在不同时刻,执行一个或很多个 ...

  8. 【C++】朝花夕拾——表达式树

    表达式树: 叶子是操作数,其余结点为操作符,是二叉树的其中一种应用 ====================我是分割线====================== 一棵表达式树如下图: 若是对它做中序 ...

  9. parsley.js正确使用姿势

    1.第一式 当然要先引用:parsley.js 2.第二式 页面中定义需要使用自定义校验,注意红色的地方,必须要使用小写,重要的问题说三遍,小写,小写 <form class="for ...

  10. CREATE VIEW - 定义一个视图

    SYNOPSIS CREATE [ OR REPLACE ] VIEW name [ ( column_name [, ...] ) ] AS query DESCRIPTION 描述 CREATE ...