9987 Commits

Author SHA1 Message Date
Robert Moore
f7baaa44f5 Simplify internal operation region interface.
Changed address parameter to a simple offset. This removes the need for
the caller to access the region object to obtain the physical address.
2009-05-15 14:33:05 -07:00
Robert Moore
39a897a21d Update Load() to use operation region interfaces.
Replace memory mapping with region access calls. Now, all region
accesses go through the region handler as they should.
2009-05-15 08:26:13 -07:00
Robert Moore
7abcc2ea10 New: AcpiInstallMethod - install a single control method.
This interface enables the override or creation of a single control
method. Useful to repair a bug or install a missing method.
2009-05-13 13:04:01 -07:00
Robert Moore
43cfa272f6 Update acfreebsd.h.
New changes provided by FreeBSD, Jung-uk Kim.
2009-05-13 12:50:28 -07:00
Robert Moore
c31764aaf7 Invalidate DdbHandle after table unload.
Mark the DdbHandle as invalid after the table it refers to is unloaded.
This is needed because the handle itself may not be deleted after
the table unload, depending on whether it has been stored in a named
object by the caller.
2009-05-13 08:27:59 -07:00
Robert Moore
89dddabda1 Fix reference count issues for DdbHandle object.
Fix a problem where the DdbHandle could be prematurely deleted, possibly
causing a fault. Lin Ming.
2009-05-12 08:26:54 -07:00
Robert Moore
200372599b Simplify and optimize NsGetNextNode function.
Reduced parameter count and reduced code for this frequently used
function.
2009-05-11 13:13:54 -07:00
Robert Moore
eab3288b4b Additional validation of _PRT packages (resource mgr).
Fixes a possible fault when parsing an ill-formed _PRT package.
2009-05-07 13:12:59 -07:00
Robert Moore
b64d850f1f Fix DebugObject output for DdbHandle objects.
Was putting several extra spaces on the next line.
2009-05-07 13:03:27 -07:00
Robert Moore
506914294f Fix allowable release order for ASL mutex objects.
The ACPI 4.0 specification has been changed to make the SyncLevel
for mutex objects more useful. When releasing a mutex, the synclevel
of the mutex must now be the same as the current sync level. This
makes more sense. This change updates the code to match the spec.
2009-05-01 15:00:05 -07:00
Robert Moore
95b36bc38b Mutex support: Fix release ordering issue and current sync level.
Fixes a problem where if multiple mutexes of the same sync level are
acquired but then not released in strict opposite order, the current
sync level becomes confused and can cause errors. ACPICA BZ 471.
2009-05-01 12:54:20 -07:00
Robert Moore
3fda08b9ad Lock local cache during purge.
Cache must be locked during object deletion. Andrew Baumann.
2009-04-28 09:46:35 -07:00
Robert Moore
a3c67073f1 Debugger: Lock method args for multithread command.
Prevents corruption of the global method arg structure when
multiple threads are created. Lin Ming.
2009-04-24 12:28:49 -07:00
Robert Moore
5190ee5752 Update version to 20090422.
Version 20090422.
2009-04-22 12:34:59 -07:00
Robert Moore
b7def3a7cb iASL: Fix for line-terminator transparency.
Ensure that iASL works correctly with both LF and CR/LF terminated files,
on both unix-like and windows platforms.
2009-04-21 14:49:51 -07:00
Robert Moore
32b66e9626 Linux OSL: cleanup/update/merge, add ACPI_THREAD_ID.
Merge the OSL with the actual file used by Linux, so that the file does
not require patching when integrated with Linux. General cleanup and
some restructuring.
2009-04-16 15:34:06 -07:00
Robert Moore
4feeacbe2a Remove use of a couple non-ANSI C library functions.
Removed calls to isascii and stricmp/strcasecmp for iASL and acpisrc.
2009-04-16 13:38:00 -07:00
Robert Moore
75165fd655 Win OSL: comment update.
Fix non-ansi comment.
2009-04-15 13:48:59 -07:00
Robert Moore
90412706a2 Unix OSL: Fix return value for ALTERNATE_TIMEOUT.
Was using break improperly.
2009-04-15 13:45:45 -07:00
Robert Moore
47481d6ad7 Add missing switch/defaults and prototypes.
Mostly empty default statements to pass lint/strict compiler warnings.
2009-04-15 12:57:02 -07:00
Robert Moore
78c5f575d4 Add missing function prototypes.
Mostly local prototypes that were missing.
2009-04-15 09:56:33 -07:00
Robert Moore
0a7105bb76 iASL: Fix warning under gnu Bison 2.3
Small change to one rule.
2009-04-15 07:28:10 -07:00
Robert Moore
3afe4f6545 Unix OSL: cleanup AcpiOsGetThreadId function.
Also add implemenation note about ACPI_THREAD_ID type.
2009-04-14 14:22:28 -07:00
Robert Moore
fb0ccef1ea Unix OSL: add alternate implementation for sem_timedwait.
This primitive is apparently buggy on cygwin.
2009-04-14 14:14:51 -07:00
Robert Moore
f19dd6aefd acpisrc: fix some non-ansi constructs.
Non-ansi comments, etc.
2009-04-14 14:11:44 -07:00
Robert Moore
ef30c37591 Fix implementation of AML BreakPoint operator (break to debugger).
The AML BreakPoint opcode will now cause a break into the AML debugger
if it is present/configured. This matches the expected behavior per
the ACPI specification. Previously, only a message was output.
2009-04-14 10:50:38 -07:00
Robert Moore
4012f44bbb iASL: Fix several warnings for 64-bit build.
Added some typecasts for printf-style statements where size_t (ACPI_SIZE)
increases to 64-bits.
2009-04-14 08:08:57 -07:00
Robert Moore
8e962d2f48 Add new header for cygwin generation.
New file is accygwin.h. Modifications to other related headers.
2009-04-13 14:09:11 -07:00
Robert Moore
e47bc1fea2 Fix miscellaneous warnings under gcc 4+
Some possible warnings with gcc 4+, especially with extended warnings
enabled.
2009-04-13 14:05:16 -07:00
Robert Moore
01004bcfb6 Fix warnings when ACPI_THREAD_ID is configured as a pointer.
The default type is an integer, but can be reconfigured as a pointer.
This change fixes some possible warnings when ACPI_THREAD_ID is
defined to be a pointer type.
2009-04-13 13:32:56 -07:00
Robert Moore
68fc5c1456 Miscellaneous lint changes.
Unused variables/headers, casting, etc.
2009-04-10 09:16:48 -07:00
Robert Moore
86ba33b4eb Fix possible dereference of null pointer.
Fix dereference of possibly null pointer "Predefined" in the case
where the method is not one of the predefined methods.
2009-04-10 08:31:09 -07:00
Robert Moore
144220d6de I/O port protection: update for windows compatibility.
For windows compatibility,
1) On a port protection violation, simply ignore the request and do not
return an exception (allow the control method to continue execution.)
2) If only part of the request overlaps a protected port, read/write the
individual ports that are not protected.
2009-04-10 07:59:12 -07:00
Robert Moore
0a69fa967a Fix printf format warnings for 64-bit build.
Fix warnings caused by size_t and ACPI_SIZE changing to 64 bits.
2009-04-09 14:56:10 -07:00
Robert Moore
c3204af629 Cleanup byte/word/dword extraction macros, fix possible warnings.
Removed unnecessary masking. For the 64-bit macros, removed the
structure overlay. Fixes aliasing warnings seen with gcc 4+
compilers.
2009-04-09 14:51:43 -07:00
Robert Moore
39fa6f4a16 Fix possible warnings for ACPI_THREAD_ID on 64-bit build.
Warnings can be generated for printf-like statements that output
the ACPI_THREAD_ID on 64-bit builds, since this type can expand
to 64-bits depending on how it is defined. Use the %p format
specifier to allow the output to automatically expand to 64 bits.
2009-04-09 08:18:21 -07:00
Robert Moore
062aee6953 Remove unused global variables.
Remove two unused/obsolete variables.
2009-04-08 14:25:49 -07:00
Robert Moore
560e18a4d1 Fix possible compile warnings for predefined method table.
Add extra braces to eliminate compile warnings on some compilers.
Reformatted the methods that return package objects.
2009-04-08 14:23:53 -07:00
Robert Moore
56c5c56229 acpiexec: Fix possible compile warning in aeexec.c
A 64-bit constant was causing warnings on some compilers since it
does not have a 'LL' suffix. Since 'LL' is not fully portable,
changed the constant to 32-bit since the value is not important to
acpiexec operation. The messy alternative might involve a new
macro to token-past the 'LL' for some compilers.
2009-04-08 12:29:03 -07:00
Robert Moore
e2896fc024 Change behavior of object copy for mutex/event objects.
When copying these internal objects, cannot simply copy the underlying
OS object. A new OS object must be created.
2009-04-08 10:38:08 -07:00
Robert Moore
05430b99b3 Update comments for x2APIC/MADT structures.
Update to match latest version of the X2 APIC documentation. Suresh Siddha.
2009-04-07 09:29:59 -07:00
Robert Moore
26c4a8e708 Fix a few warnings for gcc 3.4.4
Mostly for acpiexec, one in the core subsystem.
2009-03-27 13:41:59 -07:00
Robert Moore
97078cb239 Cleanup unix OSL - no functional change.
Fixed multiple coding styles.
2009-03-27 12:48:22 -07:00
Robert Moore
7db238d714 acpiexec: Add option for debug semaphore timeout (-z).
This option will cause all semaphores/mutexes to timeout after
30 seconds with an error message. Used to help diagnose hang conditions.
2009-03-26 13:47:29 -07:00
Robert Moore
5541c0cae8 Update error/warning interfaces.
Moved the module name and line number to the end of the message.
2009-03-25 14:23:48 -07:00
Robert Moore
2f55581d17 Increase max sempahores for windows OSL.
Increase tracking array size to 256 in order to run the large
ASLTS test suite.
2009-03-25 12:54:05 -07:00
Robert Moore
0dc5d93331 iASL: Add option to display summary only.
Added -va option to disable all errors and warnings, and display
the summary info only. Useful for large batch compiles.
2009-03-24 14:20:59 -07:00
Robert Moore
4b273c9843 Update version to 20090320.
Version 20090320.
2009-03-20 12:40:18 -07:00
Robert Moore
bd334bf7cc Fix warnings for 64-bit build.
Several warnings in hwvalid.c for ACPI_IO_ADDRESS output on 64-bit.
2009-03-20 12:15:58 -07:00
Robert Moore
3a5c56fbe8 Remove unused code, dsopcode.
Unnecessary check of ACPI_STATUS.
2009-03-19 12:20:29 -07:00