mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-03 12:56:44 +07:00
8ea6091f50
First phase in introducing ACPI support to SN. In this phase, when running with an ACPI capable PROM, the DSDT will define the root busses and all SN nodes (SGIHUB, SGITIO). An ACPI bus driver will be registered for the node devices, with the acpi_pci_root_driver being used for the root busses. An ACPI vendor descriptor is now used to pass platform specific information for both nodes and busses, eliminating the need for the current SAL calls. Also, with ACPI support, SN fixup code is no longer needed to initiate the PCI bus scans, as the acpi_pci_root_driver does that. However, to maintain backward compatibility with non-ACPI capable PROMs, none of the current 'fixup' code can been deleted, though much restructuring has been done. For example, the bulk of the code in io_common.c is relocated code that is now common regardless of what PROM is running, while io_acpi_init.c and io_init.c contain routines specific to an ACPI or non ACPI capable PROM respectively. A new pci bus fixup platform vector has been created to provide a hook for invoking platform specific bus fixup from pcibios_fixup_bus(). The size of io_space[] has been increased to support systems with large IO configurations. Signed-off-by: John Keller <jpk@sgi.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
58 lines
1.6 KiB
C
58 lines
1.6 KiB
C
#ifndef _ASM_IA64_SN_FEATURE_SETS_H
|
|
#define _ASM_IA64_SN_FEATURE_SETS_H
|
|
|
|
/*
|
|
* SN PROM Features
|
|
*
|
|
* This file is subject to the terms and conditions of the GNU General Public
|
|
* License. See the file "COPYING" in the main directory of this archive
|
|
* for more details.
|
|
*
|
|
* Copyright (c) 2005-2006 Silicon Graphics, Inc. All rights reserved.
|
|
*/
|
|
|
|
|
|
/* --------------------- PROM Features -----------------------------*/
|
|
extern int sn_prom_feature_available(int id);
|
|
|
|
#define MAX_PROM_FEATURE_SETS 2
|
|
|
|
/*
|
|
* The following defines features that may or may not be supported by the
|
|
* current PROM. The OS uses sn_prom_feature_available(feature) to test for
|
|
* the presence of a PROM feature. Down rev (old) PROMs will always test
|
|
* "false" for new features.
|
|
*
|
|
* Use:
|
|
* if (sn_prom_feature_available(PRF_XXX))
|
|
* ...
|
|
*/
|
|
|
|
#define PRF_PAL_CACHE_FLUSH_SAFE 0
|
|
#define PRF_DEVICE_FLUSH_LIST 1
|
|
#define PRF_HOTPLUG_SUPPORT 2
|
|
|
|
/* --------------------- OS Features -------------------------------*/
|
|
|
|
/*
|
|
* The following defines OS features that are optionally present in
|
|
* the operating system.
|
|
* During boot, PROM is notified of these features via a series of calls:
|
|
*
|
|
* ia64_sn_set_os_feature(feature1);
|
|
*
|
|
* Once enabled, a feature cannot be disabled.
|
|
*
|
|
* By default, features are disabled unless explicitly enabled.
|
|
*
|
|
* These defines must be kept in sync with the corresponding
|
|
* PROM definitions in feature_sets.h.
|
|
*/
|
|
#define OSF_MCA_SLV_TO_OS_INIT_SLV 0
|
|
#define OSF_FEAT_LOG_SBES 1
|
|
#define OSF_ACPI_ENABLE 2
|
|
#define OSF_PCISEGMENT_ENABLE 3
|
|
|
|
|
|
#endif /* _ASM_IA64_SN_FEATURE_SETS_H */
|