[PATCH v2 08/13] drivers/gpio: Stop using 32-bit MSR interfaces
Juergen Gross <[email protected]>
| Newsgroups | org.kernel.vger.linux-gpio,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <[email protected]> |
The 32-bit MSR interfaces rdmsr() and wrmsr() are planned to be removed. Use the related 64-bit variants instead. Signed-off-by: Juergen Gross <[email protected]> Acked-by: Bartosz Golaszewski <[email protected]> --- drivers/gpio/gpio-cs5535.c | 10 +++++----- include/linux/cs5535.h | 10 +++++----- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/drivers/gpio/gpio-cs5535.c b/drivers/gpio/gpio-cs5535.c index 5f5373d86397..a97ec7561889 100644 --- a/drivers/gpio/gpio-cs5535.c +++ b/drivers/gpio/gpio-cs5535.c @@ -143,17 +143,17 @@ EXPORT_SYMBOL_GPL(cs5535_gpio_isset); int cs5535_gpio_set_irq(unsigned group, unsigned irq) { - uint32_t lo, hi; + struct msr val; if (group > 7 || irq > 15) return -EINVAL; - rdmsr(MSR_PIC_ZSEL_HIGH, lo, hi); + rdmsrq(MSR_PIC_ZSEL_HIGH, val.q); - lo &= ~(0xF << (group * 4)); - lo |= (irq & 0xF) << (group * 4); + val.l &= ~(0xF << (group * 4)); + val.l |= (irq & 0xF) << (group * 4); - wrmsr(MSR_PIC_ZSEL_HIGH, lo, hi); + wrmsrq(MSR_PIC_ZSEL_HIGH, val.q); return 0; } EXPORT_SYMBOL_GPL(cs5535_gpio_set_irq); diff --git a/include/linux/cs5535.h b/include/linux/cs5535.h index 2be1120174eb..5ec2aca537bb 100644 --- a/include/linux/cs5535.h +++ b/include/linux/cs5535.h @@ -49,12 +49,12 @@ static inline int cs5535_pic_unreqz_select_high(unsigned int group, unsigned int irq) { - uint32_t lo, hi; + struct msr val; - rdmsr(MSR_PIC_ZSEL_HIGH, lo, hi); - lo &= ~(0xF << (group * 4)); - lo |= (irq & 0xF) << (group * 4); - wrmsr(MSR_PIC_ZSEL_HIGH, lo, hi); + rdmsrq(MSR_PIC_ZSEL_HIGH, val.q); + val.l &= ~(0xF << (group * 4)); + val.l |= (irq & 0xF) << (group * 4); + wrmsrq(MSR_PIC_ZSEL_HIGH, val.q); return 0; } -- 2.55.0