임베디드 리눅스에서 USB 무선랜 쓰기.
2008/06/28
대상제품
IPTime G054UA
리눅스 지원한다고 걍 대충 샀는데 결국.. 상세한 기술지원은 없다.
자기가 삽질해야 한다는 이야기.
RT2571 계통 드라이버를 찾으면 된다.
설치환경
- PXA320, USB 1.1 Host 환경. 2.0은 클라만 지원하기에..
- 커널 2.6.21
- 정확히 말하자면 MV320보드 http://www.mvtool.co.kr
- 굴러다니는 CF슬롯형 버팔로 무선랜으로 시도함
-> 실패 : 하드웨어 미구현이라는 답변을 들었음 ㅠ.ㅠ 내 이틀 돌려내 -_-;
커널변경
- 무선 관련, 802.11어쩌구 관련 올 설치.
- USB 관련 OHCI 설치
- 빌드
OHCI, UHCI, EHCI, OTG
드라이버 입수
Makefile 수정
- Makefile.6 을 수정하여 카피해서 씀. (커널 2.6.x용..)
- 커널 디렉토리를 타겟보드 커널을 빌드한 디렉토리로 수정
- CFLAG 적당한 곳에 다음을 추가 : -mstructure-size-boundary=8
- 대충 검색해보다 나왔음. 소스포지 드라이버 Makefile 에는 ARM 빌드가 따로 있으며 이 옵션이 기본 포함임.
- ARM이 하드웨어 메모리 얼라인을 지원하지 않기 때문에 쓰는 옵션인 것 같음 (추정)
드라이버 빌드
- make
- make install
- /lib/modules/2.6.21/extra/rt73.ko 확인
- 없다면 PC용 커널 디렉토리로 들어갔을 수 있음. 역시 위치 확인
- file rt73.ko 명령으로 ARM 빌드 제대로 먹었는지 확인
- strip 명령으로 rt73.ko 파일사이즈 줄임
- 펌웨어 rt73.bin을 지정경로에 복사. 실패시 파일경로 추적함 /lib/firmware/rt73.bin
타겟에 설치
- /etc/modprobe.conf
- /lib/modules/2.6.21/modules.* 에서 필요한 파일들 복사 (.dep, .alias .usbmap)
무선랜 관련 툴 빌드
진행
- USB 무선랜을 꽂으면 OHCI 잘 붙었다고 모델명까지 뜸.
- modprobe rt73
- iwconfig rausb0 mode managed
- iwlist rausb0 scanning
-> AP목록이 나옴
- iwconfig rausb0 essid “접속할 essid 이름”
- ifconfig rausb0 up
- ifconfig rausb0 192.168.0.111, dhclient rausb0
일케절케 하는데 오만 삽질을 하지만.
항상 정리하면 A4 한 장 뿐 -_-;
퍼갈때는 출처명기 하세연.
추가정보
https://help.ubuntu.com/community/WifiDocs/Device/Belkin_F5D7050_ver_3000_%28Ralink_rt73_driver%29
https://iptime.com/iptime/?page_id=174&nType=UFFscUh5dURlaTNsU1BwZGlNV2czcWpRb3B1QldXK3NZUXoxbGxGNUw5WHZ0Rys5bGM1bHhLNkxrdGhOMmVXbHJUcVIvL3c3dkYxWjBUTjBBRWN1YWRpQ0Myd2hhTm96aEEvTHlQUWh4K2wranJ4LysrT3BxdVhGNW5Bd1oxMm9NSkVuWFRxdGVlOThzZE15d0U2UkRRNE9ESmdqV3hidmJ2RWVOTTJy
예전 댓글들 -
우싸 2008/10/09 15:57 X O님 물어볼게 있어요~ g054u-a USB무선랜 설치를 하다가 님 글을 보게 됐는데요.커널 2.6..21 부터 쓸 수 없다고 했잖아요.
그럼 컴파일이 안된다는 얘긴가요? ㅠ_ㅠ 도움의 손길을-
제 커널은 우분투 2.6.24-19-generic 이에요.
└ dawnsea 2008/10/09 17:12 X오래 전 일이라 기억이 잘 안 납니다만..일단 우분투나 기타 최신 배포본에서는 별 일없이 붙습니다. 임베디드에서 좀 문제죠.
위에서 21버전 이야기를 쓴 것은.
소스포지에서 다운받은 드라이버가 그때 당시 .21이상을 지원하지 않았다는 뜻입니다.
소스포지 드라이버 대신 제작사 드라이버를 쓰면 됩니다. 위 링크가 제작사 드라이버 입니다.
[t:/] is not "technology - root". dawnsea, rss