rtl8723ds: Use CONFIG_PREEMPT_RT to select raw spin lock form for real-time kernels

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
This commit is contained in:
Larry Finger 2021-03-24 20:58:13 -05:00
parent 9837ccab16
commit f3167881f4

View File

@ -144,7 +144,11 @@
typedef struct semaphore _sema; typedef struct semaphore _sema;
#ifdef CONFIG_PREEMPT_RT
typedef raw_spinlock_t _lock;
#else
typedef spinlock_t _lock; typedef spinlock_t _lock;
#endif
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 37)) #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 37))
typedef struct mutex _mutex; typedef struct mutex _mutex;
#else #else
@ -224,6 +228,23 @@ __inline static _list *get_list_head(_queue *queue)
((type *)((char *)(ptr)-(SIZE_T)(&((type *)0)->member))) ((type *)((char *)(ptr)-(SIZE_T)(&((type *)0)->member)))
#ifdef CONFIG_PREEMPT_RT
__inline static void _enter_critical(_lock *plock, unsigned long *pirqL)
{
raw_spin_lock_irqsave(plock, *pirqL);
}
__inline static void _exit_critical(_lock *plock, unsigned long *pirqL)
{
raw_spin_unlock_irqrestore(plock, *pirqL);
}
__inline static void _enter_critical_ex(_lock *plock, unsigned long *pirqL)
{
raw_spin_lock_irqsave(plock, *pirqL);
}
#else
__inline static void _enter_critical(_lock *plock, _irqL *pirqL) __inline static void _enter_critical(_lock *plock, _irqL *pirqL)
{ {
spin_lock_irqsave(plock, *pirqL); spin_lock_irqsave(plock, *pirqL);
@ -238,6 +259,7 @@ __inline static void _enter_critical_ex(_lock *plock, _irqL *pirqL)
{ {
spin_lock_irqsave(plock, *pirqL); spin_lock_irqsave(plock, *pirqL);
} }
#endif
__inline static void _exit_critical_ex(_lock *plock, _irqL *pirqL) __inline static void _exit_critical_ex(_lock *plock, _irqL *pirqL)
{ {