Linux Audio

Check our new training course

Loading...
v6.2
  1# SPDX-License-Identifier: GPL-2.0-only
  2#
  3# The ARCH_INLINE foo is necessary because select ignores "depends on"
  4#
  5config ARCH_INLINE_SPIN_TRYLOCK
  6	bool
  7
  8config ARCH_INLINE_SPIN_TRYLOCK_BH
  9	bool
 10
 11config ARCH_INLINE_SPIN_LOCK
 12	bool
 13
 14config ARCH_INLINE_SPIN_LOCK_BH
 15	bool
 16
 17config ARCH_INLINE_SPIN_LOCK_IRQ
 18	bool
 19
 20config ARCH_INLINE_SPIN_LOCK_IRQSAVE
 21	bool
 22
 23config ARCH_INLINE_SPIN_UNLOCK
 24	bool
 25
 26config ARCH_INLINE_SPIN_UNLOCK_BH
 27	bool
 28
 29config ARCH_INLINE_SPIN_UNLOCK_IRQ
 30	bool
 31
 32config ARCH_INLINE_SPIN_UNLOCK_IRQRESTORE
 33	bool
 34
 35
 36config ARCH_INLINE_READ_TRYLOCK
 37	bool
 38
 39config ARCH_INLINE_READ_LOCK
 40	bool
 41
 42config ARCH_INLINE_READ_LOCK_BH
 43	bool
 44
 45config ARCH_INLINE_READ_LOCK_IRQ
 46	bool
 47
 48config ARCH_INLINE_READ_LOCK_IRQSAVE
 49	bool
 50
 51config ARCH_INLINE_READ_UNLOCK
 52	bool
 53
 54config ARCH_INLINE_READ_UNLOCK_BH
 55	bool
 56
 57config ARCH_INLINE_READ_UNLOCK_IRQ
 58	bool
 59
 60config ARCH_INLINE_READ_UNLOCK_IRQRESTORE
 61	bool
 62
 63
 64config ARCH_INLINE_WRITE_TRYLOCK
 65	bool
 66
 67config ARCH_INLINE_WRITE_LOCK
 68	bool
 69
 70config ARCH_INLINE_WRITE_LOCK_BH
 71	bool
 72
 73config ARCH_INLINE_WRITE_LOCK_IRQ
 74	bool
 75
 76config ARCH_INLINE_WRITE_LOCK_IRQSAVE
 77	bool
 78
 79config ARCH_INLINE_WRITE_UNLOCK
 80	bool
 81
 82config ARCH_INLINE_WRITE_UNLOCK_BH
 83	bool
 84
 85config ARCH_INLINE_WRITE_UNLOCK_IRQ
 86	bool
 87
 88config ARCH_INLINE_WRITE_UNLOCK_IRQRESTORE
 89	bool
 90
 91config UNINLINE_SPIN_UNLOCK
 92	bool
 93
 94#
 95# lock_* functions are inlined when:
 96#   - DEBUG_SPINLOCK=n and GENERIC_LOCKBREAK=n and ARCH_INLINE_*LOCK=y
 97#
 98# trylock_* functions are inlined when:
 99#   - DEBUG_SPINLOCK=n and ARCH_INLINE_*LOCK=y
100#
101# unlock and unlock_irq functions are inlined when:
102#   - DEBUG_SPINLOCK=n and ARCH_INLINE_*LOCK=y
103#  or
104#   - DEBUG_SPINLOCK=n and PREEMPTION=n
105#
106# unlock_bh and unlock_irqrestore functions are inlined when:
107#   - DEBUG_SPINLOCK=n and ARCH_INLINE_*LOCK=y
108#
109
110if !DEBUG_SPINLOCK
111
112config INLINE_SPIN_TRYLOCK
113	def_bool y
114	depends on ARCH_INLINE_SPIN_TRYLOCK
115
116config INLINE_SPIN_TRYLOCK_BH
117	def_bool y
118	depends on ARCH_INLINE_SPIN_TRYLOCK_BH
119
120config INLINE_SPIN_LOCK
121	def_bool y
122	depends on !GENERIC_LOCKBREAK && ARCH_INLINE_SPIN_LOCK
123
124config INLINE_SPIN_LOCK_BH
125	def_bool y
126	depends on !GENERIC_LOCKBREAK && ARCH_INLINE_SPIN_LOCK_BH
127
128config INLINE_SPIN_LOCK_IRQ
129	def_bool y
130	depends on !GENERIC_LOCKBREAK && ARCH_INLINE_SPIN_LOCK_IRQ
131
132config INLINE_SPIN_LOCK_IRQSAVE
133	def_bool y
134	depends on !GENERIC_LOCKBREAK && ARCH_INLINE_SPIN_LOCK_IRQSAVE
 
 
 
135
136config INLINE_SPIN_UNLOCK_BH
137	def_bool y
138	depends on ARCH_INLINE_SPIN_UNLOCK_BH
139
140config INLINE_SPIN_UNLOCK_IRQ
141	def_bool y
142	depends on !PREEMPTION || ARCH_INLINE_SPIN_UNLOCK_IRQ
143
144config INLINE_SPIN_UNLOCK_IRQRESTORE
145	def_bool y
146	depends on ARCH_INLINE_SPIN_UNLOCK_IRQRESTORE
147
148
149config INLINE_READ_TRYLOCK
150	def_bool y
151	depends on ARCH_INLINE_READ_TRYLOCK
152
153config INLINE_READ_LOCK
154	def_bool y
155	depends on !GENERIC_LOCKBREAK && ARCH_INLINE_READ_LOCK
156
157config INLINE_READ_LOCK_BH
158	def_bool y
159	depends on !GENERIC_LOCKBREAK && ARCH_INLINE_READ_LOCK_BH
160
161config INLINE_READ_LOCK_IRQ
162	def_bool y
163	depends on !GENERIC_LOCKBREAK && ARCH_INLINE_READ_LOCK_IRQ
164
165config INLINE_READ_LOCK_IRQSAVE
166	def_bool y
167	depends on !GENERIC_LOCKBREAK && ARCH_INLINE_READ_LOCK_IRQSAVE
168
169config INLINE_READ_UNLOCK
170	def_bool y
171	depends on !PREEMPTION || ARCH_INLINE_READ_UNLOCK
172
173config INLINE_READ_UNLOCK_BH
174	def_bool y
175	depends on ARCH_INLINE_READ_UNLOCK_BH
176
177config INLINE_READ_UNLOCK_IRQ
178	def_bool y
179	depends on !PREEMPTION || ARCH_INLINE_READ_UNLOCK_IRQ
180
181config INLINE_READ_UNLOCK_IRQRESTORE
182	def_bool y
183	depends on ARCH_INLINE_READ_UNLOCK_IRQRESTORE
184
185
186config INLINE_WRITE_TRYLOCK
187	def_bool y
188	depends on ARCH_INLINE_WRITE_TRYLOCK
189
190config INLINE_WRITE_LOCK
191	def_bool y
192	depends on !GENERIC_LOCKBREAK && ARCH_INLINE_WRITE_LOCK
193
194config INLINE_WRITE_LOCK_BH
195	def_bool y
196	depends on !GENERIC_LOCKBREAK && ARCH_INLINE_WRITE_LOCK_BH
197
198config INLINE_WRITE_LOCK_IRQ
199	def_bool y
200	depends on !GENERIC_LOCKBREAK && ARCH_INLINE_WRITE_LOCK_IRQ
201
202config INLINE_WRITE_LOCK_IRQSAVE
203	def_bool y
204	depends on !GENERIC_LOCKBREAK && ARCH_INLINE_WRITE_LOCK_IRQSAVE
205
206config INLINE_WRITE_UNLOCK
207	def_bool y
208	depends on !PREEMPTION || ARCH_INLINE_WRITE_UNLOCK
209
210config INLINE_WRITE_UNLOCK_BH
211	def_bool y
212	depends on ARCH_INLINE_WRITE_UNLOCK_BH
213
214config INLINE_WRITE_UNLOCK_IRQ
215	def_bool y
216	depends on !PREEMPTION || ARCH_INLINE_WRITE_UNLOCK_IRQ
217
218config INLINE_WRITE_UNLOCK_IRQRESTORE
219	def_bool y
220	depends on ARCH_INLINE_WRITE_UNLOCK_IRQRESTORE
221
222endif
223
224config ARCH_SUPPORTS_ATOMIC_RMW
225	bool
226
227config MUTEX_SPIN_ON_OWNER
228	def_bool y
229	depends on SMP && ARCH_SUPPORTS_ATOMIC_RMW
230
231config RWSEM_SPIN_ON_OWNER
232       def_bool y
233       depends on SMP && ARCH_SUPPORTS_ATOMIC_RMW
234
235config LOCK_SPIN_ON_OWNER
236       def_bool y
237       depends on MUTEX_SPIN_ON_OWNER || RWSEM_SPIN_ON_OWNER
238
239config ARCH_USE_QUEUED_SPINLOCKS
240	bool
241
242config QUEUED_SPINLOCKS
243	def_bool y if ARCH_USE_QUEUED_SPINLOCKS
244	depends on SMP
245
246config BPF_ARCH_SPINLOCK
247	bool
248
249config ARCH_USE_QUEUED_RWLOCKS
250	bool
251
252config QUEUED_RWLOCKS
253	def_bool y if ARCH_USE_QUEUED_RWLOCKS
254	depends on SMP && !PREEMPT_RT
255
256config ARCH_HAS_MMIOWB
257	bool
258
259config MMIOWB
260	def_bool y if ARCH_HAS_MMIOWB
261	depends on SMP
v3.5.6
 
  1#
  2# The ARCH_INLINE foo is necessary because select ignores "depends on"
  3#
  4config ARCH_INLINE_SPIN_TRYLOCK
  5	bool
  6
  7config ARCH_INLINE_SPIN_TRYLOCK_BH
  8	bool
  9
 10config ARCH_INLINE_SPIN_LOCK
 11	bool
 12
 13config ARCH_INLINE_SPIN_LOCK_BH
 14	bool
 15
 16config ARCH_INLINE_SPIN_LOCK_IRQ
 17	bool
 18
 19config ARCH_INLINE_SPIN_LOCK_IRQSAVE
 20	bool
 21
 22config ARCH_INLINE_SPIN_UNLOCK
 23	bool
 24
 25config ARCH_INLINE_SPIN_UNLOCK_BH
 26	bool
 27
 28config ARCH_INLINE_SPIN_UNLOCK_IRQ
 29	bool
 30
 31config ARCH_INLINE_SPIN_UNLOCK_IRQRESTORE
 32	bool
 33
 34
 35config ARCH_INLINE_READ_TRYLOCK
 36	bool
 37
 38config ARCH_INLINE_READ_LOCK
 39	bool
 40
 41config ARCH_INLINE_READ_LOCK_BH
 42	bool
 43
 44config ARCH_INLINE_READ_LOCK_IRQ
 45	bool
 46
 47config ARCH_INLINE_READ_LOCK_IRQSAVE
 48	bool
 49
 50config ARCH_INLINE_READ_UNLOCK
 51	bool
 52
 53config ARCH_INLINE_READ_UNLOCK_BH
 54	bool
 55
 56config ARCH_INLINE_READ_UNLOCK_IRQ
 57	bool
 58
 59config ARCH_INLINE_READ_UNLOCK_IRQRESTORE
 60	bool
 61
 62
 63config ARCH_INLINE_WRITE_TRYLOCK
 64	bool
 65
 66config ARCH_INLINE_WRITE_LOCK
 67	bool
 68
 69config ARCH_INLINE_WRITE_LOCK_BH
 70	bool
 71
 72config ARCH_INLINE_WRITE_LOCK_IRQ
 73	bool
 74
 75config ARCH_INLINE_WRITE_LOCK_IRQSAVE
 76	bool
 77
 78config ARCH_INLINE_WRITE_UNLOCK
 79	bool
 80
 81config ARCH_INLINE_WRITE_UNLOCK_BH
 82	bool
 83
 84config ARCH_INLINE_WRITE_UNLOCK_IRQ
 85	bool
 86
 87config ARCH_INLINE_WRITE_UNLOCK_IRQRESTORE
 88	bool
 89
 
 
 
 90#
 91# lock_* functions are inlined when:
 92#   - DEBUG_SPINLOCK=n and GENERIC_LOCKBREAK=n and ARCH_INLINE_*LOCK=y
 93#
 94# trylock_* functions are inlined when:
 95#   - DEBUG_SPINLOCK=n and ARCH_INLINE_*LOCK=y
 96#
 97# unlock and unlock_irq functions are inlined when:
 98#   - DEBUG_SPINLOCK=n and ARCH_INLINE_*LOCK=y
 99#  or
100#   - DEBUG_SPINLOCK=n and PREEMPT=n
101#
102# unlock_bh and unlock_irqrestore functions are inlined when:
103#   - DEBUG_SPINLOCK=n and ARCH_INLINE_*LOCK=y
104#
105
 
 
106config INLINE_SPIN_TRYLOCK
107	def_bool !DEBUG_SPINLOCK && ARCH_INLINE_SPIN_TRYLOCK
 
108
109config INLINE_SPIN_TRYLOCK_BH
110	def_bool !DEBUG_SPINLOCK && ARCH_INLINE_SPIN_TRYLOCK_BH
 
111
112config INLINE_SPIN_LOCK
113	def_bool !DEBUG_SPINLOCK && !GENERIC_LOCKBREAK && ARCH_INLINE_SPIN_LOCK
 
114
115config INLINE_SPIN_LOCK_BH
116	def_bool !DEBUG_SPINLOCK && !GENERIC_LOCKBREAK && \
117		 ARCH_INLINE_SPIN_LOCK_BH
118
119config INLINE_SPIN_LOCK_IRQ
120	def_bool !DEBUG_SPINLOCK && !GENERIC_LOCKBREAK && \
121		 ARCH_INLINE_SPIN_LOCK_IRQ
122
123config INLINE_SPIN_LOCK_IRQSAVE
124	def_bool !DEBUG_SPINLOCK && !GENERIC_LOCKBREAK && \
125		 ARCH_INLINE_SPIN_LOCK_IRQSAVE
126
127config UNINLINE_SPIN_UNLOCK
128	bool
129
130config INLINE_SPIN_UNLOCK_BH
131	def_bool !DEBUG_SPINLOCK && ARCH_INLINE_SPIN_UNLOCK_BH
 
132
133config INLINE_SPIN_UNLOCK_IRQ
134	def_bool !DEBUG_SPINLOCK && (!PREEMPT || ARCH_INLINE_SPIN_UNLOCK_BH)
 
135
136config INLINE_SPIN_UNLOCK_IRQRESTORE
137	def_bool !DEBUG_SPINLOCK && ARCH_INLINE_SPIN_UNLOCK_IRQRESTORE
 
138
139
140config INLINE_READ_TRYLOCK
141	def_bool !DEBUG_SPINLOCK && ARCH_INLINE_READ_TRYLOCK
 
142
143config INLINE_READ_LOCK
144	def_bool !DEBUG_SPINLOCK && !GENERIC_LOCKBREAK && ARCH_INLINE_READ_LOCK
 
145
146config INLINE_READ_LOCK_BH
147	def_bool !DEBUG_SPINLOCK && !GENERIC_LOCKBREAK && \
148		 ARCH_INLINE_READ_LOCK_BH
149
150config INLINE_READ_LOCK_IRQ
151	def_bool !DEBUG_SPINLOCK && !GENERIC_LOCKBREAK && \
152		 ARCH_INLINE_READ_LOCK_IRQ
153
154config INLINE_READ_LOCK_IRQSAVE
155	def_bool !DEBUG_SPINLOCK && !GENERIC_LOCKBREAK && \
156		 ARCH_INLINE_READ_LOCK_IRQSAVE
157
158config INLINE_READ_UNLOCK
159	def_bool !DEBUG_SPINLOCK && (!PREEMPT || ARCH_INLINE_READ_UNLOCK)
 
160
161config INLINE_READ_UNLOCK_BH
162	def_bool !DEBUG_SPINLOCK && ARCH_INLINE_READ_UNLOCK_BH
 
163
164config INLINE_READ_UNLOCK_IRQ
165	def_bool !DEBUG_SPINLOCK && (!PREEMPT || ARCH_INLINE_READ_UNLOCK_BH)
 
166
167config INLINE_READ_UNLOCK_IRQRESTORE
168	def_bool !DEBUG_SPINLOCK && ARCH_INLINE_READ_UNLOCK_IRQRESTORE
 
169
170
171config INLINE_WRITE_TRYLOCK
172	def_bool !DEBUG_SPINLOCK && ARCH_INLINE_WRITE_TRYLOCK
 
173
174config INLINE_WRITE_LOCK
175	def_bool !DEBUG_SPINLOCK && !GENERIC_LOCKBREAK && ARCH_INLINE_WRITE_LOCK
 
176
177config INLINE_WRITE_LOCK_BH
178	def_bool !DEBUG_SPINLOCK && !GENERIC_LOCKBREAK && \
179		 ARCH_INLINE_WRITE_LOCK_BH
180
181config INLINE_WRITE_LOCK_IRQ
182	def_bool !DEBUG_SPINLOCK && !GENERIC_LOCKBREAK && \
183		 ARCH_INLINE_WRITE_LOCK_IRQ
184
185config INLINE_WRITE_LOCK_IRQSAVE
186	def_bool !DEBUG_SPINLOCK && !GENERIC_LOCKBREAK && \
187		 ARCH_INLINE_WRITE_LOCK_IRQSAVE
188
189config INLINE_WRITE_UNLOCK
190	def_bool !DEBUG_SPINLOCK && (!PREEMPT || ARCH_INLINE_WRITE_UNLOCK)
 
191
192config INLINE_WRITE_UNLOCK_BH
193	def_bool !DEBUG_SPINLOCK && ARCH_INLINE_WRITE_UNLOCK_BH
 
194
195config INLINE_WRITE_UNLOCK_IRQ
196	def_bool !DEBUG_SPINLOCK && (!PREEMPT || ARCH_INLINE_WRITE_UNLOCK_BH)
 
197
198config INLINE_WRITE_UNLOCK_IRQRESTORE
199	def_bool !DEBUG_SPINLOCK && ARCH_INLINE_WRITE_UNLOCK_IRQRESTORE
 
 
 
 
 
 
200
201config MUTEX_SPIN_ON_OWNER
202	def_bool SMP && !DEBUG_MUTEXES