posts:node: Add a post on Node and npm
[blog.git] / posts / Aspire_One_722.mdwn
1 Hardware
2 ========
3
4 Processor
5 ---------
6
7 The processor is an AMD Fusion [C-60][] (dual core, x86-64, 1 GHz;
8 `CONFIG_MK8` option).
9
10 You can monitor the processor temperature uring the [k10temp][] module
11 (`CONFIG_SENSORS_K10TEMP` option), which communicates with the
12 processor via the PCI bus:
13
14     $ lspci -k
15     …
16     00:18.3 Host bridge: Advanced Micro Devices [AMD] Device 1703
17         Kernel driver in use: k10temp
18         Kernel modules: k10temp
19     …
20
21 You can find read the [relative][k10-relative] processor temperature
22 in degrees Celsius using sysfs.  On my system, I can use:
23
24     $ cat '/sys/module/k10temp/drivers/pci:k10temp/0000:00:18.3/temp1_input'
25     75500
26
27 You can also get there directly through the PCI interface:
28
29     $ cat '/sys/devices/pci0000:00/0000:00:18.3/temp1_input'
30     75500
31
32 [lm_sensors][] is a fancier way to monitor temperature:
33
34     $ sensors
35     k10temp-pci-00c3
36     Adapter: PCI adapter
37     temp1:        +69.0°C  (high = +70.0°C)
38                            (crit = +115.0°C, hyst = +107.5°C)
39
40     radeon-pci-0008
41     Adapter: PCI adapter
42     temp1:        +69.0°C  
43
44 Graphics
45 --------
46
47 Radeon [Evergreen][] IGP ([HD 6290][hd6290]) integrated into
48 the C-60 processor (`radeon` module, `CONFIG_DRM_RADEON` and
49 `CONFIG_DRM_RADEON_KMS` options).
50
51 Audio
52 -----
53
54 Builtin ATI soundcard and ATI Azalia.  Both sound cards use [Intel's
55 HDA interface][HDA]:
56
57     00:01.1 Audio device: ATI Technologies Inc Device 1314
58         Subsystem: Acer Incorporated [ALI] Device 0598
59         Kernel driver in use: snd_hda_intel
60         Kernel modules: snd-hda-intel
61     00:14.2 Audio device: ATI Technologies Inc SBx00 Azalia (Intel HDA) (rev 40)
62         Subsystem: Acer Incorporated [ALI] Device 0598
63         Kernel driver in use: snd_hda_intel
64         Kernel modules: snd-hda-intel
65
66 In order to get these working with [ALSA][], I had to adjust the
67 default soundcard by adding `/etc/asound.conf`:
68
69     pcm.!default {
70       type hw
71       card SB
72     }
73
74     ctl.!default {
75       type hw
76       card SB
77     }
78
79 following [this FAQ][ALSA-26].
80
81 You may also want to enable the `dmix` plugin, to enable software
82 mixing of multiple streams (e.g. to play two songs at the same time).
83 I haven't bothered yet, but Pedro Venda discusses the setup
84 [here][dmix].  If you haven't enabled the plugin, you may get errors
85 like:
86
87     $ ogg123 -q test.ogg &
88     $ ogg123 -q test.ogg
89     === Could not load default driver and no driver specified in config file. Exiting.
90
91 Networking
92 ----------
93
94 The wired network card is an Atheros/Attansic [AR8152][] (`atl1c`
95 module, `CONFIG_ATL1C` option; Atheros [aquired Attansic][attansic] in
96 2007).  The wireless network card is a Broadcom [BCM4313][]
97 (`brcmsmac` module, `CONFIG_BRCMSMAC` option).
98
99 The Broadcom drivers [require firmware][brcm-firm], which you can get
100 from
101 `git://git.kernel.org/pub/scm/linux/kernel/git/dwmw2/linux-firmware.git`
102 (or `sys-kernel/linux-firmware` on [[Gentoo]]).  You'll need to
103 install `bcm43xx-0.fw` and `bcm43xx_hdr-0.fw` into
104 `/lib/firmware/brcm`.  Despite the name similarity, this is not the
105 firmware installed by Gentoo's `net-wireless/b43-firmware` package
106 (which fills in `/lib/firmware/b43`).
107
108 There is also difficulty running both the `atl1c` and `brmcsmac`
109 drivers at the same time.  Upon associating with a wireless access
110 point, the kernel (3.2.0-rc2) [hangs][net-mod-hang], forcing a
111 hard-reboot.  To avoid this issue, it's wise to remove the `atl1c`
112 module before attempting to connect to a wireless access point.  For
113 example:
114
115     # /etc/init.d/net.eth0 stop
116     # /etc/init.d/net.wlan0 stop
117     # modprobe -r atl1c
118     # modprobe -r brcmsmac
119     # modprobe brcmsmac
120     # /etc/init.d/net.wlan0 start
121
122 I'm not sure if re-loading the `brcmsmac` module accomplishes anything
123 here, but it can't hurt ;).
124
125 Another `brcmsmac` limitiation is that it [only supports managed and
126 monitor interfaces][brcmsmac-interfaces] (no master, ad-hoc, etc.).
127
128 Webcam
129 ------
130
131 The Suyin webcam is fairly standard, supporting the [USB video class][UVC]
132 for video4linux (`uvcvideo` module, `CONFIG_USB_VIDEO_CLASS` option).
133
134 Card reader
135 -----------
136
137 I haven't tested the Realtek [RTS51xxx][] card reader yet, but it uses
138 the `ums_realtek` module (`USB_STORAGE_REALTEK` option).
139
140 Internals
141 ---------
142
143     $ lspci -k
144     …
145     00:14.0 SMBus: ATI Technologies Inc SBx00 SMBus Controller (rev 42)
146         Subsystem: Acer Incorporated [ALI] Device 0598
147         Kernel driver in use: piix4_smbus
148         Kernel modules: i2c-piix4
149     …
150
151 TODO
152 ----
153
154 What are these for?
155
156     00:14.3 ISA bridge: ATI Technologies Inc SB700/SB800 LPC host controller (rev 40)
157         Subsystem: Acer Incorporated [ALI] Device 0598
158     00:14.4 PCI bridge: ATI Technologies Inc SBx00 PCI to PCI Bridge (rev 40)
159     00:15.0 PCI bridge: ATI Technologies Inc Device 43a0
160         Kernel driver in use: pcieport
161     00:15.2 PCI bridge: ATI Technologies Inc Device 43a2
162         Kernel driver in use: pcieport
163     00:15.3 PCI bridge: ATI Technologies Inc Device 43a3
164         Kernel driver in use: pcieport
165     00:18.0 Host bridge: Advanced Micro Devices [AMD] Device 1700 (rev 43)
166     00:18.1 Host bridge: Advanced Micro Devices [AMD] Device 1701
167     00:18.2 Host bridge: Advanced Micro Devices [AMD] Device 1702
168     00:18.4 Host bridge: Advanced Micro Devices [AMD] Device 1704
169     00:18.5 Host bridge: Advanced Micro Devices [AMD] Device 1718
170     00:18.6 Host bridge: Advanced Micro Devices [AMD] Device 1716
171     00:18.7 Host bridge: Advanced Micro Devices [AMD] Device 1719
172
173 [C-60]: http://en.wikipedia.org/wiki/Amd_fusion#.22Ontario.@@_.2840.C2.A0nm.29
174 [k10temp]: http://www.kernel.org/doc/Documentation/hwmon/k10temp
175 [k10-relative]: https://lkml.org/lkml/2009/11/24/194
176 [lm_sensors]: http://www.lm-sensors.org/
177 [Evergreen]: http://en.wikipedia.org/wiki/Evergreen_(GPU_family)
178 [hd6290]: http://en.wikipedia.org/wiki/Comparison_of_AMD_graphics_processing_units#IGP_.28HD_6xxx.29
179 [HDA]: http://en.wikipedia.org/wiki/Intel_High_Definition_Audio
180 [ALSA]: http://www.alsa-project.org/
181 [ALSA-26]: http://alsa.opensrc.org/FAQ026 
182 [dmix]: http://www.pjvenda.net/linux/doc/alsa/#dmix_dsnoop
183 [AR8152]: http://www.qca.qualcomm.com/technology/technology.php?nav1=48&product=98
184 [attansic]: http://en.wikipedia.org/wiki/Qualcomm_Atheros
185 [BCM4313]: http://www.broadcom.com/products/Wireless-LAN/802.11-Wireless-LAN-Solutions/BCM4313
186 [brcm-firm]: http://linuxwireless.org/en/users/Drivers/brcm80211
187 [net-mod-hang]: https://bugzilla.redhat.com/show_bug.cgi?id=754305
188 [brcmsmac-interfaces]: http://lists.shmoo.com/pipermail/hostap/2011-August/023692.html
189 [UVC]: http://www.ideasonboard.org/uvc/
190 [RTS51xxx]: http://www.realtek.com/products/productsView.aspx?Langid=1&PNid=15&PFid=25&Level=4&Conn=3
191
192 [[!tag tags/hardware]]
193 [[!tag tags/linux]]