All of lore.kernel.org
 help / color / mirror / Atom feed
From: Samuel Pitoiset <samuel.pitoiset-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
To: Pierre Moreau <pierre.morrow-GANU6spQydw@public.gmane.org>,
	nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org
Cc: bskeggs-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org,
	dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org
Subject: Re: [PATCH 8/8] acpi: Use booleans when probing different _DSM types
Date: Tue, 26 May 2015 22:42:10 +0200	[thread overview]
Message-ID: <5564DAA2.2070800@gmail.com> (raw)
In-Reply-To: <1279603096.13154002.1432644369153.JavaMail.root-x5ewXQG5twBsFmKuirFwRhh1pbbyJDp15NbjCUgZEJk@public.gmane.org>



On 05/26/2015 02:46 PM, Pierre Moreau wrote:
> I'm thinking of re-writing this patch to just OR the different returned retval and test for individual bits directly in the final conditionals.
> So this would give something like:
>
>
> int retval = 0;
>
> while ((pdev = pci_get_class(PCI_CLASS_DISPLAY_VGA << 8, pdev)) != NULL) {
> 	vga_count++;
> 	retval |= nouveau_dsm_pci_probe(pdev);
> }
> while ((pdev = pci_get_class(PCI_CLASS_DISPLAY_3D << 8, pdev)) != NULL) {
> 	vga_count++;
> 	retval |= nouveau_dsm_pci_probe(pdev);
> }
>
> if (retval & NOUVEAU_DSM_HAS_OPT) {
> 	acpi_get_name(nouveau_dsm_priv.dhandle, ACPI_FULL_PATHNAME,
> 		&buffer);
> 	printk(KERN_INFO "VGA switcheroo: detected Optimus DSM method %s handle\n",
> 		acpi_method_name);
> 	nouveau_dsm_priv.optimus_detected = true;
> 	ret = true;
> } else if (vga_count == 2 && (retval & NOUVEAU_DSM_HAS_MUX) && guid_valid) {
> 	acpi_get_name(nouveau_dsm_priv.dhandle, ACPI_FULL_PATHNAME,
> 		&buffer);
> 	printk(KERN_INFO "VGA switcheroo: detected mux DSM switching method %s handle\n",
> 		acpi_method_name);
> 	nouveau_dsm_priv.mux_detected = true;
> 	ret = true;
> } else if (retval & NOUVEAU_DSM_HAS_GMUX) {
> 	acpi_get_name(nouveau_dsm_priv.dhandle, ACPI_FULL_PATHNAME,
> 		&buffer);
> 	printk(KERN_INFO "VGA switcheroo: detected gmux DSM switching method %s handle\n",
> 		acpi_method_name);
> 	nouveau_dsm_priv.gmux_detected = true;
> 	ret = true;
> }
>
>
> Any opinions on this?

If this improves readability of the code, go ahead.

>
> Pierre
>
> ----- Mail original -----
>> Signed-off-by: Pierre Moreau <pierre.morrow@free.fr>
>> ---
>>   drm/nouveau/nouveau_acpi.c | 14 +++++++-------
>>   1 file changed, 7 insertions(+), 7 deletions(-)
>>
>> diff --git a/drm/nouveau/nouveau_acpi.c b/drm/nouveau/nouveau_acpi.c
>> index 3d6a1ea..5d63621 100644
>> --- a/drm/nouveau/nouveau_acpi.c
>> +++ b/drm/nouveau/nouveau_acpi.c
>> @@ -297,8 +297,8 @@ static bool nouveau_dsm_detect(void)
>>   	char acpi_method_name[255] = { 0 };
>>   	struct acpi_buffer buffer = {sizeof(acpi_method_name),
>>   	acpi_method_name};
>>   	struct pci_dev *pdev = NULL;
>> -	int has_dsm = 0;
>> -	int has_optimus = 0;
>> +	bool has_mux = false;
>> +	bool has_optimus = false;
>>   	bool has_gmux = false;
>>   	int vga_count = 0;
>>   	bool guid_valid;
>> @@ -317,9 +317,9 @@ static bool nouveau_dsm_detect(void)
>>   
>>   		retval = nouveau_dsm_pci_probe(pdev);
>>   		if (retval & NOUVEAU_DSM_HAS_MUX)
>> -			has_dsm |= 1;
>> +			has_mux = true;
>>   		if (retval & NOUVEAU_DSM_HAS_OPT)
>> -			has_optimus = 1;
>> +			has_optimus = true;
>>   		if (retval & NOUVEAU_DSM_HAS_GMUX)
>>   			has_gmux = true;
>>   	}
>> @@ -329,9 +329,9 @@ static bool nouveau_dsm_detect(void)
>>   
>>   		retval = nouveau_dsm_pci_probe(pdev);
>>   		if (retval & NOUVEAU_DSM_HAS_MUX)
>> -			has_dsm |= 1;
>> +			has_mux = true;
>>   		if (retval & NOUVEAU_DSM_HAS_OPT)
>> -			has_optimus = 1;
>> +			has_optimus = true;
>>   		if (retval & NOUVEAU_DSM_HAS_GMUX)
>>   			has_gmux = true;
>>   	}
>> @@ -344,7 +344,7 @@ static bool nouveau_dsm_detect(void)
>>   			acpi_method_name);
>>   		nouveau_dsm_priv.optimus_detected = true;
>>   		ret = true;
>> -	} else if (vga_count == 2 && has_dsm && guid_valid) {
>> +	} else if (vga_count == 2 && has_mux && guid_valid) {
>>   		acpi_get_name(nouveau_dsm_priv.dhandle, ACPI_FULL_PATHNAME,
>>   			&buffer);
>>   		printk(KERN_INFO "VGA switcheroo: detected mux DSM switching
>>   		method %s handle\n",
>> --
>> 2.4.1
>>
>> _______________________________________________
>> dri-devel mailing list
>> dri-devel@lists.freedesktop.org
>> http://lists.freedesktop.org/mailman/listinfo/dri-devel
>>
> _______________________________________________
> Nouveau mailing list
> Nouveau@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/nouveau

_______________________________________________
Nouveau mailing list
Nouveau@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/nouveau

  parent reply	other threads:[~2015-05-26 20:42 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-05-25 22:22 [PATCH 1/8] acpi: Rename v1 DSM to mux to avoid ambiguity Pierre Moreau
     [not found] ` <1432592573-13743-1-git-send-email-pierre.morrow-GANU6spQydw@public.gmane.org>
2015-05-25 22:22   ` [PATCH 2/8] acpi: Add evaluate to functons evaluating _DSM Pierre Moreau
     [not found]     ` <1432592573-13743-2-git-send-email-pierre.morrow-GANU6spQydw@public.gmane.org>
2015-05-26  8:01       ` Samuel Pitoiset
     [not found]         ` <5564284F.3080406-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2015-05-28  2:59           ` Dave Airlie
2015-05-25 22:22   ` [PATCH 5/8] acpi: Check returned object type by Optimus _DSM locally Pierre Moreau
2015-05-25 22:39     ` [Nouveau] " Ilia Mirkin
2015-05-26  5:10       ` Pierre Moreau
     [not found]         ` <84DFBDB0-0382-479C-8019-7CD888B7B466-GANU6spQydw@public.gmane.org>
2015-05-26  5:17           ` Ilia Mirkin
2015-05-26  8:26             ` [Nouveau] " Pierre Moreau
     [not found]               ` <754009E0-60CD-4E58-BA04-5FF8F3315E23-GANU6spQydw@public.gmane.org>
2015-05-28  3:03                 ` Dave Airlie
     [not found]     ` <1432592573-13743-5-git-send-email-pierre.morrow-GANU6spQydw@public.gmane.org>
2015-05-26  8:08       ` Samuel Pitoiset
2015-05-25 22:22   ` [PATCH 8/8] acpi: Use booleans when probing different _DSM types Pierre Moreau
     [not found]     ` <1432592573-13743-8-git-send-email-pierre.morrow-GANU6spQydw@public.gmane.org>
2015-05-26 12:46       ` Pierre Moreau
     [not found]         ` <1279603096.13154002.1432644369153.JavaMail.root-x5ewXQG5twBsFmKuirFwRhh1pbbyJDp15NbjCUgZEJk@public.gmane.org>
2015-05-26 20:42           ` Samuel Pitoiset [this message]
2015-05-25 22:22 ` [PATCH 3/8] acpi: Define static variables for revision ids Pierre Moreau
2015-05-28  2:59   ` [Nouveau] " Dave Airlie
2015-05-25 22:22 ` [PATCH 4/8] acpi: Allow evaluate_optimus_dsm to take NULL results Pierre Moreau
     [not found]   ` <1432592573-13743-4-git-send-email-pierre.morrow-GANU6spQydw@public.gmane.org>
2015-05-26  8:02     ` Samuel Pitoiset
2015-05-26  8:27       ` [Nouveau] " Pierre Moreau
2015-05-25 22:22 ` [PATCH 6/8] acpi: Improve some messages level and content Pierre Moreau
2015-05-25 22:22 ` [PATCH 7/8] acpi: Add support for Apple Gmux _DMS Pierre Moreau
     [not found]   ` <1432592573-13743-7-git-send-email-pierre.morrow-GANU6spQydw@public.gmane.org>
2015-05-26  8:13     ` Samuel Pitoiset
     [not found]       ` <55642B45.3020509-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2015-05-26  8:30         ` Pierre Moreau
2015-05-28  2:58 ` [Nouveau] [PATCH 1/8] acpi: Rename v1 DSM to mux to avoid ambiguity Dave Airlie

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5564DAA2.2070800@gmail.com \
    --to=samuel.pitoiset-re5jqeeqqe8avxtiumwx3w@public.gmane.org \
    --cc=bskeggs-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
    --cc=dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org \
    --cc=nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org \
    --cc=pierre.morrow-GANU6spQydw@public.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.