linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jacek Anaszewski <j.anaszewski@samsung.com>
To: Stephan Linz <linz@li-pro.net>
Cc: linux-leds@vger.kernel.org, linux-ide@vger.kernel.org,
	"Joseph Jezak" <josejx@gentoo.org>,
	"Nico Macrionitis" <acrux@cruxppc.org>,
	"Jörg Sommer" <joerg@alea.gnuu.de>,
	"Richard Purdie" <rpurdie@rpsys.net>, "Tejun Heo" <tj@kernel.org>,
	"David S. Miller" <davem@davemloft.net>,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH v3 1/7] leds: convert IDE trigger to common disk trigger
Date: Mon, 20 Jun 2016 10:36:00 +0200	[thread overview]
Message-ID: <5767AAF0.7080608@samsung.com> (raw)
In-Reply-To: <20160608223000.433-1-linz@li-pro.net>

Hi Stephan,

On 06/09/2016 12:29 AM, Stephan Linz wrote:
> This patch converts the IDE specific LED trigger to a generic disk
> activity LED trigger. The libata core is now a trigger source just
> like before the IDE disk driver. It's merely a replacement of the
> string ide by disk.
>
> The patch is taken from http://dev.gentoo.org/~josejx/ata.patch and is
> widely used by any ibook/powerbook owners with great satisfaction.
> Likewise, it is very often used successfully on different ARM platforms.
>
> The original patch was split into different parts to clarify platform
> independent and dependent changes.
>
> Cc: Joseph Jezak <josejx@gentoo.org>
> Cc: Nico Macrionitis <acrux@cruxppc.org>
> Cc: Jörg Sommer <joerg@alea.gnuu.de>
> Cc: Richard Purdie <rpurdie@rpsys.net>
> Cc: Jacek Anaszewski <j.anaszewski@samsung.com>
> Signed-off-by: Stephan Linz <linz@li-pro.net>
> ---
> Changes in v3:
>    - Port to kernel 4.x
>    - Split into platform independent and dependent parts.
>
> v2: https://patchwork.ozlabs.org/patch/117485/
> v1: http://dev.gentoo.org/~josejx/ata.patch
> ---
>   drivers/ata/libata-core.c                            |  4 ++++
>   drivers/ide/ide-disk.c                               |  2 +-
>   drivers/leds/leds-hp6xx.c                            |  2 +-
>   drivers/leds/trigger/Kconfig                         |  8 ++++----
>   drivers/leds/trigger/Makefile                        |  2 +-
>   .../trigger/{ledtrig-ide-disk.c => ledtrig-disk.c}   | 20 ++++++++++----------
>   include/linux/leds.h                                 |  6 +++---
>   7 files changed, 24 insertions(+), 20 deletions(-)
>   rename drivers/leds/trigger/{ledtrig-ide-disk.c => ledtrig-disk.c} (50%)
>
> diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c
> index 6be7770..2eca572 100644
> --- a/drivers/ata/libata-core.c
> +++ b/drivers/ata/libata-core.c
> @@ -69,6 +69,7 @@
>   #include <asm/unaligned.h>
>   #include <linux/cdrom.h>
>   #include <linux/ratelimit.h>
> +#include <linux/leds.h>
>   #include <linux/pm_runtime.h>
>   #include <linux/platform_device.h>
>
> @@ -5072,6 +5073,9 @@ void ata_qc_complete(struct ata_queued_cmd *qc)
>   {
>   	struct ata_port *ap = qc->ap;
>
> +	/* Trigger the LED (if available) */
> +	ledtrig_disk_activity();
> +
>   	/* XXX: New EH and old EH use different mechanisms to
>   	 * synchronize EH with regular execution path.
>   	 *
> diff --git a/drivers/ide/ide-disk.c b/drivers/ide/ide-disk.c
> index 05dbcce..5ceb176 100644
> --- a/drivers/ide/ide-disk.c
> +++ b/drivers/ide/ide-disk.c
> @@ -186,7 +186,7 @@ static ide_startstop_t ide_do_rw_disk(ide_drive_t *drive, struct request *rq,
>   	BUG_ON(drive->dev_flags & IDE_DFLAG_BLOCKED);
>   	BUG_ON(rq->cmd_type != REQ_TYPE_FS);
>
> -	ledtrig_ide_activity();
> +	ledtrig_disk_activity();
>
>   	pr_debug("%s: %sing: block=%llu, sectors=%u\n",
>   		 drive->name, rq_data_dir(rq) == READ ? "read" : "writ",
> diff --git a/drivers/leds/leds-hp6xx.c b/drivers/leds/leds-hp6xx.c
> index a6b8db0..137969f 100644
> --- a/drivers/leds/leds-hp6xx.c
> +++ b/drivers/leds/leds-hp6xx.c
> @@ -50,7 +50,7 @@ static struct led_classdev hp6xx_red_led = {
>
>   static struct led_classdev hp6xx_green_led = {
>   	.name			= "hp6xx:green",
> -	.default_trigger	= "ide-disk",
> +	.default_trigger	= "disk-activity",
>   	.brightness_set		= hp6xxled_green_set,
>   	.flags			= LED_CORE_SUSPENDRESUME,
>   };
> diff --git a/drivers/leds/trigger/Kconfig b/drivers/leds/trigger/Kconfig
> index 9893d91..3f9ddb9 100644
> --- a/drivers/leds/trigger/Kconfig
> +++ b/drivers/leds/trigger/Kconfig
> @@ -33,12 +33,12 @@ config LEDS_TRIGGER_ONESHOT
>
>   	  If unsure, say Y.
>
> -config LEDS_TRIGGER_IDE_DISK
> -	bool "LED IDE Disk Trigger"
> -	depends on IDE_GD_ATA
> +config LEDS_TRIGGER_DISK
> +	bool "LED Disk Trigger"
> +	depends on IDE_GD_ATA || ATA
>   	depends on LEDS_TRIGGERS
>   	help
> -	  This allows LEDs to be controlled by IDE disk activity.
> +	  This allows LEDs to be controlled by disk activity.
>   	  If unsure, say Y.
>
>   config LEDS_TRIGGER_MTD
> diff --git a/drivers/leds/trigger/Makefile b/drivers/leds/trigger/Makefile
> index 8cc64a4..a72c43c 100644
> --- a/drivers/leds/trigger/Makefile
> +++ b/drivers/leds/trigger/Makefile
> @@ -1,6 +1,6 @@
>   obj-$(CONFIG_LEDS_TRIGGER_TIMER)	+= ledtrig-timer.o
>   obj-$(CONFIG_LEDS_TRIGGER_ONESHOT)	+= ledtrig-oneshot.o
> -obj-$(CONFIG_LEDS_TRIGGER_IDE_DISK)	+= ledtrig-ide-disk.o
> +obj-$(CONFIG_LEDS_TRIGGER_DISK)		+= ledtrig-disk.o
>   obj-$(CONFIG_LEDS_TRIGGER_MTD)		+= ledtrig-mtd.o
>   obj-$(CONFIG_LEDS_TRIGGER_HEARTBEAT)	+= ledtrig-heartbeat.o
>   obj-$(CONFIG_LEDS_TRIGGER_BACKLIGHT)	+= ledtrig-backlight.o
> diff --git a/drivers/leds/trigger/ledtrig-ide-disk.c b/drivers/leds/trigger/ledtrig-disk.c
> similarity index 50%
> rename from drivers/leds/trigger/ledtrig-ide-disk.c
> rename to drivers/leds/trigger/ledtrig-disk.c
> index 15123d3..7a1fe44 100644
> --- a/drivers/leds/trigger/ledtrig-ide-disk.c
> +++ b/drivers/leds/trigger/ledtrig-disk.c
> @@ -1,5 +1,5 @@
>   /*
> - * LED IDE-Disk Activity Trigger
> + * LED Disk Activity Trigger
>    *
>    * Copyright 2006 Openedhand Ltd.
>    *
> @@ -17,20 +17,20 @@
>
>   #define BLINK_DELAY 30
>
> -DEFINE_LED_TRIGGER(ledtrig_ide);
> +DEFINE_LED_TRIGGER(ledtrig_disk);
>
> -void ledtrig_ide_activity(void)
> +void ledtrig_disk_activity(void)
>   {
> -	unsigned long ide_blink_delay = BLINK_DELAY;
> +	unsigned long disk_blink_delay = BLINK_DELAY;
>
> -	led_trigger_blink_oneshot(ledtrig_ide,
> -				  &ide_blink_delay, &ide_blink_delay, 0);
> +	led_trigger_blink_oneshot(ledtrig_disk,
> +				  &disk_blink_delay, &disk_blink_delay, 0);
>   }
> -EXPORT_SYMBOL(ledtrig_ide_activity);
> +EXPORT_SYMBOL(ledtrig_disk_activity);
>
> -static int __init ledtrig_ide_init(void)
> +static int __init ledtrig_disk_init(void)
>   {
> -	led_trigger_register_simple("ide-disk", &ledtrig_ide);
> +	led_trigger_register_simple("disk-activity", &ledtrig_disk);
>   	return 0;
>   }
> -device_initcall(ledtrig_ide_init);
> +device_initcall(ledtrig_disk_init);
> diff --git a/include/linux/leds.h b/include/linux/leds.h
> index d2b1306..28a3ef5 100644
> --- a/include/linux/leds.h
> +++ b/include/linux/leds.h
> @@ -324,10 +324,10 @@ static inline void *led_get_trigger_data(struct led_classdev *led_cdev)
>   #endif /* CONFIG_LEDS_TRIGGERS */
>
>   /* Trigger specific functions */
> -#ifdef CONFIG_LEDS_TRIGGER_IDE_DISK
> -extern void ledtrig_ide_activity(void);
> +#ifdef CONFIG_LEDS_TRIGGER_DISK
> +extern void ledtrig_disk_activity(void);
>   #else
> -static inline void ledtrig_ide_activity(void) {}
> +static inline void ledtrig_disk_activity(void) {}
>   #endif
>
>   #ifdef CONFIG_LEDS_TRIGGER_MTD
>

Applied the patchset to the for-next branch of linux-leds.git.

Thanks,
Jacek Anaszewski

  parent reply	other threads:[~2016-06-20  8:36 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-06-08 22:29 [PATCH v3 1/7] leds: convert IDE trigger to common disk trigger Stephan Linz
2016-06-08 22:29 ` [PATCH v3 2/7] leds: documentation: 'ide-disk' to 'disk-activity' Stephan Linz
2016-06-21 15:05   ` Mark Rutland
2016-06-22  7:55     ` Jacek Anaszewski
2016-06-22 10:16       ` Mark Rutland
2016-06-22 16:05       ` Stephan Linz
2016-06-23  6:40         ` Jacek Anaszewski
2016-06-23 19:38           ` [PATCH v5] " Stephan Linz
2016-06-24  6:50             ` Jacek Anaszewski
2016-06-24 17:18               ` Stephan Linz
2016-06-08 22:29 ` [PATCH v3 3/7] powerpc: use the new LED disk activity trigger Stephan Linz
2016-06-08 22:29 ` [PATCH v3 4/7] arm: " Stephan Linz
2016-06-09  7:18   ` Gregory CLEMENT
2016-06-08 22:29 ` [PATCH v3 5/7] mips: " Stephan Linz
2016-06-08 22:29 ` [PATCH v3 6/7] parisc: " Stephan Linz
2016-06-08 22:29 ` [PATCH v3 7/7] unicore32: " Stephan Linz
2016-06-09  7:29 ` [PATCH v3 1/7] leds: convert IDE trigger to common disk trigger Jacek Anaszewski
2016-06-09 22:27   ` Stephan Linz
2016-06-20  8:36 ` Jacek Anaszewski [this message]
2016-06-20 21:28   ` Stephan Linz
2016-06-21  7:13     ` Jacek Anaszewski

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=5767AAF0.7080608@samsung.com \
    --to=j.anaszewski@samsung.com \
    --cc=acrux@cruxppc.org \
    --cc=davem@davemloft.net \
    --cc=joerg@alea.gnuu.de \
    --cc=josejx@gentoo.org \
    --cc=linux-ide@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-leds@vger.kernel.org \
    --cc=linz@li-pro.net \
    --cc=rpurdie@rpsys.net \
    --cc=tj@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;
as well as URLs for NNTP newsgroup(s).