From: Marco Chiappero <marco@absence.it>
To: Matthew Garrett <mjg59@srcf.ucam.org>
Cc: platform-driver-x86@vger.kernel.org, Mattia Dongili <malattia@linux.it>
Subject: [PATCH 1/25] sony-laptop: use usigned data type when calling ACPI methods
Date: Fri, 03 Jun 2011 17:26:17 +0200 [thread overview]
Message-ID: <4DE8FD19.4050603@absence.it> (raw)
In-Reply-To: <4DE8FC4A.9010401@absence.it>
Data exchanges with the SNC device should use unsigned data types: to
avoid any implicit cast, this patch removes any int usage in favor of
unsigned int or u32.
Signed-off-by: Marco Chiappero <marco@absence.it>
---
--- a/drivers/platform/x86/sony-laptop.c
+++ b/drivers/platform/x86/sony-laptop.c
@@ -689,7 +689,8 @@ static struct acpi_device *sony_nc_acpi_
/*
* acpi_evaluate_object wrappers
*/
-static int acpi_callgetfunc(acpi_handle handle, char *name, int *result)
+static int acpi_callgetfunc(acpi_handle handle, char *name,
+ unsigned int *result)
{
struct acpi_buffer output;
union acpi_object out_obj;
@@ -709,8 +710,8 @@ static int acpi_callgetfunc(acpi_handle
return -1;
}
-static int acpi_callsetfunc(acpi_handle handle, char *name, int value,
- int *result)
+static int acpi_callsetfunc(acpi_handle handle, char *name, u32 value,
+ unsigned int *result)
{
struct acpi_object_list params;
union acpi_object in_obj;
@@ -767,8 +768,7 @@ static ssize_t sony_nc_handles_show(stru
static int sony_nc_handles_setup(struct platform_device *pd)
{
- int i;
- int result;
+ unsigned int i, result;
handles = kzalloc(sizeof(*handles), GFP_KERNEL);
if (!handles)
@@ -830,7 +830,9 @@ static int sony_find_snc_handle(int hand
return -1;
}
-static int sony_call_snc_handle(int handle, int argument, int *result)
+/* call command method SN07, accepts a 32 bit integer, returns a integer */
+static int sony_call_snc_handle(int handle, unsigned int argument,
+ unsigned int *result)
{
int ret = 0;
int offset = sony_find_snc_handle(handle);
@@ -838,6 +840,7 @@ static int sony_call_snc_handle(int hand
if (offset < 0)
return -1;
+ /* max 32 bit wide argument, for wider input use SN06 */
ret = acpi_callsetfunc(sony_nc_acpi_handle, "SN07", offset | argument,
result);
dprintk("called SN07 with 0x%.4x (result: 0x%.4x)\n", offset | argument,
@@ -886,7 +889,7 @@ static int boolean_validate(const int di
static ssize_t sony_nc_sysfs_show(struct device *dev, struct
device_attribute *attr,
char *buffer)
{
- int value;
+ unsigned int value;
struct sony_nc_value *item =
container_of(attr, struct sony_nc_value, devattr);
@@ -906,7 +909,7 @@ static ssize_t sony_nc_sysfs_store(struc
struct device_attribute *attr,
const char *buffer, size_t count)
{
- int value;
+ unsigned long value;
struct sony_nc_value *item =
container_of(attr, struct sony_nc_value, devattr);
@@ -951,7 +954,7 @@ static int sony_backlight_update_status(
static int sony_backlight_get_brightness(struct backlight_device *bd)
{
- int value;
+ unsigned int value;
if (acpi_callgetfunc(sony_nc_acpi_handle, "GBRT", &value))
return 0;
@@ -961,7 +964,7 @@ static int sony_backlight_get_brightness
static int sony_nc_get_brightness_ng(struct backlight_device *bd)
{
- int result;
+ unsigned int result;
struct sony_backlight_props *sdev =
(struct sony_backlight_props *)bl_get_data(bd);
@@ -972,7 +975,7 @@ static int sony_nc_get_brightness_ng(str
static int sony_nc_update_status_ng(struct backlight_device *bd)
{
- int value, result;
+ unsigned int value, result;
struct sony_backlight_props *sdev =
(struct sony_backlight_props *)bl_get_data(bd);
@@ -1069,7 +1072,7 @@ static void sony_nc_notify(struct acpi_d
if (ev >= 0x90) {
/* New-style event */
- int result;
+ unsigned int result;
int key_handle = 0;
ev -= 0x90;
@@ -1139,7 +1142,7 @@ static acpi_status sony_walk_callback(ac
*/
static int sony_nc_function_setup(struct acpi_device *device)
{
- int result;
+ unsigned int result;
/* Enable all events */
acpi_callsetfunc(sony_nc_acpi_handle, "SN02", 0xffff, &result);
@@ -1206,8 +1209,8 @@ static void sony_nc_rfkill_cleanup(void)
static int sony_nc_rfkill_set(void *data, bool blocked)
{
- int result;
- int argument = sony_rfkill_address[(long) data] + 0x100;
+ unsigned int result;
+ unsigned int argument = sony_rfkill_address[(long) data] + 0x100;
if (!blocked)
argument |= 0xff0000;
@@ -1226,7 +1229,7 @@ static int sony_nc_setup_rfkill(struct a
struct rfkill *rfk;
enum rfkill_type type;
const char *name;
- int result;
+ unsigned int result;
bool hwblock;
switch (nc_type) {
@@ -1271,14 +1274,14 @@ static int sony_nc_setup_rfkill(struct a
static void sony_nc_rfkill_update(void)
{
enum sony_nc_rfkill i;
- int result;
+ unsigned int result;
bool hwblock;
sony_call_snc_handle(sony_rfkill_handle, 0x200, &result);
hwblock = !(result & 0x1);
for (i = 0; i < N_SONY_RFKILL; i++) {
- int argument = sony_rfkill_address[i];
+ unsigned int argument = sony_rfkill_address[i];
if (!sony_rfkill_devices[i])
continue;
@@ -1390,7 +1393,7 @@ static struct kbd_backlight *kbdbl_handl
static ssize_t __sony_nc_kbd_backlight_mode_set(u8 value)
{
- int result;
+ unsigned int result;
if (value > 1)
return -EINVAL;
@@ -1438,7 +1441,7 @@ static ssize_t sony_nc_kbd_backlight_mod
static int __sony_nc_kbd_backlight_timeout_set(u8 value)
{
- int result;
+ unsigned int result;
if (value > 3)
return -EINVAL;
@@ -1482,7 +1485,7 @@ static ssize_t sony_nc_kbd_backlight_tim
static int sony_nc_kbd_backlight_setup(struct platform_device *pd)
{
- int result;
+ unsigned int result;
if (sony_call_snc_handle(KBDBL_HANDLER, KBDBL_PRESENT, &result))
return 0;
@@ -1527,7 +1530,7 @@ outkzalloc:
static int sony_nc_kbd_backlight_cleanup(struct platform_device *pd)
{
if (kbdbl_handle) {
- int result;
+ unsigned int result;
device_remove_file(&pd->dev, &kbdbl_handle->mode_attr);
device_remove_file(&pd->dev, &kbdbl_handle->timeout_attr);
@@ -1543,7 +1546,7 @@ static int sony_nc_kbd_backlight_cleanup
static void sony_nc_kbd_backlight_resume(void)
{
- int ignore = 0;
+ unsigned int ignore = 0;
if (!kbdbl_handle)
return;
@@ -2659,7 +2662,7 @@ static long sonypi_misc_ioctl(struct fil
void __user *argp = (void __user *)arg;
u8 val8;
u16 val16;
- int value;
+ unsigned int value;
mutex_lock(&spic_dev.lock);
switch (cmd) {
next prev parent reply other threads:[~2011-06-03 15:26 UTC|newest]
Thread overview: 125+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-06-03 15:22 [PATCH 0/25] sony-laptop: code improvements and support extension for newer Vaios Marco Chiappero
2011-06-03 15:26 ` Marco Chiappero [this message]
2011-06-03 15:28 ` [PATCH 2/25] sony-laptop: simple_strtoul replaced by strict_strtoul Marco Chiappero
2011-06-12 21:56 ` Mattia Dongili
2011-06-03 15:29 ` [PATCH 3/25] sony-laptop: new ACPI SN06 method helper functions Marco Chiappero
2011-06-03 15:32 ` [PATCH 4/25] sony-laptop: new SNC setup and cleanup functions Marco Chiappero
2011-06-12 22:21 ` Mattia Dongili
2011-06-13 0:01 ` Marco Chiappero
2011-06-13 1:28 ` Mattia Dongili
2011-06-13 9:39 ` Marco Chiappero
2011-06-13 13:42 ` Mattia Dongili
2011-06-13 14:10 ` Marco Chiappero
2011-06-18 22:50 ` Marco Chiappero
2011-06-18 23:06 ` Marco Chiappero
2011-06-28 9:27 ` Mattia Dongili
2011-06-28 10:04 ` Marco Chiappero
2011-07-01 10:54 ` Marco Chiappero
2011-07-13 22:19 ` Marco Chiappero
2011-07-14 22:05 ` Mattia Dongili
2011-07-18 14:49 ` Marco Chiappero
2011-07-19 22:03 ` Mattia Dongili
2011-06-20 13:49 ` Marco Chiappero
2011-06-03 15:33 ` [PATCH 5/25] sony-laptop: new handles " Marco Chiappero
2011-06-03 15:35 ` [PATCH 6/25] sony-laptop: new notebook controller resume function Marco Chiappero
2011-06-03 15:36 ` [PATCH 7/25] sony-laptop: sony_nc_function_setup modifications Marco Chiappero
2011-06-03 15:38 ` [PATCH 8/25] sony-laptop: sony_nc_notify rewritten and improved Marco Chiappero
2011-06-04 8:43 ` Mattia Dongili
2011-06-04 11:26 ` Marco Chiappero
2011-06-05 22:38 ` Mattia Dongili
2011-06-06 12:23 ` Marco Chiappero
2011-06-06 12:42 ` Mattia Dongili
2011-06-06 12:45 ` Marco Chiappero
2011-06-20 14:00 ` Marco Chiappero
2011-07-19 21:30 ` Mattia Dongili
2011-06-04 12:42 ` Matthew Garrett
2011-06-04 14:22 ` Marco Chiappero
2011-06-04 14:30 ` Matthew Garrett
2011-06-04 14:34 ` Marco Chiappero
2011-06-04 14:36 ` Matthew Garrett
2011-06-04 14:42 ` Marco Chiappero
2011-06-04 14:45 ` Matthew Garrett
2011-06-04 15:04 ` Corentin Chary
2011-06-04 16:50 ` Marco Chiappero
2011-06-04 20:22 ` Alan Cox
2011-06-05 17:48 ` Marco Chiappero
2011-06-05 19:14 ` Alan Cox
2011-06-05 20:13 ` Marco Chiappero
2011-06-03 15:39 ` [PATCH 9/25] sony-laptop: sony_walk_callback moved for better readability Marco Chiappero
2011-06-03 15:41 ` [PATCH 10/25] sony-laptop: keyboard backlight support extended to newer Vaios Marco Chiappero
2011-06-04 7:58 ` Mattia Dongili
2011-06-04 10:30 ` Marco Chiappero
2011-06-04 11:23 ` Mattia Dongili
2011-06-04 11:41 ` Marco Chiappero
2011-06-05 22:33 ` Mattia Dongili
2011-06-06 12:27 ` Marco Chiappero
2011-06-10 12:31 ` Marco Chiappero
2011-06-12 22:24 ` Mattia Dongili
2011-06-13 14:28 ` Marco Chiappero
2011-06-18 4:15 ` Mattia Dongili
2011-06-03 15:42 ` [PATCH 11/25] sony-laptop: rfkill improvements Marco Chiappero
2011-06-04 7:59 ` Mattia Dongili
2011-06-03 15:43 ` [PATCH 12/25] sony-laptop: input core improvements improvements Marco Chiappero
2011-06-04 8:07 ` Mattia Dongili
2011-06-04 10:42 ` Marco Chiappero
[not found] ` <4DEA0C27.1000508-YK5v5TwyeXionA0d6jMUrA@public.gmane.org>
2011-06-04 12:44 ` Matthew Garrett
2011-06-04 13:11 ` Marco Chiappero
2011-06-08 8:26 ` Joey Lee
2011-06-04 15:21 ` Marco Chiappero
[not found] ` <4DEA4D67.8000009-YK5v5TwyeXionA0d6jMUrA@public.gmane.org>
2011-06-04 16:40 ` Mattia Dongili
[not found] ` <20110604164021.GA12552-pM3i+3kAS8Rg9hUCZPvPmw@public.gmane.org>
2011-06-04 16:58 ` Marco Chiappero
2011-06-05 22:24 ` Mattia Dongili
2011-06-06 13:26 ` Marco Chiappero
2011-06-07 14:23 ` Mattia Dongili
2011-06-07 15:15 ` Marco Chiappero
2011-06-07 16:24 ` Mattia Dongili
2011-06-07 17:59 ` Marco Chiappero
2011-06-20 13:53 ` Marco Chiappero
2011-07-01 11:12 ` Marco Chiappero
2011-07-01 12:50 ` Matthew Garrett
2011-07-01 14:03 ` Marco Chiappero
2011-07-01 14:09 ` Matthew Garrett
2011-07-01 14:20 ` Marco Chiappero
2011-07-01 15:06 ` Matthew Garrett
2011-07-01 15:11 ` Marco Chiappero
2011-07-01 15:53 ` Matthew Garrett
2011-07-01 16:12 ` Marco Chiappero
2011-07-19 21:26 ` Mattia Dongili
2011-06-03 15:45 ` [PATCH 13/25] sony-laptop: code style fixes Marco Chiappero
2011-06-03 15:46 ` [PATCH 14/25] sony-laptop: battery care functionality added Marco Chiappero
2011-06-03 17:33 ` [PATCH 15/25] sony-laptop: add thermal control feature Marco Chiappero
2011-06-03 17:45 ` [PATCH 16/25] sony-laptop: add HDD shock protection Marco Chiappero
2011-06-03 17:54 ` [PATCH 17/25] sony-laptop: add resume from S4/S3 when opening the lid Marco Chiappero
2011-06-03 18:02 ` [PATCH 18/25] sony-laptop: add control file for the HighSpeed Charging feature Marco Chiappero
2011-06-03 18:16 ` [PATCH 19/25] sony-laptop: add touchpad enable/disable control file Marco Chiappero
2011-06-03 20:23 ` Dmitry Torokhov
2011-06-03 20:33 ` Marco Chiappero
2011-06-03 21:00 ` Dmitry Torokhov
2011-06-03 21:46 ` Marco Chiappero
2011-06-03 22:12 ` Dmitry Torokhov
2011-06-04 1:54 ` Marco Chiappero
2011-06-04 7:09 ` Mattia Dongili
2011-06-04 11:15 ` Marco Chiappero
2011-06-04 12:46 ` Matthew Garrett
2011-06-04 14:28 ` Marco Chiappero
2011-06-03 18:28 ` [PATCH 20/25] sony-laptop: add fan related controls Marco Chiappero
2011-06-03 18:50 ` [PATCH 21/25] sony-laptop: add optical device power control Marco Chiappero
2011-06-03 19:27 ` [PATCH 22/25] sony-laptop: forward Hybrid GFX notifications to userspace Marco Chiappero
2011-06-04 8:48 ` Mattia Dongili
2011-06-20 21:12 ` Marco Chiappero
2011-07-19 21:50 ` Mattia Dongili
2011-06-03 19:49 ` [PATCH 23/25] sony-laptop: add ALS support Marco Chiappero
2011-06-05 5:31 ` Mattia Dongili
2011-06-05 22:21 ` Marco Chiappero
2011-06-06 7:41 ` Javier Achirica
2011-06-06 13:08 ` Mattia Dongili
2011-06-06 13:51 ` Marco Chiappero
2011-06-06 22:24 ` Mattia Dongili
2011-06-06 23:26 ` Marco Chiappero
2011-06-07 16:07 ` Mattia Dongili
2011-06-07 17:50 ` Marco Chiappero
2011-06-07 22:39 ` Mattia Dongili
2011-06-08 9:52 ` Marco Chiappero
2011-06-03 20:10 ` [PATCH 24/25] sony-laptop: backlight device changes Marco Chiappero
2011-06-03 20:10 ` [PATCH 25/25] sony-laptop: update copyright owners Marco Chiappero
2011-06-04 8:54 ` [PATCH 0/25] sony-laptop: code improvements and support extension for newer Vaios Mattia Dongili
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=4DE8FD19.4050603@absence.it \
--to=marco@absence.it \
--cc=malattia@linux.it \
--cc=mjg59@srcf.ucam.org \
--cc=platform-driver-x86@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