Re: [patch 08/13] sony_apci: add resume handling

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



NAK
Andrew, please remove this patch from -mm, as it has been included
in the acpi-test tree in a different file, sony-laptop.c

thanks,
-Len

On Monday 05 February 2007 19:09, akpm@xxxxxxxxxxxxxxxxxxxx wrote:
> From: Andrew Morton <akpm@xxxxxxxx>
> 
> Avoid dimness on resume.
> 
> Cc: Stelian Pop <stelian@xxxxxxxxxx>
> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
> ---
> 
>  drivers/acpi/sony_acpi.c |   49 +++++++++++++++++++++++++------------
>  1 file changed, 34 insertions(+), 15 deletions(-)
> 
> diff -puN drivers/acpi/sony_acpi.c~sony_apci-resume drivers/acpi/sony_acpi.c
> --- a/drivers/acpi/sony_acpi.c~sony_apci-resume
> +++ a/drivers/acpi/sony_acpi.c
> @@ -46,19 +46,6 @@ module_param(debug, int, 0);
>  MODULE_PARM_DESC(debug, "set this to 1 (and RTFM) if you want to help "
>  			"the development of this driver");
>  
> -static int sony_acpi_add (struct acpi_device *device);
> -static int sony_acpi_remove (struct acpi_device *device, int type);
> -
> -static struct acpi_driver sony_acpi_driver = {
> -	.name	= ACPI_SNC_DRIVER_NAME,
> -	.class	= ACPI_SNC_CLASS,
> -	.ids	= ACPI_SNC_HID,
> -	.ops	= {
> -			.add	= sony_acpi_add,
> -			.remove	= sony_acpi_remove,
> -		  },
> -};
> -
>  static acpi_handle sony_acpi_handle;
>  static struct proc_dir_entry *sony_acpi_dir;
>  
> @@ -69,6 +56,8 @@ static struct sony_acpi_value {
>  	char			*acpiset;/* name of the ACPI get function */
>  	int 			min;	 /* minimum allowed value or -1 */
>  	int			max;	 /* maximum allowed value or -1 */
> +	int			value;	 /* current setting */
> +	int			valid;	 /* Has ever been set */
>  	int			debug;	 /* active only in debug mode ? */
>  } sony_acpi_values[] = {
>  	{
> @@ -239,10 +228,30 @@ static int sony_acpi_write(struct file *
>  
>  	if (acpi_callsetfunc(sony_acpi_handle, item->acpiset, value, NULL) < 0)
>  		return -EIO;
> -
> +	item->value = value;
> +	item->valid = 1;
>  	return count;
>  }
>  
> +static int sony_acpi_resume(struct acpi_device *device)
> +{
> +	struct sony_acpi_value *item;
> +
> +	for (item = sony_acpi_values; item->name; item++) {
> +		int ret;
> +
> +		if (!item->valid)
> +			continue;
> +		ret = acpi_callsetfunc(sony_acpi_handle, item->acpiset,
> +					item->value, NULL);
> +		if (ret < 0) {
> +			printk("%s: %d\n", __FUNCTION__, ret);
> +			break;
> +		}
> +	}
> +	return 0;
> +}
> +
>  static void sony_acpi_notify(acpi_handle handle, u32 event, void *data)
>  {
>  	printk(LOG_PFX "sony_acpi_notify\n");
> @@ -344,7 +353,6 @@ outwalk:
>  	return result;
>  }
>  
> -
>  static int sony_acpi_remove(struct acpi_device *device, int type)
>  {
>  	acpi_status status;
> @@ -367,6 +375,17 @@ static int sony_acpi_remove(struct acpi_
>  	return 0;
>  }
>  
> +static struct acpi_driver sony_acpi_driver = {
> +	.name	= ACPI_SNC_DRIVER_NAME,
> +	.class	= ACPI_SNC_CLASS,
> +	.ids	= ACPI_SNC_HID,
> +	.ops	= {
> +			.add	= sony_acpi_add,
> +			.remove	= sony_acpi_remove,
> +			.resume = sony_acpi_resume,
> +		  },
> +};
> +
>  static int __init sony_acpi_init(void)
>  {
>  	int result;
> _
> -
> To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 
-
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux IBM ACPI]     [Linux Power Management]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux