mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-24 05:04:00 +08:00
drm/nouveau/gpio: expose the PWM/TOGGLE parameter found in the gpio vbios table
Signed-off-by: Martin Peres <martin.peres@labri.fr> Reviewed-by: Ben Skeggs <bskeggs@redhat.com> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
This commit is contained in:
parent
d89c8ce071
commit
e36199980b
@ -16,6 +16,13 @@ struct dcb_gpio_func {
|
||||
u8 func;
|
||||
u8 line;
|
||||
u8 log[2];
|
||||
|
||||
/* so far, "param" seems to only have an influence on PWM-related
|
||||
* GPIOs such as FAN_CONTROL and PANEL_BACKLIGHT_LEVEL.
|
||||
* if param equals 1, hardware PWM is available
|
||||
* if param equals 0, the host should toggle the GPIO itself
|
||||
*/
|
||||
u8 param;
|
||||
};
|
||||
|
||||
u16 dcb_gpio_table(struct nouveau_bios *);
|
||||
|
@ -71,6 +71,7 @@ dcb_gpio_parse(struct nouveau_bios *bios, int idx, u8 func, u8 line,
|
||||
.func = (data & 0x07e0) >> 5,
|
||||
.log[0] = (data & 0x1800) >> 11,
|
||||
.log[1] = (data & 0x6000) >> 13,
|
||||
.param = !!(data & 0x8000),
|
||||
};
|
||||
} else
|
||||
if (ver < 0x41) {
|
||||
@ -80,6 +81,7 @@ dcb_gpio_parse(struct nouveau_bios *bios, int idx, u8 func, u8 line,
|
||||
.func = (data & 0x0000ff00) >> 8,
|
||||
.log[0] = (data & 0x18000000) >> 27,
|
||||
.log[1] = (data & 0x60000000) >> 29,
|
||||
.param = !!(data & 0x80000000),
|
||||
};
|
||||
} else {
|
||||
u32 data = nv_ro32(bios, entry + 0);
|
||||
@ -89,6 +91,7 @@ dcb_gpio_parse(struct nouveau_bios *bios, int idx, u8 func, u8 line,
|
||||
.func = (data & 0x0000ff00) >> 8,
|
||||
.log[0] = (data1 & 0x30) >> 4,
|
||||
.log[1] = (data1 & 0xc0) >> 6,
|
||||
.param = !!(data & 0x80000000),
|
||||
};
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user