[LinuxBIOS] [linux-usb-devel] [RFC][PATCH 0/2] x86_64 Early usb debug port support.

Eric W. Biederman ebiederm at xmission.com
Wed Dec 13 08:29:49 CET 2006


"Yinghai Lu" <yinghai.lu at amd.com> writes:

> On 12/8/06, Eric W. Biederman <ebiederm at xmission.com> wrote:
>>
>> Your or I missed a bug fix/enhancement in there somewhere.
>>
>
> I found the problem. the __set_fixmap need to __va, so the entries
> will be referred from PAGE_OFFSET.
>
> solution will be
> 1. move enable_dbgp_console from setup_early_printk, and call it from
> setup_arch after init_memory_mapping.
> 2. or make __set_fixmap can use __pa or pa()+__START_KERNEL_map in
> addtion to _va.

3.  Make __va always work.  I had this in my tree and I guess it didn't get
   into my big rollup patch.

Eric


x86_64: Fix the memory mapping in the early page table

diff --git a/arch/x86_64/kernel/head.S b/arch/x86_64/kernel/head.S
index 1e6f808..2f65469 100644
--- a/arch/x86_64/kernel/head.S
+++ b/arch/x86_64/kernel/head.S
@@ -328,9 +328,9 @@ ENTRY(wakeup_level4_pgt)
        .align PAGE_SIZE
 ENTRY(boot_level4_pgt)
        .quad   phys_level3_ident_pgt | 0x007
-       .fill   255,8,0
+       .fill   257,8,0
        .quad   phys_level3_physmem_pgt | 0x007
-       .fill   254,8,0
+       .fill   252,8,0
        /* (2^48-(2*1024*1024*1024))/(2^39) = 511 */
        .quad   phys_level3_kernel_pgt | 0x007
 






More information about the coreboot mailing list