public inbox for linux-acpi@vger.kernel.org
 help / color / mirror / Atom feed
From: Alan Jenkins <sourcejedi.lkml@googlemail.com>
To: Jonathan Woithe <jwoithe@physics.adelaide.edu.au>
Cc: linux-acpi@vger.kernel.org, lenb@kernel.org
Subject: Re: [PATCH] fujitsu-laptop: support led-class as module
Date: Tue, 25 Aug 2009 12:12:17 +0100	[thread overview]
Message-ID: <9b2b86520908250412j61a355aax55110f467c2ec61f@mail.gmail.com> (raw)
In-Reply-To: <200908250511.n7P5BqSY006903@turbo.physics.adelaide.edu.au>

On 8/25/09, Jonathan Woithe <jwoithe@physics.adelaide.edu.au> wrote:
> Hi Len
>
> Please consider slipping this in to 2.6.31-rc since it's a fairly trivial
> bug fix to ensure that fujitsu-laptop uses the LEDS class even when the LEDS
> class been compiled as a module.  If that's not possible or viewed as
> inappropriate then let's go for 2.6.32.
>
> Thanks
>   jonathan
>
>
> From: Stephen Gildea <stepheng+linux@gildea.com>
>
> Support fujitsu::logolamp with led-class built as a module instead of
> being compiled in.
>
> Signed-off-by: Stephen Gildea <stepheng+linux@gildea.com>
> Acked-by: Jonathan Woithe <jwoithe@physics.adelaide.edu.au>
>
> ---
> A friend pointed out to me that fujitsu-laptop LED support doesn't
> work with CONFIG_LEDS_CLASS=m.  We require CONFIG_LEDS_CLASS=y.
> He noticed this because his distro ships led-class as a module, not
> compiled in as my kernels are built.
>
> It appears this straightforward patch against 2.6.31-rc7 fixes the
> problem.
>
>  < Stephen
>
>
> diff --git a/drivers/platform/x86/fujitsu-laptop.c
> b/drivers/platform/x86/fujitsu-laptop.c
> index 218b9a1..4c8897a 100644
> --- a/drivers/platform/x86/fujitsu-laptop.c
> +++ b/drivers/platform/x86/fujitsu-laptop.c
> @@ -66,7 +66,7 @@
>  #include <linux/kfifo.h>
>  #include <linux/video_output.h>
>  #include <linux/platform_device.h>
> -#ifdef CONFIG_LEDS_CLASS
> +#if defined(CONFIG_LEDS_CLASS) || defined(CONFIG_LEDS_CLASS_MODULE)
>  #include <linux/leds.h>
>  #endif
>
> @@ -96,7 +96,7 @@
>  /* FUNC interface - responses */
>  #define UNSUPPORTED_CMD 0x80000000
>
> -#ifdef CONFIG_LEDS_CLASS
> +#if defined(CONFIG_LEDS_CLASS) || defined(CONFIG_LEDS_CLASS_MODULE)
>  /* FUNC interface - LED control */
>  #define FUNC_LED_OFF	0x1
>  #define FUNC_LED_ON	0x30001
> @@ -176,7 +176,7 @@ static struct fujitsu_hotkey_t *fujitsu_hotkey;
>
>  static void acpi_fujitsu_hotkey_notify(struct acpi_device *device, u32
> event);
>
> -#ifdef CONFIG_LEDS_CLASS
> +#if defined(CONFIG_LEDS_CLASS) || defined(CONFIG_LEDS_CLASS_MODULE)
>  static enum led_brightness logolamp_get(struct led_classdev *cdev);
>  static void logolamp_set(struct led_classdev *cdev,
>  			       enum led_brightness brightness);
> @@ -257,7 +257,7 @@ static int call_fext_func(int cmd, int arg0, int arg1,
> int arg2)
>  	return out_obj.integer.value;
>  }
>
> -#ifdef CONFIG_LEDS_CLASS
> +#if defined(CONFIG_LEDS_CLASS) || defined(CONFIG_LEDS_CLASS_MODULE)
>  /* LED class callbacks */
>
>  static void logolamp_set(struct led_classdev *cdev,
> @@ -911,7 +911,7 @@ static int acpi_fujitsu_hotkey_add(struct acpi_device
> *device)
>  	printk(KERN_INFO "fujitsu-laptop: BTNI: [0x%x]\n",
>  		call_fext_func(FUNC_BUTTONS, 0x0, 0x0, 0x0));
>
> -	#ifdef CONFIG_LEDS_CLASS
> +	#if defined(CONFIG_LEDS_CLASS) || defined(CONFIG_LEDS_CLASS_MODULE)
>  	if (call_fext_func(FUNC_LEDS, 0x0, 0x0, 0x0) & LOGOLAMP_POWERON) {
>  		result = led_classdev_register(&fujitsu->pf_device->dev,
>  						&logolamp_led);

Don't you need to exclude

CONFIG_LEDS_CLASS=m
CONFIG_FUJITSU_LAPTOP=y

I think the Kconfig-fu is "depends on LEDS_CLASS || LEDS_CLASS=n".

Regards
Alan

  reply	other threads:[~2009-08-25 11:12 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-08-25  5:11 [PATCH] fujitsu-laptop: support led-class as module Jonathan Woithe
2009-08-25 11:12 ` Alan Jenkins [this message]
2009-08-26  1:38   ` Jonathan Woithe
2009-08-26  8:23     ` Alan Jenkins
2009-08-27 22:53 ` Len Brown

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=9b2b86520908250412j61a355aax55110f467c2ec61f@mail.gmail.com \
    --to=sourcejedi.lkml@googlemail.com \
    --cc=jwoithe@physics.adelaide.edu.au \
    --cc=lenb@kernel.org \
    --cc=linux-acpi@vger.kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox