Patent ID: 8713230

Claim:
A method for adjusting a link speed, used after executing a boot block code and before executing a bus enumeration procedure, the method at least comprising the following steps of: reading a bus information list to select a target bridge; allocating a temporary bus number to the target bridge; determining whether a bus of the target bridge is connected with the peripheral device according to the temporary bus number; if the target bridge is connected with a peripheral device, taking a maximum link speed supported by both the target bridge and the peripheral device as the link speed between the target bridge and the peripheral device; testing whether the target bridge is capable of accessing the peripheral device; if the target bridge fails to access the peripheral device, adjusting the link speed down and re-establishing a connection between the target bridge and the peripheral device; and re-executing the steps of testing whether the target bridge is capable of accessing the peripheral device and adjusting the link speed down if the target bridge fails to access the peripheral device until the target bridge is capable of accessing the peripheral device.