| e6294e05 | 26-Jul-2016 |
Simon Glass <sjg@chromium.org> |
x86: ivybridge: Allow microcode to be collated
Generally the microcode is combined into a single block only (and removed from the device tree) when there are multiple blocks. But this is not a requi
x86: ivybridge: Allow microcode to be collated
Generally the microcode is combined into a single block only (and removed from the device tree) when there are multiple blocks. But this is not a requirement.
Adjust the ivybridge code to avoid assuming this.
Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
show more ...
|
| cf7108b3 | 17-Jun-2016 |
Bin Meng <bmeng.cn@gmail.com> |
x86: quark: Introduce ACPI global NVS
This introduces quark-specific ACPI global NVS structure, defined in both C header file and ASL file.
Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by:
x86: quark: Introduce ACPI global NVS
This introduces quark-specific ACPI global NVS structure, defined in both C header file and ASL file.
Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
show more ...
|
| b813ea9a | 22-May-2016 |
Bin Meng <bmeng.cn@gmail.com> |
x86: broadwell: Correct I/O APIC ID
Currently ID 2 is assgined to broadwell I/O APIC, however per chromebook_samus.dts 2 is the core#2 LAPIC ID. Now we change I/O APIC ID to 4 to avoid conflict.
Si
x86: broadwell: Correct I/O APIC ID
Currently ID 2 is assgined to broadwell I/O APIC, however per chromebook_samus.dts 2 is the core#2 LAPIC ID. Now we change I/O APIC ID to 4 to avoid conflict.
Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
show more ...
|
| 911d6f69 | 22-May-2016 |
Bin Meng <bmeng.cn@gmail.com> |
x86: quark: Assign a unique I/O APIC ID
After power-on, both LAPIC and I/O APIC appear with the same APIC ID zero, which creates an ID conflict. When generating MP table, U-Boot reports zero as the
x86: quark: Assign a unique I/O APIC ID
After power-on, both LAPIC and I/O APIC appear with the same APIC ID zero, which creates an ID conflict. When generating MP table, U-Boot reports zero as the LAPIC ID in the processor entry, and zero as the I/O APIC ID in the I/O APIC as well as the I/O interrupt assignment entries. Such MP table confuses Linux kernel and finally a kernel panic is seen during boot:
BUG: unable to handle kernel paging request at ffff9000 IP: [<c101d462>] native_io_apic_write+0x22/0x30 *pdpt = 00000000014fb001 *pde = 00000000014ff067 *pte = 0000000000000000 Oops: 0002 [#1] Modules linked in: Pid: 1, comm: swapper Tainted: G W 3.8.7 #3 intel galileo/galileo EIP: 0060:[<c101d462>] EFLAGS: 00010086 CPU: 0 EIP is at native_io_apic_write+0x22/0x30 ... Kernel panic - not syncing: Attempted to kill init! exitcode=0x00000009
Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
show more ...
|
| aaaa5575 | 22-May-2016 |
Bin Meng <bmeng.cn@gmail.com> |
x86: Remove SMP limitation in lapic_setup()
At present LAPIC is enabled and configured as virtual wire mode in lapic_setup() only when CONFIG_SMP is on. This limitation is however not necessary as f
x86: Remove SMP limitation in lapic_setup()
At present LAPIC is enabled and configured as virtual wire mode in lapic_setup() only when CONFIG_SMP is on. This limitation is however not necessary as for uniprocessor this is still needed.
Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
show more ...
|
| d19c9074 | 11-May-2016 |
Bin Meng <bmeng.cn@gmail.com> |
x86: Reserve configuration tables in high memory
When SeaBIOS is on, reserve configuration tables in reserve_arch().
Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Simon Glass <sjg@chrom
x86: Reserve configuration tables in high memory
When SeaBIOS is on, reserve configuration tables in reserve_arch().
Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
show more ...
|