Do khoảng thời gian chờ mặc định trong mẫu Máy chủ ổ cắm đơn giản, có khả năng tự động thương lượng ở tốc độ 1G có thể không thành công trong các thiết bị Cyclone® V, Cyclone® 10 và Max® 10.
Để khắc phục sự cố này, người dùng được yêu cầu sửa đổi mã nguồn BSP để tăng độ trễ thời gian chờ đàm phán tự động và biên dịch lại để tạo tệp ELF mới bằng cách sử dụng hướng dẫn bên dưới.
Mở tệp sau trong thư mục dự án:
.. /software/<project_name_bsp>/drivers/src/altera_avalon_tse.c
Thay đổi độ trễ thời gian chờ từ "usleep(1000)" thành "usleep(5000)" như được hiển thị trong phần tiếp theo của mã:
alt_32 alt_tse_phy_restart_an(alt_tse_phy_info *pphy, alt_u32 timeout_threshold) {
........................................
Trong khi(alt_tse_phy_rd_mdio_reg(pphy, TSE_PHY_MDIO_STATUS, TSE_PHY_MDIO_STATUS_AN_COMPLETE, 1) == 0 ){
if(timeout > timeout_threshold) { tse_dprintf(4, "WARNING : PHY[%d.%d] - Auto-Negotiation FAILED\n", mac_group_index, mac_info_index);
/* Khôi phục địa chỉ MDIO trước đó */
alt_tse_phy_wr_mdio_addr(pphy, mdioadd_prev);
trả lại TSE_PHY_AN_NOT_COMPLETE;
}
ngủ (5000); Cập nhật từ USLEEP(1000)
}