x86/olpc: Stop using 32-bit MSR interfaces

The 32-bit MSR interface rdmsr() is planned to be removed. Use the
related 64-bit variant instead.

Signed-off-by: Juergen Gross <jgross@suse.com>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Link: https://patch.msgid.link/20260629060526.3638272-29-jgross@suse.com
This commit is contained in:
Juergen Gross
2026-06-29 08:05:19 +02:00
committed by Ingo Molnar
parent f1b5991064
commit 2db442843e

View File

@@ -311,12 +311,13 @@ static int xo1_sci_resume(struct platform_device *pdev)
static int setup_sci_interrupt(struct platform_device *pdev)
{
u32 lo, hi;
u64 msr;
u32 lo;
u32 sts;
int r;
rdmsr(0x51400020, lo, hi);
sci_irq = (lo >> 20) & 15;
rdmsrq(0x51400020, msr);
sci_irq = (msr >> 20) & 15;
if (sci_irq) {
dev_info(&pdev->dev, "SCI is mapped to IRQ %d\n", sci_irq);
@@ -324,8 +325,8 @@ static int setup_sci_interrupt(struct platform_device *pdev)
/* Zero means masked */
dev_info(&pdev->dev, "SCI unmapped. Mapping to IRQ 3\n");
sci_irq = 3;
lo |= 0x00300000;
wrmsrq(0x51400020, lo);
msr |= 0x00300000;
wrmsrq(0x51400020, msr);
}
/* Select level triggered in PIC */