by andrea venturi a.venturi@avalpa.com
Here you can find my best tweaks to support all the goodies of
this slick notebook.
Date |
Description |
Note |
20 july 2008 |
Description of my first distro install and some note |
|
27 july 2008 |
(off topic) Some added hardware.. |
|
5 august 2008 |
Audio card starts to work! |
many things could be done to
test all the codec features |
6 august 2008 |
some info about bluetooth quirks
(HID at boot time and then HCI) and max sound volume |
sound volume is too low compared
to the other OS. |
8 august 2008 |
some info about Broadcom own
linux driver, and some info about audio line input.. |
|
10 august 2008 |
this page is now advertised on tuxmobil! |
TuxMobil |
The Dell
Studio 15 is a
recently introducted laptop packed with a lot of interesting features
for the general user.
As of july 2008, Gnu/Linux can run on
this laptop quite smoothly. Both amd64
(*) and i386 version (albeit
with
an amd64 linux you'll have to tweak the OS a lot to run "legacy"
32bit closed software like Skype, Acrobat Reader and Flash Macromedia
that are quite popular..)
So, from now on, i'll speak about a i386 install of a Debian distro. I
started with testing/lenny
and i finished with an Unstable edition.
You have to live on the bleeding edge if you the latest stuff.
Anyway, i'm not going to speak why i choose Debian (because it's clear,
as it's the more controllable and free, as freedom, distribution..) and
hot to install it for real (it's that easy nowadays!), but just as a
case for the Dell laptop support. If you are a real man, you don't need
the Ubuntu fancy features!)
(*) yes i know we are on a core 2 duo , but the 64 bit version
of linux is nevertheless called amd64
because this kind of 64bit technology has been developed initially by Amd when Intel decided to scratch
everything and start with their Itanium failure
and a 64bit totally new architecture. now you see where we are! :-)
There are some basic glitches that should be solved in some few months, as Dell happens to say that this Studio model should be selled with Ubuntu Linux preinstalled. Here my preferred one:
the wireless wi.fi 802.11n BROADCOM
BCM4322 not working (or half working
with some ndiswrapper
magic! usually badly crash on you soon or later..), have to try the Broadcom
own linux driver.
The internal audio card more or less
work, usually this advanced
codec need
some quirks, but this time, is more or less supported. both for
input (internal/external) and output (speaker and 1 headphone jack, the
middle), but it has some minor issue. (max volume with resonance, no EQ
actually, second headphone jack not working)
Of course, time is short so i have not
yet tested some fancy features, like the HDMI port for both video and
audio. I promise to do it as soon as possible and report.
Then there are some tough issues like
blu ray disk playing that could/should need to deal someway with
"digital right management" technologies. Let see how this
script will develope.
|
|
Note, Linux support.. |
|
Processors |
Intel® CoreTM 2 Duo Processor T8100 (2.1GHz, 3MB L2 Cache, 800MHz FSB) |
Working out of the box (both 32 & 64 bit kernel), virtalization not tested (but it was disabled in the bios, pay attention!) |
|
Memory |
4GB Dual Channel 667MHz DDR2 SDRAM |
great! but you'll just use 3Gigs if you go 32bit kernel (both Linux or Windows!); need to get to 64bit for real stuff. |
|
Chipset |
Intel® 965PM Express Chipset |
Working out of the box.. (at least for what i use..) |
|
Graphics |
Discrete Graphic Card: 256MB ATI® Mobility Radeon HD 3450 |
The Ati open source driver is coming, i had some problem with
Radeonhd X11 driver. It works with the old radeon module. |
|
LCD Display |
Glossy, widescreen 15.4 inch display (1280x800) |
Working out of the box.. |
|
Audio and Speakers |
Intel High Definition Audio 2.0 |
NOW IT WORKS! Not working natively, maybe some quirks. see more notes at the bottom! |
|
Hard drive |
250GB configured with a 5400 RPM SATA 8MB hard drive. WDC WD2500BEVS-7 |
The Sata disk is unrecognized with Debian Etch netinst (kernel
too old 2.6.18). |
|
Optical unit |
Combo Optiarc DVDRW/BDROM BC-5600S |
Fine for CD & DVD reading.. Need to test some CD burning, and what about blu ray disk playing? We want it running on linux too! |
|
Power |
6-cell 56WHr Li-Ion Battery |
|
|
Wireless |
Dell Wireless 1510 802.11n Half Mini-Card (Broadcom BCM4322!) |
Not working natively. Hack
with ndiswrapper could do
something.. see more notes at the bottom. |
|
Bluetooth |
Dell Wireless 370 Bluetooth Internal (2.0) mini-card
|
It's based on a broadcom
BCM2046 chip too! It works on Debian/Linux if it is already on; if
i get it down and up again, the Gnome desktop doesn't see it anymore..
is it a Gnome problem? i'll check.. see
down at the kill switch paragraph |
|
Webcam |
SONiX Technology Inc. (Microdia) USB VID:PID 0c45:63fa |
||
Ethernet |
Broadcom Corporation NetLink BCM5784M |
Working out of the box |
|
Piezo (multimedia) keys | nothing to see here.. HW related! |
|
|
IR front port |
is there a missing HW piece? |
is this IR port also IRDA
compliant (the legacy!) |
Externally Accessible (4) USB 2.0 compliant 4-pin ports HDMI connector 15-pin VGA video connector Integrated network connector 10/100/1000 LAN (RJ45) AC adapter connector Audio jacks (1 line-in, 1-line out, 1 Mic-in) 4-pin IEEE 1394 port 54 mm ExpressCard slot Consumer IR |
Internal Card Slots 2 Mini-Card 1 Half Mini-Card
Dimensions & Weight Width: 14.0" (355.6mm) Height: 1.0" (25.3mm) front / 1.3" (33mm) back Depth: 10.3" (261.5mm) Weight: Starting weight of 6.11 lbs. (2.77 kg)6 (15.4" WXGA TL display, 6 cell battery, DVD +/- RW, integrated graphics). Weights will vary depending on configurations and manufacturing variability. |
Here i put a number of standard file, everyone can peruse to understand better what's going well or badl in this notebook:
More often than not (but things are really improving) if you want
to use the newest gears in your pc you can't just wait the cooked
Linux distro as they can't cope with all the new hardware stuff going
out on the market.
So you'll need to go out on the web,
straight to the upstream hardware developers, understand if the geeks
are already providing support for your bleeding edge stuff, and then
get the latest package (a tar package if you are lucky.. otherwise
you'll need to download straight from a concurrent versioning
system.. ) and put it inside your system.
You should be aware,
of course, that, acting this way, you are going outside the standard
track, so you can't blame your distro packager if, later, after some
upgrade cycle, things could break on you. Distro can't for sure
prevent every single change from the standard upgrade management.
Hey, they are already working for you for free. Please help them, for
example, with Quality Assurance, Support and Evangelism.
As the Changelog says that in 1.0.17 alsa-driver there's a greatly improved support for HDA-intel HW and various codec (like our 92HDXXX), i wanted to try it so i had to download the ALSA 1.0.17 driver and proceed with the good old way of patch a kernel:
wget ftp://ftp.alsa-project.org/pub/driver/alsa-driver-1.0.17.tar.bz2 tar tvfj alsa-driver-1.0.17.tar.bz2 cd alsa-driver-1.0.17 ./configure make make install
the last step need to be done as root.
now, if
everything is gone ok, you should download the old alsa driver and
put in place the new one.
you can also reboot the system and
things should go fine after.
And the audio card now plays very well! Hurrah (see at the bottom
some more test and details)
I quickly tried to put all the usual model="" parameters during snd-hda-intel module load (dell, 3stack, 5stack, 6stack-digout) but they aren't needed.
By the way, there's already an entry for this "subdevice" (some pun
intended?) 0x10280254 but it's
just a fake entry and it works!
hda_codec: model 'dell-m6' is selected for config 1028:254 (unknown Dell)
The chase is ended only at the beginning! snd-hda-intel has a lot of potential configurations. it depends mainly on the codec; this one is a:
Guess the link of these hda code is such a difficult task that
there's a tool to render visually all the connections: codecgraph. I made my
homework and sent the resultant svg
but i didn't get an answer. It's for sure a tough task. If you know
some more news, mail me at a dot
venturi
at
avalpa dot com (please swap the dot with . and at with @)
Let's move along, on linux, you are your better friend.
If you want debug messagges (remember to take back when we'll finish
otherwise you'll clobber the disk!), you just need to add this
parameter during alsa audio driver
compilation:
Then you'll find a lot of
useful info abouth the auto-recognition of this card and how the
codec play the streams when you launch your preferred mp3 player (with
creative commons song of course!)
Now if only i could find a brief tutorial about this NID crazyness and
the port/mixer mapping! Someone is looking
to make it a user spacetools. There's
a lot of speaking about how to move over fixed configuration.
Otherwise i'll need to dig in the Intel HDA specifications..
more than 170
pages of what?
Luckily Mario Limonciello gave me the winning hint again; revert
back this commit!
It's really one-liner in the patch_sigmatel.c
file; we need to let our subsystem 0x10280254
use the standard init struct dell_m6_core_init[]
and not the soften dell_eq_core_init[]
This is the relevant change around line 3567:
// pay attention, potential distortion here..Lastly, there's support from the codec vendor, too! here you can find a huge pdf with all the magic
about this codec.,
Is there something more we can do with this codec ? Maybe some default
on the
.ini files in the windows driver can help too. Let's find brighter
ideas!
[7.8.2008] Today, i've been
struggling a bit to have both (one at a time..) the internal and my
external mic working through the line in
jack input port. Let's se how we can do it.
This is an image of my working
minimal alsamixer config input-wise
(Capture would be the right
word..) :
The webcam is not supported out of the box, but neither it's too diffcult to find the solution.
This web camera is a standard linux-uvc
compatible camera. Debian already support the module but outside the
packaged kernel.
So you need to installa a source package called linux-uvc-source and compile it on
the fly.
Of course you do need a bunch of development tools, like compilers, kernel header and so on.
It should be all installed when you install module assistant: apt-get install module-assistant
When the linux module uvcvideo is compiled, you should see some succesful message here in dmesg:
[10457.275897] uvcvideo: Found UVC 1.00 device
Laptop_Integrated_Webcam_2M (0c45:63fa)
[10500.755024] input:
Laptop_Integrated_Webcam_2M as /class/input/input12
[10500.765802]
usbcore: registered new interface driver uvcvideo
[10500.765812]
USB Video Class driver (v0.1.0)
If you want to test it, use the software called uvccapture (apt-get install
uvccapture) and you should see your face (simley or hangry, i don't
know!) on the screen.
as you can see, there's the bluetooth adapter, but there are too two
"input adapters" (a keyboard and a mouse !)
[6.8.2008] I had a
thread in
the linux-desktop
(it's a bit misleading as a title) mailing
list with Dell's Mario Limonciello (many thanks to him) about this
HID devices and i've been told an interesting story. This devices are
"fake" devices from the BT adapter so, if you have a BT mouse and
keyboard, you can use them also at boot/bios time without OS knowledge
and management.
This is a renowned Apple feature too.
As you can see now with:
the BT adapter can't be seen by Linux.
If you want to use the BT adapter as HCI, you'll need to give a
magic commandas root: hid2hci
If the switch is onWith
regard to piezo keys, i already can raise, reduce and mute the volume
with the
piezo keyboard (and it's supported by gnome with a fancy animation on
the screen)
And i get some unsupported keycodes, pressing the Wi.fi catcher on the left side of
the hinge:
and pressing the "Fn-Right Arrow" combinatin (that's should raise the keyboard night light, in my laptop it doesn't work! :-| ) i get:
[18683.853412] atkbd.c: Unknown key pressed (translated set 2, code 0x8c on isa0060/serio0).BTW there's no "release event" for this key!
The other piezo keys don't send any relevant event on the /var/log/messages file.. maybe they
are already supported? But there's no app coming out saying "let's
play". Need to dig further..
Another
little glitch from
a software point of view: when the bluetooth adapter return to life,
Gnome doesn't switch on the bluetooth stack software. If i raise the BT
application manually, it still says it does not see any adapter on
board!
If you want to use the BT adapter with your Phone in HCI mode you have
to give the hid2hci command as
super-user!
This is the
only nasty tale.
We Free&Open source customers (like linux users) are really
tired of
"dragging-their-feets" hardware producers.
I'm going to
complain to Dell about it every day, so Dell will push better this
concept in the
head of these picky producers (or change totally their HW choice )
|
|
Today i happily use a linksys/cisco WUSB54GC 802.11g USB external adapter (USB) (using ralink module) |
|
As of 30 july 2008, i refuse to "try" to have my broadcom chip
work halfway with crappy solutions like ndiswrapper and make my
system
totally unreliable.
|
We all say that hardware support in linux is getting better, but sometime there's still some glitch.
Here i speak about the worst things i'm trying to use under linux. Some time i win, sometime i'm still losing but there's always hope!
As this notebook doesn't have any legacy port (no serial RS232, no parallel port AKA ieee1294, no more PSTN modem) i have to find alternatives as sometime i need such stuff.
The first piece i had to tweak a bit is an USB-serial converter called HL-340:
It seems an easy task, as we believe RS232 to be a standard module in linux usb-core. Not at all!
If you plug the cable in an USB port, you get ti recognized as a Prolific PL-2303 cable. It seems right out of the box, but it does not work.
You get always bad character in the serial line program like minicom. Don't know way.
If you want to use this cable, you need to blacklist this
preferred driver in the kernel linux. I.e. Put a blacklist pl2303
line at the bottom of /etc/modprobe.d/blacklist
and you'll find, next time you link the cable, that it gets a more
friendly ch341
module. This works! I spent so much time and i found the solution
here.
Many things could be improved, of course, and tested too.
So much things to do. But all reasonable and in a short term too.
Things are changed a lot in linux camp since the early days.
Andrea Venturi (a dot venturi at avalpa dot com)
Tell me for any thing should be uncorrect or changed since 6.8.2008
(sunny august and the holidays are here!)