1. A method in a data processing system for arbitrating access to a shared resource by a plurality of devices, wherein each of the plurality of devices is associated with a priority, the method comprising: receiving requests from a number of devices within the plurality of devices for access to the shared resource; identifying each device within the number of devices; in response to one of the devices within the number of devices being identified as a priority device, granting the priority device to access the shared resource; in response to the number of devices being identified as a number of devices with shifting priorities, granting access to the shared resource to a device within the number of devices having a highest priority among the number of devices from which the requests were received; and shifting the priority of the device having the highest priority to a lowest priority and shifting the priority of remaining devices within the plurality of devices having shifting priorities after granting the device access to the shared resource.