acpinames: Cleanup stubs by linking some utilities objects.

This patch tries to reduce stubs for acpinames by adding some utilities
objects to link.

By doing so, we have to create stubs for AcpiEvTerminate(). While
definining ACPI_REDUCED_HARDWARED can eliminate such requirements
permanently. Then we are able to delete some AcpiHwXXX() AcpiEvXXX() stubs
from anstubs.c

It also makes senses to link exsystem.o and exmutex.o because they've
already been made no-op by underlying OSL. By doing so, we can reduce some
AcpiExXXX() stubs.

Linking utids.o and uteval.o can help to reduce lots of stubs. It's safe to
do so as such functions are not invoked by acpinames.

This is the minimal effort to removing stubs from acpinames. Lv Zheng.

Signed-off-by: Lv Zheng <lv.zheng@intel.com>
This commit is contained in:
Lv Zheng 2014-06-12 15:13:09 +08:00
parent 2441e00269
commit f5aca417dd
3 changed files with 8 additions and 158 deletions

View File

@ -48,9 +48,11 @@ OBJECTS = \
$(OBJDIR)/dswstate.o\
$(OBJDIR)/excreate.o\
$(OBJDIR)/exdump.o\
$(OBJDIR)/exmutex.o\
$(OBJDIR)/exnames.o\
$(OBJDIR)/exresnte.o\
$(OBJDIR)/exresolv.o\
$(OBJDIR)/exsystem.o\
$(OBJDIR)/exutils.o\
$(OBJDIR)/getopt.o\
$(OBJDIR)/nsaccess.o\
@ -96,9 +98,12 @@ OBJECTS = \
$(OBJDIR)/utdecode.o\
$(OBJDIR)/utdelete.o\
$(OBJDIR)/uterror.o\
$(OBJDIR)/uteval.o\
$(OBJDIR)/utexcep.o\
$(OBJDIR)/utfileio.o\
$(OBJDIR)/utglobal.o\
$(OBJDIR)/utids.o\
$(OBJDIR)/utinit.o\
$(OBJDIR)/utlock.o\
$(OBJDIR)/utmath.o\
$(OBJDIR)/utmisc.o\

View File

@ -201,9 +201,10 @@
#define ACPI_USE_NATIVE_MEMORY_MAPPING
#endif
/* Example configuration. Hardware disabled */
/* AcpiNames/Example configuration. Hardware disabled */
#if (defined ACPI_EXAMPLE_APP)
#if (defined ACPI_EXAMPLE_APP) || \
(defined ACPI_NAMES_APP)
#define ACPI_REDUCED_HARDWARE 1
#endif

View File

@ -132,71 +132,6 @@
/* Utilities */
void
AcpiUtSubsystemShutdown (
void)
{
}
ACPI_STATUS
AcpiUtExecute_STA (
ACPI_NAMESPACE_NODE *DeviceNode,
UINT32 *StatusFlags)
{
return (AE_NOT_IMPLEMENTED);
}
ACPI_STATUS
AcpiUtExecute_HID (
ACPI_NAMESPACE_NODE *DeviceNode,
ACPI_PNP_DEVICE_ID **ReturnId)
{
return (AE_NOT_IMPLEMENTED);
}
ACPI_STATUS
AcpiUtExecute_CID (
ACPI_NAMESPACE_NODE *DeviceNode,
ACPI_PNP_DEVICE_ID_LIST **ReturnCidList)
{
return (AE_NOT_IMPLEMENTED);
}
ACPI_STATUS
AcpiUtExecute_UID (
ACPI_NAMESPACE_NODE *DeviceNode,
ACPI_PNP_DEVICE_ID **ReturnId)
{
return (AE_NOT_IMPLEMENTED);
}
ACPI_STATUS
AcpiUtExecute_SUB (
ACPI_NAMESPACE_NODE *DeviceNode,
ACPI_PNP_DEVICE_ID **ReturnId)
{
return (AE_NOT_IMPLEMENTED);
}
ACPI_STATUS
AcpiUtExecutePowerMethods (
ACPI_NAMESPACE_NODE *DeviceNode,
const char **MethodNames,
UINT8 MethodCount,
UINT8 *OutValues)
{
return (AE_NOT_IMPLEMENTED);
}
ACPI_STATUS
AcpiUtEvaluateNumericObject (
char *ObjectName,
ACPI_NAMESPACE_NODE *DeviceNode,
UINT64 *Value)
{
return (AE_NOT_IMPLEMENTED);
}
ACPI_STATUS
AcpiUtCopyIobjectToEobject (
ACPI_OPERAND_OBJECT *Obj,
@ -223,32 +158,8 @@ AcpiUtCopyIobjectToIobject (
}
/* Hardware manager */
UINT32
AcpiHwGetMode (
void)
{
return (0);
}
/* Event manager */
ACPI_STATUS
AcpiEvInstallXruptHandlers (
void)
{
return (AE_OK);
}
ACPI_STATUS
AcpiEvInitializeEvents (
void)
{
return (AE_OK);
}
ACPI_STATUS
AcpiEvInstallRegionHandlers (
void)
@ -271,37 +182,9 @@ AcpiEvInitializeRegion (
return (AE_OK);
}
#if (!ACPI_REDUCED_HARDWARE)
ACPI_STATUS
AcpiEvDeleteGpeBlock (
ACPI_GPE_BLOCK_INFO *GpeBlock)
{
return (AE_OK);
}
ACPI_STATUS
AcpiEnable (
void)
{
return (AE_OK);
}
#endif /* !ACPI_REDUCED_HARDWARE */
/* AML Interpreter */
void
AcpiExUnlinkMutex (
ACPI_OPERAND_OBJECT *ObjDesc)
{
}
void
AcpiExReleaseAllMutexes (
ACPI_THREAD_STATE *Thread)
{
}
ACPI_STATUS
AcpiExReadDataFromField (
ACPI_WALK_STATE *WalkState,
@ -327,22 +210,6 @@ AcpiExPrepFieldValue (
return (AE_OK);
}
ACPI_STATUS
AcpiExAcquireMutexObject (
UINT16 Timeout,
ACPI_OPERAND_OBJECT *ObjDesc,
ACPI_THREAD_ID ThreadId)
{
return (AE_OK);
}
ACPI_STATUS
AcpiExReleaseMutexObject (
ACPI_OPERAND_OBJECT *ObjDesc)
{
return (AE_OK);
}
ACPI_STATUS
AcpiExStoreObjectToNode (
ACPI_OPERAND_OBJECT *SourceDesc,
@ -478,26 +345,3 @@ AcpiDsExecEndOp (
{
return (AE_NOT_IMPLEMENTED);
}
/* AML Debugger */
void
AcpiDbDisplayArgumentObject (
ACPI_OPERAND_OBJECT *ObjDesc,
ACPI_WALK_STATE *WalkState)
{
}
ACPI_STATUS
AcpiDbInitialize (
void)
{
return (AE_OK);
}
void
AcpiDbTerminate (
void)
{
}