i.MX6 long boot time from SD card w/o LAN

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

i.MX6 long boot time from SD card w/o LAN

跳至解决方案
2,193 次查看
uwebeyer
Contributor II

Hi,

I've got a brand new MCIMX6Q-SDB board and downloaded the LTIB source package "i.MX 6Quad and i.MX 6Dual Linux GA BSP 3.0.35 Source Code Files". It compiles nicely and i can run my device either via LAN (tftp/nfs) or from SDCard.

When I boot purely from SD Card and remove the LAN cable it takes long minute when the ethernet driver is loaded and the system tries to do a DHCP request before this finally timeouts and the boot process completes. (Actually the whole process is even tried twice.) Here the output I see on the serial console additional comments about the waiting times.

....

eth0: Freescale FEC PHY driver [Generic PHY] (mii_bus:phy_addr=1:01, irq=-1)

--- 120 seconds waiting

Sending DHCP requests ...... timed out!

--- 80 seconds waiting while the dots indicate that it does several retries

IP-Config: Reopening network devices...

eth0: Freescale FEC PHY driver [Generic PHY] (mii_bus:phy_addr=1:01, irq=-1)

--- 120 seconds waiting

Sending DHCP requests ...... timed out!

IP-Config: Auto-configuration of network failed.

--- 80 seconds waiting while the dots indicate that it does several retries

...

When I plugin the LAN cable it is able to get network access immediately, do the DHCP request and runs through all this without delay.

Since our system will normally not have a LAN connection it is an important issue to avoid this >5 minutes waiting time during system boot.


I worked before with an IMX53 and could see that there was a small delay too but it was just a few seconds and also the repetition was not done.


I tried to find some configuration settings in LTIB but could not see anything obvious. This whole task seems to be done before the init process starts and the inittab/rcS scripts are executed. So how can I configure it?


Any help would be appreciated.

Cheers,

Uwe


标签 (1)
标记 (4)
0 项奖励
回复
1 解答
1,038 次查看
VladanJovanovic
NXP Employee
NXP Employee

You could pass "ip=none" parameter to kernel at boot time, and then try to start network from one of boot scripts in a faster way.

在原帖中查看解决方案

0 项奖励
回复
2 回复数
1,039 次查看
VladanJovanovic
NXP Employee
NXP Employee

You could pass "ip=none" parameter to kernel at boot time, and then try to start network from one of boot scripts in a faster way.

0 项奖励
回复
1,038 次查看
uwebeyer
Contributor II

Worked immediately! Thanks for your answer!

The linux kernel now comes up without ethernet. An on demand activation can be done by:

  ipconfig eth0 up                    // to load the FEC driver

  udhcpc                                // to obtain the IP address via DHCP when required.

0 项奖励
回复