u-boot-brain/arch/x86/cpu
Bin Meng e5ffa4bb62 x86: queensbay: Really disable IGD
According to Atom E6xx datasheet, setting VGA Disable (bit17)
of Graphics Controller register (offset 0x50) prevents IGD
(D2:F0) from reporting itself as a VGA display controller
class in the PCI configuration space, and should also prevent
it from responding to VGA legacy memory range and I/O addresses.

However test result shows that with just VGA Disable bit set and
a PCIe graphics card connected to one of the PCIe controllers on
the E6xx, accessing the VGA legacy space still causes system hang.
After a number of attempts, it turns out besides VGA Disable bit,
the SDVO (D3:F0) device should be disabled to make it work.

To simplify, use the Function Disable register (offset 0xc4)
to disable both IGD (D2:F0) and SDVO (D3:F0) devices. Now these
two devices will be completely disabled (invisible in the PCI
configuration space) unless a system reset is performed.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: Simon Glass <sjg@chromium.org>
2015-11-13 06:46:20 -08:00
..
baytrail x86: baytrail: Issue full system reset in reset_cpu() 2015-10-21 07:46:27 -06:00
coreboot x86: coreboot: Convert to use more dm drivers 2015-09-09 07:48:03 -06:00
efi x86: Add relocation and link script for a 64-bit EFI application 2015-08-05 08:44:06 -06:00
ivybridge x86: ivybridge: Enable the MRC cache 2015-10-21 07:46:51 -06:00
qemu x86: Add DSDT table for supporting ACPI on QEMU 2015-08-26 07:54:14 -07:00
quark x86: quark: Implement mrc cache 2015-10-21 07:46:27 -06:00
queensbay x86: queensbay: Really disable IGD 2015-11-13 06:46:20 -08:00
call32.S x86: Add a way to call 32-bit code from 64-bit mode 2015-08-05 08:44:07 -06:00
call64.S x86: Tidy up the 64-bit calling code 2015-08-05 08:42:41 -06:00
config.mk x86: Add Kconfig options to be used by arch/x86/cpu/config.mk 2015-07-14 18:03:15 -06:00
cpu_x86.c x86: Move MP initialization codes into a common place 2015-07-14 18:03:16 -06:00
cpu.c x86: Initialize GDT entry 1 to be the 32-bit CS as well 2015-10-21 07:46:25 -06:00
interrupts.c x86: Rename pcat_ to i8254 and i8259 accordingly 2015-11-13 06:46:18 -08:00
ioapic.c x86: Add I/O APIC register access routines 2015-07-14 18:03:17 -06:00
irq.c x86: Allow pirq_init() to return an error 2015-08-14 03:24:21 -06:00
lapic.c x86: Remove inline for lapic access routines 2015-07-14 18:03:17 -06:00
Makefile x86: Add a way to call 32-bit code from 64-bit mode 2015-08-05 08:44:07 -06:00
mp_init.c x86: Set APs' req_seq to the reg number from device tree 2015-08-14 09:50:12 -06:00
mtrr.c x86: Test mtrr support flag before accessing mtrr msr 2015-01-23 17:24:55 -07:00
pci.c x86: Return -1 when reading a PCI config register fails 2015-08-14 09:50:13 -06:00
resetvec.S Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
sipi_vector.S x86: Pass correct cpu_index to ap_init() 2015-10-21 07:46:27 -06:00
start.S x86: Init the debug UART if enabled 2015-10-21 07:46:50 -06:00
start16.S x86: fsp: Load GDT before calling FspInitEntry 2015-07-14 18:03:15 -06:00
turbo.c x86: Add Intel speedstep and turbo mode code 2014-11-25 06:34:02 -07:00
u-boot.lds x86: Factor out common values in the link script 2014-11-25 06:33:59 -07:00