static int debug;
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");
+ "the development of this driver");
-static ssize_t sony_acpi_show(struct device *, struct device_attribute *, char *);
-static ssize_t sony_acpi_store(struct device *, struct device_attribute *, const char *, size_t);
+static ssize_t sony_acpi_show(struct device *, struct device_attribute *,
+ char *);
+static ssize_t sony_acpi_store(struct device *, struct device_attribute *,
+ const char *, size_t);
struct sony_acpi_value {
- char *name; /* name of the entry */
- char **acpiget; /* names of the ACPI get function */
- char **acpiset; /* names of the ACPI set 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 ? */
- struct device_attribute devattr; /* sysfs atribute */
+ char *name; /* name of the entry */
+ char **acpiget; /* names of the ACPI get function */
+ char **acpiset; /* names of the ACPI set 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 ? */
+ struct device_attribute devattr; /* sysfs atribute */
};
#define HANDLE_NAMES(_name, _values...) \
HANDLE_NAMES(CMI_set, "SCMI");
static struct sony_acpi_value sony_acpi_values[] = {
- SONY_ACPI_VALUE(brightness_default, snc_brightness_def_get, snc_brightness_def_set, 1, SONY_MAX_BRIGHTNESS, 0),
- SONY_ACPI_VALUE(fnkey, snc_fnkey_get, NULL, -1, -1, 0),
- SONY_ACPI_VALUE(cdpower, snc_cdpower_get, snc_cdpower_set, 0, 1, 0),
- SONY_ACPI_VALUE(audiopower, snc_audiopower_get, snc_audiopower_set, 0, 1, 0),
- SONY_ACPI_VALUE(lanpower, snc_lanpower_get, snc_lanpower_set, 0, 1, 1),
+ SONY_ACPI_VALUE(brightness_default, snc_brightness_def_get,
+ snc_brightness_def_set, 1, SONY_MAX_BRIGHTNESS, 0),
+ SONY_ACPI_VALUE(fnkey, snc_fnkey_get, NULL, -1, -1, 0),
+ SONY_ACPI_VALUE(cdpower, snc_cdpower_get, snc_cdpower_set, 0, 1, 0),
+ SONY_ACPI_VALUE(audiopower, snc_audiopower_get, snc_audiopower_set, 0,
+ 1, 0),
+ SONY_ACPI_VALUE(lanpower, snc_lanpower_get, snc_lanpower_set, 0, 1, 1),
/* unknown methods */
- SONY_ACPI_VALUE(PID, snc_PID_get, NULL, -1, -1, 1),
- SONY_ACPI_VALUE(CTR, snc_CTR_get, snc_CTR_set, -1, -1, 1),
- SONY_ACPI_VALUE(PCR, snc_PCR_get, snc_PCR_set, -1, -1, 1),
- SONY_ACPI_VALUE(CMI, snc_CMI_get, snc_CMI_set, -1, -1, 1),
+ SONY_ACPI_VALUE(PID, snc_PID_get, NULL, -1, -1, 1),
+ SONY_ACPI_VALUE(CTR, snc_CTR_get, snc_CTR_set, -1, -1, 1),
+ SONY_ACPI_VALUE(PCR, snc_PCR_get, snc_PCR_set, -1, -1, 1),
+ SONY_ACPI_VALUE(CMI, snc_CMI_get, snc_CMI_set, -1, -1, 1),
SONY_ACPI_VALUE_NULL
};
* Sysfs show/store common to all sony_acpi_values
*/
static ssize_t sony_acpi_show(struct device *dev, struct device_attribute *attr,
- char *buffer)
+ char *buffer)
{
int value;
- struct sony_acpi_value *item = container_of(attr, struct sony_acpi_value, devattr);
+ struct sony_acpi_value *item =
+ container_of(attr, struct sony_acpi_value, devattr);
if (!*item->acpiget)
return -EIO;
return snprintf(buffer, PAGE_SIZE, "%d\n", value);
}
-static ssize_t sony_acpi_store(struct device *dev, struct device_attribute *attr,
- const char *buffer, size_t count)
+static ssize_t sony_acpi_store(struct device *dev,
+ struct device_attribute *attr,
+ const char *buffer, size_t count)
{
int value;
- struct sony_acpi_value *item = container_of(attr, struct sony_acpi_value, devattr);
+ struct sony_acpi_value *item =
+ container_of(attr, struct sony_acpi_value, devattr);
if (!item->acpiset)
return -EIO;
*/
static struct platform_driver sncpf_driver = {
.driver = {
- .name = "sony-laptop",
- .owner = THIS_MODULE,
- }
+ .name = "sony-laptop",
+ .owner = THIS_MODULE,
+ }
};
static struct platform_device *sncpf_device;
/* find the available acpiget as described in the DSDT */
for (; item->acpiget && *item->acpiget; ++item->acpiget) {
if (ACPI_SUCCESS(acpi_get_handle(sony_acpi_handle,
- *item->acpiget,
- &handle))) {
+ *item->acpiget,
+ &handle))) {
if (debug)
printk(LOG_PFX "Found %s getter: %s\n",
- item->name,
- *item->acpiget);
+ item->name, *item->acpiget);
item->devattr.attr.mode |= S_IRUGO;
break;
}
/* find the available acpiset as described in the DSDT */
for (; item->acpiset && *item->acpiset; ++item->acpiset) {
if (ACPI_SUCCESS(acpi_get_handle(sony_acpi_handle,
- *item->acpiset,
- &handle))) {
+ *item->acpiset,
+ &handle))) {
if (debug)
printk(LOG_PFX "Found %s setter: %s\n",
- item->name,
- *item->acpiset);
+ item->name, *item->acpiset);
item->devattr.attr.mode |= S_IWUSR;
break;
}
}
- if (item->devattr.attr.mode != 0) {
- ret = device_create_file(&sncpf_device->dev, &item->devattr);
- if (ret)
- goto out_sysfs;
- }
+ if (item->devattr.attr.mode != 0) {
+ ret =
+ device_create_file(&sncpf_device->dev,
+ &item->devattr);
+ if (ret)
+ goto out_sysfs;
+ }
}
return 0;
-out_sysfs:
+ out_sysfs:
for (item = sony_acpi_values; item->name; ++item) {
device_remove_file(&sncpf_device->dev, &item->devattr);
}
platform_device_del(sncpf_device);
-out_platform_alloced:
+ out_platform_alloced:
platform_device_put(sncpf_device);
-out_platform_registered:
+ out_platform_registered:
platform_driver_unregister(&sncpf_driver);
-out:
+ out:
return ret;
}
static int sony_backlight_update_status(struct backlight_device *bd)
{
return acpi_callsetfunc(sony_acpi_handle, "SBRT",
- bd->props->brightness + 1,
- NULL);
+ bd->props->brightness + 1, NULL);
}
static int sony_backlight_get_brightness(struct backlight_device *bd)
static struct backlight_device *sony_backlight_device;
static struct backlight_properties sony_backlight_properties = {
- .owner = THIS_MODULE,
- .update_status = sony_backlight_update_status,
- .get_brightness = sony_backlight_get_brightness,
- .max_brightness = SONY_MAX_BRIGHTNESS - 1,
+ .owner = THIS_MODULE,
+ .update_status = sony_backlight_update_status,
+ .get_brightness = sony_backlight_get_brightness,
+ .max_brightness = SONY_MAX_BRIGHTNESS - 1,
};
/*
struct acpi_namespace_node *node;
union acpi_operand_object *operand;
- node = (struct acpi_namespace_node *) handle;
- operand = (union acpi_operand_object *) node->object;
+ node = (struct acpi_namespace_node *)handle;
+ operand = (union acpi_operand_object *)node->object;
printk(LOG_PFX "method: name: %4.4s, args %X\n", node->name.ascii,
(u32) operand->method.param_count);
if (!item->valid)
continue;
ret = acpi_callsetfunc(sony_acpi_handle, *item->acpiset,
- item->value, NULL);
+ item->value, NULL);
if (ret < 0) {
printk("%s: %d\n", __FUNCTION__, ret);
break;
status = acpi_install_notify_handler(sony_acpi_handle,
ACPI_DEVICE_NOTIFY,
- sony_acpi_notify,
- NULL);
+ sony_acpi_notify, NULL);
if (ACPI_FAILURE(status)) {
printk(LOG_PFX "unable to install notify handler\n");
result = -ENODEV;
if (ACPI_SUCCESS(acpi_get_handle(sony_acpi_handle, "GBRT", &handle))) {
sony_backlight_device = backlight_device_register("sony", NULL,
- NULL, &sony_backlight_properties);
+ NULL,
+ &sony_backlight_properties);
- if (IS_ERR(sony_backlight_device)) {
+ if (IS_ERR(sony_backlight_device)) {
printk(LOG_PFX "unable to register backlight device\n");
sony_backlight_device = NULL;
- }
- else
+ } else
sony_backlight_properties.brightness =
- sony_backlight_get_brightness(sony_backlight_device);
+ sony_backlight_get_brightness
+ (sony_backlight_device);
}
if (sony_snc_pf_add())
return 0;
-outbacklight:
+ outbacklight:
if (sony_backlight_device)
backlight_device_unregister(sony_backlight_device);
sony_acpi_notify);
if (ACPI_FAILURE(status))
printk(LOG_PFX "unable to remove notify handler\n");
-outwalk:
+ outwalk:
return result;
}
}
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,
- },
+ .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)
return acpi_bus_register_driver(&sony_acpi_driver);
}
-
static void __exit sony_acpi_exit(void)
{
acpi_bus_unregister_driver(&sony_acpi_driver);