lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <b08c3c2c-d663-46fa-b795-df83371c9ebf@app.fastmail.com>
Date: Fri, 27 Sep 2024 10:12:31 +1200
From: "Luke Jones" <luke@...nes.dev>
To: "Mario Limonciello" <superm1@...nel.org>, linux-kernel@...r.kernel.org
Cc: linux-input@...r.kernel.org, "Benjamin Tissoires" <bentiss@...nel.org>,
 "Jiri Kosina" <jikos@...nel.org>, platform-driver-x86@...r.kernel.org,
 Ilpo Järvinen <ilpo.jarvinen@...ux.intel.com>,
 "Hans de Goede" <hdegoede@...hat.com>, corentin.chary@...il.com
Subject: Re: [PATCH v4 4/9] platform/x86: asus-armoury: add panel_hd_mode attribute

On Fri, 27 Sep 2024, at 3:17 AM, Mario Limonciello wrote:
> On 9/26/2024 04:29, Luke D. Jones wrote:
> > Add panel_hd_mode to toggle the panel mode between single and high
> > definition modes.
> > 
> > Signed-off-by: Luke D. Jones <luke@...nes.dev>
> 
> This patch looks good to me.
> 
> Reviewed-by: Mario Limonciello <mario.limonciello@....com>

Thank you.

> ---
> 
> But that being said; mostly to satisfy my curiosity could you share more 
> about what this actually does?
> 
> Does it change the EDID exposed in the BIOS in ACPI _DDC?  At least for 
> AMD platforms that would mean it only works with this patch (which is on 
> it's way):
> 
> https://lore.kernel.org/amd-gfx/20240918213845.158293-11-mario.limonciello@amd.com/

I don't have access to the hardware so what it does is learned entirely thirdhand. What I do know is that it must be rebooted after and it seems to switch some internal thingy.

"UHD 120Hz and FHD 240Hz modes" is what I gather from reviewing some of Sergei's code in his ghelper project (windows armoury crate replacement).

> 
> > ---
> >   drivers/platform/x86/asus-armoury.c        | 6 +++++-
> >   include/linux/platform_data/x86/asus-wmi.h | 1 +
> >   2 files changed, 6 insertions(+), 1 deletion(-)
> > 
> > diff --git a/drivers/platform/x86/asus-armoury.c b/drivers/platform/x86/asus-armoury.c
> > index 39e422b16b8e..15eab4d45b81 100644
> > --- a/drivers/platform/x86/asus-armoury.c
> > +++ b/drivers/platform/x86/asus-armoury.c
> > @@ -106,7 +106,8 @@ static struct kobj_attribute pending_reboot = __ATTR_RO(pending_reboot);
> >   
> >   static bool asus_bios_requires_reboot(struct kobj_attribute *attr)
> >   {
> > - return !strcmp(attr->attr.name, "gpu_mux_mode");
> > + return !strcmp(attr->attr.name, "gpu_mux_mode") ||
> > +        !strcmp(attr->attr.name, "panel_hd_mode");
> >   }
> >   
> >   /**
> > @@ -429,6 +430,8 @@ ATTR_GROUP_BOOL_RW(mcu_powersave, "mcu_powersave", ASUS_WMI_DEVID_MCU_POWERSAVE,
> >      "Set MCU powersaving mode");
> >   ATTR_GROUP_BOOL_RW(panel_od, "panel_overdrive", ASUS_WMI_DEVID_PANEL_OD,
> >      "Set the panel refresh overdrive");
> > +ATTR_GROUP_BOOL_RW(panel_hd_mode, "panel_hd_mode", ASUS_WMI_DEVID_PANEL_HD,
> > +    "Set the panel HD mode to UHD<0> or FHD<1>");
> >   ATTR_GROUP_BOOL_RO(egpu_connected, "egpu_connected", ASUS_WMI_DEVID_EGPU_CONNECTED,
> >      "Show the eGPU connection status");
> >   
> > @@ -442,6 +445,7 @@ static const struct asus_attr_group armoury_attr_groups[] = {
> >   { &boot_sound_attr_group, ASUS_WMI_DEVID_BOOT_SOUND },
> >   { &mcu_powersave_attr_group, ASUS_WMI_DEVID_MCU_POWERSAVE },
> >   { &panel_od_attr_group, ASUS_WMI_DEVID_PANEL_OD },
> > + { &panel_hd_mode_attr_group, ASUS_WMI_DEVID_PANEL_HD },
> >   };
> >   
> >   static int asus_fw_attr_add(void)
> > diff --git a/include/linux/platform_data/x86/asus-wmi.h b/include/linux/platform_data/x86/asus-wmi.h
> > index 6ea4dedfb85e..7caf2c7ed8c9 100644
> > --- a/include/linux/platform_data/x86/asus-wmi.h
> > +++ b/include/linux/platform_data/x86/asus-wmi.h
> > @@ -73,6 +73,7 @@
> >   #define ASUS_WMI_DEVID_THROTTLE_THERMAL_POLICY_VIVO 0x00110019
> >   
> >   /* Misc */
> > +#define ASUS_WMI_DEVID_PANEL_HD 0x0005001C
> >   #define ASUS_WMI_DEVID_PANEL_OD 0x00050019
> >   #define ASUS_WMI_DEVID_CAMERA 0x00060013
> >   #define ASUS_WMI_DEVID_LID_FLIP 0x00060062
> 
> 

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ