您的位置:首页 > 移动开发 > Android开发

友善之臂4412开发板android应用层通过jni直接控制除LED、蜂鸣器外的其它IO口,系统直接重启问题

2015-12-19 10:29 686 查看
问题描述:

安卓应用层,app通过jni打开/dev下的自己写的LED设备驱动文件,进行读写操作。能控制核心板上的4个LED灯亮灭。当把linux内核LED驱动中的针脚地址从GPM4_0改为GPJ1_5(也就是PCB板上的com10,连接CMOS CAMERA)或其他口,试图通过这个针脚直接点亮我外接的一个LED灯时,安卓系统卡住了,卡了约2到3秒的样子,安卓系统重启了。

问题未知[备注:外设板为友善之臂4412增强版]

问题猜测:由于光linux系统,没安卓系统时,所有的外设接口都是可以单独驱动的。但上了安卓就不能控制。可能是安卓里有相应的驱动已经占用掉了这些外设针脚。详细原因有待深究。

最后的妥协方案:几乎所有的外设针脚都试了一遍,发现位于SDWIFI那排最后的带“SPI”的那4个针脚可以拓展为GPio,并可以通过安卓系统通过jni来控制。

 

以下是我的问题全部信息,以备查询。

LED驱动部分:

Led_demo.h

#ifndef __LED_DEMO_H__

#define __LED_DEMO_H__

     

#include <linux/cdev.h>

 

 #define LED_ON    _IOW('L', 0, int)

 #define LED_OFF    _IOW('L', 1, int)

       

#define LED_DEMO_DEVICE_NODE_NAME  "led_demo"

#define LED_DEMO_DEVICE_CLASS_NAME "led_demo"

#define LED_DEMO_DEVICE_FILE_NAME  "led_demo"

  

#define EXYNOS4412_GPJ1CON    0x11400260

#define EXYNOS4412_GPJ1DAT    0x11400264

 

struct led_demo_dev

  {

      struct cdev dev;

  };

    

#endif

 

Led_demo.c

#include <linux/kernel.h>

#include <linux/module.h>

#include <linux/fs.h>

#include <linux/slab.h>

#include <linux/device.h>

#include <linux/gpio.h>

#include <mach/gpio.h>

#include <asm/io.h>

#include <asm/uaccess.h>

 

#include "led_demo.h"

 

 

 

static int led_demo_major;

static int led_demo_minor;

static int number_of_dev = 1;

static dev_t dev;

 

static struct led_demo_dev  *led_dev = NULL;

 

static unsigned int *gpj1con = NULL;

static unsigned int *gpj1dat = NULL;

 

static struct class *led_demo_class = NULL;

 

 

static int led_open (struct inode *node, struct file *fops)

{

struct led_demo_dev *dev;

 

dev = container_of(node->i_cdev, struct led_demo_dev, dev);

 

fops->private_data = dev;

 

return 0;

}

static int led_close (struct inode *node, struct file *fops)

{

 

return 0;

}

 

 static long led_ioctl (struct file *fops, unsigned int cmd, unsigned long data)

 {

     //struct led_demo_dev * led_dev = (struct led_demo_dev *)fops->private_data;  

switch (cmd)

{

case LED_ON:

*gpj1dat &= ~(1<<1);

break;

case LED_OFF:

*gpj1dat |= 1<<1;

break;

default:

return -EINVAL;

break;

}

return 0;

}

 

struct file_operations led_fops =

{

.owner = THIS_MODULE,

.open = led_open,

.unlocked_ioctl = led_ioctl,

.release = led_close,

};

 

static int __led_setup_dev(struct led_demo_dev * dev)

{

int err = -1;

 

dev_t devno = MKDEV(led_demo_major, led_demo_minor);

 

memset(dev, 0, sizeof(struct led_demo_dev));

 

cdev_init(&(dev->dev), &led_fops);

 

dev->dev.owner = THIS_MODULE;

 

err = cdev_add(&(dev->dev), devno, number_of_dev);

if(err < 0)

{

 return err;

}

return 0;

}

 

static int led_demo_init(void)

{

int err = -1;

struct device *temp = NULL;

 

printk(KERN_ALERT"Initializing led demo device.\n");

 

err = alloc_chrdev_region(&dev, 0, number_of_dev, LED_DEMO_DEVICE_NODE_NAME);

if(err < 0)

{

printk(KERN_ALERT"fail to alloc char dev region.\n");

 goto fail;

}

 

led_demo_major = MAJOR(dev);

led_demo_minor = MINOR(dev);

 

led_dev = kmalloc(sizeof(struct led_demo_dev), GFP_KERNEL);

if(!led_dev)

{

  err = -ENOMEM;

  printk(KERN_ALERT"Failed to alloc led device.\n");

  goto unregister;

}

 

err = __led_setup_dev(led_dev);

if (err < 0)

{

printk(KERN_ALERT"Failed to setup led device.\n");

  goto clean_up;

}

 

gpj1con= (unsigned int *)ioremap(EXYNOS4412_GPJ1CON, 4);

if(!gpj1con)

{

 err = -ENOMEM;

 goto destroy_cdev;

}

 

gpj1dat = (unsigned int *)ioremap(EXYNOS4412_GPJ1DAT, 4);

if(!gpj1dat)

{

  err = -ENOMEM;

  goto unmap1;

}

 

*gpj1con &=~ (0xf<<(1*4));

*gpj1con |= 0x1<<(1*4);

 

led_demo_class = class_create(THIS_MODULE, LED_DEMO_DEVICE_CLASS_NAME);

temp = device_create(led_demo_class, NULL, dev, NULL, "%s", LED_DEMO_DEVICE_FILE_NAME);

iounmap(gpj1dat);

iounmap(gpj1con);

if(IS_ERR(temp))

{

err = PTR_ERR(temp);

printk(KERN_ALERT"Failed to create led demo device.\n");

goto destroy_class;

}

dev_set_drvdata(temp, (void *)led_dev);

 

printk(KERN_ALERT"Succeed to initialize led demo device.\n");

  

return 0;

 

destroy_class:

class_destroy(led_demo_class);

 

unmap1:

iounmap(gpj1con);

 

destroy_cdev:

cdev_del(&(led_dev->dev));

 

clean_up:

kfree(led_dev);

 

unregister:

unregister_chrdev_region(MKDEV(led_demo_major, led_demo_minor), number_of_dev);

 

fail:

 

return err;

}

 

static void led_demo_exit(void)

{

if(led_demo_class)

{

device_destroy(led_demo_class, MKDEV(led_demo_major, led_demo_minor));

class_destroy(led_demo_class);

}

iounmap(gpj1dat);

iounmap(gpj1con);

if(led_dev)

{

cdev_del(&(led_dev->dev));

kfree(led_dev);

}

unregister_chrdev_region(MKDEV(led_demo_major, led_demo_minor), number_of_dev);

}

 

module_init(led_demo_init);

module_exit(led_demo_exit);

MODULE_LICENSE("GPL");

 

安卓应用jni层:

#include <stdio.h>

#include <stdlib.h>

#include <termios.h>

#include <unistd.h>

#include <sys/types.h>

#include <sys/stat.h>

#include <sys/ioctl.h>

#include <fcntl.h>

#include <string.h>

#include <jni.h>

#include <errno.h>

//#include <utils/Log.h>

//#include <ALog.h>

#include <android/log.h>

#define OFF 0x11

#define ON 0x22

#define LED_OFF _IOW('L',1,int)

#define LED_ON _IOW('L',0,int)

#define READ 0x33

#define DEV_NAME "/dev/led_demo"

#define LOG_TAG "LedLog"

#define LOGI(...) __android_log_print(ANDROID_LOG_INFO,LOG_TAG,__VA_ARGS__)

int fd;

jint Java_com_szx_ledkz_Ledkz_openled(JNIEnv* env, jobject obj){

fd=open(DEV_NAME,O_RDWR);

/* if(fd<0){

LOGI("没有打开文件");  //其中1$为java的String类的format需要加上的.其他的写法和C语言一致

}else{

LOGI("文件已打开,fd为%d",fd);

}

*/

return fd;

}

 

jint Java_com_szx_ledkz_Ledkz_closeled(JNIEnv* env, jobject obj){

int ret;

ret = close(fd);

return ret;

}

 

jint Java_com_szx_ledkz_Ledkz_ioctl(JNIEnv* env, jobject obj,jint fd,jint controlcode,jint ledid){

int CTLCODE = controlcode;

int value =-1;

switch(CTLCODE)

{ case ON:

{

ioctl(fd,LED_ON,ledid);//setLedState( 0, 1 );//调用驱动程序中的ioctrl接口,把命令传下去,实现硬件操作

break;

}

case OFF:

{

ioctl(fd,LED_OFF,ledid);//// setLedState( 0, 0 );//调用驱动程序中的ioctrl接口,把命令传下去,实现硬件操作

break;

}

case READ:

{

value=ioctl(fd,3,ledid);// 2 表示读取状态的cmd;0、1表示led控制的命令;

return value;

break;

}

default:break;

}

return 0;

}

 

后面会有完整led_demo示例app工程。请用eclipse打开。
http://download.csdn.net/detail/bilifo/9367680
完整的重启信息:

shell@tiny4412:/ $ cd system/bin/                                              

shell@tiny4412:/system/bin $ ./led_demo_test                                   

[   81.703033] type=1400 audit(81.695:11): avc: denied { read write } for pid=3961 comm="led_demo_test" name="led_demo" dev=tmpfs ino=3340 scontext=u:r:shell:s0 tcontext=u:object_r:device:s0 tclass=chr_file

[   81.703693] type=1400 audit(81.695:12): avc: denied { open } for pid=3961 comm="led_demo_test" name="led_demo" dev=tmpfs ino=3340 scontext=u:r:shell:s0 tcontext=u:object_r:device:s0 tclass=chr_file

[   81.716586] open----open----open----open----open----

[   81.721366] ioctl----ioctl----ioctl----ioctl----

[   81.725917] 1074023425type=1400 audit(81.720:13): avc: denied { ioctl } for pid=3961 comm="led_demo_test" path="/dev/led_demo" dev=tmpfs ino=3340 scontext=u:r:shell:s0 tcontext=u:object_r:device:s0 tclass=chr_file

[   81.744851] ioctlLED_OFF----ioctlLED_OFF----ioctlLED_OFF----ioctlLED_OFF----

[   81.751978] Unable to handle kernel paging request at virtual address e5478264

[   81.760756] pgd = d1d20000

[   81.761834] [e5478264] *pgd=5e7f3811, *pte=00000000, *ppte=00000000

[   81.769356] Internal error: Oops: 7 [#1] PREEMPT SMP

[   81.772928] Modules linked in: compat snd_soc_tiny4412_wm8960 snd_soc_wm8960

[   81.779960] CPU: 2    Not tainted  (3.0.86-FriendlyARM #25)

[   81.785521] PC is at led_ioctl+0xbc/0xf8

[   81.789423] LR is at l2x0_cache_sync+0x38/0x3c

[   81.793848] pc : [<c04f86d0>]    lr : [<c0058e80>]    psr: 60000013

[   81.793851] sp : d1d0fee8  ip : d1d0fed0  fp : d1d0fefc

[   81.805303] r10: 00000000  r9 : d1d0e000  r8 : 00000000

[   81.810512] r7 : 00000003  r6 : dd9e3030  r5 : 00000001  r4 : 40044c01

[   81.817022] r3 : e5478264  r2 : 00000000  r1 : a0000013  r0 : c09b6bb8

[   81.823533] Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment user

[   81.830649] Control: 10c5387d  Table: 51d2004a  DAC: 00000015

[   81.836378] 

[   81.836379] PC: 0xc04f8650:

[   81.840630] 8650  e1540003 0a000013 e3e00015 e89da818 e59f0090 eb068ca4 f57ff04f e59f3088

[   81.848789] 8670  e593301c e3530000 0a000000 e12fff33 e59f3078 e5933000 e5932000 f57ff04f

[   81.856949] 8690  e3c22002 e5832000 e59f0064 eb068c96 e3a00000 e89da818 e59f0058 eb068c92

[   81.865108] 86b0  f57ff04f e59f3040 e593301c e3530000 0a000000 e12fff33 e59f3030 e5933000

[   81.873267] 86d0  e5932000 f57ff04f e3822002 e5832000 e59f001c eb068c84 e3a00000 e89da818

[   81.881426] 86f0  c08a429c c0837020 c08a42c4 c09188cc c0dd9384 c08a4348 c08a4304 e1a0c00d

[   81.889585] 8710  e92dd9f0 e24cb004 e24dd00c e59f4214 e59f0214 eb068c74 e2840004 e3a01000

[   81.897744] 8730  e3a02001 e59f3204 ebf144a6 e2506000 ba000074 e59f31f8 e5947004 e5930018

[   81.905904] 

[   81.905906] LR: 0xc0058e00:

[   81.910157] 8e00  e59f0008 eb1918d9 e89da818 c09b6bb0 c09b6bb8 e1a0c00d e92dd830 e24cb004

[   81.918316] 8e20  e59f401c e1a00004 eb19199c e1a05000 ebffffc2 e1a00004 e1a01005 eb1918cb

[   81.926475] 8e40  e89da830 c09b6bb8 e1a0c00d e92dd830 e24cb004 e3064bb0 e34c409b e2845008

[   81.934634] 8e60  e1a00005 eb19198d e5943000 e3a02000 e1a01000 e5832730 e1a00005 eb1918bb

[   81.942793] 8e80  e89da830 e1a0c00d e92dd878 e24cb004 e59f60a0 e0602001 e5963010 e1a04000

[   81.950953] 8ea0  e1520003 e1a05001 2a000020 e2860008 eb19197a e3c4401f e1a01000 e1550004

[   81.959112] 8ec0  9a000014 e0643005 e3530a01 90843003 82843a01 e1530004 9a000005 e5962000

[   81.967271] 8ee0  e2822e7f e5824000 e2844020 e1530004 8afffffb e1550003 9affffef e59f0038

[   81.975431] 

[   81.975433] SP: 0xd1d0fe68:

[   81.979684] fe68  00000000 ffffffff 00000001 00000000 d1d0fec4 0000040f 00000007 dd9e3030

[   81.987843] fe88  00000003 00000000 d1d0fefc d1d0fea0 c004b210 c0045510 c09b6bb8 a0000013

[   81.996002] fea8  00000000 e5478264 40044c01 00000001 dd9e3030 00000003 00000000 d1d0e000

[   82.004161] fec8  00000000 d1d0fefc d1d0fed0 d1d0fee8 c0058e80 c04f86d0 60000013 ffffffff

[   82.012321] fee8  c04f8614 d41e8000 d1d0ff74 d1d0ff00 c0156778 c04f8620 00000025 0000000a

[   82.020480] ff08  00000001 00000001 00000001 00000000 00000000 00000000 c022ac48 c022ad70

[   82.028639] ff28  00000003 d41e8000 00000001 40044c01 00000003 c004bac4 d1d0e000 00000000

[   82.036798] ff48  d1d0ff64 d1d0ff58 d41e8000 00000001 40044c01 00000003 00000000 00000000

[   82.044958] 

[   82.044959] IP: 0xd1d0fe50:

[   82.049210] fe50  d1d0fe64 2020205b 372e3138 35383434 00205d31 00040006 00000000 ffffffff

[   82.057370] fe70  00000001 00000000 d1d0fec4 0000040f 00000007 dd9e3030 00000003 00000000

[   82.065529] fe90  d1d0fefc d1d0fea0 c004b210 c0045510 c09b6bb8 a0000013 00000000 e5478264

[   82.073688] feb0  40044c01 00000001 dd9e3030 00000003 00000000 d1d0e000 00000000 d1d0fefc

[   82.081847] fed0  d1d0fed0 d1d0fee8 c0058e80 c04f86d0 60000013 ffffffff c04f8614 d41e8000

[   82.090007] fef0  d1d0ff74 d1d0ff00 c0156778 c04f8620 00000025 0000000a 00000001 00000001

[   82.098166] ff10  00000001 00000000 00000000 00000000 c022ac48 c022ad70 00000003 d41e8000

[   82.106325] ff30  00000001 40044c01 00000003 c004bac4 d1d0e000 00000000 d1d0ff64 d1d0ff58

[   82.114484] 

[   82.114486] FP: 0xd1d0fe7c:

[   82.118737] fe7c  0000040f 00000007 dd9e3030 00000003 00000000 d1d0fefc d1d0fea0 c004b210

[   82.126897] fe9c  c0045510 c09b6bb8 a0000013 00000000 e5478264 40044c01 00000001 dd9e3030

[   82.135056] febc  00000003 00000000 d1d0e000 00000000 d1d0fefc d1d0fed0 d1d0fee8 c0058e80

[   82.143215] fedc  c04f86d0 60000013 ffffffff c04f8614 d41e8000 d1d0ff74 d1d0ff00 c0156778

[   82.151374] fefc  c04f8620 00000025 0000000a 00000001 00000001 00000001 00000000 00000000

[   82.159533] ff1c  00000000 c022ac48 c022ad70 00000003 d41e8000 00000001 40044c01 00000003

[   82.167693] ff3c  c004bac4 d1d0e000 00000000 d1d0ff64 d1d0ff58 d41e8000 00000001 40044c01

[   82.175852] ff5c  00000003 00000000 00000000 d1d0ffa4 d1d0ff78 c0156d8c c01566f8 00000001

[   82.184011] 

[   82.184013] R0: 0xc09b6b38:

[   82.188264] 6b38  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000

[   82.196423] 6b58  00000000 00000000 00000000 00000000 00000000 64000000 0000041f 0000045f

[   82.204582] 6b78  c0007ff8 c1485ac0 00000004 00000000 00000000 00000000 00000000 00000000

[   82.212742] 6b98  00000000 00000000 00000000 00000000 047e047e 00000000 fe600000 0000ffff

[   82.220901] 6bb8  eec2eec2 00000000 00100000 4100c4c8 00000010 00000800 00000000 00000000

[   82.229060] 6bd8  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000

[   82.237219] 6bf8  00000000 00000000 00000000 c006851c 00000000 00000000 00000000 00000000

[   82.245378] 6c18  00000000 00000000 00000000 00000000 00000000 009f009f 00000000 00000000

[   82.253538] 

[   82.253540] R3: 0xe54781e4:

[   82.257791] 81e4  ******** ******** ******** ******** ******** ******** ******** ********

[   82.265950] 8204  ******** ******** ******** ******** ******** ******** ******** ********

[   82.274109] 8224  ******** ******** ******** ******** ******** ******** ******** ********

[   82.282268] 8244  ******** ******** ******** ******** ******** ******** ******** ********

[   82.290428] 8264  ******** ******** ******** ******** ******** ******** ******** ********

[   82.298587] 8284  ******** ******** ******** ******** ******** ******** ******** ********

[   82.306746] 82a4  ******** ******** ******** ******** ******** ******** ******** ********

[   82.314905] 82c4  ******** ******** ******** ******** ******** ******** ******** ********

[   82.323065] 

[   82.323067] R6: 0xdd9e2fb0:

[   82.327318] 2fb0  00000000 00000000 dd9e2fc0 00000000 00010001 00000000 00200000 00000000

[   82.335477] 2fd0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000

[   82.343636] 2ff0  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000

[   82.351795] 3010  00000000 00000000 00000000 dd9e301c dd9e301c dd9e3024 dd9e3024 00000000

[   82.359954] 3030  000021b6 00000000 00000000 c06a7b00 dd8f0000 00050005 00000000 00000000

[   82.368114] 3050  00000000 dd8c4c78 00000001 00020002 00000000 dd9e3064 dd9e3064 00000000

[   82.376273] 3070  00000000 dd9e3058 00000000 00000000 00000000 dd9e3084 dd9e3084 dd9e308c

[   82.384432] 3090  dd9e308c dd9e2e9c dd9e328c de2e0764 de2e0764 00000d0c 00000001 00000001

[   82.392592] 

[   82.392593] R9: 0xd1d0df80:

[   82.396844] df80  1ce3206e 000a0010 0aae3059 0aac3054 206e1112 00101ce3 3059000a 30540aaf

[   82.405004] dfa0  51120aac 1ce3206e 000a0010 0aad3059 0000000e 00020003 00000000 00100853

[   82.413163] dfc0  0000000d 0aaf2052 0aaf1059 0aae2052 0aae1059 0aad2052 0aad1059 0000000e

[   82.421322] dfe0  00040004 00000000 0010085d 00000007 0aaf0159 0aae0259 0aad0359 0000000e

[   82.429481] e000  00000000 00000002 00000000 d36e1e00 c09399e0 00000002 00000015 d36e1e00

[   82.437641] e020  c18ba700 d1d0e000 de448f00 00000000 dd9e4380 00000a09 d1d0fc24 d1d0fb68

[   82.445800] e040  c069c114 00000000 00000000 00000000 00000000 00000000 01010000 00000000

[   82.453959] e060  401be10c 00000000 00000000 00000000 00000000 00000000 00000000 00000000

[   82.462120] Process led_demo_test (pid: 3961, stack limit = 0xd1d0e2f0)

[   82.468716] Stack: (0xd1d0fee8 to 0xd1d10000)

[   82.473058] fee0:                   c04f8614 d41e8000 d1d0ff74 d1d0ff00 c0156778 c04f8620

[   82.481217] ff00: 00000025 0000000a 00000001 00000001 00000001 00000000 00000000 00000000

[   82.489377] ff20: c022ac48 c022ad70 00000003 d41e8000 00000001 40044c01 00000003 c004bac4

[   82.497536] ff40: d1d0e000 00000000 d1d0ff64 d1d0ff58 d41e8000 00000001 40044c01 00000003

[   82.505695] ff60: 00000000 00000000 d1d0ffa4 d1d0ff78 c0156d8c c01566f8 00000001 00000000

[   82.513854] ff80: c004bac4 00000001 00000003 00000001 00000036 c004bac4 00000000 d1d0ffa8

[   82.522013] ffa0: c004b940 c0156d1c 00000001 00000003 00000003 40044c01 00000001 bebce988

[   82.530172] ffc0: 00000001 00000003 00000001 00000036 00000000 00000000 00000000 bebce9cc

[   82.538332] ffe0: 400f8391 bebce978 4014cc69 401353d4 000f0010 00000003 000f2470 000f7689

[   82.546488] Backtrace: 

[   82.548926] [<c04f8614>] (led_ioctl+0x0/0xf8) from [<c0156778>] (do_vfs_ioctl+0x8c/0x624)

[   82.557078]  r4:d41e8000 r3:c04f8614

[   82.560640] [<c01566ec>] (do_vfs_ioctl+0x0/0x624) from [<c0156d8c>] (sys_ioctl+0x7c/0x84)

[   82.568803] [<c0156d10>] (sys_ioctl+0x0/0x84) from [<c004b940>] (ret_fast_syscall+0x0/0x30)

[   82.577129]  r8:c004bac4 r7:00000036 r6:00000001 r5:00000003 r4:00000001

[   82.583815] Code: 0a000000 e12fff33 e59f3030 e5933000 (e5932000) 

[   82.590156] ---[ end trace 7eca82fcf33a1de4 ]---

[   82.594490] Kernel panic - not syncing: Fatal exception

[   82.599707] Backtrace: 

[   82.602138] [<c004f618>] (dump_backtrace+0x0/0x10c) from [<c069b740>] (dump_stack+0x18/0x1c)

[   82.610562]  r6:d36e1e00 r5:00000001 r4:c09b9540 r3:00000000

[   82.616194] [<c069b728>] (dump_stack+0x0/0x1c) from [<c069b7bc>] (panic+0x78/0x1b8)

[   82.623843] [<c069b744>] (panic+0x0/0x1b8) from [<c004fbd0>] (die+0x190/0x1c0)

[   82.631041]  r3:00000001 r2:d1d0fca0 r1:60000113 r0:c081c3b0

[   82.636673]  r7:00000007

[   82.639196] [<c004fa40>] (die+0x0/0x1c0) from [<c0054860>] (__do_kernel_fault+0x6c/0x8c)

[   82.647275]  r8:dd9e4380 r7:00000007 r6:00000000 r5:e5478264 r4:d1d0fea0

[   82.653952] [<c00547f4>] (__do_kernel_fault+0x0/0x8c) from [<c0054a24>] (do_page_fault+0x1a4/0x34c)

[   82.662986]  r8:d1d0fea0 r7:00000007 r6:d35e3d10 r5:e5478264 r4:dd9e4380

[   82.669484] r3:d1d0fea0

[   82.672093] [<c0054880>] (do_page_fault+0x0/0x34c) from [<c004553c>] (do_DataAbort+0x38/0xa0)

[   82.680609] [<c0045504>] (do_DataAbort+0x0/0xa0) from [<c004b210>] (__dabt_svc+0x70/0xa0)

[   82.688763] Exception stack(0xd1d0fea0 to 0xd1d0fee8)

[   82.693802] fea0: c09b6bb8 a0000013 00000000 e5478264 40044c01 00000001 dd9e3030 00000003

[   82.701961] fec0: 00000000 d1d0e000 00000000 d1d0fefc d1d0fed0 d1d0fee8 c0058e80 c04f86d0

[   82.710121] fee0: 60000013 ffffffff

[   82.713578]  r8:00000000 r7:00000003 r6:dd9e3030 r5:00000007 r4:0000040f

[   82.720268] [<c04f8614>] (led_ioctl+0x0/0xf8) from [<c0156778>] (do_vfs_ioctl+0x8c/0x624)

[   82.728431]  r4:d41e8000 r3:c04f8614

[   82.731984] [<c01566ec>] (do_vfs_ioctl+0x0/0x624) from [<c0156d8c>] (sys_ioctl+0x7c/0x84)

[   82.740155] [<c0156d10>] (sys_ioctl+0x0/0x84) from [<c004b940>] (ret_fast_syscall+0x0/0x30)

[   82.748481]  r8:c004bac4 r7:00000036 r6:00000001 r5:00000003 r4:00000001

[   82.755168] CPU0: stopping

[   82.757846] Backtrace: 

[   82.760284] [<c004f618>] (dump_backtrace+0x0/0x10c) from [<c069b740>] (dump_stack+0x18/0x1c)

[   82.768696]  r6:00000000 r5:00000000 r4:c0044194 r3:00000000

[   82.774343] [<c069b728>] (dump_stack+0x0/0x1c) from [<c004544c>] (do_IPI+0x1ec/0x224)

[   82.782155] [<c0045260>] (do_IPI+0x0/0x224) from [<c004b2c0>] (__irq_svc+0x80/0x160)

[   82.789876] Exception stack(0xc08e9ee0 to 0xc08e9f28)

[   82.794913] 9ee0: fffffff8 12e764f3 00000052 000b84fc c09b704c c18b91d8 c08e8000 c09213bc

[   82.803072] 9f00: 00000000 c0a18638 c18b91e8 c08e9f54 00000052 c08e9f28 c00b0fec c00604c8

[   82.811229] 9f20: 80000013 ffffffff

[   82.814700]  r8:00000001 r7:00000002 r6:00000806 r5:fe810000 r4:ffffffff

[   82.821210] r3:80000013

[   82.823822] [<c006048c>] (exynos4_enter_idle+0x0/0x16c) from [<c04c32e4>] (cpuidle_idle_call+0xd4/0x304)

[   82.833275]  r6:c08e8000 r5:c18b91d8 r4:c18b91d8

[   82.837880] [<c04c3210>] (cpuidle_idle_call+0x0/0x304) from [<c004c7f0>] (cpu_idle+0xc4/0x104)

[   82.846473] [<c004c72c>] (cpu_idle+0x0/0x104) from [<c0692568>] (rest_init+0xa0/0xa4)

[   82.854281]  r7:c18b6180 r6:c003b934 r5:00000000 r4:c08e8000

[   82.859928] [<c06924c8>] (rest_init+0x0/0xa4) from [<c000898c>] (start_kernel+0x2ac/0x2fc)

[   82.868169]  r4:c0919664 r3:00000000

[   82.871732] [<c00086e0>] (start_kernel+0x0/0x2fc) from [<40008044>] (0x40008044)

[   82.879107] CPU1: stopping

[   82.881797] Backtrace: 

[   82.884235] [<c004f618>] (dump_backtrace+0x0/0x10c) from [<c069b740>] (dump_stack+0x18/0x1c)

[   82.892647]  r6:00000001 r5:00000000 r4:c0044194 r3:00000000

[   82.898293] [<c069b728>] (dump_stack+0x0/0x1c) from [<c004544c>] (do_IPI+0x1ec/0x224)

[   82.906105] [<c0045260>] (do_IPI+0x0/0x224) from [<c004b2c0>] (__irq_svc+0x80/0x160)

[   82.913827] Exception stack(0xde46bf10 to 0xde46bf58)

[   82.918862] bf00:                                     fffffff8 12e764ec 00000052 000b84fb

[   82.927022] bf20: c09b704c c18c11d8 de46a000 c09213bc 00000001 c0a18638 c18c11e8 de46bf84

[   82.935181] bf40: 00000052 de46bf58 c00b0fec c00604c8 80000013 ffffffff

[   82.941775]  r8:00000001 r7:00000002 r6:00000806 r5:fe814000 r4:ffffffff

[   82.948285] r3:80000013

[   82.950895] [<c006048c>] (exynos4_enter_idle+0x0/0x16c) from [<c04c32e4>] (cpuidle_idle_call+0xd4/0x304)

[   82.960351]  r6:de46a000 r5:c18c11d8 r4:c18c11d8

[   82.964955] [<c04c3210>] (cpuidle_idle_call+0x0/0x304) from [<c004c7f0>] (cpu_idle+0xc4/0x104)

[   82.973548] [<c004c72c>] (cpu_idle+0x0/0x104) from [<c0698788>] (secondary_start_kernel+0x118/0x134)

[   82.982658]  r7:c09b6a50 r6:10c0387d r5:00000001 r4:de46a000

[   82.988304] [<c0698670>] (secondary_start_kernel+0x0/0x134) from [<40698134>] (0x40698134)

[   82.996546]  r5:00000015 r4:536ac06a

[   83.000108] Rebooting in 5 seconds..

已话联系有善之臂技术支持,无人接听。只能发邮件,等回复。问题等待完结,也希望广大网友提供有意见。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android jni LED