diff options
author | Hauke Mehrtens <hauke@hauke-m.de> | 2021-06-05 17:58:16 +0200 |
---|---|---|
committer | Hauke Mehrtens <hauke@hauke-m.de> | 2021-06-05 17:58:16 +0200 |
commit | 3f50da76212263fff90603eb9e9bbcacfc86752b (patch) | |
tree | ae08493db95cdc291197d4caff8ed371b2c5eaa3 | |
parent | 1c5ac6320840533fe6767122b65f27ced3699a53 (diff) | |
download | backports-3f50da76212263fff90603eb9e9bbcacfc86752b.tar.gz |
header: Add fsleep()
This was added in upstream Linux commit c6af13d33475 ("timer: add fsleep
for flexible sleeping") and is now used by the rtw88 driver.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
-rw-r--r-- | backport/backport-include/linux/delay.h | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/backport/backport-include/linux/delay.h b/backport/backport-include/linux/delay.h new file mode 100644 index 00000000..c19f4322 --- /dev/null +++ b/backport/backport-include/linux/delay.h @@ -0,0 +1,21 @@ +#ifndef __BACKPORT_LINUX_DELAY_H +#define __BACKPORT_LINUX_DELAY_H +#include_next <linux/delay.h> + +#include <linux/version.h> + +#if LINUX_VERSION_IS_LESS(5,8,0) +#define fsleep LINUX_BACKPORT(fsleep) +/* see Documentation/timers/timers-howto.rst for the thresholds */ +static inline void fsleep(unsigned long usecs) +{ + if (usecs <= 10) + udelay(usecs); + else if (usecs <= 20000) + usleep_range(usecs, 2 * usecs); + else + msleep(DIV_ROUND_UP(usecs, 1000)); +} +#endif /* < 5.8.0 */ + +#endif /* __BACKPORT_LINUX_DELAY_H */ |