// Copyright 2017 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef SRC_DEVICES_BOARD_DRIVERS_X86_INCLUDE_ERRORS_H_
#define SRC_DEVICES_BOARD_DRIVERS_X86_INCLUDE_ERRORS_H_

// TODO(https://fxbug.dev/42158297): all users of this file should be moved out of the x86 board driver
// or migrated directly to acpi/status.h.

#include <acpica/acpi.h>

#include "src/devices/board/lib/acpi/status.h"

#endif  // SRC_DEVICES_BOARD_DRIVERS_X86_INCLUDE_ERRORS_H_
