Move the code for halting the CPU (acpi_cpu_c1) into machdep files.

This removes the last MD portion of acpi_cpu.c.

MFC after:	2 weeks
This commit is contained in:
njl 2004-10-11 05:39:15 +00:00
parent bc7aea493b
commit abd4abd5bd
7 changed files with 25 additions and 17 deletions

View File

@ -61,3 +61,9 @@ acpi_machdep_quirks(int *quirks)
{
return (0);
}
void
acpi_cpu_c1()
{
__asm __volatile("sti; hlt");
}

View File

@ -73,6 +73,7 @@ extern int acpi_release_global_lock(uint32_t *lock);
#define COMPILER_DEPENDENT_INT64 long
#define COMPILER_DEPENDENT_UINT64 unsigned long
void acpi_SetDefaultIntrModel(int model);
void acpi_SetDefaultIntrModel(int model);
void acpi_cpu_c1(void);
#endif /* __ACPICA_MACHDEP_H__ */

View File

@ -43,9 +43,6 @@ __FBSDID("$FreeBSD$");
#include <dev/pci/pcivar.h>
#include <machine/atomic.h>
#include <machine/bus.h>
#ifdef __ia64__
#include <machine/pal.h>
#endif
#include <sys/rman.h>
#include "acpi.h"
@ -155,7 +152,6 @@ static void acpi_cpu_startup_throttling(void);
static void acpi_cpu_startup_cx(void);
static void acpi_cpu_throttle_set(uint32_t speed);
static void acpi_cpu_idle(void);
static void acpi_cpu_c1(void);
static void acpi_cpu_notify(ACPI_HANDLE h, UINT32 notify, void *context);
static int acpi_cpu_quirks(struct acpi_cpu_softc *sc);
static int acpi_cpu_throttle_sysctl(SYSCTL_HANDLER_ARGS);
@ -918,17 +914,6 @@ acpi_cpu_idle()
ACPI_ENABLE_IRQS();
}
/* Put the CPU in C1 in a machine-dependant way. */
static void
acpi_cpu_c1()
{
#ifdef __ia64__
ia64_call_pal_static(PAL_HALT_LIGHT, 0, 0, 0);
#else
__asm __volatile("sti; hlt");
#endif
}
/*
* Re-evaluate the _PSS and _CST objects when we are notified that they
* have changed.

View File

@ -350,3 +350,9 @@ acpi_machdep_quirks(int *quirks)
return (0);
}
void
acpi_cpu_c1()
{
__asm __volatile("sti; hlt");
}

View File

@ -93,6 +93,7 @@ extern int acpi_release_global_lock(uint32_t *lock);
#define COMPILER_DEPENDENT_UINT64 unsigned long long
#define ACPI_USE_NATIVE_DIVIDE
void acpi_SetDefaultIntrModel(int model);
void acpi_SetDefaultIntrModel(int model);
void acpi_cpu_c1(void);
#endif /* __ACPICA_MACHDEP_H__ */

View File

@ -31,6 +31,7 @@
#include "acpi.h"
#include <dev/acpica/acpivar.h>
#include <machine/pal.h>
int
acpi_machdep_init(device_t dev)
@ -49,3 +50,9 @@ acpi_machdep_quirks(int *quirks)
{
return (0);
}
void
acpi_cpu_c1()
{
ia64_call_pal_static(PAL_HALT_LIGHT, 0, 0, 0);
}

View File

@ -75,4 +75,6 @@ extern int acpi_release_global_lock(uint32_t *lock);
#define COMPILER_DEPENDENT_INT64 long
#define COMPILER_DEPENDENT_UINT64 unsigned long
void acpi_cpu_c1(void);
#endif /* __ACPICA_MACHDEP_H__ */