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

와이파이로 고용량 데이터(대략 1mb이상) 전송시 다음과 같이 에러 메세지가 발생합니다.


[  640.247596] ------------[ cut here ]------------

[  640.252289] WARNING: at drivers/net/wireless/ath/ath6kl/sdio.c:489 ath6kl_sdio_irq_handler+0x6c/0x74 [ath6kl_sdio]()

[  640.262935] Modules linked in: ath6kl_sdio

[  640.267274] Backtrace: 

[  640.269848] [<c00130ac>] (dump_backtrace+0x0/0x10c) from [<c05a433c>] (dump_stack+0x18/0x1c)

[  640.278407]  r6:000001e9 r5:bf0014b0 r4:00000000 r3:c0813250

[  640.284394] [<c05a4324>] (dump_stack+0x0/0x1c) from [<c00327dc>] (warn_slowpath_common+0x54/0x6c)

[  640.293387] [<c0032788>] (warn_slowpath_common+0x0/0x6c) from [<c0032818>] (warn_slowpath_null+0x24/0x2c)

[  640.303143]  r8:00000001 r7:de2f0800 r6:ddc4c000 r5:00000001 r4:fffffff4

[  640.310023] r3:00000009

[  640.312901] [<c00327f4>] (warn_slowpath_null+0x0/0x2c) from [<bf0014b0>] (ath6kl_sdio_irq_handler+0x6c/0x74 [ath6kl_sdio])

[  640.324197] [<bf001444>] (ath6kl_sdio_irq_handler+0x0/0x74 [ath6kl_sdio]) from [<c03e5014>] (sdio_irq_thread+0x198/0x3a4)

[  640.335351]  r6:ddfd4000 r5:00000000 r4:de21c400 r3:bf001444

[  640.341481] [<c03e4e7c>] (sdio_irq_thread+0x0/0x3a4) from [<c0052500>] (kthread+0x90/0x9c)

[  640.350070] [<c0052470>] (kthread+0x0/0x9c) from [<c0036674>] (do_exit+0x0/0x7c4)

[  640.357774]  r6:c0036674 r5:c0052470 r4:de10dbcc

[  640.362734] Board Information: SMDK HW revision: 0, CPU EXYNOS5250 Rev1.0

[  640.369612] ---[ end trace 488db3a0e5d24154 ]---

[  640.375696] ath6kl: MsgPend, invalid endpoint in look-ahead: 201

[  640.381884] ath6kl: failed to get pending recv messages: -12



이메세지가 반복적으로 발생합니다. 


간단한 인터넷에서는 이런 메세지가 발생하지 않는데 youtube등의 영상 스트림이나 


파일 전송시에는 이와 같이 문제가 발생하는데요... 


혹시 저만 그런건가 해서 여쭤봅니다. 


고로다

2013.10.23 00:56:47
*.99.242.5

해결했습니다.


패킷이 일정크기(MSU) 이상이면 데이터가 3바이트가 밀리는 현상이 있었습니다.


검색해보니 같은 문제로 해결하신분이 계셔서 저도 여기에 해결법을 올려봅니다.



kernel/drivers/net/wireless/ath/ath6kl/init.c


파일에서 


*ath6kl_buf_alloc(int size) 함수를 살펴보면


ATH6KL_HTC_ALIGN_BYTES 이게 보일것입니다. 이게 현재 3으로


kernel/drivers/net/wireless/ath/ath6kl/core.h 에 설정되어있습니다.


core.h 에서 ATH6KL_HTC_ALIGN_BYTES의 define 값을 0으로 해주면 되긴 하는데


해결보신 분은 이것을 *ath6kl_buf_alloc(int size) 함수에서 계산해서 하게끔 해줬습니다.


함수 수정 부분을 올려봅니다.


struct sk_buff *ath6kl_buf_alloc(int size)

{

struct sk_buff *skb;

u16 reserved;


/* Add chacheline space at front and back of buffer */

reserved = roundup((2 * L1_CACHE_BYTES) + ATH6KL_DATA_OFFSET +

  sizeof(struct htc_packet) + ATH6KL_HTC_ALIGN_BYTES, 4);

skb = dev_alloc_skb(size + reserved);


if (skb)

skb_reserve(skb, reserved - L1_CACHE_BYTES);

return skb;

}

고로다

2013.10.23 00:58:34
*.99.242.5

아참 이렇게 수정하시고


kernel_make 로 zImage 다시 빌드 하신 후에


rivers/net/wireless/ath/ath6kl/ath6kl_sdio.ko 이 파일을 빌드된 system/modules 폴더에 집어 넣어 주셔야 합니다.


그리고 make snod 하시면 system.img가 다시 만들어집니다. 

고로다

2013.10.23 02:19:08
*.99.242.5

이 방식으로 하니 1분 이상 스트리밍 시점에서 다시 어긋나기 시작하네요...


일단 init.c 파일의 함수는 원래대로 두고


core.h에서


#define ATH6KL_HTC_ALIGN_BYTES 4 또는


#define ATH6KL_HTC_ALIGN_BYTES 0


으로 해서 테스트 중입니다. 아직 어떨지는 모르겠어요.. 몇일 테스트 해봐야겠습니다. 



고로다

2013.10.23 02:38:14
*.99.242.5

이 방법대로도 불안해서 구글에 더 검색해보니


http://www.spinics.net/lists/linux-wireless/msg104633.html


여기 패치대로 했습니다.  

고로다

2013.10.23 00:57:38
*.99.242.5

이제 HDMI 출력 부분을 살펴봐야 할거 같습니다.


혹시 Arndale jb_mr1 에서 HDMI 출력 확인 하신분 조언 부탁드리겠습니다.

고도리

2013.10.23 03:56:53
*.200.239.210

허거덩......혼자 댓글을 다 다시고, 해결하시다니....대단하십니다.


HDMI 부분은 확인 부탁해 놓겠습니다.

고로다

2013.10.23 18:34:52
*.99.242.5

아직 실력이 미약해서 무선랜 안정화를 잡지 못하고 있어욤~ 


#define ATH6KL_HTC_ALIGN_BYTES 3  // 이 부분은 원래대로 3으로  두고


reserved = roundup((2 * L1_CACHE_BYTES) + ATH6KL_DATA_OFFSET +

   sizeof(struct htc_packet) + ATH6KL_HTC_ALIGN_BYTES, 3);


dev->needed_headroom += roundup(sizeof(struct ath6kl_llc_snap_hdr) +
					sizeof(struct wmi_data_hdr) +
					HTC_HDR_LENGTH +
					WMI_MAX_TX_META_SZ +
					ATH6KL_HTC_ALIGN_BYTES, 3);

이 부분들도 4대신 3으로 넣어주면 10분정도 정상적으로 데이터를 주고 받다가 

dw_mmc dw_mmc.1: data CRC error 에러를 필두로
[ 1105.375492] ath6kl: payload len 44135 exceeds max htc : 4090 !
[ 1105.382146] ath6kl: failed to get pending recv messages: -12
[ 1105.388292] ------------[ cut here ]------------
[ 1105.393526] WARNING: at drivers/net/wireless/ath/ath6kl/sdio.c:489 ath6kl_sdio_irq_handler+0x6c/0x74 [ath6kl_sdio]()
[ 1105.404623] Modules linked in: ath6kl_sdio
[ 1105.409568] Backtrace: 
[ 1105.412147] [<c00130ac>] (dump_backtrace+0x0/0x10c) from [<c05a433c>] (dump_stack+0x18/0x1c)
[ 1105.420692]  r6:000001e9 r5:bf0014b0 r4:00000000 r3:c0813250
[ 1105.426737] [<c05a4324>] (dump_stack+0x0/0x1c) from [<c00327dc>] (warn_slowpath_common+0x54/0x6c)
[ 1105.435675] [<c0032788>] (warn_slowpath_common+0x0/0x6c) from [<c0032818>] (warn_slowpath_null+0x24/0x2c)
[ 1105.445342]  r8:00000001 r7:ddda1000 r6:ddc8c000 r5:00000001 r4:fffffff4
[ 1105.452269] r3:00000009
[ 1105.455046] [<c00327f4>] (warn_slowpath_null+0x0/0x2c) from [<bf0014b0>] (ath6kl_sdio_irq_handler+0x6c/0x74 [ath6kl_sdio])
[ 1105.466250] [<bf001444>] (ath6kl_sdio_irq_handler+0x0/0x74 [ath6kl_sdio]) from [<c03e5014>] (sdio_irq_thread+0x198/0x3a4)
[ 1105.477354]  r6:ddf5e000 r5:00000000 r4:de161800
[ 1105.481155] fence timeout on [dcec3b80] after 100ms
[ 1105.481421] objs:
[ 1105.481424] --------------
[ 1105.481428] s3c-fb sw_sync: 4508
[ 1105.481432]   pt [email protected]: 4176
[ 1105.481436]   pt active: 4509
[ 1105.481439]   pt active: 4510
[ 1105.481443]   pt active: 4511
[ 1105.481447]   pt active: 4511
[ 1105.481450] 
[ 1105.481453] malitl_96_0x4125364c Mali: 2061
[ 1105.481457]   pt [email protected]: 111(0)
[ 1105.481461]   pt [email protected]: 1923(0)
[ 1105.481465]   pt [email protected]: 1972(0)
[ 1105.481474]   pt [email protected]: 1974(0)
[ 1105.481479]   pt [email protected]: 2034(0)
[ 1105.481483]   pt [email protected]: 2061(0)
[ 1105.481487]   pt active: 2062(0)
[ 1105.481491] 
[ 1105.481494] malitl_96_0x412d0be4 Mali: 4292
[ 1105.481498]   pt [email protected]: 4292(0)
[ 1105.481502]   pt [email protected]: 4292(0)
[ 1105.481506]   pt active: 4293(0)
[ 1105.481515]   pt active: 4293(0)
[ 1105.481519]   pt active: 4294(0)
[ 1105.481523]   pt active: 4294(0)
[ 1105.481526] 
[ 1105.481529] malitl_351_0x605acadc Mali: 0
[ 1105.481533] 
[ 1105.481536] malitl_453_0x5e37142c Mali: 0
[ 1105.481540] 
[ 1105.481542] malitl_453_0x5e3b0dc4 Mali: 272
[ 1105.481546]   pt [email protected]: 272(0)
[ 1105.481551]   pt [email protected]: 271(0)
[ 1105.481555] 
[ 1105.481557] malitl_453_0x5e5b9f7c Mali: 1
[ 1105.481566]   pt [email protected]: 1(0)
[ 1105.481570] 
[ 1105.481573] malitl_583_0x5c011c74 Mali: 0
[ 1105.481577] 
[ 1105.481579] malitl_453_0x5e8909d4 Mali: 0
[ 1105.481584] 
[ 1105.481586] malitl_583_0x5f80a2ac Mali: 0
[ 1105.481590] 
[ 1105.481593] malitl_1031_0x5e2c00dc Mali: 0
[ 1105.481597] 
[ 1105.481599] malitl_556_0x5cbd5114 Mali: 0
[ 1105.481604] 
[ 1105.481606] malitl_556_0x5cd9a1d4 Mali: 0
[ 1105.481610] 
[ 1105.481613] malitl_1031_0x6148f4f4 Mali: 0
[ 1105.481622] 
[ 1105.481625] malitl_453_0x5e8dabd4 Mali: 46
[ 1105.481629]   pt [email protected]: 46(0)
[ 1105.481633]   pt [email protected]: 45(0)
[ 1105.481638] 
[ 1105.481641] malitl_653_0x5edbb13c Mali: 0
[ 1105.481645] 
[ 1105.481648] malitl_653_0x5f36e3a4 Mali: 0
[ 1105.481652] 
[ 1105.481654] malitl_1157_0x5f158624 Mali: 0
[ 1105.481658] 
[ 1105.481661] malitl_1157_0x5fe6236c Mali: 1
[ 1105.481665]   pt [email protected]: 1(0)
[ 1105.481674]   pt [email protected]: 1(0)
[ 1105.481678] 
[ 1105.481681] fences:
[ 1105.481684] --------------
[ 1105.481687] [de277580] mali_fence: signaled
[ 1105.481692]   malitl_96_0x4125364c_pt [email protected]: 111(0) / 2061
[ 1105.481697] 
[ 1105.481700] [dd422180] mali_fence: signaled
[ 1105.481704]   malitl_453_0x5e5b9f7c_pt [email protected]: 1(0) / 1
[ 1105.481709] 
[ 1105.481711] [dca3fd80] mali_fence: signaled
[ 1105.481747]   malitl_453_0x5e3b0dc4_pt [email protected]: 272(0) / 272
[ 1105.481754] 
[ 1105.481757] [dca3f880] NavigationBar:0: signaled
[ 1105.481761]   malitl_96_0x4125364c_pt [email protected]: 1923(0) / 2061
[ 1105.481766]   malitl_453_0x5e3b0dc4_pt [email protected]: 271(0) / 272
[ 1105.481772]   s3c-fb_pt [email protected]: 4176 / 4508
[ 1105.481782] 
[ 1105.481784] [dca7f080] mali_fence: signaled
[ 1105.481789]   malitl_1157_0x5fe6236c_pt [email protected]: 1(0) / 1
[ 1105.481794] 
[ 1105.481797] [dca3f280] mali_fence: signaled
[ 1105.481801]   malitl_96_0x4125364c_pt [email protected]: 1972(0) / 2061
[ 1105.481806] 
[ 1105.481809] [dcd29d80] mali_fence: signaled
[ 1105.481817]   malitl_96_0x4125364c_pt [email protected]: 1974(0) / 2061
[ 1105.481823] 
[ 1105.481825] [dca3f680] mali_fence: signaled
[ 1105.481829]   malitl_453_0x5e8dabd4_pt [email protected]: 46(0) / 46
[ 1105.481835] 
[ 1105.481837] [dca3f580] StatusBar:2: signaled
[ 1105.481841]   malitl_96_0x4125364c_pt [email protected]: 2034(0) / 2061
[ 1105.481851]   malitl_453_0x5e8dabd4_pt [email protected]: 45(0) / 46
[ 1105.481857] 
[ 1105.481859] [dcec3380] mali_fence: signaled
[ 1105.481863]   malitl_96_0x412d0be4_pt [email protected]: 4292(0) / 4292
[ 1105.481869] 
[ 1105.481872] [dcebed80] FramebufferSurface:1: active
[ 1105.481876]   s3c-fb_pt active: 4509 / 4508
[ 1105.481880]   malitl_96_0x412d0be4_pt [email protected]: 4292(0) / 4292
[ 1105.481890] 
[ 1105.481892] [dcec3500] mali_fence: signaled
[ 1105.481897]   malitl_96_0x4125364c_pt [email protected]: 2061(0) / 2061
[ 1105.481902] 
[ 1105.481904] [dcec3b80] mali_fence: active
[ 1105.481909]   malitl_96_0x412d0be4_pt active: 4293(0) / 4292
[ 1105.481914] 
[ 1105.481916] [dcec3880] FramebufferSurface:2: active
[ 1105.481925]   s3c-fb_pt active: 4510 / 4508
[ 1105.481929]   malitl_96_0x412d0be4_pt active: 4293(0) / 4292
[ 1105.481934] 
[ 1105.481937] [dcec3680] mali_fence: active
[ 1105.481940]   malitl_96_0x4125364c_pt active: 2062(0) / 2061
[ 1105.481945] 
[ 1105.481947] [dcec3180] mali_fence: active
[ 1105.481951]   malitl_96_0x412d0be4_pt active: 4294(0) / 4292
[ 1105.481955] 
[ 1105.481958] [dcec3480] FramebufferSurface:0: active
[ 1105.481964]   s3c-fb_pt active: 4511 / 4508
[ 1105.481968]   malitl_96_0x412d0be4_pt active: 4294(0) / 4292
[ 1105.481973] 
[ 1105.481975] [ddb77980] SurfaceView:0: active
[ 1105.481979]   malitl_1157_0x5fe6236c_pt [email protected]: 1(0) / 1
[ 1105.481983]   s3c-fb_pt active: 4511 / 4508
[ 1105.481987] 
[ 1105.481994] s3c-fb exynos5-fb.1: synce_fence_wait() timeout
[ 1105.965736]  r3:bf001444
[ 1105.968447] [<c03e4e7c>] (sdio_irq_thread+0x0/0x3a4) from [<c0052500>] (kthread+0x90/0x9c)
[ 1105.976850] [<c0052470>] (kthread+0x0/0x9c) from [<c0036674>] (do_exit+0x0/0x7c4)
[ 1105.984497]  r6:c0036674 r5:c0052470 r4:de10dbcc
[ 1105.989372] Board Information: SMDK HW revision: 0, CPU EXYNOS5250 Rev1.0
[ 1105.996305] ---[ end trace 0c2f388e941b7598 ]---

이런식으로 계속 에러를 뿜어 버리네요~~


List of Articles
번호 제목 글쓴이 날짜 조회 수sort
6288 [질문] 공구보드. 뽑기가 잘못되었나??? [2] 한영민 2007-05-08 4247
6287 [완료] LCD가 보드와 어떻게 연결이 되는지요. [4] 오주열 2007-05-01 4224
6286 MAX77686 Deep Sleep시 깨어나지 않는 현상. [10] 마빡 2014-03-01 4219
6285 타겟보드에서 vlc 실행파일을 실행하면 아래의 메시지가 출력 됩니다... [1] 파란새 2013-12-25 4123
6284 [질문] WinCE 지원 지상파 DMB 모듈 [5] 한영민 2007-06-01 4060
6283 Exynos5410 ISP 제어 관련 질문입니다 [1] 선수 2013-10-21 4029
6282 U-BOOT 포팅중 질문사항 <= 완료 [4] 장석원 2006-04-07 4019
6281 [완료]usb cd-rom... [4] 이태간 2007-05-11 3866
6280 S5PV210 보드의 NAND mtd driver 및 partition 관련 문의사항 [3] frog 2012-08-07 3844
6279 2.6.13커널 디버그출력을 터미널로?[완료] [2] 김대영 2006-04-08 3842
6278 [질문]Touch Screen 관련 (XP) 오류 와 DoB [해결] [4] 김희만 2007-05-08 3828
6277 AMD x86 Geode LX800 .. 이 보드 구매할수 있나요? [3] 한재성 2007-06-22 3808
6276 2.6.13 최신 커널 소스는 어디서?[완료] [2] 김대영 2006-04-06 3790
6275 염치없지만 PCB DATA 파일을 공개하실수 있나요 [2] 정인수 2007-05-18 3784
6274 arndale보드에서 arndale-jb_mr1-es3로 부팅이 되지 않습니다. [15] 김영준 2013-10-09 3781
6273 현재 개발하고 계시는 cross-toolchain은 어디서?[완료] [2] 김대영 2006-04-06 3780
» arndale jb-mr1 es6 와이파이 문제 질문요. [7] 고로다 2013-10-22 3759
6271 [완료]LX800 VGA드라이버 질문드립니다. [4] 윤기현 2007-08-10 3755
6270 [질문] (하드웨어) 기판 두께가 얇은 이유? [1] 이동술 2007-05-09 3752
6269 I2C read, write 방법 질문입니다. [4] 김유석 2008-02-22 3746

사용자 로그인