个人工具

UbuntuHelp:NC20

来自Ubuntu中文

Wikibot讨论 | 贡献2009年5月18日 (一) 17:14的版本 (创建新页面为 '{{From|https://help.ubuntu.com/community/NC20}} {{Languages|UbuntuHelp:NC20}} == Jaunty Jackelope on the Samsung NC20 == === Support Status === ---- ==== Full: 'out of the box':...')

(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳转至: 导航, 搜索

Jaunty Jackelope on the Samsung NC20

Support Status


Full: 'out of the box':

  • Wired networking
  • USB
  • Webcam
  • Bluetooth
  • Suspend / resume
  • Audio playback

Partial: after driver/kernel updates

  • Video
  • Wireless networking
  • Microphone
  • Fn Brightness keys
  • Via padlock hardware security
  • CPU Frequency Scaling
  • Wi-Fi On / off switch
  • SD Card reader

Not functional / Unverified:

  • Fn Buttons (Monitor switching, Screen on/off toggle)
  • Multi-touch

Video / Graphics


When you try to run the live cd the graphical login will not work and you'll need to [[UbuntuHelp:[openchrome_svn|build the OpenChrome driver]]] from svn or [[UbuntuHelp:[openchrome_debian|install a working package]]] from the Debian distribution <<Anchor(openchrome_svn)>>

Build from SVN


The following instructions are taken from the OpenChrome|wiki entry. * Firstly get the required build tools

sudo apt-get install build-essential subversion autoconf automake1.9 libtool

* Next you need to get the build dependencies

sudo apt-get build-dep xserver-xorg-video-openchrome

* Get the driver's sourcecode

svn checkout http://svn.openchrome.org/svn/trunk openchrome

* Change into the newly created directory

cd openchrome

* Run autogen to set up the driver build

./autogen.sh --prefix=/usr

* Compile openChrome

make

* Install openChrome

sudo make install

* Edit the Xorg configuration You can use the nano editor or any command line editor that you are comfortable with to make the changes

sudo nano /etc/X11/xorg.conf

This is my configuration which is minimal but gives the full 1280*800 resolution with 32-bit colour. The key settings are specifying the openchrome driver and the activedevice option.

Section "Device"
	Identifier	"Configured Video Device"
	Driver	        "openchrome"
	Option 	        "ActiveDevice"	"LCD,CRT"
EndSection

Section "Monitor"
	Identifier	"Configured Monitor"
EndSection

Section "Screen"
	Identifier	"Default Screen"
	Monitor		"Configured Monitor"
	Device		"Configured Video Device"
EndSection

* Restart GDM and install Ubuntu. You will need to restart GDM so that you can install Ubuntu. After installing the driver will need to be installed in the same way again or else you could try copying the openchrome directory to removable media and run make install on it after the reboot. To restart GDM and begin installation run this command

sudo /etc/init.d/gdm restart

<<Anchor(openchrome_debian)>>

Install from Debian package


It is possible that the current driver sourcecode from svn be broken, in which case X might not start properly. Debian has currently, as of May 8 2009, a more recent version of the openchrome driver, svn741, which seems to work fine with this laptop. You can download a copy of it from http://packages.ubuntu.com/karmic/xserver-xorg-video-openchrome which is the package for Ubuntu Karmic or from http://packages.debian.org/search?keywords=xserver-xorg-video-openchrome by choosing the package for the sid version of Debian. Download the file and install it with a command like

dpkg -i xserver-xorg-video-openchrome_0.2.903+svn741-1_i386.deb

then configure the xorg.conf as described before and you should have a working graphical interface.

External monitor


By adding to the xorg.conf file the option

	Option 	        "ActiveDevice"	"LCD,CRT"

the external output works just fine in clone mode, that is, you see in the second screen the same display you see on your laptop. Your external monitor might not accept the same resolution of your laptop though. If this is the case, the following command might help:

xrandr --output default --mode 1280x720

which will change the resolution of the display to one which should work with any HDTV. To revert the resolution back, just run

xrandr --output default --mode 1280x800

You can make these changes from your display manager, but you might find convenient to make some alias to access them quickly.


Touchpad (HAL)

This is a sample touchpad configuration for hal. The configuration file can be located here:

/usr/share/hal/fdi/policy/20thirdparty/11-x11-synaptics.fdi

The configuration enables shmconfig, scroll coasting and palm detect amongst others.

<?xml version="1.0" encoding="ISO-8859-1"?>
<deviceinfo version="0.2">
  <device>
    <match key="info.capabilities" contains="input.touchpad">
      <match key="info.product" contains="Synaptics TouchPad">
        <merge key="input.x11_driver" type="string">synaptics</merge>
        <merge key="input.x11_options.SHMConfig" type="string">True</merge>
        <merge key="input.x11_options.LeftEdge" type="string">1632</merge>
        <merge key="input.x11_options.RightEdge" type="string">5312</merge>
        <merge key="input.x11_options.TopEdge" type="string">1575</merge>
        <merge key="input.x11_options.BottomEdge" type="string">4281</merge>
        <merge key="input.x11_options.MinSpeed" type="string">0.1</merge>
        <merge key="input.x11_options.MaxSpeed" type="string">0.75</merge>
        <merge key="input.x11_options.AccelFactor" type="string">0.004</merge>
        <merge key="input.x11_options.PalmDetect" type="string">1</merge>
        <merge key="input.x11_options.PalmMinWidth" type="string">5</merge>
        <merge key="input.x11_options.PalmMinZ" type="string">190</merge>
        <merge key="input.x11_options.CoastingSpeed" type="string">6.0</merge>
        <merge key="input.x11_options.VertScrollDelta" type="string">300</merge>
      </match>
    </match>
  </device>
</deviceinfo>

Function Keys

Brightness

Needs two actions to fix. Firstly you must enable hal to recognise the nc20 and then you must verify that your kernel contains the patch that was submitted to fix the brightness keys. 1. Hal You need to edit the following file:

/usr/share/hal/fdi/information/10freedesktop/30-keymap-misc.fdi

Find the section that looks like this:

<match key="/org/freedesktop/Hal/devices/computer:system.hardware.product" contains_outof="NC10;SP55S;SQ45S70S;SX60P;SX30S;R59P/R60P/R61P;Q210;Q310;X05">

And add NC20; so that it looks like:

<match key="/org/freedesktop/Hal/devices/computer:system.hardware.product" contains_outof="NC10;NC20;SP55S;SQ45S70S;SX60P;SX30S;R59P/R60P/R61P;Q210;Q310;X05">

There is a bug raised against hal-info at the moment so this may or may not be fixed when you look at the file. 2. Kernel Patch There was a bug in the linux kernel that meant that the function keys repeated infinitely. This has been incorporated into the 2.6.28-12 kernel in Jaunty. This kernel is in proposed as of <<Date(2009-05-03T20:30:16-0135)>> It should be in the mainline 2.6.30 kernel.

Wireless

This is one method and I'm not sure if it is the right thing to do but it works and you get the new notifications that come with Jaunty. Please note that you must have the nc20 added to hal as described above and you need to be running kernel 2.6.28-12 or later 1. Set up the key bindings The following commands alias the XF86WLAN that is generated by the FN+F9 key combination and link it to the /etc/acpi/wireless.sh script that is already present.

gconftool-2 -s --type string /apps/metacity/keybinding_commands/command_1 'sudo /etc/acpi/wireless.sh'

gconftool-2 -s --type string /apps/metacity/global_keybindings/run_command_1 XF86WLAN

2. Allow permissions... By default you would not be allowed to run the wireless.sh script without using sudo or gksudo and providing a password. To allow access to the script you have to create a rule in the sudoers file.

  • Open the sudoers file for editing. By default nano will be the editor that will open
sudo visudo 
  • Look for the following heading
# Cmnd alias specification
  • Add this line underneath
Cmnd_Alias      WLANTOGGLE=/etc/acpi/wireless.sh
  • Add this line at the very bottom. It allows access to the script with no password.
%admin ALL=(ALL) NOPASSWD: WLANTOGGLE

Keys that work by default

Fn+F1 suspends to RAM out of the box Fn+F2 shows battery status in Gnome. Fn+Left (volume down) and Fn+Right (volume up) work out of the box. Fn+F6 (mute) works out of the box Fn+F10 enables or disables the touchpad out of the box.


Via Padlock


CPU Frequency Scaling

Not enabled by default but the kernel module is present. Simply add the module name to your /etc/modules file:

e_powersaver

After this you must reboot or load the module manually if you don't want to reboot straight away:

 
sudo modprobe e_powersaver

You can verify that this is working by adding the cpu frequency monitor applet to a gnome panel. Right-click on a panel, select 'Add to Panel' and finally select 'CPU Frequency Scaling Monitor'. The processor will vary from 851MHz to 1.7GHz.


Microphone

Does not work out of the box but it fixed with Alsa version 1.0.20. After ALSA is installed select 'Mic' as the input source in the gnome volume control application. It has been confirmed that only the driver needs to be upgraded to 1.0.20 for the microphone to function. These instructions|for the NC10 can be used as a guide to update the driver alone. Alternatively, there is a handy script available here that supports an auto-upgrade to 1.0.20 as of <<Date(2009-05-10T20:35:15-0135)>> This method will also update all of the other Alsa components. The command you need is the following where x.xx is the current revision of the script.

sudo AlsaUpgrade-1.0.x-rev-x.xx.sh -di

SD / MMC Card Reader

This fix should be considered as a preview or unstable version of what will most likely be incorporated into a future Linux kernel. I pulled the source out of a patch that was posted to the kernel mailing list by a VIA employee.

  • You will need to have the following packages installed to implement this fix
sudo apt-get install build-essential linux-headers-`uname -r`

1. Extract the files in the archive

tar zxf via-sdmmc.tar.gz && cd via-sdmmc

2. Compile the module

make

If you don't see any errors then you can install the module 3. Install the module

sudo make install

4. Test the module

sudo modprobe via-sdmmc

If all went ok then you can just insert a memory card and it should be auto mounted. 5. Set the module to autoload at startup.

If you want the card reader to be enabled automatically at startup you need to tell Ubuntu to load the module during the boot process. You can do this by adding the modle name to the /etc/modules file. Open that file with a text editor e.g.

sudo nano /etc/modules

and add the name of the module at the end of the file

via-sdmmc

External Resources / Handy Links


NC20 thread on Ubuntu Forums - Contains a wealth of information and is the source for much of this wiki entry.