====== M50-2130 Baako ====== ===== Modem ===== Needed: [[hardware:ad1986a|alsa]], [[software:slmodem]] From //aplay -l// card 0: Intel [HDA Intel], device 6: Si3054 Modem [Si3054 Modem] Subdevices: 1/1 Subdevice #0: subdevice #0 Start the software modem: slmodemd -a modem:0 -g root or if you use a old version of ALSA-lib: slmodemd -a hw:0,6 -g root ===== Hardware ===== 00:00.0 Host bridge: Intel Corporation Mobile 915GM/PM/GMS/910GML Express Processor to DRAM Controller (rev 03) 00:01.0 PCI bridge: Intel Corporation Mobile 915GM/PM Express PCI Express Root Port (rev 03) 00:1b.0 Audio device: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) High Definition Audio Controller (rev 03) 00:1c.0 PCI bridge: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 1 (rev 03) 00:1d.0 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #1 (rev 03) 00:1d.1 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #2 (rev 03) 00:1d.2 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #3 (rev 03) 00:1d.3 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #4 (rev 03) 00:1d.7 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCI Controller (rev 03) 00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev d3) 00:1f.0 ISA bridge: Intel Corporation 82801FBM (ICH6M) LPC Interface Bridge (rev 03) 00:1f.2 IDE interface: Intel Corporation 82801FBM (ICH6M) SATA Controller (rev 03) 00:1f.3 SMBus: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) SMBus Controller (rev 03) 01:00.0 VGA compatible controller: nVidia Corporation NV43 [GeForce Go 6600] (rev a2) 06:05.0 Ethernet controller: Broadcom Corporation NetXtreme BCM5788 Gigabit Ethernet (rev 03) 06:07.0 Network controller: Intel Corporation PRO/Wireless 2915ABG Network Connection (rev 05) 06:09.0 CardBus bridge: Ricoh Co Ltd RL5c476 II (rev b3) 06:09.1 FireWire (IEEE 1394): Ricoh Co Ltd R5C552 IEEE 1394 Controller (rev 08) 06:09.2 Generic system peripheral [0805]: Ricoh Co Ltd R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (rev 17) 06:09.3 System peripheral: Ricoh Co Ltd R5C592 Memory Stick Bus Host Adapter (rev 08) 06:09.4 System peripheral: Ricoh Co Ltd xD-Picture Card Controller (rev 03) ===== Bluetooth ===== The M50 Baako has a built in Bluetooth device. //cat /proc/bus/usb/devices// shows this: ... T: Bus=04 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 2 Spd=12 MxCh= 0 D: Ver= 1.10 Cls=e0(unk. ) Sub=01 Prot=01 MxPS=64 #Cfgs= 1 P: Vendor=0a5c ProdID=200a Rev= 0.01 S: Manufacturer=Broadcom S: Product=Broadcom Bluetooth Module C:* #Ifs= 4 Cfg#= 1 Atr=e0 MxPwr= 0mA I:* If#= 0 Alt= 0 #EPs= 3 Cls=e0(unk. ) Sub=01 Prot=01 Driver=hci_usb E: Ad=81(I) Atr=03(Int.) MxPS= 16 Ivl=1ms E: Ad=82(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms E: Ad=02(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms I: If#= 1 Alt= 0 #EPs= 2 Cls=e0(unk. ) Sub=01 Prot=01 Driver=hci_usb E: Ad=83(I) Atr=01(Isoc) MxPS= 0 Ivl=1ms E: Ad=03(O) Atr=01(Isoc) MxPS= 0 Ivl=1ms I: If#= 1 Alt= 1 #EPs= 2 Cls=e0(unk. ) Sub=01 Prot=01 Driver=hci_usb E: Ad=83(I) Atr=01(Isoc) MxPS= 9 Ivl=1ms E: Ad=03(O) Atr=01(Isoc) MxPS= 9 Ivl=1ms I:* If#= 1 Alt= 2 #EPs= 2 Cls=e0(unk. ) Sub=01 Prot=01 Driver=hci_usb E: Ad=83(I) Atr=01(Isoc) MxPS= 17 Ivl=1ms E: Ad=03(O) Atr=01(Isoc) MxPS= 17 Ivl=1ms I: If#= 1 Alt= 3 #EPs= 2 Cls=e0(unk. ) Sub=01 Prot=01 Driver=hci_usb E: Ad=83(I) Atr=01(Isoc) MxPS= 32 Ivl=1ms E: Ad=03(O) Atr=01(Isoc) MxPS= 32 Ivl=1ms I: If#= 1 Alt= 4 #EPs= 2 Cls=e0(unk. ) Sub=01 Prot=01 Driver=hci_usb E: Ad=83(I) Atr=01(Isoc) MxPS= 64 Ivl=1ms E: Ad=03(O) Atr=01(Isoc) MxPS= 64 Ivl=1ms I: If#= 1 Alt= 5 #EPs= 2 Cls=e0(unk. ) Sub=01 Prot=01 Driver=hci_usb E: Ad=83(I) Atr=01(Isoc) MxPS= 64 Ivl=1ms E: Ad=03(O) Atr=01(Isoc) MxPS= 64 Ivl=1ms I:* If#= 2 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none) E: Ad=84(I) Atr=02(Bulk) MxPS= 32 Ivl=0ms E: Ad=04(O) Atr=02(Bulk) MxPS= 32 Ivl=0ms I:* If#= 3 Alt= 0 #EPs= 0 Cls=fe(app. ) Sub=01 Prot=00 Driver=(none) ... or for better reading, //lsusb// output: ... Bus 004 Device 002: ID 0a5c:200a Broadcom Corp. Bluetooth dongle ... Needed Linux kernel modules: |**Linux Kernel Configuration:** //Networking -> Bluetooth subsystem support// | | L2CAP protocol support SCO links support RFCOMM protocol support [*] RFCOMM TTY support BNEP protocol support [*] Multicast filter support [*] Protocol filter support HIDP protocol support | and |**Linux Kernel Configuration:** //Networking -> Bluetooth subsystem support -> Bluetooth device drivers// | | HCI USB driver < > HCI SDIO driver < > HCI UART driver < > HCI BCM203x USB driver < > HCI BPA10x USB driver < > HCI BlueFRITZ! USB driver < > HCI VHCI (Virtual HCI device) driver | After booting the new kernel, load //btusb// modprobe btusb With the help of //hciconfig -a// from the [[software:bluez]] package, we see this: hci0: Type: USB BD Address: 00:00:00:00:00:00 ACL MTU: 0:0 SCO MTU: 0:0 DOWN RX bytes:0 acl:0 sco:0 events:0 errors:0 TX bytes:0 acl:0 sco:0 commands:0 errors:0 Bringing up the device: hciconfig hci0 up After this the output of //hciconfig -a// has changed: hci0: Type: USB BD Address: 00:10:C6:81:A4:7C ACL MTU: 377:10 SCO MTU: 64:8 UP RUNNING RX bytes:348 acl:0 sco:0 events:11 errors:0 TX bytes:38 acl:0 sco:0 commands:11 errors:0 Features: 0xff 0xfe 0x0d 0x38 0x08 0x08 0x00 0x00 Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3 Link policy: Link mode: SLAVE ACCEPT Name: 'Broadcom Bluetooth Module' Class: 0x000000 Service Classes: Unspecified Device Class: Miscellaneous, HCI Ver: 1.2 (0x2) HCI Rev: 0x2 LMP Ver: 1.2 (0x2) LMP Subver: 0x6965 Manufacturer: Broadcom Corporation (15) Quick check if there are some other Bluetooth devices arround, //hcitool scan// (also from the [[software:bluez]] package) Scanning ... 00:19:1D:7F:93:34 Nintendo RVL-CNT-01 It found one of my Nintendo Wii remotes. ===== Special keys ===== You can find out what keycode is generated if you press a key by using //xev//. Content of $HOME/.Xmodmap keycode 160 = XF86AudioMute keycode 174 = XF86AudioLowerVolume keycode 176 = XF86AudioRaiseVolume Put this in your .xinitrc or some other script which is executed if X is started. test -r $HOME/.Xmodmap && xmodmap $HOME/.Xmodmap Now all keys or keycombinations which produce a keycode of 160, 174 or 176 have gotten a keysym name. There are several possibilities of assigning functionality to those keysyms, I am using [[software::xbindkeys]]. Relevant lines of my configuration file ($HOME/.xbindkeysrc) "amixer set PCM 1-" XF86AudioLowerVolume "amixer set PCM 1+" XF86AudioRaiseVolume "amixer set PCM toggle" XF86AudioMute Again put this in your .xinitrc or some other script which is executed if X is started. test -r $HOME/.xbindkeysrc && xbindkeys & ===== ACPI ===== What most people want is, that when they close the lid of their laptop, it should suspend. After closing the lid on this notebook, it needs arround 12 seconds till a ACPI event is thrown. It's exactly the same behaviour in MS Windows. So it seems to be a feature, some sort of delay time. The other thing which is a little bit special is that after booting the initial state of the lid is always //closed//. cat /proc/acpi/button/lid/LID0/state state: closed This is no problem at all because if you close the lid for the first time, longer than arround 12 seconds, the lid state is still //closed//. After opening the lid, it state changes to //open// and thenceforward the lid state is always correct. If you are bothered by this you can use this custom DSDT ([[http://kratz00.org/files/custom_dsdt.hex|custom_dsdt.hex]]), using this the lid state is correct after booting the system. How to use this is covered in the [[software:linux_kernel]] building instructions.