Re: [PATCH 2/2] platform/loongarch: laptop: Support backlight power control
From: Xi Ruoyao
Date: Tue Jun 03 2025 - 01:52:58 EST
On Tue, 2025-06-03 at 13:44 +0800, WANG Xuerui wrote:
> On 6/3/25 12:16, Huacai Chen wrote:
> > On Sat, May 31, 2025 at 7:39 PM Yao Zi <ziyao@xxxxxxxxxxx> wrote:
> > >
> > > loongson_laptop_turn_{on,off}_backlight() are designed for controlling
> > > power of the backlight, but they aren't really used in the driver
> > > previously.
> > >
> > > Unify these two functions since they only differ in arguments passed to
> > > ACPI method, and wire up loongson_laptop_backlight_update() to update
> > > power state of the backlight as well. Tested on TongFang L860-T2 3A5000
> > > laptop.
> > >
> > > Signed-off-by: Yao Zi <ziyao@xxxxxxxxxxx>
> > > ---
> > > drivers/platform/loongarch/loongson-laptop.c | 53 +++++++-------------
> > > 1 file changed, 19 insertions(+), 34 deletions(-)
> > >
> > > [snip]
> > >
> > > -int loongson_laptop_turn_on_backlight(void)
> > > -{
> > > - int status;
> > > - union acpi_object arg0 = { ACPI_TYPE_INTEGER };
> > > - struct acpi_object_list args = { 1, &arg0 };
> > > -
> > > - arg0.integer.value = 1;
> > > - status = acpi_evaluate_object(NULL, "\\BLSW", &args, NULL);
> > > - if (ACPI_FAILURE(status)) {
> > > - pr_info("Loongson lvds error: 0x%x\n", status);
> > > - return -ENODEV;
> > > - }
> > > -
> > > - return 0;
> > > -}
> > > -
> > > -int loongson_laptop_turn_off_backlight(void)
> > > -{
> > > - int status;
> > > - union acpi_object arg0 = { ACPI_TYPE_INTEGER };
> > > - struct acpi_object_list args = { 1, &arg0 };
> > > -
> > > - arg0.integer.value = 0;
> > > - status = acpi_evaluate_object(NULL, "\\BLSW", &args, NULL);
> > > - if (ACPI_FAILURE(status)) {
> > > - pr_info("Loongson lvds error: 0x%x\n", status);
> > > - return -ENODEV;
> > > - }
> > > -
> > > - return 0;
> > > -}
> > I prefer to keep them, in downstream kernels there are users of them,
> > I don't want to add them back if one day those users are upstream.
>
> Then these symbols should be properly EXPORT_SYMBOL_GPL marked?
I guess those downstream works are kernel forks, not separated modules,
thus an export is not needed.
--
Xi Ruoyao <xry111@xxxxxxxxxxx>
School of Aerospace Science and Technology, Xidian University