arm 개발 판 을 USB 카드 로 만 들 기(RNDIS/Ethernet Gadget)

5052 단어 Linux-kernel
/*******************************************************
원본 주소:http://hi.baidu.com/deep_pro/item/ec40c00ad48b8ef7a010340f
설명:아래 에 보충 이 있 습 니 다!
*********************************************************/
       며칠 을 고생 한 끝 에 리 눅 스 Gadget 장치 의 구동 을 좀 입문 시 켰 다.       예전 에 봤 던 미니 2440 을 마우스 로 하 는 드라이버.http://www.arm9home.com/bbs/read.php?tid-2538.html       진짜 좀 오도 됐어.그 는 하룻밤 이면 끝 이 라 고 말 했 는데,이것 은 나 를 망신 시 키 는 수준 이다.       진정한 일 선 개발 엔지니어 의 차 이 는 아직 매우 크다.
       드디어/driver/usb/Gadget 의 소스 코드 역할 을 알 게 되 었 습 니 다,어머니.       예전 에는 커 널 에 usb slave 를 사용 하 는 구동 이 있 을 때 도 그 아 날로 그 마우스 구동 을 강제로 불 러 왔 습 니 다.       insmod 보기:cannot insert'zebramouse.ko':Device or resource 바 빠 서 미 치 겠 어 요.       사실 usb slave 포트 의 선 을 뽑 고 꽂 아야 USB 장치 인식 이 가능 합 니 다.       화 청 원 견 황소 선생님 유 홍 도 가 쓴       http://blog.csdn.net/hongtao_liu/archive/2009/09/15/4555645.aspx
       그 가 우리 에 게 수업 을 해 줄 차례 가 될 지 모 르 겠 지만,3 기 구동 수업 표를 보 았 는데,겨우 10 여 일 밖 에 안 되 었 다.
       그 fs 2410 개발 판 은 잠시 손 에 넣 을 수 없 으 니 미니 2440 에서 놀 자.       커 널 재 컴 파일(2.6.29)       2.6.29 커 널        Device Drivers ---> USB support --->   USB Gadget Support --->        그 중에서 USB 주변 컨트롤 러 는 S3C 2410 USB 장치 컨트롤 러 를 선택 하 십시오.       그 다음 에 커 널 이 자체 적 으로 가지 고 있 는 Gadget 드라이버 를 선택 하여 시범 을 보 여 줍 니 다.여 기 는 Ethernet Gadget(with CDC Ethernet support)을 선택 하 십시오.                 이 구동 은 인 자 를 입력 할 필요 가 없 기 때문에 M 이 아 닌 Y 를 주 십시오.
       
       make 다음 에 zImage 를 태 워 서 mini 1440 까지 쓰 세 요.       리 눅 스 가 완전히 시 작 된 후에 usb slave 포트 의 커 넥 터 를 뽑 고 꽂 으 면(RNDIS/Ethernet Gadget)장치 의 정 보 를 팝 업 할 수 있 습 니 다.
       다만 이 RNDIS 구동 은 정말 어렵다.activesync 에 있다 고 하 는데 나 는 반응 이 없 는 척 했다.       마이크로소프트 RNDIS USB kit 2005 를 스스로 다운로드 하고 드라이버 를 추출 하여 템 플 릿 에 있 는 inf 파일 을 스스로 고 쳐 야만 설치 에 성공 할 수 있 습 니 다.
       제 가 고 친 RNDIS 카드 드라이버 다운로드.       http://download.csdn.net/source/1742242
       inf 파일 에 vid 와 pid 만 바 뀌 었 습 니 다.이것 은 장치 관리자 에서 찾 을 수 있 습 니 다.(드라이버 가 없 더 라 도)       
       여기 vid 는 0525 pid a4a 2 입 니 다.       나중에 생각해 보 니 괜 찮 겠 지?제조 사 같은 것 도 바 뀌 었 으 니 재 미 있 을 거 야.
       그 다음 에 네트워크 연결 이 하나 더 생 겼 는데 ip 192.168.1.2 게 이 트 웨 이 192.168.1.1 서브 넷 마스크 255.255.255.255.0 으로 설정 되 었 다.       이때 이 네트워크 연결 이 끊 긴 상태 입 니 다.
       dnw 연결 개발 판,ifconfig usb 0 192.168.1.1,네트워크 연결 발견 (kangear 주석:테스트 OK)       서로 ping 괜찮아 요.http://192.168.1.1개발 판 에 내 장 된 웹 서버 방문 (kangear 주석:테스트 OK)
       개발 판 을 사용 하여 PC 를 인터넷 에 접속 하 게 하 는 것 은 많은 wm 휴대 전화 가 갖 추고 있 는 기능 일 것 이다.RNDIS 는 이 목적 을 위해 설계 한 것 이 라 고 생각한다.       mini 2440 에 iptable 같은 복잡 한 패키지 퍼 가기 프로그램 이 없 으 면 usb 0 을 eth 0 을 통 해 퍼 가기 할 수 있 습 니 다.저 는 아직 스스로 추가 할 수 없고 여기까지 만 할 수 있 습 니 다.
kangear 보충:
대상:http://www.arm9home.net/simple/index.php?t3326.html 테스트 방법:
alex@alex-desktop:~$ 
alex@alex-desktop:~$ ftp 192.168.0.202
Connected to 192.168.0.202.
220 FriendlyARM FTP server (Version 6.4/OpenBSD/Linux-ftpd-0.17) ready.
Name (192.168.0.202:alex): 
331 Password required for alex.
Password:
530 Login incorrect.
Login failed.
ftp> 
나의 테스트 결과:
[root@localhost linux-2.6.32.2]# ftp 192.168.1.230
Connected to 192.168.1.230 (192.168.1.230).
220 FriendlyARM FTP server (Version 6.4/OpenBSD/Linux-ftpd-0.17) ready.
Name (192.168.1.230:root): 
331 Password required for root.
Password:
530 Login incorrect.
Login failed.
ftp> 

설명:계 정 비밀 번 호 를 모 르 고 바로 차 를 돌 렸 습 니 다.하지만 연결 이 되 어 있 음 을 알 수 있 습 니 다)
원래 블 로 거들 이 실현 하지 못 한 것 을 진짜 네트워크 카드 로 사용 하 는 기능 이 라 고 생각 하지만 저 는 관련 지식 을 찾 았 습 니 다.알 고 나 면 될 것 입 니 다.
이상 의 ping 은 마지막 실험 을 통 해 자신 을 속 일 수 있 습 니 다.정리 할 때 발 견 된 것 입 니 다.실질 적 으로 usb 선 으로 ping 을 하 는 것 이 아 닙 니 다.이 글 을 보고'개발 판 은 USB 장치 시 뮬 레이 션 네트워크 카드(Liux usb 네트워크 카드)-gadget&rndis|cdc'를 통 해 진정한 의미 의 ping 이 통 했 습 니 다.다음은 전재 의 관건 적 인 부분 이다.
마지막 으로 또 하나의 문 제 는 바로 개발 판 에 네트워크 카드 가 있 고 USB 를 네트워크 카드 로 하 는 상황 을 모 의 하 는 것 입 니 다.usb 가상 네트워크 카드 와 WINDOWS 에 있 는 USB 네트워크 카드 가 같은 IP 세그먼트 에 있 는 것 을 보증 해 야 합 니 다.그리고 개발 판 원래 의 네트워크 카드 의 IP 세그먼트 와 같이 힘 들 지 않 으 면 PING 가 안 됩 니 다.
제 가 네트워크 카드 를 설치 한 상황 입 니 다.
windows
usb 네트워크 카드
IP:192.168.2.50 마스크:255.255.255.255.0 게 이 트 웨 이:(이것 은 마음대로 개인의 취향 에 따라 게 이 트 웨 이 를 설치 하면 개발 판 도 설치 하 는 것 이 좋 습 니 다)192.168.2.1
정상 네트워크 카드
IP:192.168.1.235 마스크:255.255.255.0 게 이 트 웨 이:192.168.1.1
개발 판
usb 네트워크 카드
IP:192.168.2.70 마스크:255.255.2255.0 게 이 트 웨 이:192.168.2.1
정상 네트워크 카드
IP:192.168.1.70 마스크:255.255.255.0 게 이 트 웨 이:192.168.1.1
개발 판 게 이 트 웨 이 보기
route -n
개발 판 게 이 트 웨 이 설정
route add default gw 192.168.2.1
그러면 이제 WINDOWS PING 과 통할 수 있 을 것 같 아 요.
kangear 의 테스트 결과:
[root@localhost   ]# ftp 192.168.2.230
Connected to 192.168.2.230 (192.168.2.230).
220 FriendlyARM FTP server (Version 6.4/OpenBSD/Linux-ftpd-0.17) ready.
Name (192.168.2.230:root): plg
331 Password required for plg.
Password:
230 User plg logged in.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> 
ftp> 

(ftp 계 정과 비밀 번 호 는 여기 참조,계 정:plg,비밀번호:plg)

좋은 웹페이지 즐겨찾기