diff options
author | Bin Meng <bmeng.cn@gmail.com> | 2015-04-27 14:16:02 +0800 |
---|---|---|
committer | Simon Glass <sjg@chromium.org> | 2015-04-29 18:51:50 -0600 |
commit | f82a7840f11d008f06b8c8d5578d2f4b8eeaa285 (patch) | |
tree | 1d3e5884e42eaacf7e62820359b7380ff6d0bc33 /arch/x86/cpu/quark | |
parent | 283a08e52a0d3f5fe8ac3139c632f32a03fc44f0 (diff) | |
download | u-boot-imx-f82a7840f11d008f06b8c8d5578d2f4b8eeaa285.zip u-boot-imx-f82a7840f11d008f06b8c8d5578d2f4b8eeaa285.tar.gz u-boot-imx-f82a7840f11d008f06b8c8d5578d2f4b8eeaa285.tar.bz2 |
x86: quark: Turn on legacy segments decode
By default the legacy segments (A0000h-B0000h, E0000h-F0000h)
do not decode to system RAM. Turn on the decode so that we can
write configuration tables in the F segment.
Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'arch/x86/cpu/quark')
-rw-r--r-- | arch/x86/cpu/quark/quark.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/arch/x86/cpu/quark/quark.c b/arch/x86/cpu/quark/quark.c index e4b19c2..4ffa437 100644 --- a/arch/x86/cpu/quark/quark.c +++ b/arch/x86/cpu/quark/quark.c @@ -72,6 +72,15 @@ static void quark_setup_bars(void) CONFIG_PCIE_ECAM_BASE | MEM_BAR_EN); } +static void quark_enable_legacy_seg(void) +{ + u32 hmisc2; + + hmisc2 = msg_port_read(MSG_PORT_HOST_BRIDGE, HMISC2); + hmisc2 |= (HMISC2_SEGE | HMISC2_SEGF | HMISC2_SEGAB); + msg_port_write(MSG_PORT_HOST_BRIDGE, HMISC2, hmisc2); +} + int arch_cpu_init(void) { struct pci_controller *hose; @@ -96,6 +105,9 @@ int arch_cpu_init(void) */ quark_setup_bars(); + /* Turn on legacy segments (A/B/E/F) decode to system RAM */ + quark_enable_legacy_seg(); + unprotect_spi_flash(); return 0; |