search for: args_buff

Displaying 12 results from an estimated 12 matches for "args_buff".

2016 May 19
2
[PATCH] gpu/nouveau/nouveau_acpi.c: Fix Type Mismatch ACPI warning
...nouveau_acpi.c > +++ b/drivers/gpu/drm/nouveau/nouveau_acpi.c > @@ -73,22 +73,10 @@ static const char nouveau_op_dsm_muid[] = { > > static int nouveau_optimus_dsm(acpi_handle handle, int func, int arg, uint32_t *result) > { > - int i; > union acpi_object *obj; > - char args_buff[4]; > - union acpi_object argv4 = { > - .buffer.type = ACPI_TYPE_BUFFER, > - .buffer.length = 4, > - .buffer.pointer = args_buff > - }; > - > - /* ACPI is little endian, AABBCCDD becomes {DD,CC,BB,AA} */ > - for (i = 0; i < 4; i++) > - args_buff[i] = (arg >>...
2015 Jan 17
0
[PATCH RFC] nouveau: Add support for Gmux _DSM method
...arg, uint32_t *result) { int i; @@ -212,6 +225,63 @@ static struct vga_switcheroo_handler nouveau_dsm_handler = { .get_client_id = nouveau_dsm_get_client_id, }; +static int nouveau_gmux_dsm(acpi_handle handle, int func, int arg, uint32_t *result) +{ + int i; + union acpi_object *obj; + char args_buff[4]; + union acpi_object argv4 = { + .buffer.type = ACPI_TYPE_BUFFER, + .buffer.length = 4, + .buffer.pointer = args_buff + }; + + /* ACPI is little endian, AABBCCDD becomes {DD,CC,BB,AA} */ + for (i = 0; i < 4; i++) + args_buff[i] = (arg >> i * 8) & 0xFF; + + *result = 0; + obj = a...
2015 May 25
2
[PATCH 5/8] acpi: Check returned object type by Optimus _DSM locally
...ouveau/nouveau_acpi.c > index 073f7d7..7aeaf7d 100644 > --- a/drm/nouveau/nouveau_acpi.c > +++ b/drm/nouveau/nouveau_acpi.c > @@ -88,12 +88,12 @@ static int nouveau_evaluate_optimus_dsm(acpi_handle handle, int func, int arg, u > for (i = 0; i < 4; i++) > args_buff[i] = (arg >> i * 8) & 0xFF; > > - obj = acpi_evaluate_dsm_typed(handle, nouveau_op_dsm_muid, nouveau_op_dsm_rid, > - func, &argv4, ACPI_TYPE_BUFFER); > + obj = acpi_evaluate_dsm(handle, nouveau_op_dsm_muid, nouveau_op_dsm_rid...
2016 May 20
0
[PATCH] gpu/nouveau/nouveau_acpi.c: Fix Type Mismatch ACPI warning
...nouveau_acpi.c > > @@ -73,22 +73,10 @@ static const char nouveau_op_dsm_muid[] = { > > > > static int nouveau_optimus_dsm(acpi_handle handle, int func, int arg, > uint32_t *result) > > { > > - int i; > > union acpi_object *obj; > > - char args_buff[4]; > > - union acpi_object argv4 = { > > - .buffer.type = ACPI_TYPE_BUFFER, > > - .buffer.length = 4, > > - .buffer.pointer = args_buff > > - }; > > - > > - /* ACPI is little endian, AABBCCDD becomes {DD,CC,B...
2015 May 26
2
[PATCH 5/8] acpi: Check returned object type by Optimus _DSM locally
...d7..7aeaf7d 100644 >>> --- a/drm/nouveau/nouveau_acpi.c >>> +++ b/drm/nouveau/nouveau_acpi.c >>> @@ -88,12 +88,12 @@ static int nouveau_evaluate_optimus_dsm(acpi_handle handle, int func, int arg, u >>> for (i = 0; i < 4; i++) >>> args_buff[i] = (arg >> i * 8) & 0xFF; >>> >>> - obj = acpi_evaluate_dsm_typed(handle, nouveau_op_dsm_muid, nouveau_op_dsm_rid, >>> - func, &argv4, ACPI_TYPE_BUFFER); >>> + obj = acpi_evaluate_dsm(handle, nouveau...
2015 May 25
15
[PATCH 1/8] acpi: Rename v1 DSM to mux to avoid ambiguity
This is especially true when variables or functions are just called dsm without precising the v1. Signed-off-by: Pierre Moreau <pierre.morrow at free.fr> --- drm/nouveau/nouveau_acpi.c | 64 +++++++++++++++++++++++----------------------- drm/nouveau/nouveau_acpi.h | 4 +-- drm/nouveau/nouveau_drm.c | 4 +-- drm/nouveau/nouveau_vga.c | 10 ++++---- 4 files changed, 41 insertions(+), 41
2018 Nov 28
0
4.20.0-rc3 nouveau/Quadro P2000 Mobile: runpm causing ACPI errors, lockups
...t looks like coming from the nouveau driver (assuming I'm reading it right). drivers/gpu/drm/nouveau/nouveau_acpi.c::nouveau_optimus_dsm() union acpi_object argv4 = { .buffer.type = ACPI_TYPE_BUFFER, .buffer.length = 4, .buffer.pointer = args_buff }; ... obj = acpi_evaluate_dsm_typed(handle, &nouveau_op_dsm_muid, 0x00000100, func, &argv4, ACPI_TYPE_BUFFER); It passes ACPI_TYPE_BUFFER but ACPI spec _DSM expects package. > > > [ 3.971745] nouveau 0000:01:00....
2015 May 28
12
[PATCH v2 1/9] acpi: Rename v1 DSM to mux to avoid ambiguity
This is especially true when variables or functions are just called dsm without specifying the v1. Changes since v1: * Fix typo in commit explanation * Change has_dsm to has_mux in nouveau_dsm_detect Signed-off-by: Pierre Moreau <pierre.morrow at free.fr> --- drm/nouveau/nouveau_acpi.c | 72 +++++++++++++++++++++++----------------------- drm/nouveau/nouveau_acpi.h | 4 +--
2018 Nov 28
2
4.20.0-rc3 nouveau/Quadro P2000 Mobile: runpm causing ACPI errors, lockups
On Tue, Nov 27, 2018 at 11:36:50AM +0200, Mika Westerberg wrote: > +linux-acpi > > Hi Michael, > > On Mon, Nov 26, 2018 at 10:53:26PM -0500, Michael S. Tsirkin wrote: > > So a new thinkpad: > > 01:00.0 VGA compatible controller: NVIDIA Corporation GP107GLM [Quadro P2000 Mobile] (rev a1) > > > > Hangs whenever I try to poke at the card. It starts happily
2018 Nov 28
2
4.20.0-rc3 nouveau/Quadro P2000 Mobile: runpm causing ACPI errors, lockups
...u driver (assuming I'm reading it right). > > drivers/gpu/drm/nouveau/nouveau_acpi.c::nouveau_optimus_dsm() > > union acpi_object argv4 = { > .buffer.type = ACPI_TYPE_BUFFER, > .buffer.length = 4, > .buffer.pointer = args_buff > }; > > ... > > obj = acpi_evaluate_dsm_typed(handle, &nouveau_op_dsm_muid, 0x00000100, > func, &argv4, ACPI_TYPE_BUFFER); > > > It passes ACPI_TYPE_BUFFER but ACPI spec _DSM expects package. Yea...
2017 May 04
0
[PATCH v1] ACPI: Switch to use generic UUID API
...t; + 0xA7, 0x2B, 0x60, 0x42, 0xA6, 0xB5, 0xBE, 0xE0); > > static int nouveau_optimus_dsm(acpi_handle handle, int func, int arg, uint32_t *result) > { > @@ -86,7 +84,7 @@ static int nouveau_optimus_dsm(acpi_handle handle, int func, int arg, uint32_t * > args_buff[i] = (arg >> i * 8) & 0xFF; > > *result = 0; > - obj = acpi_evaluate_dsm_typed(handle, nouveau_op_dsm_muid, 0x00000100, > + obj = acpi_evaluate_dsm_typed(handle, &nouveau_op_dsm_muid, 0x00000100, > func, &arg...
2017 May 04
12
[PATCH v1] ACPI: Switch to use generic UUID API
...op_dsm_muid = + UUID_LE(0xA486D8F8, 0x0BDA, 0x471B, + 0xA7, 0x2B, 0x60, 0x42, 0xA6, 0xB5, 0xBE, 0xE0); static int nouveau_optimus_dsm(acpi_handle handle, int func, int arg, uint32_t *result) { @@ -86,7 +84,7 @@ static int nouveau_optimus_dsm(acpi_handle handle, int func, int arg, uint32_t * args_buff[i] = (arg >> i * 8) & 0xFF; *result = 0; - obj = acpi_evaluate_dsm_typed(handle, nouveau_op_dsm_muid, 0x00000100, + obj = acpi_evaluate_dsm_typed(handle, &nouveau_op_dsm_muid, 0x00000100, func, &argv4, ACPI_TYPE_BUFFER); if (!obj) { acpi_handle_info(handle, &qu...