lkml.org 
[lkml]   [2014]   [Jan]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [RFC PATCH 04/14] ACPI: Add ACPI 5.0 Time and Alarm Device driver
On 01/08/2014 06:59 AM, joeyli wrote:
>
> ACPICA denied AML access RTC ports.
>
> I tried to access 0x70, 0x71 ports in ASL on a real machine, ACPICA
> denied AML access to those ports. I got the following dmesg:
>
> hwvalid-0188 hw_validate_io_request: Denied AML access to port
> 0x0000000000000071/1
>
> The code in acpica denied it:
>
> linux/drivers/acpi/acpica/hwvalid.c
>
> * This provides ACPICA with the desired port protections and
> * Microsoft compatibility.
> *
> * Description of port entries:
> [...]
> * RTC: Real-time clock
> * CMOS: Extended CMOS
> [...]
> */
> static const struct acpi_port_info acpi_protected_ports[] = {
> [...]
> {"RTC", 0x0070, 0x0071, ACPI_OSI_WIN_XP},
> {"CMOS", 0x0074, 0x0076, ACPI_OSI_WIN_XP},
>
>
> Document of Windows XP:
> http://www.freelists.org/post/windows_errors/what-error-messages-really-mean-WinXP-IO-Ports-Blocked-from-Bios-AML-on-Windows-XP
>
> If just for ACPI TAD testing, we can remove the port protection check of
> RTC ports in hwvalid.c. I have read 0x70/0x71 port success after removed
> the checking in acpica/hwvalid.c.
>
> I will try to write RTC port in AML after remove acpica check, maybe
> have other unpredictable situation.
>

Now *THERE* is a good use of the "no RTC bit". In the case that bit is
set we should presumably remove these ports from the block list.

Otherwise we should use the CMOS address space, not the I/O port address
space.

-hpa




\
 
 \ /
  Last update: 2014-01-08 19:21    [W:0.467 / U:0.400 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site