* Start the device
*
* @throws DriverException
*/
protected void startDevice() throws DriverException {
final Device dev = getDevice();
// Find the ACPI info
try {
final ResourceManager rm;
rm = InitialNaming.lookup(ResourceManager.NAME);
info = findAcpiRSDTPTR(rm);
} catch (NameNotFoundException ex) {
throw new DriverException("Cannot find the resource manager");
} catch (ResourceNotFreeException ex) {
log.error("Cannot claim BIOS region", ex);
}
// Register out API
dev.registerAPI(FirmwareAPI.class, this);
// Start an ACPI device if we found the info for it.
if (info != null) {
log.info("Start ACPI device");
acpiDevice = new AcpiDevice(dev.getBus(), "acpi", info);
try {
dev.getManager().register(acpiDevice);
} catch (DeviceAlreadyRegisteredException ex) {
log.error("Cannot register ACPI device", ex);
}
}
}