An arbitration and data source selection mechanism arbitrating access to a shared
communication port between a servo engine and a controller of a disc drive is disclosed.
In a preferred embodiment, the arbitration and data source selection mechanism,
the shared communication port, the servo engine and the controller collectively
share a common die of an application specific integrate circuit (ASIC). Servo control
code and control code are each loaded into the ASIC for operation of the disc drive.
The servo engine is allowed to hold service of the shared serial port dedicated
to the servo control code for any length of time required by the servo engine.
During periods of non-use by the servo control code, the servo engine releases
the shared serial port to the controller for dedicated use by the control code,
for a predetermined period of time.