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 <mmc.h> 9 #include <pci_ids.h> 10 #include <asm/irq.h> 11 #include <asm/mrccache.h> 12 #include <asm/post.h> 13 14 static struct pci_device_id mmc_supported[] = { 15 { PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_VALLEYVIEW_SDIO }, 16 { PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_VALLEYVIEW_SDCARD }, 17 {}, 18 }; 19 20 int cpu_mmc_init(bd_t *bis) 21 { 22 return pci_mmc_init("ValleyView SDHCI", mmc_supported); 23 } 24 25 #ifndef CONFIG_EFI_APP 26 int arch_cpu_init(void) 27 { 28 post_code(POST_CPU_INIT); 29 30 return x86_cpu_init_f(); 31 } 32 33 int arch_misc_init(void) 34 { 35 if (!ll_boot_init()) 36 return 0; 37 38 #ifdef CONFIG_ENABLE_MRC_CACHE 39 /* 40 * We intend not to check any return value here, as even MRC cache 41 * is not saved successfully, it is not a severe error that will 42 * prevent system from continuing to boot. 43 */ 44 mrccache_save(); 45 #endif 46 47 return 0; 48 } 49 50 #endif 51 52 void reset_cpu(ulong addr) 53 { 54 /* cold reset */ 55 x86_full_reset(); 56 } 57