All of lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas Renninger <trenn-l3A5Bk7waGM@public.gmane.org>
To: "Li, Shaohua" <shaohua.li-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
Cc: Karol Kozimor <sziwan-DETuoxkZsSqrDJvtcaxF/A@public.gmane.org>,
	Paulo Vitor Magacho da Silva
	<pvmagacho78-PkbjNfxxIARBDgjK7y7TUQ@public.gmane.org>,
	acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org
Subject: Re: ACPI key events handling
Date: Thu, 10 Mar 2005 17:28:03 +0100	[thread overview]
Message-ID: <42307593.8040501@suse.de> (raw)
In-Reply-To: <16A54BF5D6E14E4D916CE26C9AD30575015B5180-4yWAQGcml66iAffOGbnezLfspsVTdybXVpNB7YpNyf8@public.gmane.org>

Li, Shaohua wrote:

>How about below patch? It fixes current ec address space handler bugs.
>
>Thanks,
>Shaohua
>
>
>diff -puN drivers/acpi/ec.c~ec_addr_space_handler drivers/acpi/ec.c
>--- 2.5/drivers/acpi/ec.c~ec_addr_space_handler	2005-03-08
>09:19:05.228720200 +0800
>+++ 2.5-root/drivers/acpi/ec.c	2005-03-08 10:35:54.130060696 +0800
>@@ -441,7 +441,7 @@ acpi_ec_space_handler (
> {
> 	int			result = 0;
> 	struct acpi_ec		*ec = NULL;
>-	u32			temp = 0;
>+	u32			temp = *value;
> 	acpi_integer		f_v = 0;
> 	int 			i = 0;
> 
>@@ -462,10 +462,9 @@ next_byte:
> 	switch (function) {
> 	case ACPI_READ:
> 		result = acpi_ec_read(ec, (u8) address, &temp);
>-		*value = (acpi_integer) temp;
> 		break;
> 	case ACPI_WRITE:
>-		result = acpi_ec_write(ec, (u8) address, (u8) *value);
>+		result = acpi_ec_write(ec, (u8) address, (u8) temp);
> 		break;
> 	default:
> 		result = -EINVAL;
>@@ -474,19 +473,18 @@ next_byte:
> 	}
> 
> 	bit_width -= 8;
>-	if(bit_width){
>-
>+	if (bit_width){
> 		if(function == ACPI_READ)
>-			f_v |= (acpi_integer) (*value) << 8*i;
>+			f_v |= temp << 8 * i;
> 		if(function == ACPI_WRITE)
>-			(*value) >>=8; 
>+			temp >>= 8;
> 		i++;
>  
>

So the actual fix is this?

>+		(u8)address ++;
>  
>
I saw it some days ago.
However this only fixes something if you see:
*acpi_ec_space_handler: bit_width should be 8*
messages in your syslog.
Could you delete this message as well, please?
I have a machine here having this message in syslog
every second...
I didn't try the keys, but I think they work as expected.

I wonder whether  u64 temp should be used, acpi_integer could be u64
and bit_width (QWordAcc) could be 64 bit?

> 		goto next_byte;
> 	}
> 
>-
> 	if(function == ACPI_READ){
>-		f_v |= (acpi_integer) (*value) << 8*i;
>+		f_v |= temp << 8 * i;
> 		*value = f_v;
> 	}
> 
>@@ -505,8 +503,6 @@ out:
> 	default:
> 		return_VALUE(AE_OK);
> 	}
>-	
>-
> }
> 
>  
>
>>-----Original Message-----
>>From: acpi-devel-admin-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org [mailto:acpi-devel-
>>admin-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org] On Behalf Of Karol Kozimor
>>Sent: Thursday, March 10, 2005 4:50 PM
>>To: Paulo Vitor Magacho da Silva
>>Cc: acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org
>>Subject: Re: [ACPI] ACPI key events handling
>>
>>Thus wrote Paulo Vitor Magacho da Silva:
>>    
>>
>>>  I have an ACER 163lmi laptop and I am having problem with some of
>>>      
>>>
>the
>  
>
>>Fn
>>    
>>
>>>keys. I don't know if this is related to ACPI or not.
>>>  The problem is that when I press some the Fn keys, like the sleep
>>>      
>>>
>>button
>>    
>>
>>>(Fn+F4), and I look at the /proc/acpi/event, sometimes the key works
>>>sometimes it doesn't. I did also the check of the Fn keys with the
>>>      
>>>
>acerhk
>  
>
>>>driver. My laptop has the mail, internet, p1, p2, wireless, buttons.
>>>      
>>>
>And
>  
>
>>>when I press those buttons, sometimes I get the correct reading from
>>>      
>>>
>the
>  
>
>>>acerhk driver, sometimes when I press the mail buttons it reads back
>>>      
>>>
>the
>  
>
>>>wireless, or any other key, and sometimes it just reads garbage.
>>>      
>>>
>>Sounds like another instance of
>>http://bugzilla.kernel.org/show_bug.cgi?id=4124
>>
>>Best regards,
>>
>>    
>>



-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click

  parent reply	other threads:[~2005-03-10 16:28 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-03-10  8:55 ACPI key events handling Li, Shaohua
     [not found] ` <16A54BF5D6E14E4D916CE26C9AD30575015B5180-4yWAQGcml66iAffOGbnezLfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2005-03-10 16:28   ` Thomas Renninger [this message]
     [not found]     ` <42307593.8040501-l3A5Bk7waGM@public.gmane.org>
2005-03-11  0:48       ` Li Shaohua
2005-03-11  2:23       ` [PATCH] ACPI EC address space handler - " Li Shaohua
     [not found]         ` <1110507818.3692.4.camel-U5EdaLXB8smDugQYiPIPGdh3ngVCH38I@public.gmane.org>
2005-03-18 18:40           ` Thomas Renninger
2005-03-10 22:44   ` Paulo Vitor Magacho da Silva
  -- strict thread matches above, loose matches on Subject: below --
2005-03-11  8:47 Yu, Luming
2005-03-14 23:40 ` Paulo Vitor Magacho da Silva
2005-03-08 18:55 Paulo Vitor Magacho da Silva
     [not found] ` <BAY1-F15F671E407E4F476D2C957A8500-MsuGFMq8XAE@public.gmane.org>
2005-03-10  8:49   ` Karol Kozimor

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=42307593.8040501@suse.de \
    --to=trenn-l3a5bk7wagm@public.gmane.org \
    --cc=acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org \
    --cc=pvmagacho78-PkbjNfxxIARBDgjK7y7TUQ@public.gmane.org \
    --cc=shaohua.li-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org \
    --cc=sziwan-DETuoxkZsSqrDJvtcaxF/A@public.gmane.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.