-
uboot 에서 bootargs 를 통해 IP가 kernel 로 전달되는 과정IT_n_Programs 2019. 3. 10. 14:48
========== uboot 에서 bootargs 를 통해 IP가 kernel 로 전달되는 과정 =========
: bootargs 에 ${ip} 형태로 값이 설정되면 되고,
/init/main.c 에서 kernel command line 을 가져오고,
/net/ipv4/ipconfig.c 에 아래 로그 확인 됨.-- 작업을 위해서 debug port 설정.
setenv bootargs_base 'console=ttymxc1,115200n8'-- uboot 에서 아래 환경 변수 추가.
setenv hostname HHXX
setenv ipaddr 192.168.0.67
setenv serverip 192.168.0.48
setenv netmask 255.255.255.0
setenv gatewayip 192.168.0.1-- 그 후 ip 변수 설정
setenv ip ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}:${hostname}:eth0:off
-- bootargs 변수에 ip 추가
setenv bootargs_mmc 'setenv bootargs ${bootargs_base} ${ip} root=/dev/mmcblk1p2 rootwait rw ${lcd}
${hdmi}'
inet6 addr: fe80::201:2ff:fe03:405/64 Scope:Linketh0 Link encap:Ethernet HWaddr 00:01:02:03:04:05
inet addr:192.168.0.36 Bcast:192.168.0.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1540 errors:0 dropped:0 overruns:0 frame:0
TX packets:68 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:184889 (180.5 KiB) TX bytes:8256 (8.0 KiB)======= 참고할 kernel 로그 ===========
Kernel command line: console=ttymxc1,115200n8 ip=192.168.0.43:192.168.0.48:192.168.0.1:
255.255.255.0:xeno:eth0:off root=/dev/mmcblk1p2 rootwait rw<... 중간 생략 ... >
IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
IP-Config: Complete:
device=eth0, hwaddr=00:01:02:03:04:05, ipaddr=192.168.0.43, mask=255.255.255.0, gw=192.168.0.1
host=HHXX, domain=, nis-domain=(none)
bootserver=192.168.0.48, rootserver=192.168.0.48, rootpath반응형'IT_n_Programs' 카테고리의 다른 글
Shell Script (2) : diff, cmp , sort ,wc (0) 2019.03.10 Shell Script (1) : file , getopts , while , if, case, exit, trap (0) 2019.03.10 RJ45 케이블 만드는 방법 정리. (0) 2019.03.07 Linux Kernel 에서 Interrupt serivce routine (ISR) 을 사용하는 간략한 예 (0) 2019.03.02 Ubuntu 에서 Upgrade 후에 booting 이 안되는 경우. (0) 2019.03.02 댓글