-
/dev -> 제어.
linux/Documentaion/devices.txt (/root/work/bsp/wenders/linux/Documentation/devices.txt) -> 예약된 디바이스 주번호등 확인.
- $ mknod /dev/bit_test c 240 1 -> char형으로 주번호 부번호 | 주번호자리에 0넣으면 자동으로 넣어줌(배포, 다른컴에 넣을때)
- $ dmesg -> insmod나 rmmod시 등록됫나 확인.
- printk -> 꼭 "\n"을 넣어줄것.
- gcc 2.95.3 -> 안정화 버전
--방화벽 off--
- $ vim /etc/selinux/config -> disable로 변경
- $ iptables -F ->packet filtering (회사내것만 설정하고 시작)
- $ service ipconfig stop
- $ setup->sys서비스->iptables 별제거, nfs[*] check
- $ cat /proc/cpuinfo
- $ cat /proc/kallsyms -> 커널에서 이용가능한 함수/변수
- ko -> elf에 대한 경로? 경고? 추가되면서 o->ko로 바뀜
- $ lsmod -> * * 숫자(모듈 사용하고 있는 사람수)
- @ 기존것 주석처리해두고 복사해서 쓰는 습관~!! @
- $ gcc -o test_hello_intel test.c ->intetl용
- $ arm-linux-gcc -o test_hello_arm test.c ->arm용
--setting-- 개발환경 구축( linux )
-
$ make menuconfig
- dev ->NetDevSupport->Eth 10 or 100
DM9000 support - * 표시 - 자동으로 적재되서 올라감 | M표시 - 나중에 올라감 (모듈화)
- dev ->NetDevSupport->Eth 10 or 100
-
vi /etc/exports (빈파일)
- /root/work/bsp/wenders/rootfs_gtk <tab> *(rw,no_root_squash) <no enter>
- $ exportfs -> 보드와 연결될 폴더
- $ setup -> system service -> NFS 되있나?
- $ /etc/rc.d/init.d/nfs restart
- $ service nfs restart
- $ make WENDERS_NFS_defconfig ->make 하는폴더에서.. 보드bsp/linux/
- $ vi .config & /CMDLINE(검색) & CONFIG_CMDLINE="root=/dev/nfs nfsroot=/root/work/bsp/wenders/rootfs_gtk ip=192.168.1.50:192.168.1.100::255.255.255.0::eth1:on console=ttyS0,38400 rw mem=128M " ->make 하는폴더에서.. 보드bsp/linux/
- linux/arch/arm/boot/zImage -> tftpboot로 복사후 minicom
- $ tftp zImage ->minicom에서 zImage를 램에 올림
- $ nandwrite -z 0x80800000 0x00040000 0x00200000 -> minicom에서 램에 올린 zImage를 nand플레시에 올림
- 디렉토리 경로등의 환경을 보드별로 파일로 만들어두면 편리함 | 터미널 열때마다 실행시켜 줘야함 | source /root/work/env/wenders_2.6 wenders_2.6
--arm용 개발환경 구축-- (module.makefile) $source ~환경설정파일을 터미널에 실행시켜둬야한다.
CC := $(ARM_GCC)
obj-m := no.o sy1.o sy2.o
KDIR := $(ARM_KDIR)
all:
make -C $(KDIR) SUBDIRS=$(PWD) modules
clean:
rm -rf *.o *.ko *.mod *.cmd
- bsp/wenders/linux/drivers/X-HYPER-IEB/key.c 등 각종 device source있음.
- 기본 key디바이스 드라이버를 복사해고 수정해서 보드에 올려보자!
- -T> source 환경설정파일 -> 터미널 키면 실행한다. ($ARM_ 같은 설정을 사용하기 위해)
- cd $ARM_KDIR/drivers/X_HYPER_IEB -> 기본 DD가 있는 폴더로 이동
- cp key.c /root/work/ldd/my_key.c -> key DD를 내가 작업하는 폴더로 복사.
- vi /root/work/ldd/my_key.c -> major device number를 변경한다.
- 모듈 컴파일~!
- Tip: major num 사용중 확인 -> cat /proc/devices
****강의자료****
실습_BIT_DD_PXA320_1.ppt BIT_DD_Day1_PXA320.ppt 이론_BIT_DD_PXA320_1.ppt 이론_BIT_DD_PXA320_2.ppt 이론_BIT_DD_PXA320_3.ppt
이 글은 스프링노트에서 작성되었습니다.
'Study' 카테고리의 다른 글
vim 설정 (0) | 2008.11.24 |
---|---|
Makefile (0) | 2008.11.24 |
Autotools (0) | 2008.11.24 |
device driver (0) | 2008.11.24 |
Boot Logo change (0) | 2008.11.23 |