1/* 2 * Microwatt FPGA-based SoC platform setup code. 3 * 4 * Copyright 2020 Paul Mackerras (paulus@ozlabs.org), IBM Corp. 5 */ 6 7#include <linux/types.h> 8#include <linux/kernel.h> 9#include <linux/stddef.h> 10#include <linux/init.h> 11#include <linux/of.h> 12#include <linux/of_platform.h> 13 14#include <asm/machdep.h> 15#include <asm/time.h> 16#include <asm/xics.h> 17#include <asm/udbg.h> 18 19#include "microwatt.h" 20 21static void __init microwatt_init_IRQ(void) 22{ 23 xics_init(); 24} 25 26static int __init microwatt_populate(void) 27{ 28 return of_platform_default_populate(NULL, NULL, NULL); 29} 30machine_arch_initcall(microwatt, microwatt_populate); 31 32static void __init microwatt_setup_arch(void) 33{ 34 microwatt_rng_init(); 35} 36 37define_machine(microwatt) { 38 .name = "microwatt", 39 .compatible = "microwatt-soc", 40 .init_IRQ = microwatt_init_IRQ, 41 .setup_arch = microwatt_setup_arch, 42 .progress = udbg_progress, 43}; 44