On 23 June 2015 at 19:45, Simon Glass <[email protected]> wrote: > On 22 June 2015 at 22:18, Bin Meng <[email protected]> wrote: >> Implement write_mp_table() to create a minimal working MP table. >> This includes an MP floating table, a configuration table header >> and all of the 5 base configuration table entries. The I/O interrupt >> assignment table entry is created based on the same information used >> in the creation of PIRQ routing table from device tree. A check >> duplicated entry logic is applied to prevent writing multiple I/O >> interrupt entries with the same information. >> >> Use a Kconfig option GENERATE_MP_TABLE to tell U-Boot whether we >> need actually write the MP table at the F seg, just like we did for >> PIRQ routing and SFI tables. With MP table existence, linux kernel >> will switch to I/O APIC and local APIC to process all the peripheral >> interrupts instead of 8259 PICs. This takes full advantage of the >> multicore hardware and the SMP kernel. >> >> Signed-off-by: Bin Meng <[email protected]> >> >> --- >> >> Changes in v2: >> - Avoid using u16 and u8 in parameters >> - Add a comment block for check_dup_entry() >> - Return and check error codes of mptable_add_intsrc() >> - Remove __weak for write_mp_table() >> >> arch/x86/Kconfig | 9 +++ >> arch/x86/include/asm/mpspec.h | 10 +++ >> arch/x86/lib/mpspec.c | 157 >> ++++++++++++++++++++++++++++++++++++++++++ >> arch/x86/lib/tables.c | 5 ++ >> 4 files changed, 181 insertions(+) > > Acked-by: Simon Glass <[email protected]>
Applied to u-boot-x86, thanks! _______________________________________________ U-Boot mailing list [email protected] http://lists.denx.de/mailman/listinfo/u-boot

