diff options
author | Takashi Iwai <tiwai@suse.de> | 2022-09-01 16:42:04 +0200 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2022-09-01 16:42:04 +0200 |
commit | 5136dc8c4b85a47d327b4efc93226ad651c0cb02 (patch) | |
tree | e9714f8f56876109ae6abc1b098bb7960f82e9c9 | |
parent | 9dc3b624bfcc4a915218d3f32a90857f44a74f87 (diff) | |
download | hda-emu-5136dc8c4b85a47d327b4efc93226ad651c0cb02.tar.gz |
Workaround for 6.0
-rw-r--r-- | include/asm/bug.h | 0 | ||||
-rw-r--r-- | include/asm/cache.h | 0 | ||||
-rw-r--r-- | include/asm/div64.h | 0 | ||||
-rw-r--r-- | include/asm/rwonce.h | 0 | ||||
-rw-r--r-- | include/asm/timex.h | 0 | ||||
-rw-r--r-- | include/generated/timeconst.h | 0 | ||||
-rw-r--r-- | include/linux/bitmap.h | 2 | ||||
-rw-r--r-- | include/linux/component.h | 1 | ||||
-rw-r--r-- | include/linux/delay.h | 2 | ||||
-rw-r--r-- | include/linux/err.h | 4 | ||||
-rw-r--r-- | include/linux/iopoll.h | 9 | ||||
-rw-r--r-- | include/linux/jiffies.h | 0 | ||||
-rw-r--r-- | include/linux/ktime.h | 23 | ||||
-rw-r--r-- | include/linux/pci.h | 18 | ||||
-rw-r--r-- | include/linux/pm.h | 10 | ||||
-rw-r--r-- | include/linux/sysfs.h | 3 | ||||
-rw-r--r-- | include/linux/time.h | 0 | ||||
-rw-r--r-- | include/uapi/linux/time.h | 0 | ||||
-rw-r--r-- | include/wrapper.h | 33 | ||||
-rw-r--r-- | snd-wrapper.c | 10 |
20 files changed, 101 insertions, 14 deletions
diff --git a/include/asm/bug.h b/include/asm/bug.h new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/include/asm/bug.h diff --git a/include/asm/cache.h b/include/asm/cache.h new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/include/asm/cache.h diff --git a/include/asm/div64.h b/include/asm/div64.h new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/include/asm/div64.h diff --git a/include/asm/rwonce.h b/include/asm/rwonce.h new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/include/asm/rwonce.h diff --git a/include/asm/timex.h b/include/asm/timex.h new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/include/asm/timex.h diff --git a/include/generated/timeconst.h b/include/generated/timeconst.h new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/include/generated/timeconst.h diff --git a/include/linux/bitmap.h b/include/linux/bitmap.h index 68daf42..f7fcd4c 100644 --- a/include/linux/bitmap.h +++ b/include/linux/bitmap.h @@ -3,7 +3,9 @@ #include "wrapper.h" +#ifndef BITS_PER_LONG #define BITS_PER_LONG (sizeof(long) * 8) +#endif #define BITS_TO_LONGS(bits) (((bits) + BITS_PER_LONG - 1) / BITS_PER_LONG) #define BIT(nr) (1UL << (nr)) #define BIT_MASK(nr) (1UL << ((nr) % BITS_PER_LONG)) diff --git a/include/linux/component.h b/include/linux/component.h index 10a657e..3bdeff3 100644 --- a/include/linux/component.h +++ b/include/linux/component.h @@ -45,4 +45,5 @@ static inline void component_match_add(struct device *master, compare_data); } +static int component_compare_dev_name(struct device *dev, void *p) { return 0; } #endif diff --git a/include/linux/delay.h b/include/linux/delay.h index 1b93c8d..9e4f51e 100644 --- a/include/linux/delay.h +++ b/include/linux/delay.h @@ -6,7 +6,7 @@ static inline void udelay(unsigned long x) {} static inline void msleep(unsigned long x) {} static inline void ssleep(unsigned long x) {} static inline void usleep_range(unsigned long min, unsigned long max) {} -#define HZ 1000 +// #define HZ 1000 #define msecs_to_jiffies(x) (x) #endif /* __LINUX_DELAY_H */ diff --git a/include/linux/err.h b/include/linux/err.h index 627729d..049597e 100644 --- a/include/linux/err.h +++ b/include/linux/err.h @@ -11,10 +11,6 @@ */ #define MAX_ERRNO 4095 -#define __must_check -#define __force -#define unlikely(x) x - #define IS_ERR_VALUE(x) unlikely((x) >= (unsigned long)-MAX_ERRNO) static inline void * __must_check ERR_PTR(long error) diff --git a/include/linux/iopoll.h b/include/linux/iopoll.h new file mode 100644 index 0000000..12a7aa5 --- /dev/null +++ b/include/linux/iopoll.h @@ -0,0 +1,9 @@ +#ifndef _LINUX_IOPOLL_H +#define _LINUX_IOPOLL_H + +#define readb_poll_timeout(addr, val, cond, delay_us, timeout_us) ({0;}) +#define readw_poll_timeout(addr, val, cond, delay_us, timeout_us) ({0;}) +#define readl_poll_timeout(addr, val, cond, delay_us, timeout_us) ({0;}) + +#endif + diff --git a/include/linux/jiffies.h b/include/linux/jiffies.h new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/include/linux/jiffies.h diff --git a/include/linux/ktime.h b/include/linux/ktime.h new file mode 100644 index 0000000..ae1b872 --- /dev/null +++ b/include/linux/ktime.h @@ -0,0 +1,23 @@ +#ifndef _LINUX_KTIME_H +#define _LINUX_KTIME_H + +typedef s64 ktime_t; +#define NSEC_PER_SEC 1000000000L +#define NSEC_PER_USEC 1000L +#define ktime_add_ns(kt, nsval) ((kt) + (nsval)) + +static inline ktime_t ktime_add_us(const ktime_t kt, const u64 usec) +{ + return ktime_add_ns(kt, usec * NSEC_PER_USEC); +} + +static inline int ktime_compare(const ktime_t cmp1, const ktime_t cmp2) +{ + if (cmp1 < cmp2) + return -1; + if (cmp1 > cmp2) + return 1; + return 0; +} + +#endif diff --git a/include/linux/pci.h b/include/linux/pci.h index 964309e..7a9281e 100644 --- a/include/linux/pci.h +++ b/include/linux/pci.h @@ -34,12 +34,18 @@ static inline int pci_read_config_word(struct pci_dev *dev, int where, u16 *val) * FIXME: dummy functions for ca0132 */ -static inline void writeb(unsigned char val, void *addr) {} -static inline unsigned char readb(void *addr) { return 0; } -static inline void writew(unsigned short val, void *addr) {} -static inline unsigned short readw(void *addr) { return 0; } -static inline void writel(unsigned int val, void *addr) {} -static inline unsigned int readl(void *addr) { return 0; } +static inline void writeb(unsigned char val, volatile void *addr) {} +static inline unsigned char readb(const volatile void *addr) { return 0; } +static inline void writew(unsigned short val, volatile void *addr) {} +static inline unsigned short readw(const volatile void *addr) { return 0; } +static inline void writel(unsigned int val, volatile void *addr) {} +static inline void writel_relaxed(unsigned int val, volatile void *addr) {} +static inline unsigned int readl(const volatile void *addr) { return 0; } +static inline unsigned int readl_relaxed(const volatile void *addr) { return 0; } +static inline u32 ioread32(const volatile void *addr) { return 0; } +static inline u32 ioread32be(const volatile void *addr) { return 0; } +static inline void iowrite32(unsigned int val, volatile void *addr) {} +static inline void iowrite32be(unsigned int val, volatile void *addr) {} static inline void *pci_iomap(struct pci_dev *pci, int bar, int offset) { diff --git a/include/linux/pm.h b/include/linux/pm.h index 76bb72c..46fbd2e 100644 --- a/include/linux/pm.h +++ b/include/linux/pm.h @@ -42,9 +42,19 @@ typedef struct pm_message { #define PMSG_AUTO_RESUME ((struct pm_message) \ { .event = PM_EVENT_AUTO_RESUME, }) +enum rpm_status { + RPM_INVALID = -1, + RPM_ACTIVE = 0, + RPM_RESUMING, + RPM_SUSPENDED, + RPM_SUSPENDING, +}; + /* stripped version */ struct dev_pm_info { pm_message_t power_state; + unsigned int runtime_auto:1; + enum rpm_status runtime_status; }; /* stripped version */ diff --git a/include/linux/sysfs.h b/include/linux/sysfs.h index 67de1f3..7a8b3a7 100644 --- a/include/linux/sysfs.h +++ b/include/linux/sysfs.h @@ -75,4 +75,7 @@ static inline int add_uevent_var(struct kobj_uevent_env *env, const char *fmt, return 0; } +#define sysfs_emit(buf, fmt, ...) snprintf(buf, PAGE_SIZE, fmt, ##__VA_ARGS__) +#define sysfs_emit_at(buf, ofs, fmt, ...) snprintf(buf + ofs, PAGE_SIZE, fmt, ##__VA_ARGS__) + #endif /* __LINUX_SYSFS_H */ diff --git a/include/linux/time.h b/include/linux/time.h new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/include/linux/time.h diff --git a/include/uapi/linux/time.h b/include/uapi/linux/time.h new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/include/uapi/linux/time.h diff --git a/include/wrapper.h b/include/wrapper.h index b2924f9..de30c03 100644 --- a/include/wrapper.h +++ b/include/wrapper.h @@ -79,6 +79,9 @@ #define KERN_WARNING "<4>" #define KERN_ERR "<3>" +#undef HZ +#define HZ 250 + #define pr_fmt(fmt) fmt #define pr_emerg(fmt, ...) \ printk(KERN_EMERG pr_fmt(fmt), ##__VA_ARGS__) @@ -103,6 +106,7 @@ /* FIXME */ #define scnprintf snprintf +#if 0 typedef uint64_t u64; typedef uint64_t __u64; typedef int64_t s64; @@ -119,6 +123,9 @@ typedef uint8_t u8; typedef uint8_t __u8; typedef int8_t s8; typedef int8_t __s8; +#else +#include <asm-generic/int-ll64.h> +#endif #define USHRT_MAX ((u16)(~0U)) #define SHRT_MAX ((s16)(USHRT_MAX>>1)) @@ -149,12 +156,28 @@ typedef unsigned long dma_addr_t; typedef unsigned long kernel_ulong_t; typedef unsigned int uuid_le; +typedef long __kernel_long_t; +typedef unsigned long __kernel_ulong_t; +typedef long long __kernel_time64_t; +typedef long __kernel_old_time_t; +typedef long __kernel_suseconds_t; + #define PAGE_SIZE 4096 +#ifndef __user #define __user +#endif +#ifndef __bitwise #define __bitwise +#endif +#ifndef __iomem #define __iomem +#endif +#ifndef __must_check #define __must_check +#endif +#define __force +#define unlikely(x) x #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0])) @@ -380,4 +403,14 @@ typedef int wait_queue_entry_t; #define snd_dma_alloc_pages(type, dev, size, dp) 0 #define snd_dma_free_pages(dp) +# define do_div(n,base) ({ \ + uint32_t __base = (base); \ + uint32_t __rem; \ + __rem = ((uint64_t)(n)) % __base; \ + (n) = ((uint64_t)(n)) / __base; \ + __rem; \ + }) + +#define might_sleep_if(cond) + #endif /* __HDA_WRAPPER_H */ diff --git a/snd-wrapper.c b/snd-wrapper.c index cf296c9..8e3e00e 100644 --- a/snd-wrapper.c +++ b/snd-wrapper.c @@ -968,9 +968,9 @@ void ledtrig_audio_set(enum led_audio type, enum led_brightness state) led_devs[type]->brightness_set_blocking(led_devs[type], state); } -int devm_led_classdev_register_ext(struct device *parent, - struct led_classdev *led_cdev, - struct led_init_data *init_data) +int led_classdev_register_ext(struct device *parent, + struct led_classdev *led_cdev, + struct led_init_data *init_data) { if (!strcmp(led_cdev->name, "hda::mute")) { led_devs[LED_AUDIO_MUTE] = led_cdev; @@ -985,6 +985,10 @@ int devm_led_classdev_register_ext(struct device *parent, return 0; } +void led_classdev_unregister(struct led_classdev *led_cdev) +{ +} + #ifdef SNDRV_CTL_ELEM_ACCESS_SPK_LED /* XXX called from hda-ctlsh.c */ void __led_trigger(unsigned int flags, long *vals) |