Merge branch 'buildman' of git://git.denx.de/u-boot-x86
[oweals/u-boot.git] / arch / x86 / cpu / queensbay / tnc.c
1 /*
2  * Copyright (C) 2014, Bin Meng <bmeng.cn@gmail.com>
3  *
4  * SPDX-License-Identifier:     GPL-2.0+
5  */
6
7 #include <common.h>
8 #include <asm/io.h>
9 #include <asm/pci.h>
10 #include <asm/post.h>
11 #include <asm/arch/tnc.h>
12 #include <asm/fsp/fsp_support.h>
13 #include <asm/processor.h>
14
15 static void unprotect_spi_flash(void)
16 {
17         u32 bc;
18
19         bc = x86_pci_read_config32(PCH_LPC_DEV, 0xd8);
20         bc |= 0x1;      /* unprotect the flash */
21         x86_pci_write_config32(PCH_LPC_DEV, 0xd8, bc);
22 }
23
24 int arch_cpu_init(void)
25 {
26         struct pci_controller *hose;
27         int ret;
28
29         post_code(POST_CPU_INIT);
30 #ifdef CONFIG_SYS_X86_TSC_TIMER
31         timer_set_base(rdtsc());
32 #endif
33
34         ret = x86_cpu_init_f();
35         if (ret)
36                 return ret;
37
38         ret = pci_early_init_hose(&hose);
39         if (ret)
40                 return ret;
41
42         unprotect_spi_flash();
43
44         return 0;
45 }