Tôi đang cố gắng cài đặt Linux trên một bo mạch đồ họa. Hương vị linux là petalinux cho các chip Xilinx.
SoC Xilinx hiện tại có bộ xử lý Cortex A9 và logic phần cứng có thể lập trình, ví dụ như FPGA. Tôi đã bắt được thông báo khởi động trên thiết bị đầu cuối:
.....................U-boot time.......................partition.......................................................
[Fri Dec 27 15:18:53.108 2013] Copying Linux from SD to RAM...
[Fri Dec 27 15:18:53.129 2013] Device: SDHCI
[Fri Dec 27 15:18:53.129 2013] Manufacturer ID: 2
[Fri Dec 27 15:18:53.129 2013] OEM: 544d
[Fri Dec 27 15:18:53.129 2013] Name: SA04G
[Fri Dec 27 15:18:53.129 2013] Tran Speed: 25000000
[Fri Dec 27 15:18:53.129 2013] Rd Block Len: 512
[Fri Dec 27 15:18:53.129 2013] SD version 1.10
[Fri Dec 27 15:18:53.129 2013] High Capacity: Yes
[Fri Dec 27 15:18:53.129 2013] Capacity: 3951034368
[Fri Dec 27 15:18:53.129 2013] Bus Width: 1-bit
[Fri Dec 27 15:18:53.129 2013] reading zImage
[Fri Dec 27 15:18:59.367 2013]
[Fri Dec 27 15:18:59.367 2013] 2304852 bytes read
[Fri Dec 27 15:18:59.381 2013] reading devicetree.dtb
[Fri Dec 27 15:18:59.475 2013]
[Fri Dec 27 15:18:59.475 2013] 2709 bytes read
[Fri Dec 27 15:18:59.491 2013] reading ramdisk8M.image.gz
[Fri Dec 27 15:19:06.121 2013]
[Fri Dec 27 15:19:06.121 2013] 2501584 bytes read
[Fri Dec 27 15:19:06.144 2013] Trying to set up GEM link...
[Fri Dec 27 15:19:06.144 2013] Resetting PHY...
[Fri Dec 27 15:19:06.144 2013]
[Fri Dec 27 15:19:06.144 2013] PHY reset complete.
[Fri Dec 27 15:19:06.144 2013] Waiting for PHY to complete auto-negotiation...
[Fri Dec 27 15:19:18.176 2013] ***Error: Auto-negotiation stalled...
[Fri Dec 27 15:19:18.176 2013] ping failed; host 10.10.70.101 is not alive
Tôi đặc biệt quan tâm đến những dòng này:
[Fri Dec 27 15:19:06.144 2013] PHY reset complete.
[Fri Dec 27 15:19:06.144 2013] Waiting for PHY to complete auto-negotiation...
[Fri Dec 27 15:19:18.176 2013] ***Error: Auto-negotiation stalled...
[Fri Dec 27 15:19:18.176 2013] ping failed; host 10.10.70.101 is not alive
Câu hỏi số 1: Tôi đoán những dòng này là dành cho TCP / IP?
Như có thể thấy khoảng 12 giây bị lãng phí ở đây. Vấn đề là tôi cần một hệ thống khởi động nhanh và hoàn toàn không cần TCP / IP trong ứng dụng cuối.
Linux mà tôi đã cài đặt cho đến nay đang sử dụng hình ảnh dựng sẵn do Xilinx cung cấp. Bây giờ để loại bỏ phần TCP / IP (vì tôi không cần nó và nếu tôi không có nó trong HĐH, 12 giây này có thể được lưu - đây là sự hiểu biết của tôi), tôi dự định xây dựng nhân Linux riêng.
Vì vậy, tôi đã tải xuống mã nguồn của PetaLinux, giả sử tôi sẽ phải biên dịch mã từ hệ thống máy chủ của mình.
Câu hỏi số 2: Nhưng tôi muốn biết làm thế nào tôi có thể loại trừ phần TCP / IP khỏi nguồn hệ điều hành, để khi hệ điều hành khởi động, nó sẽ không bao giờ thực hiện các thói quen TCP / IP tốn thời gian đó?
Câu hỏi # 3: Tôi cũng không chắc chắn nếu trong hình ảnh dựng sẵn, chúng tôi có thể có bất kỳ tùy chọn nào để vô hiệu hóa phần TCP / IP không?
Mục đích của tôi là loại bỏ các dòng này trong quá trình khởi động:
[Fri Dec 27 15:19:06.144 2013] PHY reset complete.
[Fri Dec 27 15:19:06.144 2013] Waiting for PHY to complete auto-negotiation...
[Fri Dec 27 15:19:18.176 2013] ***Error: Auto-negotiation stalled...
[Fri Dec 27 15:19:18.176 2013] ping failed; host 10.10.70.101 is not alive