Changeset 74df77d in mainline for arch/ia32/src/acpi/acpi.c


Ignore:
Timestamp:
2005-06-10T16:18:43Z (20 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
87cd61f
Parents:
18e0a6c
Message:

Add map_structure() to automate mapping of memory structures that can span multiple pages and/or cross page boundaries.
Change ACPI map_sdt() to use map_structure().

Small changes in MPS code.
The extra frame allocation for accessing frame 0 is unnecessary as it is possible to access frame 0 from kernel address space.
Zero TSS descriptor in the newly prepared GDT.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • arch/ia32/src/acpi/acpi.c

    r18e0a6c r74df77d  
    7979void map_sdt(struct acpi_sdt_header *sdt)
    8080{
    81         int i, cnt, length;
    82 
    8381        map_page_to_frame((__address) sdt, (__address) sdt, PAGE_NOT_CACHEABLE, 0);
    84        
    85         length = sdt->length + ((__address) sdt) - ((__address) sdt)&0xfffff000;
    86         cnt = length/PAGE_SIZE + (length%PAGE_SIZE>0);
    87        
    88         for (i = 1; i < cnt; i++)
    89                 map_page_to_frame(((__address) sdt) + i*PAGE_SIZE, ((__address) sdt) + i*PAGE_SIZE, PAGE_NOT_CACHEABLE, 0);
     82        map_structure((__address) sdt, sdt->length);
    9083}
    9184
Note: See TracChangeset for help on using the changeset viewer.