기존 이솝 임베디드 포럼의 지식인 서비스가 게시판 형태로 변경되었습니다.

안녕하세요.

 

S5PV210 Samsung Processor 기반 단말에 Power Management 기능을 구현 중에 있습니다.

리눅스는 2.6.32 버전입니다.

 

문제점 현상은. Power Sleep과 Resume을 Power Key로 반복하다면 Resume이 어느 순간 되지 않는 문제입니다.

 

단말이 Sleep에 빠져서 Resume하다가 문제 생기면 디버깅이 정말 어렵네요.

Sleep시에 Cortex-A8 coere가 죽기 땜시.. 디버깅 자체가 많은 어려움이 있는 것 같아요.

 

1. JTAG 활용할 수 없지. (문제점 재현될 때 JTAG Attach로 붙일 수 없음. Bus Error Generated by CPU)

2. Uart Serial Log Message 확인 불가.  (Sleep 전까지 로그 확인 가능,)

    - 이거는 소스를 수정해서 디버깅 할 수 있는 유일한 수단으로 보임.

       하지만 Kernel Printk가 아닌 별도로 바로 Uart로 log 내보도록 구현해야 함. 안따갑게 내 능력 밖.

 

3. LED로 동작 확인

 

3번의 경우로 난해한 현상이 나오네요. 우선 Power Key ISR(Interrupt Service Routine)에 LED을 켰다 끄는 루틴 삽입하여 문제점 재현 될때 관찰하면 켜지고 꺼집니다.  문제점 재현 될 때 ISR이 가동 되는 걸로 봐서..... 특정 Process에 무한 루프에 빠진 것 아닐까라는 생각도 했지만, 찾기가 어렵네요. 리눅스는 Watchdog를 어떻게 사용하나요?  짧은 리눅스 경험으로 관련 코드를 봐서는 제가 가지고 있는 소스는 Watchdog Disable 되어 있더라구요.  재미있는 것은 Linux Idle Process(Swapper)에 주기적으로 LED를 켰다 끄는 루틴을 삽입하여 문제점 재현 될 때 관찰하면 반응이 없다는 것이죠. 물론 문제점 재현 되기 전에는 주기적으로 LED가 꺼졋다 켜지는데요.  IDLE에서는 안되고 ISR은 가동 된다. 그래서 Sleep에서 Resume시에 특정 Process에서 무한루프에 빠저 Idle Process로 Contex Switch가 이루지지 않았다고 추측되나 .. 찾기가 어렵다는 것.....

 

PM Resume될 때  문제로 디버깅이 대체로 난감합니다. 접근 방법도 애매하고..  3주이상 같은 문제로 고민해도 접근 방법 조차 난감하군요.

 

===> 상기와 같은 문제로 경험 있으시면 조언 부탁합니다.

 

감사합니다.


고도리

2011.08.03 12:01:02
*.121.139.134

1. 안드로이드 인가요???


2. 실명이 아닌게 너무 티나서, 대부분 답을 꺼려할겁니다.....쩝

aesop의 유일한 규칙(?) 정도니깐요.

List of Articles
번호 제목 글쓴이 날짜sort 조회 수
1568 커널패닉 발생시 GPIO 상태를 읽을수 있나요? [1] k0cool 2011-07-26 842
1567 userdata.img를 ext2용으로 만들때 genext2fs 사용법 질문 드립니다. 텡구 2011-07-28 1134
1566 gingerbread init.rc실행중 서비스 시작을 못하고 있습니다. [2] 해삣곰탱이 2011-07-28 1141
1565 현재 PC에서 사용하는 linux kernel 컴파일 할때 config 옵션이 ... [1] 시안 2011-07-28 593
1564 android pwm backlight 밝기 제어 [4] 김태영 2011-07-28 55194
1563 Origenboard (S5PV310) cpuboard 크기 알려주심 감사하겠습니다. [1] 가니 2011-07-28 650
1562 aesop6410 커널 패닉 [2] 천천히 2011-07-28 718
1561 android sound [1] 나도봤어 2011-07-29 802
1560 V310관련 질문 [1] 훌러덩 2011-07-29 632
1559 갤럭시S를 이용하여 USB 통신을 하고싶은데요.. [2] 마우스22 2011-07-30 1024
1558 V310보드 드라이버는 어디서 구하나요? [2] 훌러덩 2011-07-31 1042
1557 V310 datasheet...?? [2] 김창엽 2011-07-31 981
1556 커널 로그 저장 [1] 애플파이 2011-08-02 1310
1555 [해결] NAND bad block 관련 질문 [1] 박영기1 2011-08-02 1516
1554 안드로이드 소스코드보면 뒤에 Locked 붙은 함수 있잖아요 얼사마 2011-08-02 615
1553 쉘 스크립트를 이용한 디바이스 제어 (읽기) [3] 조현호 2011-08-02 1043
1552 S5PC110 WM8960 sound bypass (LINPUT3 => Speaker) 처리 file [2] hotpjs 2011-08-02 1506
» S5PV210 Power Management [1] 아틸라 2011-08-02 1374
1550 TI 다빈치상에서 콤파일 오류... [1] blue0sky 2011-08-02 802
1549 리눅스 커널에서 idle time 찾는 방법 [1] 만봉부인 2011-08-02 848

사용자 로그인