]>
Commit | Line | Data |
---|---|---|
ab5bd206 MD |
1 | Sony Notebook Control Driver (SNC) Readme |
2 | ----------------------------------------- | |
3 | Copyright (C) 2004- 2005 Stelian Pop <stelian@popies.net> | |
4 | Copyright (C) 2007 Mattia Dongili <malattia@linux.it> | |
5 | ||
6 | This mini-driver drives the SNC device present in the ACPI BIOS of | |
7 | the Sony Vaio laptops. | |
8 | ||
9 | It gives access to some extra laptop functionalities. In its current | |
10 | form, this driver let the user set or query the screen brightness | |
11 | through the backlight subsystem and remove/apply power to some devices. | |
12 | ||
13 | Backlight control: | |
14 | ------------------ | |
15 | If your laptop model supports it, you will find sysfs files in the | |
16 | /sys/class/backlight/sony/ | |
17 | directory. You will be able to query and set the current screen | |
18 | brightness: | |
19 | brightness get/set screen brightness (an iteger | |
20 | between 0 and 7) | |
21 | actual_brightness reading from this file will query the HW | |
22 | to get real brightness value | |
23 | max_brightness the maximum brightness value | |
24 | ||
25 | ||
26 | Platform specific: | |
27 | ------------------ | |
28 | Loading the sony-laptop module will create a | |
29 | /sys/devices/platform/sony-laptop/ | |
30 | directory populated with some files. | |
31 | ||
32 | You then read/write integer values from/to those files by using | |
33 | standard UNIX tools. | |
34 | ||
35 | The files are: | |
36 | brightness_default screen brightness which will be set | |
37 | when the laptop will be rebooted | |
38 | cdpower power on/off the internal CD drive | |
39 | audiopower power on/off the internal sound card | |
40 | lanpower power on/off the internal ethernet card | |
41 | (only in debug mode) | |
42 | ||
43 | Note that some files may be missing if they are not supported | |
44 | by your particular laptop model. | |
45 | ||
46 | Example usage: | |
47 | # echo "1" > /sys/devices/platform/sony-laptop/brightness_default | |
48 | sets the lowest screen brightness for the next and later reboots, | |
49 | # echo "8" > /sys/devices/platform/sony-laptop/brightness_default | |
50 | sets the highest screen brightness for the next and later reboots, | |
51 | # cat /sys/devices/platform/sony-laptop/brightness_default | |
52 | retrieves the value. | |
53 | ||
54 | # echo "0" > /sys/devices/platform/sony-laptop/audiopower | |
55 | powers off the sound card, | |
56 | # echo "1" > /sys/devices/platform/sony-laptop/audiopower | |
57 | powers on the sound card. | |
58 | ||
59 | Development: | |
60 | ------------ | |
61 | ||
62 | If you want to help with the development of this driver (and | |
63 | you are not afraid of any side effects doing strange things with | |
64 | your ACPI BIOS could have on your laptop), load the driver and | |
65 | pass the option 'debug=1'. | |
66 | ||
67 | REPEAT: DON'T DO THIS IF YOU DON'T LIKE RISKY BUSINESS. | |
68 | ||
69 | In your kernel logs you will find the list of all ACPI methods | |
70 | the SNC device has on your laptop. You can see the GCDP/GCDP methods | |
71 | used to pwer on/off the CD drive, but there are others. | |
72 | ||
73 | I HAVE NO IDEA WHAT THOSE METHODS DO. | |
74 | ||
75 | The sony-laptop driver creates, for some of those methods (the most | |
76 | current ones found on several Vaio models), an entry under | |
77 | /sys/devices/platform/sony-laptop, just like the 'cdpower' one. | |
78 | You can create other entries corresponding to your own laptop methods by | |
79 | further editing the source (see the 'sony_acpi_values' table, and add a new | |
80 | entry to this table with your get/set method names using the | |
81 | HANDLE_NAMES macro). | |
82 | ||
83 | Your mission, should you accept it, is to try finding out what | |
84 | those entries are for, by reading/writing random values from/to those | |
85 | files and find out what is the impact on your laptop. | |
86 | ||
87 | Should you find anything interesting, please report it back to me, | |
88 | I will not disavow all knowledge of your actions :) | |
89 | ||
90 | Bugs/Limitations: | |
91 | ----------------- | |
92 | ||
93 | * This driver is not based on official documentation from Sony | |
94 | (because there is none), so there is no guarantee this driver | |
95 | will work at all, or do the right thing. Although this hasn't | |
96 | happened to me, this driver could do very bad things to your | |
97 | laptop, including permanent damage. | |
98 | ||
99 | * The sony-laptop and sonypi drivers do not interact at all. In the | |
100 | future, sonypi could use sony-laptop to do (part of) its business. | |
101 | ||
102 | * spicctrl, which is the userspace tool used to communicate with the | |
103 | sonypi driver (through /dev/sonypi) does not try to use the | |
104 | sony-laptop driver. In the future, spicctrl could try sonypi first, | |
105 | and if it isn't present, try sony-laptop instead. | |
106 |