| .. | .. |
|---|
| 23 | 23 | * |
|---|
| 24 | 24 | * The table is used to implement the Microsoft port access rules that |
|---|
| 25 | 25 | * first appeared in Windows XP. Some ports are always illegal, and some |
|---|
| 26 | | - * ports are only illegal if the BIOS calls _OSI with a win_XP string or |
|---|
| 27 | | - * later (meaning that the BIOS itelf is post-XP.) |
|---|
| 26 | + * ports are only illegal if the BIOS calls _OSI with nothing newer than |
|---|
| 27 | + * the specific _OSI strings. |
|---|
| 28 | 28 | * |
|---|
| 29 | 29 | * This provides ACPICA with the desired port protections and |
|---|
| 30 | 30 | * Microsoft compatibility. |
|---|
| .. | .. |
|---|
| 145 | 145 | |
|---|
| 146 | 146 | /* Port illegality may depend on the _OSI calls made by the BIOS */ |
|---|
| 147 | 147 | |
|---|
| 148 | | - if (acpi_gbl_osi_data >= port_info->osi_dependency) { |
|---|
| 148 | + if (port_info->osi_dependency == ACPI_ALWAYS_ILLEGAL || |
|---|
| 149 | + acpi_gbl_osi_data == port_info->osi_dependency) { |
|---|
| 149 | 150 | ACPI_DEBUG_PRINT((ACPI_DB_VALUES, |
|---|
| 150 | 151 | "Denied AML access to port 0x%8.8X%8.8X/%X (%s 0x%.4X-0x%.4X)\n", |
|---|
| 151 | 152 | ACPI_FORMAT_UINT64(address), |
|---|