Warning: This file is not a C or C++ file. It does not have highlighting.
1 | /* SPDX-License-Identifier: GPL-2.0-or-later */ |
---|---|
2 | #include <linux/of.h> /* linux/of.h gets to determine #include ordering */ |
3 | #ifndef _SPARC_PROM_H |
4 | #define _SPARC_PROM_H |
5 | #ifdef __KERNEL__ |
6 | |
7 | /* |
8 | * Definitions for talking to the Open Firmware PROM on |
9 | * Power Macintosh computers. |
10 | * |
11 | * Copyright (C) 1996-2005 Paul Mackerras. |
12 | * |
13 | * Updates for PPC64 by Peter Bergner & David Engebretsen, IBM Corp. |
14 | * Updates for SPARC by David S. Miller |
15 | */ |
16 | #include <linux/types.h> |
17 | #include <linux/of_pdt.h> |
18 | #include <linux/proc_fs.h> |
19 | #include <linux/mutex.h> |
20 | #include <linux/atomic.h> |
21 | #include <linux/irqdomain.h> |
22 | #include <linux/spinlock.h> |
23 | |
24 | #define of_compat_cmp(s1, s2, l) strncmp((s1), (s2), (l)) |
25 | #define of_prop_cmp(s1, s2) strcasecmp((s1), (s2)) |
26 | #define of_node_cmp(s1, s2) strcmp((s1), (s2)) |
27 | |
28 | extern raw_spinlock_t devtree_lock; |
29 | |
30 | struct of_irq_controller { |
31 | unsigned int (*irq_build)(struct device_node *, unsigned int, void *); |
32 | void *data; |
33 | }; |
34 | |
35 | struct device_node *of_find_node_by_cpuid(int cpuid); |
36 | int of_set_property(struct device_node *node, const char *name, void *val, int len); |
37 | extern struct mutex of_set_property_mutex; |
38 | int of_getintprop_default(struct device_node *np, |
39 | const char *name, |
40 | int def); |
41 | int of_find_in_proplist(const char *list, const char *match, int len); |
42 | |
43 | void prom_build_devicetree(void); |
44 | void of_populate_present_mask(void); |
45 | void of_fill_in_cpu_data(void); |
46 | |
47 | struct resource; |
48 | void __iomem *of_ioremap(struct resource *res, unsigned long offset, unsigned long size, char *name); |
49 | void of_iounmap(struct resource *res, void __iomem *base, unsigned long size); |
50 | |
51 | extern struct device_node *of_console_device; |
52 | extern char *of_console_path; |
53 | extern char *of_console_options; |
54 | |
55 | void irq_trans_init(struct device_node *dp); |
56 | char *build_path_component(struct device_node *dp); |
57 | |
58 | #endif /* __KERNEL__ */ |
59 | #endif /* _SPARC_PROM_H */ |
60 |
Warning: This file is not a C or C++ file. It does not have highlighting.