Merge branch 'stable/for-linus-5.15' of git://git.kernel.org/pub/scm/linux/kernel...
[linux-2.6-microblaze.git] / arch / powerpc / platforms / microwatt / setup.c
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 static void __init microwatt_init_IRQ(void)
20 {
21         xics_init();
22 }
23
24 static int __init microwatt_probe(void)
25 {
26         return of_machine_is_compatible("microwatt-soc");
27 }
28
29 static int __init microwatt_populate(void)
30 {
31         return of_platform_default_populate(NULL, NULL, NULL);
32 }
33 machine_arch_initcall(microwatt, microwatt_populate);
34
35 define_machine(microwatt) {
36         .name                   = "microwatt",
37         .probe                  = microwatt_probe,
38         .init_IRQ               = microwatt_init_IRQ,
39         .progress               = udbg_progress,
40         .calibrate_decr         = generic_calibrate_decr,
41 };