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...