<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Jkx@home &#187; linux</title>
	<atom:link href="http://www.larsen-b.com/tags/linux/feed" rel="self" type="application/rss+xml" />
	<link>http://www.larsen-b.com</link>
	<description>Titanium Exposé</description>
	<lastBuildDate>Mon, 26 Jul 2010 16:50:25 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Howto use AVR Dragon Jtag on Linux (Avarice + avr-gdb +DDD)</title>
		<link>http://www.larsen-b.com/Article/315.html</link>
		<comments>http://www.larsen-b.com/Article/315.html#comments</comments>
		<pubDate>Sun, 30 Nov 2008 15:45:09 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Electronics]]></category>
		<category><![CDATA[avr]]></category>
		<category><![CDATA[gdb]]></category>
		<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://www.larsen-b.com/?p=315</guid>
		<description><![CDATA[I bought a couple of months ago a little AVR Dragon card. My initial plan was to use it for debuging programs with the embbeded JTAG. But I run into several issue with that, mainly because the lack of doc on this topic. So, here we are ;)
The AVR Dragon is nice because you can [...]]]></description>
			<content:encoded><![CDATA[<p>I bought a couple of months ago a little <a href="http://www.atmel.com/dyn/Products/tools_card.asp?tool_id=3891">AVR Dragon</a> card. My initial plan was to use it for debuging programs with the embbeded JTAG. But I run into several issue with that, mainly because the lack of doc on this topic. So, here we are ;)</p>
<p>The AVR Dragon is nice because you can use it as a small developpement device without any other requirement: Simply drop the needed ATMega on the board, some little wrapping for : Jtag + power supply.</p>
<p><a href="http://jkx.larsen-b.com/gallery/blog/pb163528?full=1"><img class="alignnone" title="AVR Dragon + ATMega 16" src="http://jkx.larsen-b.com/photos/blog/pb163528.sized.jpg" alt="" width="640" height="410" /></a></p>
<p>As you can see, this is compact and nothing else is needed. The power supply come from the USB port, and I soldered a DIP on the board.. and that&#8217;s it.</p>
<p>I use the Jtag connector, so now I can use a real debugger instead of playing with the UART. Simply put a breakpoint, and enjoy :) By this way, I figure out that most of the time I simply push some stuff in arrays, and inspect them with debugger. This is really efficient. For example, last week I need to fix a timing issue with a IR sensor, simply wrap the little board, and push all interrupts in a array with the related timing. Of course, this can be done with a serial connection too, but it will take more time, and even worst if you encounter a bug, you will have to find where is it (the UART printf, or the code itself) ..</p>
<h4>So, how to use this with a Linux OS ?</h4>
<p>First you need to use <a href="http://avarice.sourceforge.net/">AVaRICE</a> to program the ATMega with a command like this :</p>
<pre>avarice -g -j usb --erase --program --file main.hex :4242</pre>
<p>Here the result:</p>
<p><img class="alignnone" title="Avarice" src="http://jkx.larsen-b.com/photos/blog/avarice.sized.jpg" alt="" width="640" height="476" /></p>
<p>AVaRICE flash the hex file to the ATMega, and wait for a <a href="http://en.wikipedia.org/wiki/GNU_Debugger">GDB</a> connection on port 4242. GDB is fine, but not really visual ;)</p>
<p>Let&#8217;s take a look at <a href="http://www.gnu.org/software/ddd/">DDD</a></p>
<p>To use DDD with avr-gdb (the gdb for AVR), you need to edit a config file, for example gdb.conf and put this in :</p>
<pre>file main.out
target remote localhost:4242</pre>
<p>And the final command, just launch DDD like this :</p>
<pre>ddd --debugger "avr-gdb -x gdb.conf"</pre>
<p>Next step: Simply place some breakpoint, and the press &#8220;Cont&#8221; inue button in DDD. Et voilà :</p>
<p><a href="http://jkx.larsen-b.com/gallery/blog/ddd?full=1"><img class="alignnone" title="DDD" src="http://jkx.larsen-b.com/photos/blog/ddd.sized.jpg" alt="" width="438" height="640" /></a></p>
<p>I hope this little tuto will help people looking for a nice AVR debuger for the AVR on Linux (or any OSS system). The AVR Dragon is definitively a must have for low budget user in AVR scene.</p>
<p><strong>Enjoy bug ? :)</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.larsen-b.com/Article/315.html/feed</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>2D benchmarks on Linux Nvidia, Intel, ATI: xrender</title>
		<link>http://www.larsen-b.com/Article/290.html</link>
		<comments>http://www.larsen-b.com/Article/290.html#comments</comments>
		<pubDate>Sat, 17 May 2008 01:48:27 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Computers]]></category>
		<category><![CDATA[ati]]></category>
		<category><![CDATA[drivers]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[nvidia]]></category>
		<category><![CDATA[q6600]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://www.larsen-b.com/?p=290</guid>
		<description><![CDATA[For my new computer I bought a ATI HD 2600 PRO with a bunch of memory. This card has some really good 3D results, and works well on Linux. But I run into some issues with de xv extension on this board. In fact the driver (the free or binary one) doesn&#8217;t seems to support [...]]]></description>
			<content:encoded><![CDATA[<p>For my <a href="http://www.larsen-b.com/Article/271.html">new computer</a> I bought a ATI HD 2600 PRO with a bunch of memory. This card has some really good 3D results, and works well on Linux. But I run into some issues with de xv extension on this board. In fact the driver (the free or binary one) doesn&#8217;t seems to support <a href="http://en.wikipedia.org/wiki/Vertical_blanking_interval">sync on vblank</a>. So when a app try do display datas on the screen, some image destructions appear. This mainly occurs when I&#8217;m watching videos but in 3D games too. This is a really stupid bug or mis-feature. How can a serious video programmer can do that ?</p>
<p>After a couple of month, I decided it was enough, I was sick of this dirty stripes on screen. I tested every ATI driver one after one &#8230; (ATI opensource drivers have too bad performances to be used on a every days desktop, could you live without google-earth ? ) .. so I decided to go to other side, and bought a <a href="http://www.asus.com/products.aspx?l1=2&amp;l2=6&amp;l3=514&amp;l4=0&amp;model=1700&amp;modelmenu=1">Nvidia 8600GT from ASUS</a>. This card perform quite as the ATI in 3D, and have a affordable price. So I switched from ATI to Nvidia.</p>
<p>ATI offers better opensource support, but Nvidia binary driver is really nice to use and have better support today from stuffs like Compiz and Co.. and NO MORE STRIPES !! :)</p>
<p>A couple of weeks ago, I upgraded my <a href="http://www.ubuntu.com">Ubuntu</a> Gusty to Hardy. Everything was Ok, since I played with firefox.  Some heavy loaded pages (like Amazon, or Gmail) was damn sloowwwww !  Playing with scroll was a source &#8230;&#8230;<strong> grrrrrr</strong> &#8230;.Firefox on Hardy is 3.0b5. This version has a major &#8220;feature&#8221; the use a <a href="http://en.wikipedia.org/wiki/XRender">Xrender</a> for the page display. And this looks like Xrender is dawn slow on Nvidia cards .. In fact, Nvidia has already work on this <a href="http://www.phoronix.com/scan.php?page=article&amp;item=934&amp;num=1">kind of issue before.</a> Without looking forward I decided to run a little benchmark, with the help of friends with <a href="http://lists.freedesktop.org/archives/xorg/2006-March/013918.html">Xrenderbenchmark</a>. So here the results.</p>
<h1>Benchmarks</h1>
<p>Benchmarks was done by me and 2 firends, on Q6600 or E6600 Intel CPU running at 2.4Gh, with kernel 2.6.24.1. The graphs only show the Plain results (not Plains + Alpha, or Transformation) but the results are quite the same anyways.</p>
<p>Legend:</p>
<ul>
<li>8600GT/nv : Nividia 8600GT / Xorg  1.4.1git 32 bits / Nvidia GPL driver</li>
<li>8600GT/nvidia : Nividia 8600GT / Xorg 1.4.1git 32 bits / Nvidia binary driver ver: 169.12</li>
<li>8600GT/nividia-64 : Nvidia 8600GT / Xorg  1.4.1git 64 bits / Nvidia binary driver  ver: 169.12</li>
<li>Intel GMA X300 : Intel GMA 3000 / Xorg 1.4.0.9 64 bits / Intel GPL driver</li>
<li>ATI HD2600PRO : ATI HD 2600 Pro / Xorg 1.4.1git 64 bits / ATI GPL driver</li>
</ul>
<p>I split the results into two graphs for convenience.</p>
<p><img src="http://jkx.larsen-b.com/photos/blog/xrender_1.png" alt="" width="746" height="515" /></p>
<p>As you can see on this first part, numbers are really small, the Nvidia GPL driver is the worst : 5 times slower than any other one. Not a good news, and the binary one have some bad results on 2 tests. ATI HD and Nvidia drivers offer quite the same results, but remenber this is the GPL ATI driver ! &#8230; The Intel doesn&#8217;t  have a lot of linearity on this part.</p>
<p>But the next graph give us absolutely different picture !</p>
<p><img src="http://jkx.larsen-b.com/photos/blog/xrender_2.png" alt="" /></p>
<p>For every graph, Nvidia drivers (GPL, or binary, 32 or 64 bits) are at least 6 time slower. Intel perform very well, no surprise, this card are damn cool, perfect driver for linux.. but to slow in 3D to really rock. And ATI GPL driver is the clear winner of this benchmarks tests.</p>
<p>As my issue is the Nvidia one, I can comment the results, the GPL driver performs better than the binary one. This is not a big surprise cause, I can see it in Firefox, even it&#8217;s slow. There is difference between 64 bits and 32, but I guess this is more kernel related than the driver itself.</p>
<p>I&#8217;m not a video guru and only do that figure out what&#8217;s going on my computer. I publish in the hope it might help somebody else, and to find help.</p>
<p><strong>Update : </strong>The numbers can be found <a href="http://jkx.larsen-b.com/gallery/blog/xrender_results?full=1">here</a></p>
<p><em>Thanks to Ludo and Christian for their help ! </em></p>
<p><strong>Important update : <a href="http://www.larsen-b.com/Article/299.html">Check the new driver results !!</a></strong><a href="http://www.larsen-b.com/Article/299.html"><br />
</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.larsen-b.com/Article/290.html/feed</wfw:commentRss>
		<slash:comments>20</slash:comments>
		</item>
		<item>
		<title>Howto reinstall / restore Grub with an Ubuntu</title>
		<link>http://www.larsen-b.com/Article/272.html</link>
		<comments>http://www.larsen-b.com/Article/272.html#comments</comments>
		<pubDate>Tue, 30 Nov 1999 00:00:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Unix]]></category>
		<category><![CDATA[grub]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[sata]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[After a windows fresh install, the windows setup decided to drop my MBR to put its stuff in. Fine .. but I want my grub back now !
This is an old trick, but udev added a little complexity, so let&#8217;s give it a try. First boot on a Ubunty CD, open a console and run:
(here [...]]]></description>
			<content:encoded><![CDATA[<p>After a windows fresh install, the windows setup decided to drop my MBR to put its stuff in. Fine .. but I want my grub back now !</p>
<p>This is an old trick, but udev added a little complexity, so let&#8217;s give it a try. First boot on a Ubunty CD, open a console and run:</p>
<p>(here my linux partition is sda2, second partition on a sata disk)</p>
<pre class="literal-block">mkdir /media/mnt
mount /dev/sda2 /media/mnt/
mount -o bind /dev/ /media/mnt/dev
chroot /media/mnt

=&gt; now you are on the destination disk, so you can install grub.
grub-install /dev/sda</pre>
<p>Of course you can do a lot more stuff, like changing fstab etc etc .. but the trick is to mount + mount bind + chroot</p>
]]></content:encoded>
			<wfw:commentRss>http://www.larsen-b.com/Article/272.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Playing with Realtime with Python</title>
		<link>http://www.larsen-b.com/Article/221.html</link>
		<comments>http://www.larsen-b.com/Article/221.html#comments</comments>
		<pubDate>Tue, 30 Nov 1999 00:00:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Misc]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[rtc]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[For a little app, I need to send stream over UDP at a fixed rate. I have done severals tests w/ some buffers and sleep(), but I can&#8217;t achieve the desired speed. Mainly because sleep() doesn&#8217;t provide a stable enought result.
I decided to look at this a little deeply, and decided to use /dev/rtc to [...]]]></description>
			<content:encoded><![CDATA[<p>For a little app, I need to send stream over UDP at a fixed rate. I have done severals tests w/ some buffers and sleep(), but I can&#8217;t achieve the desired speed. Mainly because sleep() doesn&#8217;t provide a stable enought result.</p>
<p>I decided to look at this a little deeply, and decided to use <strong>/dev/rtc</strong> to do the trick. Here a little example of the stuff.</p>
<pre class="literal-block">from  fcntl import ioctl
import os, time

# some linux kernel header
RTC_IRQP_SET = 1074032652
RTC_PIE_ON =  28677
RTC_PIE_OFF = 28678

# open the realtime clock
f = open ("/dev/rtc", "r")
fd = f.fileno()

# 2048 freq
ioctl(fd,RTC_IRQP_SET,2048)
ioctl(fd,RTC_PIE_ON,0)

t0 = time.time()
interupt = 0

# the read will block until the next interrupt.
while interupt &lt; 1000 :
os.read(fd,4)  # 4 = size of double
interupt = interupt + 1

delta = time.time() - t0
print interupt / delta

# drop the scheduler
ioctl(fd,RTC_PIE_OFF,0)</pre>
<p>This is quite accurate enought, the only issue is that I&#8217;m unable to call the <em>sched_setscheduler()</em> from Python right now. So, if the host isn&#8217;t loaded I get the 2048 interrupts.. but it can be less :(</p>
<p><strong>Update</strong>:<br />
The <em>sched_setscheduler</em> can be done w/ a simple pyrex extension:</p>
<pre class="literal-block">cdef extern from "sched.h":
struct sched_param:
int sched_priority
int sched_setscheduler(int pid, int policy,sched_param  *p)

SCHED_FIFO = 1

def switchRTCPriority(nb):
cdef sched_param sp
sp.sched_priority = nb
sched_setscheduler (0,SCHED_FIFO , &amp;sp);</pre>
<p>After this quick Pyrex hack, I now have a accurate realtime interrupt in Python ;)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.larsen-b.com/Article/221.html/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Playing music on soundcard without locking</title>
		<link>http://www.larsen-b.com/Article/194.html</link>
		<comments>http://www.larsen-b.com/Article/194.html#comments</comments>
		<pubDate>Tue, 30 Nov 1999 00:00:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Other]]></category>
		<category><![CDATA[alsa]]></category>
		<category><![CDATA[audio]]></category>
		<category><![CDATA[computer]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[soundcard]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Why this soundcard allow me to play 2 mp3 at the same time while this doesn&#8217;t.. Hum good question. In fact to support this kind of stuff the sound card should support have some sub-device, to be sure .. simply aplay -l
Here on my shuttle .. not working
aplay -l
**** List of PLAYBACK Hardware Devices ****
card [...]]]></description>
			<content:encoded><![CDATA[<p>Why this soundcard allow me to play 2 mp3 at the same time while this doesn&#8217;t.. Hum good question. In fact to support this kind of stuff the sound card should support have some sub-device, to be sure .. simply <strong>aplay -l</strong></p>
<p>Here on my shuttle .. not working</p>
<pre class="literal-block">aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: IXP [ATI IXP], device 0: ATI IXP AC97 [ATI IXP AC97]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: IXP [ATI IXP], device 1: ATI IXP IEC958 [ATI IXP IEC958 (AC97)]
Subdevices: 1/1
Subdevice #0: subdevice #0</pre>
<p>Here on another box (VIA C3 based)</p>
<pre class="literal-block">aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: V8235 [VIA 8235], device 0: VIA 8235 [VIA 8235]
Subdevices: 4/4
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
Subdevice #2: subdevice #2
Subdevice #3: subdevice #3
card 0: V8235 [VIA 8235], device 1: VIA 8235 [VIA 8235]
Subdevices: 1/1
Subdevice #0: subdevice #0</pre>
<p>So yes the C3 can play 4 stream at the same time, while the AC97 doesn&#8217;t.</p>
<p>Another way to do this is to use <a class="reference" href="http://www.alsa-project.org/alsa-doc/doc-php/asoundrc.php#softmix">software mixing</a></p>
<p><strong>Update:</strong></p>
<p>To use the software mix in Alsa: simply change the pcm.default to pcm.dmix</p>
<pre class="literal-block">#pcm.default cards.pcm.default
pcm.default pcm.dmix</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.larsen-b.com/Article/194.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Suspend to disc with Dell Latitude D400 on Linux</title>
		<link>http://www.larsen-b.com/Article/173.html</link>
		<comments>http://www.larsen-b.com/Article/173.html#comments</comments>
		<pubDate>Tue, 30 Nov 1999 00:00:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Computers]]></category>
		<category><![CDATA[acpi]]></category>
		<category><![CDATA[d400]]></category>
		<category><![CDATA[dell]]></category>
		<category><![CDATA[linux]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[I now have a Dell Latitude D400 for 1 month. This little (really small) computer is pretty nice to use, but it right now, it&#8217;s really hard to have suspend working on this kind of stuff. The main reason: it only support ACPI (no APM), and ACPI isn&#8217;t well supported by the Linux kernel.
I have [...]]]></description>
			<content:encoded><![CDATA[<p>I now have a Dell Latitude D400 for 1 month. This little (really small) computer is pretty nice to use, but it right now, it&#8217;s really hard to have suspend working on this kind of stuff. The main reason: it only support ACPI (no APM), and ACPI isn&#8217;t well supported by the Linux kernel.</p>
<p>I have tested several way to fix this issue. The only that&#8217;s working fine right now, is to use swsup. So to make it work:</p>
<ul class="simple">
<li>install the latest 2.6.9 kernel (the 2.6.8 has a issue w/ agpart and drm)</li>
<li>in kernel select &#8216;ACPI -&gt; sleep state&#8217;</li>
<li>and &#8216;ACPI -&gt; swsup&#8217;</li>
<li>build the kernel</li>
<li>create a swap partition if you don&#8217;t have one (i resized a ntfs w/ qparted)</li>
<li>mkswap /dev/hda4 (for example)</li>
<li>add &#8216;resume=/dev/hda4&#8242; in your boot prompt (in grub for example)</li>
</ul>
<p>Now your system is ready. Reboot :) ..To put the the system in standby and dump the current state in the swap: <strong>echo 4 &gt; /proc/acpi/sleep</strong>.</p>
<p>Next step simply bind the power button on this action. This is done w/ the acpid.</p>
<pre class="literal-block">#!/bin/sh
# /etc/acpi/powerbtn.sh

# put the box in swsup mode
echo 4 &gt; /proc/acpi/sleep</pre>
<p>Beside the S2/S3 ACPI doesn&#8217;t work right now, swsup permit to have suspend to disk without too much trouble.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.larsen-b.com/Article/173.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Linux Kernel Hackers remove the Philips USB Webcam support</title>
		<link>http://www.larsen-b.com/Article/151.html</link>
		<comments>http://www.larsen-b.com/Article/151.html#comments</comments>
		<pubDate>Tue, 30 Nov 1999 00:00:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Other]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[webcam]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Everybody hate binary kernel module: that&#8217;s clear, but sometimes that the only way to use some hardware.
This is really a bad news to all webcam users: USB kernel hackers decide to patch PWC kernel driver to avoid the use of the extended kernel module which is binary only. Check out this for more infos.
update: read [...]]]></description>
			<content:encoded><![CDATA[<p>Everybody hate binary kernel module: that&#8217;s clear, but sometimes that the only way to use some hardware.</p>
<p>This is really a bad news to all webcam users: USB kernel hackers decide to patch PWC kernel driver to avoid the use of the extended kernel module which is binary only. Check out <a class="reference" href="http://www.smcc.demon.nl/webcam/">this</a> for more infos.</p>
<p><strong>update</strong>: read this <a class="reference" href="http://groups.google.fr/groups?hl=fr&amp;lr=&amp;ie=UTF-8&amp;threadm=fa.hhodscn.11hs5b1%40ifi.uio.no&amp;rnum=9&amp;prev=/&amp;frame=on">thread</a>. Why Philips doesn&#8217;t provide spec ?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.larsen-b.com/Article/151.html/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>ATI Radeon on Linux / *BSD &#8230;</title>
		<link>http://www.larsen-b.com/Article/150.html</link>
		<comments>http://www.larsen-b.com/Article/150.html#comments</comments>
		<pubDate>Tue, 30 Nov 1999 00:00:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Computers]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[video card]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[I always hated closed source drivers, and ATI is one of the big guy in video card. There is a petition online to ask ATI for specification or better drivers. I sign it because my ATI 9100IGP doesn&#8217;t have TVout support right now..
]]></description>
			<content:encoded><![CDATA[<p>I always hated closed source drivers, and ATI is one of the big guy in video card. There is a <a class="reference" href="http://www.petitiononline.com/atipet/petition.html">petition</a> online to ask ATI for specification or better drivers. I sign it because my ATI 9100IGP doesn&#8217;t have TVout support right now..</p>
]]></content:encoded>
			<wfw:commentRss>http://www.larsen-b.com/Article/150.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Shuttle ST62K Zen Install Howto for Linux</title>
		<link>http://www.larsen-b.com/Article/132.html</link>
		<comments>http://www.larsen-b.com/Article/132.html#comments</comments>
		<pubDate>Tue, 30 Nov 1999 00:00:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Computers]]></category>
		<category><![CDATA[computer]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[stk62k]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[
Hardware
The Shuttle STK62K is a small XPC that use:

ATI IGP9100 video board
ATI IXP150 AC&#8217;97 Audio Controller
OHCI based USB 2
Realtek network card

As i run into different issue with that box, i decided to write a little howto. Look here for more infos
0000:00:00.0 Host bridge: ATI Technologies Inc: Unknown device 5833 (rev 02)
0000:00:01.0 PCI bridge: ATI Technologies [...]]]></description>
			<content:encoded><![CDATA[<div id="hardware" class="section">
<h1><a name="hardware">Hardware</a></h1>
<p>The Shuttle STK62K is a small XPC that use:</p>
<ul class="simple">
<li>ATI IGP9100 video board</li>
<li>ATI IXP150 AC&#8217;97 Audio Controller</li>
<li>OHCI based USB 2</li>
<li>Realtek network card</li>
</ul>
<p>As i run into different issue with that box, i decided to write a little howto. Look <a class="reference" href="http://www.sfftech.com/showdocs.cfm?aid=482">here</a> for more infos</p>
<pre class="literal-block">0000:00:00.0 Host bridge: ATI Technologies Inc: Unknown device 5833 (rev 02)
0000:00:01.0 PCI bridge: ATI Technologies Inc: Unknown device 5838
0000:00:13.0 USB Controller: ATI Technologies Inc: Unknown device 4347 (rev 01)
0000:00:13.1 USB Controller: ATI Technologies Inc: Unknown device 4348 (rev 01)
0000:00:13.2 USB Controller: ATI Technologies Inc: Unknown device 4345 (rev 01)
0000:00:14.0 SMBus: ATI Technologies Inc ATI SMBus (rev 17)
0000:00:14.1 IDE interface: ATI Technologies Inc: Unknown device 4349
0000:00:14.3 ISA bridge: ATI Technologies Inc: Unknown device 434c
0000:00:14.4 PCI bridge: ATI Technologies Inc: Unknown device 4342
0000:00:14.5 Multimedia audio controller: ATI Technologies Inc IXP150 AC'97 Audio Controller
0000:01:05.0 VGA compatible controller: ATI Technologies Inc: Unknown device 5834
0000:02:05.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)
0000:02:06.0 FireWire (IEEE 1394): VIA Technologies, Inc. IEEE 1394 Host Controller (rev 80)</pre>
<div id="issues" class="section">
<h1><a name="issues">Issues</a></h1>
<p>Caution, i run into weird issues at the first boot.. a lot of segfaults and other weird things. I spend a part of the night to discover that the main trouble isn&#8217;t Linux based, but a hardware issue. The ST62K seems to have a lot problems with cheap memory. My current install use two Elixir (CAS=3) 512Mo stick in dual channel. After a little test with memtest+ i discover that the memory should be downsized to 266MHz FSB (instead of the common 400FSB). I found severall other users with the same issue. So don&#8217;t expect to use a DDR400 at full speed on this box with cheap memory, or buy Corsair (CAS=2.5 not the CAS=3!).</p>
</div>
</div>
<div id="linux" class="section">
<h1><a name="linux">Linux</a></h1>
<p>I tried several kernels: 2.4.26 and 2.6.7 debian stock kernel, but i run into trouble with this meanly because the APM is set by default in .. so to run it i need to build kernel 2.6.7 from scrash.</p>
</div>
<div id="processor" class="section">
<h1><a name="processor">Processor</a></h1>
<p>My box run on a Intel 3.0C running at 3.2Ghz as this box support overclocking form +0 to +15 FSB, so (200 + 10) * 15 = 3.2 Ghz, i managed to overclock it to 3.3 without any trouble. In the kernel i set:</p>
<pre class="literal-block">[*]   Symmetric multi-processing support
[*]   SMT (Hyperthreading) scheduler support</pre>
<p>SMT is the new scheduler that support the HT processors</p>
</div>
<div id="acpi-apm" class="section">
<h1><a name="acpi-apm">ACPI / APM</a></h1>
<p>The main reason why i start with ACPI, is that the box do some really strange things if you have APM set. So you need to disable the APM, and set the ACPI in you kernel.</p>
<pre class="literal-block">[*] ACPI Support
[*]   Sleep States (EXPERIMENTAL)
&lt;M&gt;   AC Adapter
&lt;M&gt;   Battery
&lt;M&gt;   Button
&lt;M&gt;   Fan
&lt;M&gt;   Processor
&lt;M&gt;   Thermal Zone</pre>
<p>The Thermal Zone is the only import here.</p>
</div>
<div id="network" class="section">
<h1><a name="network">Network</a></h1>
<p>The ST62K use a Realtek nic, so just use the 8139too driver.</p>
</div>
<div id="hardrive-dma" class="section">
<h1><a name="hardrive-dma">Hardrive / DMA</a></h1>
<p>Recent kernel as support for ATI IXP chipset so ..</p>
<pre class="literal-block">Device Driver &gt; ATA/ATAPI/MFM/RLL support
&lt;*&gt;       Generic PCI IDE Chipset Support
[*]       Generic PCI bus-master DMA support
[*]         Use PCI DMA by default when available
&lt;*&gt;        ATI IXP chipset IDE support</pre>
</div>
<div id="video" class="section">
<h1><a name="video">Video</a></h1>
<p>The embeded video card is IGP 9100. To have support for X you have 3 options:</p>
<ul class="simple">
<li>use the &#8216;ati&#8217; driver wich come with XFree. It&#8217;s works fine (without acceleration)</li>
<li>use the &#8216;radeon&#8217; one, but this require a some kernel tweak</li>
<li>the ATI made drivers doesn&#8217;t seems to support the IGP card right now.</li>
</ul>
<p>I now run the radeon on. To do this you have 2 options:<br />
- use the stock kernel one<br />
- use the DRI based one</p>
<p><strong>stock kernel</strong></p>
<pre class="literal-block">Devices Drivers &gt; Graphics support
&lt;*&gt;   ATI Radeon display support</pre>
<p>Don&#8217;t use module if you want to have framebuffer support. You need to enable AGPGart too (i&#8217;m not really sure)</p>
<pre class="literal-block">Section "Device"
#Driver      "ati"
Driver       "radeon"
VendorName  "ATI Technologies Inc"
BoardName   "Unknown Board"
BusID       "PCI:1:5:0"
EndSection</pre>
<p><strong>DRI</strong></p>
<p>First you need to download the latest XFree86 binary (which is 4.3.99) and put this in the place of XFree binary. Next download the Radeon driver from the DRI website. Simply untar and install it. (You need to set the kernel drivers as module not built-in for that)</p>
<p><strong>Which One ?</strong></p>
<p>Right now, this doesn&#8217;t really change anything because the kernel base kernel doesn&#8217;t support DRI. And the DRI one, disable the DRI because it doesn&#8217;t find it as a AGP card, so disable the direct rendering. So don&#8217;t expect good openGL performance :( But the radeon driver is really punchy on X .. so as i don&#8217;t play game, this isn&#8217;t a issue. I think this gonna change soon anyway.</p>
<p><strong>update: TV Output</strong></p>
<p>For the TVout put, there is currently no options. The only way to have it works, is to configure the X server to use a vesa driver (instead of radeon) and 800&#215;600 screen size. After that, plug the TV set and reboot to enable it. (Done thought the bios post), and enjoy. Thanks Per for the tips.</p>
</div>
<div id="sound" class="section">
<h1><a name="sound">Sound</a></h1>
<p>Again only recent kernel support this :)</p>
<pre class="literal-block">Device Drivers&gt; Sound &gt; Alsa PCI devices
&lt;M&gt; ATI IXP 150/200/250/300</pre>
<p>After simply load the &#8217;snd_atiixp&#8217; module</p>
</div>
<div id="sensors" class="section">
<h1><a name="sensors">Sensors</a></h1>
<p>I read a couple of post saying that the sensors doesn&#8217;t work, but i managed to use it without any trouble, as it use a it87 isa based sensors.</p>
<pre class="literal-block">I2C &gt; Hardware Sensors Chip support
&lt;M&gt; ITE IT87xx and compatibles</pre>
<p>Don&#8217;t forget to set i2c-dev Results:</p>
<pre class="literal-block">it87-isa-0228
Adapter: ISA adapter
VCore 1:   +1.45 V  (min =  +1.42 V, max =  +1.56 V)
VCore 2:   +1.53 V  (min =  +2.40 V, max =  +2.60 V)   ALARM
+3.3V:     +6.40 V  (min =  +3.12 V, max =  +3.44 V)   ALARM
+5V:       +4.97 V  (min =  +4.72 V, max =  +5.24 V)
+12V:     +11.68 V  (min = +11.36 V, max = +12.60 V)
-12V:     -19.77 V  (min = -12.63 V, max = -11.41 V)   ALARM
-5V:       -2.38 V  (min =  -5.28 V, max =  -4.81 V)   ALARM
Stdby:     +5.02 V  (min =  +4.72 V, max =  +5.24 V)
VBat:      +3.16 V
fan1:     1795 RPM  (min =    0 RPM, div = 16)
fan2:        0 RPM  (min =  332 RPM, div = 16)
fan3:        0 RPM  (min =  664 RPM, div = 8)
M/B Temp:    +60°C  (low  =   +15°C, high =   +40°C)   sensor = diode
CPU Temp:    +44°C  (low  =   +15°C, high =   +45°C)   sensor = diode
Temp3:       +41°C  (low  =   +15°C, high =   +45°C)   sensor = thermistor</pre>
<p>Some voltages seems wrong .. but not important. Yes this box have only one fan and the CPU temp is 44°. The 60° correspond to the RS300 chip but this seems to be broken (the bios show me the same values..). When overclocked and building the kernel, i managed to have 59° and a fan at 2300 RPM. (I tweaked the bios to start the fan at 55° instead of 65° default)</p>
</div>
<div id="additionnal" class="section">
<h1><a name="additionnal">Additionnal</a></h1>
<p>You can download my kernel config. I think this setting can be used on S62G4 too ..</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.larsen-b.com/Article/132.html/feed</wfw:commentRss>
		<slash:comments>31</slash:comments>
		</item>
		<item>
		<title>Installing Debian on a Dell Latitude D400</title>
		<link>http://www.larsen-b.com/Article/99.html</link>
		<comments>http://www.larsen-b.com/Article/99.html#comments</comments>
		<pubDate>Tue, 30 Nov 1999 00:00:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Computers]]></category>
		<category><![CDATA[d400]]></category>
		<category><![CDATA[dell]]></category>
		<category><![CDATA[linux]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[
Contents

Introduction

Latitude D400


Base Installation
Finishing the install
X /  Sound / PCMCIA / ACPI

XFree
Sound
PCMCIA
ACPI


About



Introduction
At my work, some people have bought some D400 laptop to use Linux.
During the installation, we run into various issues. This short
document try to explain, how we managed to have a working Debian
on this.
For various reasons, we want to use a debian and this [...]]]></description>
			<content:encoded><![CDATA[<div id="contents" class="contents topic">
<p class="topic-title first"><a name="contents">Contents</a></p>
<ul class="simple">
<li><a id="id1" class="reference" name="id1" href="#introduction">Introduction</a>
<ul>
<li><a id="id2" class="reference" name="id2" href="#latitude-d400">Latitude D400</a></li>
</ul>
</li>
<li><a id="id3" class="reference" name="id3" href="#base-installation">Base Installation</a></li>
<li><a id="id4" class="reference" name="id4" href="#finishing-the-install">Finishing the install</a></li>
<li><a id="id5" class="reference" name="id5" href="#x-sound-pcmcia-acpi">X /  Sound / PCMCIA / ACPI</a>
<ul>
<li><a id="id6" class="reference" name="id6" href="#xfree">XFree</a></li>
<li><a id="id7" class="reference" name="id7" href="#sound">Sound</a></li>
<li><a id="id8" class="reference" name="id8" href="#pcmcia">PCMCIA</a></li>
<li><a id="id9" class="reference" name="id9" href="#acpi">ACPI</a></li>
</ul>
</li>
<li><a id="id10" class="reference" name="id10" href="#about">About</a></li>
</ul>
</div>
<div id="introduction" class="section">
<h1><a class="toc-backref" name="introduction" href="#id1">Introduction</a></h1>
<p>At my work, some people have bought some D400 laptop to use Linux.<br />
During the installation, we run into various issues. This short<br />
document try to explain, how we managed to have a working Debian<br />
on this.</p>
<p>For various reasons, we want to use a debian and this doc is<br />
about this, but take care that installing a Redhat or a Mandrake<br />
is really easier than a debian of this kind of laptop. I hope<br />
debian developpers will fix this soon.</p>
<div id="latitude-d400" class="section">
<h2><a class="toc-backref" name="latitude-d400" href="#id2">Latitude D400</a></h2>
<ul class="simple">
<li>Celeron (centrino) 1.4 Ghz / 512 Mo of RAM / 30 Go</li>
<li>CDROM / Floppy drive: USB combo</li>
<li>network card: 1Gb Broadcom BCM5700</li>
<li>sound / video : <a class="reference" href="http://downloadfinder.intel.com/scripts-df/Product_Filter.asp?ProductID=865">Intel 82845G</a></li>
<li>Wifi: True Mobile</li>
</ul>
</div>
</div>
<div id="base-installation" class="section">
<h1><a class="toc-backref" name="base-installation" href="#id3">Base Installation</a></h1>
<p>First we downloaded the latest debian iso (a woody). The main<br />
problem is that despite the bios can boot the OS using the<br />
USB cdrom, after the woody CD boot, you can&#8217;t access to<br />
the cdrom content, because debian developper forget to put<br />
the usb-storage in the initrd.img. (this works fine on<br />
RH .. ). My first try was to rebuild the debian boot system<br />
with the debian boot-floppies package. After a try i discover<br />
that usb-storage doesn&#8217;t detect the usb cdrom when you<br />
compile it in the kernel, so i need to use it as module<br />
in initrd, but i decided to try another method.</p>
<p>I used a windows FAT filesystem:</p>
<ul class="simple">
<li>boot windows XP (provided by dell)</li>
<li>create a new partition of 1Go ( you will use this as swap after the install)</li>
<li>copy the debian content on this</li>
<li>copy the <a class="reference" href="http://www.broadcom.com/drivers/downloaddrivers.php">BCM5700</a> driver on this too</li>
<li>reboot /  press F12 to boot on the debian CD</li>
<li>after the boot : press ALT-F2 to open a empty console</li>
<li>mkdir /remote</li>
<li>mount the fat fs on this: mount /dev/hda3 /remote</li>
<li>go thought the installation process, when it ask<br />
for the default debian package, simply choose:<br />
&#8216;mounted partition&#8217; &#8216;/remote&#8217;</li>
<li>and do a normal install</li>
<li>WARNING don&#8217;t install the PCMCIA modules, because it will lock the boot process (as on every Dell !! )</li>
</ul>
</div>
<div id="finishing-the-install" class="section">
<h1><a class="toc-backref" name="finishing-the-install" href="#id4">Finishing the install</a></h1>
<p>As i want to have a <em>recent</em> OS, i choose to install<br />
the testing, so simply install from the CD:</p>
<ul class="simple">
<li>kernel-header for the current kernel (bf24)</li>
<li>install gcc / make / unzip</li>
<li>build the <a class="reference" href="http://www.broadcom.com/drivers/downloaddrivers.php">BCM5700</a> driver</li>
<li>and load it in the kernel.</li>
<li>simply configure the network w/ ifconfig / route</li>
<li>now you can use a ftp to continue the install in testing</li>
<li>apt-get update / dist-upgrade</li>
<li>install latest kernel (2.4.24 for me)</li>
<li>rebuild the <a class="reference" href="http://www.broadcom.com/drivers/downloaddrivers.php">BCM5700</a> for this kernel</li>
</ul>
</div>
<div id="x-sound-pcmcia-acpi" class="section">
<h1><a class="toc-backref" name="x-sound-pcmcia-acpi" href="#id5">X /  Sound / PCMCIA / ACPI</a></h1>
<p>Now we have a debian testing running, we can configure it.</p>
<div id="xfree" class="section">
<h2><a class="toc-backref" name="xfree" href="#id6">XFree</a></h2>
<ul class="simple">
<li>download <a class="reference" href="http://downloadfinder.intel.com/scripts-df/Product_Filter.asp?ProductID=865">Intel 82845G</a> driver</li>
<li>make / install / insmod it (agpgart / i830)</li>
<li>add them to /etc/modules</li>
<li>download the <a class="reference" href="http://www.chzsoft.com.ar/855patch.tar.gz">855 patch</a></li>
<li>build this patch and run it <em>./855patch 32768</em></li>
<li>this will allocate 32Mo of memory for the video card</li>
<li>put this in your /etc/init.d/bootmisc.sh to have this at every boot</li>
<li>install the XFree 4.3 (from unstable since it&#8217;s not in testing right now) (it won&#8217;t work with 4.2)</li>
<li>XFree should now detect a i830 video card (it won&#8217;t do if you aren&#8217;t using intel&#8217;s agpgart )</li>
</ul>
</div>
<div id="sound" class="section">
<h2><a class="toc-backref" name="sound" href="#id7">Sound</a></h2>
<ul class="simple">
<li>load the i810_audio  module (to use gnomeetting use Alsa one)</li>
<li>put it in /etc/modules to have it a boot</li>
</ul>
</div>
<div id="pcmcia" class="section">
<h2><a class="toc-backref" name="pcmcia" href="#id8">PCMCIA</a></h2>
<ul class="simple">
<li>One every Dell, default PCMCIA settings will block the system so:</li>
<li>apt-get install pcmcia-cs / modules</li>
<li>when it ask for starting it answer: NO !!</li>
<li>edit the /etc/pcmcia/config.opts</li>
<li>and change include port to: <em>include port 0&#215;100-0&#215;4ff, port 0xc00-0xcff</em></li>
<li>now you can start it :)</li>
</ul>
</div>
<div id="acpi" class="section">
<h2><a class="toc-backref" name="acpi" href="#id9">ACPI</a></h2>
<p>To enable the support for acpi in the default debian kernels you should<br />
append the acpi=on at boot.</p>
<ul class="simple">
<li>Add this <em>&#8220;append=&#8221;acpi=on&#8221;</em> to the lilo.conf</li>
<li><em>apt-get install acpid</em></li>
<li>now the power button should stop the laptop</li>
<li>the <a class="reference" href="http://acpi.sourceforge.net/documentation/sleep.html">acpi sleep</a> command doesn&#8217;t work right now, so you can&#8217;t do &#8217;suspend<br />
to ram&#8217; or &#8216;to disk&#8217;, but this should be avalaible in kernel soon.</li>
</ul>
</div>
</div>
<div id="about" class="section">
<h1><a class="toc-backref" name="about" href="#id10">About</a></h1>
<ul class="simple">
<li>Last update 28/02/2004</li>
<li>Contact Jerome.Kerdreux at Finix.eu.org for additionnal infos</li>
</ul>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.larsen-b.com/Article/99.html/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>
