lkml.org 
[lkml]   [2004]   [Nov]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
Subjecttypeof(dev->power.saved_state)
arch/arm/common/sa1111.c: In function `sa1111_suspend':
arch/arm/common/sa1111.c:816: warning: assignment from incompatible pointer type
This is a rather annoying, and IMHO pointless warning. First
question: what is the reasoning for using an array of unsigned
bytes here? Are we expecting to power manage devices which only
have byte wide registers?

In reality, devices have half-word and word sized registers as
well, which means that dev->power.saved_state actually points to
device specific data (or even device driver specific data) for
the device. As such, it makes far more sense for this to be
a 'void *'.

I'd rather not go around the ARM kernel tree adding pointless
casts to 'u8 *' and back again because the wrong type for this
was picked in the structure definition, so here's a patch which
changes this to void *.

Signed-off-by: Russell King <rmk@arm.linux.org.uk>

diff -up -x BitKeeper -x ChangeSet -x SCCS -x _xlk -x *.orig -x *.rej orig/include/linux/pm.h linux/include/linux/pm.h
--- orig/include/linux/pm.h Mon Nov 15 09:17:10 2004
+++ linux/include/linux/pm.h Sun Nov 28 18:15:57 2004
@@ -226,7 +226,7 @@ struct dev_pm_info {
u32 power_state;
#ifdef CONFIG_PM
u32 prev_state;
- u8 * saved_state;
+ void * saved_state;
atomic_t pm_users;
struct device * pm_parent;
struct list_head entry;

--
Russell King
Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/
maintainer of: 2.6 PCMCIA - http://pcmcia.arm.linux.org.uk/
2.6 Serial core
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 14:08    [W:0.403 / U:0.076 seconds]
©2003-2011 Jasper Spaans. Advertise on this site