Loading...
1config DTC
2 bool
3
4menuconfig OF
5 bool "Device Tree and Open Firmware support"
6 help
7 This option enables the device tree infrastructure.
8 It is automatically selected by platforms that need it or can
9 be enabled manually for unittests, overlays or
10 compile-coverage.
11
12if OF
13
14config OF_UNITTEST
15 bool "Device Tree runtime unit tests"
16 depends on OF_IRQ
17 select OF_EARLY_FLATTREE
18 select OF_RESOLVE
19 help
20 This option builds in test cases for the device tree infrastructure
21 that are executed once at boot time, and the results dumped to the
22 console.
23
24 If unsure, say N here, but this option is safe to enable.
25
26config OF_ALL_DTBS
27 bool "Build all Device Tree Blobs"
28 depends on COMPILE_TEST
29 select DTC
30 help
31 This option builds all possible Device Tree Blobs (DTBs) for the
32 current architecture.
33
34 If unsure, say N here, but this option is safe to enable.
35
36config OF_FLATTREE
37 bool
38 select DTC
39 select LIBFDT
40 select CRC32
41
42config OF_EARLY_FLATTREE
43 bool
44 select OF_FLATTREE
45
46config OF_PROMTREE
47 bool
48
49# Hardly any platforms need this. It is safe to select, but only do so if you
50# need it.
51config OF_DYNAMIC
52 bool "Support for dynamic device trees" if OF_UNITTEST
53 help
54 On some platforms, the device tree can be manipulated at runtime.
55 While this option is selected automatically on such platforms, you
56 can enable it manually to improve device tree unit test coverage.
57
58config OF_ADDRESS
59 def_bool y
60 depends on !SPARC && HAS_IOMEM
61 select OF_ADDRESS_PCI if PCI
62
63config OF_ADDRESS_PCI
64 bool
65
66config OF_IRQ
67 def_bool y
68 depends on !SPARC && IRQ_DOMAIN
69
70config OF_NET
71 depends on NETDEVICES
72 def_bool y
73
74config OF_MDIO
75 def_tristate PHYLIB
76 depends on PHYLIB
77 help
78 OpenFirmware MDIO bus (Ethernet PHY) accessors
79
80config OF_PCI
81 def_tristate PCI
82 depends on PCI
83 help
84 OpenFirmware PCI bus accessors
85
86config OF_PCI_IRQ
87 def_tristate PCI
88 depends on OF_PCI && OF_IRQ
89 help
90 OpenFirmware PCI IRQ routing helpers
91
92config OF_MTD
93 depends on MTD
94 def_bool y
95
96config OF_RESERVED_MEM
97 depends on OF_EARLY_FLATTREE
98 bool
99 help
100 Helpers to allow for reservation of memory regions
101
102config OF_RESOLVE
103 bool
104
105config OF_OVERLAY
106 bool "Device Tree overlays"
107 select OF_DYNAMIC
108 select OF_RESOLVE
109 help
110 Overlays are a method to dynamically modify part of the kernel's
111 device tree with dynamically loaded data.
112 While this option is selected automatically when needed, you can
113 enable it manually to improve device tree unit test coverage.
114
115endif # OF
1# SPDX-License-Identifier: GPL-2.0
2config DTC
3 bool
4
5menuconfig OF
6 bool "Device Tree and Open Firmware support"
7 help
8 This option enables the device tree infrastructure.
9 It is automatically selected by platforms that need it or can
10 be enabled manually for unittests, overlays or
11 compile-coverage.
12
13if OF
14
15config OF_UNITTEST
16 bool "Device Tree runtime unit tests"
17 depends on !SPARC
18 select IRQ_DOMAIN
19 select OF_EARLY_FLATTREE
20 select OF_RESOLVE
21 help
22 This option builds in test cases for the device tree infrastructure
23 that are executed once at boot time, and the results dumped to the
24 console.
25
26 If unsure, say N here, but this option is safe to enable.
27
28config OF_ALL_DTBS
29 bool "Build all Device Tree Blobs"
30 depends on COMPILE_TEST
31 select DTC
32 help
33 This option builds all possible Device Tree Blobs (DTBs) for the
34 current architecture.
35
36 If unsure, say N here, but this option is safe to enable.
37
38config OF_FLATTREE
39 bool
40 select DTC
41 select LIBFDT
42 select CRC32
43
44config OF_EARLY_FLATTREE
45 bool
46 select DMA_DECLARE_COHERENT if HAS_DMA
47 select OF_FLATTREE
48
49config OF_PROMTREE
50 bool
51
52config OF_KOBJ
53 def_bool SYSFS
54
55# Hardly any platforms need this. It is safe to select, but only do so if you
56# need it.
57config OF_DYNAMIC
58 bool "Support for dynamic device trees" if OF_UNITTEST
59 select OF_KOBJ
60 help
61 On some platforms, the device tree can be manipulated at runtime.
62 While this option is selected automatically on such platforms, you
63 can enable it manually to improve device tree unit test coverage.
64
65config OF_ADDRESS
66 def_bool y
67 depends on !SPARC && (HAS_IOMEM || UML)
68
69config OF_IRQ
70 def_bool y
71 depends on !SPARC && IRQ_DOMAIN
72
73config OF_NET
74 depends on NETDEVICES
75 def_bool y
76
77config OF_RESERVED_MEM
78 def_bool OF_EARLY_FLATTREE
79
80config OF_RESOLVE
81 bool
82
83config OF_OVERLAY
84 bool "Device Tree overlays"
85 select OF_DYNAMIC
86 select OF_FLATTREE
87 select OF_RESOLVE
88 help
89 Overlays are a method to dynamically modify part of the kernel's
90 device tree with dynamically loaded data.
91 While this option is selected automatically when needed, you can
92 enable it manually to improve device tree unit test coverage.
93
94config OF_NUMA
95 bool
96
97config OF_DMA_DEFAULT_COHERENT
98 # arches should select this if DMA is coherent by default for OF devices
99 bool
100
101endif # OF