2013-03-13 2 views
0

source.android.com에서 삼성 커널을 다운로드하여 빌드했습니다. 그런 다음 CWM 복구 이미지를 설치 한 후 Nexus S (Android 4.1.1)를 뿌리 째 뽑았습니다. 이제 간단하게 LKM (Loadable-Kernel-Module)을 삽입하려고합니다. 그러나 ADB 쉘에 insmod hello.ko 명령을 쓰면 모듈이 삽입 될 때 2-3 초 후에 자동으로 장치가 재부팅됩니다.Nexus S에로드 가능한 커널 모듈을 다시 넣습니다.

아래는 LKM 코드입니다.

#include <linux/module.h> 
#include <linux/kernel.h> 


int init_module(void) 
{ 
    printk(KERN_INFO "Hello android kernel...\n"); 
    return 0; 
} 

void cleanup_module(void) 
{ 
    printk(KERN_INFO "Goodbye android kernel...\n"); 
} 

나는 그게 무슨 문제인지 모르겠다. 오류 메시지가 표시되지 않거나 다른 것이 재부팅 된 후 재부팅 후 정상적으로 실행되기 시작합니다.

편집 내가 안드로이드 2.2 삼성 커널 컴파일이 커널을 사용하여 내 LKM을 컴파일

. 이것은 이유 일 수 있습니까?

+0

여기 나를 도와 줄 사람이 없습니까? 어서 ... – rami

답변

0

넥서스 S는 다음 명령을

git clone https://android.googlesource.com/kernel/samsung.git

폴더를 사용하는 커널 소스를 다운로드 한 후 빈 나타납니다. 이것은 우리가 원격 지점을 체크 아웃해야하기 때문이다. `자식 지점 -r '을 작성하여 내가 origin/android-samsung-3.0-ics-mr1 분기를 선택했지만 origin/android-samsung-3.0-jb 분기가 젤리 빈 4.1.2에 사용되는 내 오류가 있었다 원격 지사

origin/HEAD -> origin/master
origin/android-samsung-2.6.35-gingerbread
origin/android-samsung-3.0-ics-mr1
origin/android-samsung-3.0-jb
origin/android-samsung-3.0-jb-mr0
origin/master

의 다음과 같은 목록을 보여줍니다. 그래서 LKM이 올바른 커널 버전으로 컴파일하지 않아서 모든 인서트에서 장치를 재부팅하는 이유입니다.

관련 문제