<?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>vm-kernel &#187; loongson</title>
	<atom:link href="http://vm-kernel.org/blog/category/loongson/feed/" rel="self" type="application/rss+xml" />
	<link>http://vm-kernel.org/blog</link>
	<description>All about emulation and virtualization</description>
	<lastBuildDate>Sat, 17 Apr 2010 03:51:46 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Gdium linux kernel support status</title>
		<link>http://vm-kernel.org/blog/2010/04/16/gdium-linux-kernel-support-status/</link>
		<comments>http://vm-kernel.org/blog/2010/04/16/gdium-linux-kernel-support-status/#comments</comments>
		<pubDate>Fri, 16 Apr 2010 13:20:42 +0000</pubDate>
		<dc:creator>yajin</dc:creator>
				<category><![CDATA[kernel]]></category>
		<category><![CDATA[loongson]]></category>
		<category><![CDATA[gdium]]></category>
		<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://vm-kernel.org/blog/?p=227</guid>
		<description><![CDATA[After several days working, the 2.6.34-rc2 kernel is working on gdium expect sound. Of course most of the codes are from mandriva and Philippe's work.
I will make some code clean and make the sound work in the next few days. It seems the sm501 sound driver needs a hardcoded 8051 firmware to work. Damn it. [...]]]></description>
			<content:encoded><![CDATA[<p>After several days working, the 2.6.34-rc2 kernel is working on gdium expect sound. Of course most of the codes are from mandriva and Philippe's work.</p>
<p>I will make some code clean and make the sound work in the next few days. It seems the sm501 sound driver needs a hardcoded 8051 firmware to work. Damn it. After these works are done, I will send the patches to<a href="http://groups.google.com/group/loongson-dev"> loongson-dev</a> maillist and merge it to <a href="http://dev.lemote.com/code/linux-loongson-community">linux-loongson-community</a> and linux-mips mainline at last.</p>
<p>I am keeping moving....... Please wait.</p>
<p>ps: The linux kernel for gdium repository is <a href="http://repo.or.cz/w/linux-2.6/linux-mips/linux-gdium.git">here</a>.</p>
<blockquote><p>kill-bill:~# uname -a<br />
Linux kill-bill 2.6.34-rc2 #24 PREEMPT Fri Apr 16 21:01:51 CST 2010 mips64 GNU/Linux<br />
kill-bill:~# cat /proc/cpuinfo<br />
system type             : dexxon-gdium-2f-10inches<br />
processor               : 0<br />
cpu model               : ICT Loongson-2 V0.3  FPU V0.1<br />
BogoMIPS                : 598.01<br />
wait instruction        : no<br />
microsecond timers      : yes<br />
tlb_entries             : 64<br />
extra interrupt vector  : no<br />
hardware watchpoint     : yes, count: 0, address/irw mask: []<br />
ASEs implemented        :<br />
shadow register sets    : 1<br />
core                    : 0<br />
VCED exceptions         : not available<br />
VCEI exceptions         : not available
</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://vm-kernel.org/blog/2010/04/16/gdium-linux-kernel-support-status/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Install debian lenny on yeeloong 8089/8101</title>
		<link>http://vm-kernel.org/blog/2010/03/27/install-debian-lenny-on-yeeloong-80898101/</link>
		<comments>http://vm-kernel.org/blog/2010/03/27/install-debian-lenny-on-yeeloong-80898101/#comments</comments>
		<pubDate>Sat, 27 Mar 2010 06:28:51 +0000</pubDate>
		<dc:creator>yajin</dc:creator>
				<category><![CDATA[loongson]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[yeeloong]]></category>

		<guid isPermaLink="false">http://vm-kernel.org/blog/?p=221</guid>
		<description><![CDATA[NOTICE/TIPS:
[For one want to install the debian 6.0, there is a more easy way. See the following link.
http://www.anheng.com.cn/loongson/install/readme.txt (In Chinese).]
Yesterday I installed the debian lenny on yeeloong 8101, the 10.1 inch notebook based on loongson 2F CPU for a friend. Then I find there is less English document describing how to do this. So I [...]]]></description>
			<content:encoded><![CDATA[<p>NOTICE/TIPS:<br />
[For one want to install the debian 6.0, there is a more easy way. See the following link.<br />
<a href="http://www.anheng.com.cn/loongson/install/readme.txt">http://www.anheng.com.cn/loongson/install/readme.txt</a> (In Chinese).]</p>
<p>Yesterday I installed the debian lenny on yeeloong 8101, the 10.1 inch notebook based on loongson 2F CPU for a friend. Then I find there is less English document describing how to do this. So I write the process down to anyone who is interested in installing debian on yeloong. There are many ways to do it I choose the way of using a debian network installer. Please make sure you have a internet connection first.</p>
<p>1. First download the kernel and initrd to your PC.</p>
<blockquote><p>wget http://dev.lemote.com/drupal/sites/default/files/kernel-2.6.27-LM8089.tar.gz<br />
wget http://dev.lemote.com/drupal/sites/default/files/initrd_yl_netboot.gz</p></blockquote>
<p>2. Decompress kernel on your PC.</p>
<blockquote><p>tar zxvf kernel-2.6.27-LM8089.tar.gz</p></blockquote>
<p>You will get the kernel vmlinux and the directory named lib. The lib directory contains all the kernel modules.</p>
<p>3. Format your USB disk with ext2 partition and copy vmlinux, directory lib and initrd_yl_netboot.gz to the usb disk.</p>
<p>4. Insert the usb disk to your netbook and boot it</p>
<p>5. Enter the PMON command line.</p>
<p>There are two ways to enter the PMON(the bootloader of yeeloong) command line. One is press DEL when booting. The other way is click C when you see the boot menu.</p>
<p>Use the following commands to load the kernel and initrd, which contains the debian network installer.</p>
<blockquote><p>load /dev/fs/ext2@usb0/vmlinux<br />
initrd /dev/fs/ext2@usb0/initrd_yl_netboot.gz</p></blockquote>
<p>Please be patient. The initrd command may need more than 5 miniutes to be finished.</p>
<p>Sometimes the PMON bootloader may hang when you boot with a usb disk inserted. I do not know why. The workaround is booting into the default linux system and inserting the usb disk and then rebooting. Or you can use a tftp method to load the kernel and initrd.</p>
<p>At last use the following command to launch the debian network installer.</p>
<blockquote><p>g console=tty no_auto_cmd</p></blockquote>
<p>Then just install the debian as normal.</p>
<p>6. Install debian lenny</p>
<p>After debian configurating the DHCP, it will complain about "no kernel modules were found" and will let you choose "continue the install without loading kernel modules?", just choose Yes(the default answer is No) to continue.</p>
<p>When in the part of Partition disks, it will complain about "The current kernel doesn't support the Logical Volume Manager. You may need to load the lvm-mod modules" and the background becomes red. Do not be scared. Just click continue. <img src='http://vm-kernel.org/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Then everything goes as it should be. But at last, debian installer will say "no installable kernel was found in the defined APT sources.... Continue without installing a kernel". Do not click Yes too quickly. We need to copy the kernel and all the modules into new system first. Please make sure that the USB disk is still inserting on the notebook. Use ALT+F2 to active a console. Mount the use disk and copy kernel and libs.</p>
<blockquote><p>mount /dev/sda1 /target/mnt<br />
cp /mnt/vmlinux /target/boot<br />
cp -rf /mnt/lib/modules /target/lib/</p></blockquote>
<p>Then click ALT+F1 return to the debian installer. Click Yes to continue installing.</p>
<p>7. Install Desktop environment</p>
<p>You can install LXDE or gnome as your desktop. I prefer LXDE because it is light.</p>
<blockquote><p>apt-get install lxde</p></blockquote>
<p>Install the X server driver.</p>
<blockquote><p>wget http://www.anheng.com.cn/loongson2f/lenny/xorg-server/xserver-xorg-video-siliconmotion_2.2.8-lemote.r04_mipsel.deb<br />
dpkg -i xserver-xorg-video-siliconmotion_2.2.8-lemote.r04_mipsel.deb</p></blockquote>
<p>Change the xorg.conf according to <a href="http://wiki.gnewsense.org/Projects/GNewSenseToMIPSYeeloongXorgConf">this link</a>.</p>
<p>8. Trouble shooting</p>
<p>(1) My wifi does not work</p>
<p>You can see "rtl8187: rtl8187_open process failed because radio off" if you use dmesg to see the message. Use FN+F5 to turn on the wifi first. You will see such message "<span style="font-family: Courier New;">rtl8187: SCI interrupt Methord Will Turn Radio On</span>" on your console.</p>
<p>(2) My sound does not work</p>
<p>Use alsamixer to adjust the volume. But install alsa-utils first.</p>
<p>(3) OOPS, I forget to copy kernel to my new installed system. I can not boot it now. What should I do?</p>
<p>You can load the kernel using tftp method.</p>
]]></content:encoded>
			<wfw:commentRss>http://vm-kernel.org/blog/2010/03/27/install-debian-lenny-on-yeeloong-80898101/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>performance of loongson 2f</title>
		<link>http://vm-kernel.org/blog/2009/10/30/performance-of-loongson-2f/</link>
		<comments>http://vm-kernel.org/blog/2009/10/30/performance-of-loongson-2f/#comments</comments>
		<pubDate>Fri, 30 Oct 2009 09:11:31 +0000</pubDate>
		<dc:creator>yajin</dc:creator>
				<category><![CDATA[loongson]]></category>
		<category><![CDATA[gdium]]></category>
		<category><![CDATA[loongson 2f]]></category>
		<category><![CDATA[nbench]]></category>

		<guid isPermaLink="false">http://vm-kernel.org/blog/2009/10/30/performance-of-loongson-2f/</guid>
		<description><![CDATA[Some friends ask me about the performance of loongson2f. They want to know whether the performance of loongson 2f can surpass Marvell Sheeva CPU. Well I can not just say it's better or worse without giving the benchmark data.
Since there is a benchmark result of Marvell Sheeva CPU, we can run the same benchmark program [...]]]></description>
			<content:encoded><![CDATA[<p>Some friends ask me about the performance of loongson2f. They want to know whether the performance of loongson 2f can surpass Marvell Sheeva CPU. Well I can not just say it's better or worse without giving the benchmark data.<br />
Since there is a <a href="http://computingplugs.com/index.php/SheevaPlug_Performance#CPU_performance_with_nbench-byte-2.2.3">benchmark result</a> of Marvell Sheeva CPU, we can run the same benchmark program on loongson 2f. The benchmark program is nbench.<br />
Machine: gdium<br />
OS: Debian squeeze<br />
Kernel: Linux</p>
<p>1. gcc-4.3.4<br />
CFLAGS = -s -static -Wall -O3</p>
<table border="1">
<tbody>
<tr>
<td>TEST</td>
<td>Iterations/sec.</td>
<td>Old Index</td>
<td>New Index</td>
</tr>
<tr>
<td> </td>
<td> </td>
<td>Pentium 90*</td>
<td>AMD K6/233*</td>
</tr>
<tr>
<td>NUMERIC SORT</td>
<td>358.24.</td>
<td>9.19</td>
<td>3.02</td>
</tr>
<tr>
<td>STRING SORT</td>
<td>33.041</td>
<td>14.76</td>
<td>2.29</td>
</tr>
<tr>
<td>BITFIELD</td>
<td>5.5164e+07</td>
<td>9.46</td>
<td>1.98</td>
</tr>
<tr>
<td>FP EMULATION</td>
<td>47.402</td>
<td>22.75</td>
<td>5.25</td>
</tr>
<tr>
<td>FOURIER</td>
<td>4721.1</td>
<td>5.37</td>
<td>3.02</td>
</tr>
<tr>
<td>ASSIGNMENT</td>
<td>7.0534</td>
<td>26.84</td>
<td>6.96</td>
</tr>
<tr>
<td>IDEA</td>
<td>1597.4</td>
<td>24.43</td>
<td>7.25</td>
</tr>
<tr>
<td>HUFFMAN</td>
<td>575.17</td>
<td>15.95</td>
<td>5.09</td>
</tr>
<tr>
<td>NEURAL NET</td>
<td>4.2065</td>
<td>6.76</td>
<td>2.84</td>
</tr>
<tr>
<td>LU DECOMPOSITION</td>
<td>107.28</td>
<td>5.56</td>
<td>4.01</td>
</tr>
</tbody>
</table>
<p>==========ORIGINAL BYTEMARK RESULTS========<br />
INTEGER INDEX : 16.297<br />
FLOATING-POINT INDEX: 5.864<br />
Baseline (MSDOS*) : Pentium* 90, 256 KB L2-cache, Watcom* compiler 10.0<br />
==========LINUX DATA BELOW============<br />
CPU                 :<br />
L2 Cache            :<br />
OS                  : Linux 2.6.24-gdium-1<br />
C compiler          : gcc version 4.3.4 (Debian 4.3.4-5)<br />
libc                : libc-2.9.so<br />
MEMORY INDEX        : 3.156<br />
INTEGER INDEX       : 4.918<br />
FLOATING-POINT INDEX: 3.252<br />
Baseline (LINUX)    : AMD K6/233*, 512 KB L2-cache, gcc 2.7.2.3, libc-5.4.38<br />
* Trademarks are property of their respective holder.</p>
<p>2. gcc-4.4<br />
CFLAGS = -s -static -Wall -O3 -fomit-frame-pointer -funroll-loops<br />
CFLAGS += -march=loongson2f  -mtune=loongson2f  -mabi=n32</p>
<table border="1">
<tbody>
<tr>
<td>TEST</td>
<td>Iterations/sec.</td>
<td>Old Index</td>
<td>New Index</td>
</tr>
<tr>
<td> </td>
<td> </td>
<td>Pentium 90*</td>
<td>AMD K6/233*</td>
</tr>
<tr>
<td>NUMERIC SORT</td>
<td>366.08</td>
<td>9.39</td>
<td>3.08</td>
</tr>
<tr>
<td>STRING SORT</td>
<td>46.686</td>
<td>20.86</td>
<td>3.23</td>
</tr>
<tr>
<td>BITFIELD</td>
<td>4.764e+07</td>
<td>8.17</td>
<td>1.71</td>
</tr>
<tr>
<td>FP EMULATION</td>
<td>90.2</td>
<td>43.28</td>
<td>9.99</td>
</tr>
<tr>
<td>FOURIER</td>
<td>5171.9</td>
<td>5.88</td>
<td>3.30</td>
</tr>
<tr>
<td>ASSIGNMENT</td>
<td>11.094</td>
<td>42.21</td>
<td>10.95</td>
</tr>
<tr>
<td>IDEA</td>
<td>1726.9</td>
<td>26.41</td>
<td>7.84</td>
</tr>
<tr>
<td>HUFFMAN</td>
<td>605</td>
<td>16.78</td>
<td>5.36</td>
</tr>
<tr>
<td>NEURAL NET</td>
<td>9.761</td>
<td>15.68</td>
<td>6.60</td>
</tr>
<tr>
<td>LU DECOMPOSITION</td>
<td>215.64</td>
<td>11.17</td>
<td>8.07</td>
</tr>
</tbody>
</table>
<p>==========ORIGINAL BYTEMARK RESULTS========<br />
INTEGER INDEX       : 20.035<br />
FLOATING-POINT INDEX: 10.100<br />
Baseline (MSDOS*)   : Pentium* 90, 256 KB L2-cache, Watcom* compiler 10.0<br />
==========LINUX DATA BELOW============<br />
CPU                 :<br />
L2 Cache            :<br />
OS                  : Linux 2.6.24-gdium-1<br />
C compiler          : gcc-4.4<br />
libc                : libc-2.9.so<br />
MEMORY INDEX        : 3.922<br />
INTEGER INDEX       : 5.997<br />
FLOATING-POINT INDEX: 5.602<br />
Baseline (LINUX)    : AMD K6/233*, 512 KB L2-cache, gcc 2.7.2.3, libc-5.4.38<br />
* Trademarks are property of their respective holder.</p>
<div class="zemanta-pixie"><img class="zemanta-pixie-img" src="http://img.zemanta.com/pixy.gif?x-id=fe9d2c4f-b064-8a94-9f49-f0e49d152a7a" alt="" /></div>
]]></content:encoded>
			<wfw:commentRss>http://vm-kernel.org/blog/2009/10/30/performance-of-loongson-2f/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>I2C emulation in qemu-loongson</title>
		<link>http://vm-kernel.org/blog/2009/04/22/i2c-emulation-in-qemu-loongson/</link>
		<comments>http://vm-kernel.org/blog/2009/04/22/i2c-emulation-in-qemu-loongson/#comments</comments>
		<pubDate>Wed, 22 Apr 2009 03:52:11 +0000</pubDate>
		<dc:creator>yajin</dc:creator>
				<category><![CDATA[emulation]]></category>
		<category><![CDATA[loongson]]></category>
		<category><![CDATA[gdium]]></category>
		<category><![CDATA[i2c]]></category>
		<category><![CDATA[qemu-loongson]]></category>

		<guid isPermaLink="false">http://vm-kernel.org/blog/2009/04/22/i2c-emulation-in-qemu-loongson/</guid>
		<description><![CDATA[I think most of you may think it is easy to emulate I2C device in qemu, for qemu has provided a framework of i2c, both the master and slave devices. You are right. Emulating the I2C is not difficult in qemu.
What I want to post here is not emulating I2C device directly, but emulating GPIO [...]]]></description>
			<content:encoded><![CDATA[<p>I think most of you may think it is easy to emulate I2C device in qemu, for qemu has provided a framework of i2c, both the master and slave devices. You are right. Emulating the I2C is not difficult in qemu.</p>
<p>What I want to post here is not emulating I2C device directly, but emulating GPIO logic which pmon uses to emulate I2C. A little confused? Me too. Ok, let me talk the story from the began.</p>
<p>In pmon, it uses sm502 gpio pin 6 and 13 to emulate I2C master devices, which communicates with other slave device, such as SPD EEPROM and temperature sensors. I do not know why lemote uses gpio to emulate i2c, instead of using the I2C master in sm502. When the data is written to gpio pins according to I2C state machine, pmon expects the gpio pins acting like the I2C master devices. So qemu needs to emulate the I2C cycle accurate state machine, not only the I2C function.</p>
<p>I summarize the I2C emulation code logic of pmon here for reference.</p>
<p>(1) Start Bit</p>
<p>SCL=0 -&gt; SDA=1 -&gt; SCL=1 -&gt; SDA=0 -&gt; SCL=0</p>
<p>(2)Stop Bit</p>
<p>SCL=0 -&gt; SDA=0 -&gt;SCL=1 -&gt;SDA=1 -&gt; SCL=0</p>
<p>(3)Write a bit</p>
<p>Put data on sda -&gt; SCL=1 -&gt; SCL=0</p>
<p>(4)Write a byte</p>
<p>repeating (3) 8 times -&gt; SDA=1</p>
<p>(5)Recv ACK</p>
<p>SCL=1 -&gt;read sda until sda=0 -&gt; SCL=0</p>
<p>(6)Read a bit</p>
<p>SCL=1 -&gt; read data on SDA -&gt; SCL=0</p>
<p>(7)Read a byte</p>
<p>repeating (6) 8 times</p>
<p>(8)Send ACK</p>
<p>put ACK on sda -&gt; SCL=1 -&gt; SCL=0</p>
<p>(9)Send a buffer</p>
<p>Do the following steps until the buffer is empty</p>
<ol>
<li>START </li>
<li>Send slave address </li>
<li>Recv ACK </li>
<li>Send reg address </li>
<li>Recv ACK </li>
<li>Send one byte </li>
<li>Recv ACK </li>
<li>STOP </li>
</ol>
<p>(10) Recv many bytes from slave deviceDo the following steps until finished </p>
<ol>
<li>START </li>
<li>Send slave address </li>
<li>Recv ACK </li>
<li>Send reg address </li>
<li>Recv ACK</li>
<li>Repeat START </li>
<li>Send slave address+1(tell slave we want to recv) </li>
<li>Recv ACK </li>
<li>Recv a byte </li>
<li>Send ACK </li>
<li>STOP </li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://vm-kernel.org/blog/2009/04/22/i2c-emulation-in-qemu-loongson/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>eth0 is missing on my gdium PCB board</title>
		<link>http://vm-kernel.org/blog/2009/03/28/eth0-is-missing-on-my-gdium-pcb-board/</link>
		<comments>http://vm-kernel.org/blog/2009/03/28/eth0-is-missing-on-my-gdium-pcb-board/#comments</comments>
		<pubDate>Sat, 28 Mar 2009 09:32:03 +0000</pubDate>
		<dc:creator>yajin</dc:creator>
				<category><![CDATA[loongson]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[gdium]]></category>
		<category><![CDATA[udev]]></category>

		<guid isPermaLink="false">http://vm-kernel.org/blog/2009/03/28/eth0-is-missing-on-my-gdium-pcb-board/</guid>
		<description><![CDATA[I have an extra gdium pcb board with uart interface from fred. Thanks  .
Today I try to compile the kernel by myself and the new kernel works well except for network card. I can not see eth0 using ifconfig command. Then I check the pci list of my gdium PCB and find the RTL8139D [...]]]></description>
			<content:encoded><![CDATA[<p>I have an extra gdium pcb board with uart interface from fred. Thanks <img src='http://vm-kernel.org/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>
<p>Today I try to compile the kernel by myself and the new kernel works well except for network card. I can not see eth0 using ifconfig command. Then I check the pci list of my gdium PCB and find the RTL8139D is on the list.</p>
<blockquote><p>kill-bill:~# ifconfig eth0   <br />eth0: error fetching interface information: Device not found</p></blockquote>
<blockquote></blockquote>
<blockquote><p>kill-bill:~# lspci     <br />00:00.0 MIPS: STMicroelectronics STLS2F Host Bridge (rev 01)      <br />00:0d.0 Network controller: RaLink RT2561/RT61 802.11g PCI      <br />00:0e.0 Display controller: Silicon Motion, Inc. SM501 VoyagerGX Rev. AA (rev c0      <br />)      <br />00:0f.0 USB Controller: NEC Corporation USB (rev 44)      <br />00:0f.1 USB Controller: NEC Corporation USB 2.0 (rev 05)      <br />00:10.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139      <br />C+ (rev 10)      <br />00:11.0 USB Controller: NEC Corporation USB (rev 44)      <br />00:11.1 USB Controller: NEC Corporation USB 2.0 (rev 05)</p>
</blockquote>
<p>That shows rtl8139 is successfully initialized by the kernel. But why there is no eth0 device?</p>
<p>Then I grep eth0 in dmesg and find that something is wrong with udev.</p>
<blockquote><p>kill-bill:~# dmesg | grep eth0     <br />eth0: RealTek RTL8139 at 0x9000000051a2a100, 00:d0:35:10:00:20, IRQ 39      <br />eth0:&#160; Identified 8139 chip type 'RTL-8100B/8139D'      <br />udev: renamed network interface eth0 to eth1</p>
</blockquote>
<p>I cat the udev net rule and find that it sets 8139d with MAC address 00:d0:35:10:00:20 to eth1. That's exactly the network card on my gdium PCB. </p>
<blockquote><p>kill-bill:~# cat /etc/udev/rules.d/70-persistent-net.rules     <br /># This file was automatically generated by the /lib/udev/write_net_rules      <br /># program run by the persistent-net-generator.rules rules file.      <br />#      <br /># You can modify it, as long as you keep each rule on a single line. </p>
<p># PCI device 0x10ec:0x8139 (8139too)     <br />SUBSYSTEM==&quot;net&quot;, ACTION==&quot;add&quot;, DRIVERS==&quot;?*&quot;, ATTR{address}==&quot;00:d0:35:10:04:a9&quot;, ATTR{type}==&quot;1&quot;, KERNEL==&quot;eth*&quot;, NAME=&quot;eth0&quot; </p>
<p># PCI device 0x1814:0x0301 (rt61pci)     <br />SUBSYSTEM==&quot;net&quot;, ACTION==&quot;add&quot;, DRIVERS==&quot;?*&quot;, ATTR{address}==&quot;00:0e:8e:19:3d:68&quot;, ATTR{type}==&quot;1&quot;, KERNEL==&quot;wlan*&quot;, NAME=&quot;wlan0&quot; </p>
<p># PCI device 0x10ec:0x8139 (8139too)     <br />SUBSYSTEM==&quot;net&quot;, ACTION==&quot;add&quot;, DRIVERS==&quot;?*&quot;, ATTR{address}==&quot;00:d0:35:10:00:20&quot;, ATTR{type}==&quot;1&quot;, KERNEL==&quot;eth*&quot;, NAME=&quot;eth1&quot; </p>
<p># PCI device 0x1814:0x0301 (rt61pci)     <br />SUBSYSTEM==&quot;net&quot;, ACTION==&quot;add&quot;, DRIVERS==&quot;?*&quot;, ATTR{address}==&quot;00:0e:8e:19:3b:18&quot;, ATTR{type}==&quot;1&quot;, KERNEL==&quot;wlan*&quot;, NAME=&quot;wlan1&quot;</p>
</blockquote>
<p>I know why dev does that now. The debian system is installed on my gdium, not on the PCB and then I just use it on the PCB board. When udev finds there is another 8139d network card with different MAC address it adds another entry in rules to rename it to eth1. After changing the eth1 to eth0 in 70-persistent-net.rules, the network works now.</p>
<p>Following is the kernel information of my new kernel.:)</p>
<blockquote><p>kill-bill:~# dmesg | grep 2.6.24     <br />Linux version 2.6.24.5-gdiumv3-2.2mnb (root@debian) (gcc version 4.3.3 (GCC) ) #      <br />2 Sat Mar 28 16:00:59 CST 2009</p>
</blockquote>
]]></content:encoded>
			<wfw:commentRss>http://vm-kernel.org/blog/2009/03/28/eth0-is-missing-on-my-gdium-pcb-board/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>QEMU Does NOT Support MIPS Host Anymore</title>
		<link>http://vm-kernel.org/blog/2009/03/26/qemu-does-not-support-mips-host-anymore/</link>
		<comments>http://vm-kernel.org/blog/2009/03/26/qemu-does-not-support-mips-host-anymore/#comments</comments>
		<pubDate>Thu, 26 Mar 2009 06:42:03 +0000</pubDate>
		<dc:creator>yajin</dc:creator>
				<category><![CDATA[emulation]]></category>
		<category><![CDATA[loongson]]></category>
		<category><![CDATA[gdium]]></category>
		<category><![CDATA[MIPS]]></category>
		<category><![CDATA[qemu]]></category>

		<guid isPermaLink="false">http://vm-kernel.org/blog/2009/03/26/qemu-does-not-support-mips-host-anymore/</guid>
		<description><![CDATA[New version of qemu does not support MIPS host anymore.
For the sake of portability, the new version of qemu uses TCG, a tiny code generator, instead of dyngen to generate host code. That means one backend is needed for each host architecture. There are i386,x86_64,ppc,ppc64 and hppa backend in TCG, but MIPS is not on [...]]]></description>
			<content:encoded><![CDATA[<p>New version of qemu does not support MIPS host anymore.</p>
<p align="justify">For the sake of portability, the new version of qemu uses TCG, a tiny code generator, instead of dyngen to generate host code. That means one backend is needed for each host architecture. There are i386,x86_64,ppc,ppc64 and hppa backend in TCG, but MIPS is not on the list.</p>
<p align="justify">I confirm this conclusion on the <a href="http://www.nongnu.org/qemu/status.html">status page of qemu web site</a>. The MIPS's status is 'Not Supported'. Perhaps these days the most emergent work is to add MIPS host support, instead of loongson guest support to qemu.</p>
]]></content:encoded>
			<wfw:commentRss>http://vm-kernel.org/blog/2009/03/26/qemu-does-not-support-mips-host-anymore/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>How to Install Debian Lenny on Gdium</title>
		<link>http://vm-kernel.org/blog/2009/03/20/how-to-install-debian-lenny-on-gdium/</link>
		<comments>http://vm-kernel.org/blog/2009/03/20/how-to-install-debian-lenny-on-gdium/#comments</comments>
		<pubDate>Fri, 20 Mar 2009 07:01:01 +0000</pubDate>
		<dc:creator>yajin</dc:creator>
				<category><![CDATA[loongson]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[gdium]]></category>
		<category><![CDATA[lenny]]></category>

		<guid isPermaLink="false">http://vm-kernel.org/blog/2009/03/20/how-to-install-debian-lenny-on-gdium/</guid>
		<description><![CDATA[Although Vincent has given us a how to article of debian on gdium, but there are some detailed things missed. So I rewrite it here with some more detailed steps.
(1) Prepare the new USB disk
Format the new USB disk with at least tow partitions, one is ext2 partition for the root file system and the [...]]]></description>
			<content:encoded><![CDATA[<p>Although <a href="http://www.gdium.com/en/user/408">Vincent</a> has given us <a href="http://www.gdium.com/en/node/872">a how to article</a> of debian on gdium, but there are some detailed things missed. So I rewrite it here with some more detailed steps.</p>
<p>(1) Prepare the new USB disk</p>
<p>Format the new USB disk with at least tow partitions, one is ext2 partition for the root file system and the other is swap space. You can use fdisk to do this.</p>
<p>(2) Install the debian base system using debootstrap</p>
<p>You need to install the debootstrap in gdium first.</p>
<blockquote><p>urpmi debootstrap</p></blockquote>
<p>Mount the new USB disk to your gdium, /mnt for example. Replace /dev/sdc1 to the name of your USB device.</p>
<blockquote><p><span style="background-color: #ffffff;">mount /dev/sdc1 /mnt</span></p></blockquote>
<p>Install the debian base system using debootstrap. You can change lenny to sid if you want to use the debian testing system. To me, I prefer lenny.</p>
<blockquote><p>debootstrap --arch=mipsel lenny /mnt</p></blockquote>
<p>It will download the packages and install to system. So please be patient if your network speed is slow.</p>
<p>Copy /etc/resolv.conf  to your new system and set the hostname of the new system.</p>
<blockquote><p><span style="background-color: #ffffff;">copy /etc/resolv.conf  /mnt/etc/resolv.conf</span></p>
<p><span style="background-color: #ffffff;">echo YOUHOSTNAME &gt; /mnt/etc/hostname</span></p></blockquote>
<p>Chroot to your new system.</p>
<blockquote><p><code>chroot /mnt /bin/bash</code></p></blockquote>
<p><span id="more-155"></span></p>
<p><code>(3) Install the kernel image</code></p>
<blockquote><p><code><span style="background-color: #ffffff;">wget <a title="http://lebesgue.cowpig.ca/~philippe/gdium/linux-2.6.24-gdium-1_2.6.24-gdium-1_mipsel.deb" href="http://lebesgue.cowpig.ca/~philippe/gdium/linux-2.6.24-gdium-1_2.6.24-gdium-1_mipsel.deb">http://lebesgue.cowpig.ca/~philippe/gdium/linux-2.6.24-gdium-1_2.6.24-gdium-1_mipsel.deb</a></span></code></p>
<p><code><span style="background-color: #ffffff;">dpkg -i linux-2.6.24-gdium-1_2.6.24-gdium-1_mipsel.deb</span></code></p></blockquote>
<p><code>Change /etc/modules to the following:</code></p>
<blockquote><p>gdium_laptop<br />
ipv6<br />
i2c_gpio<br />
sm501_gpio<br />
lm75<br />
hwmon_vid<br />
hwmon<br />
eeprom<br />
i2c_dev</p></blockquote>
<p><code>Install udev in debian. Otherwise the debian will complain about rtc after rebooting.<br />
</code></p>
<blockquote><p><code>apt-get install udev</code></p></blockquote>
<p><code>(4) Reboot your gdium and set the env parameters pf PMON</code></p>
<p><code>Reboot the gdium and press DEL on the keyboard when gdium powers up to enter the PMON console. Set the env parameters of PMON to let it loads the correct kernel image and find the correct root file system.</code></p>
<blockquote><p><code><span style="background-color: #ffffff;">set al <a>/dev/fs/ext2@usbg0/boot/vmlinuz-2.6.24-gdium-1</a></span></code></p>
<p><code><span style="background-color: #ffffff;">set karg console=tty0 root=/dev/sda1 rootwait video=sm501fb:1024x600 init=/sbin/init</span></code></p>
<p><code><span style="background-color: #ffffff;">reboot</span></code></p></blockquote>
<p><code>Please change root=/dev/sda1 according to your USB disk's partition setting.</code></p>
<p><code>(5) Install software in debian</code></p>
<blockquote><p><code><span style="background-color: #ffffff;">apt-get install lm-sensors</span></code></p></blockquote>
<p><code><span style="background-color: #ffffff;">Change the /etc/sensors3.conf to the following:</span></code></p>
<blockquote><p>chip "lm75-*"<br />
set temp1_max      40<br />
set temp1_max_hyst 35</p></blockquote>
<p>Install the video card driver.</p>
<blockquote><p><span style="background-color: #ffffff;">apt-get install xorg</span></p>
<p><span style="background-color: #ffffff;">wget <a title="http://lebesgue.cowpig.ca/~philippe/gdium/xserver-xorg-video-siliconmotion_1.7.0-0_mipsel.deb" href="http://lebesgue.cowpig.ca/~philippe/gdium/xserver-xorg-video-siliconmotion_1.7.0-0_mipsel.deb">http://lebesgue.cowpig.ca/~philippe/gdium/xserver-xorg-video-siliconmotion_1.7.0-0_mipsel.deb</a></span></p>
<p><span style="background-color: #ffffff;">dpkg -i xserver-xorg-video-siliconmotion_1.7.0-0_mipsel.deb</span></p></blockquote>
<p>Install lxde desktop. Of course you can install xfce4 or gnome.</p>
<blockquote><p><span style="background-color: #ffffff;">apt-get install lxde</span></p></blockquote>
<p>Install the wireless card driver and wicd. Change the /etc/apt/sources.list to the following.</p>
<blockquote><p>deb <a href="http://ftp.us.debian.org/debian">http://ftp.us.debian.org/debian</a> lenny main non-free<br />
deb <a href="http://apt.wicd.net">http://apt.wicd.net</a> lenny extras</p></blockquote>
<blockquote><p>apt-get update</p>
<p>apt-get install firmware-ralink wicd wireless-tools</p>
<p>modprobe rt61pci</p></blockquote>
<p>Ok. Now you have a working debian lenny system with lxde desktop.</p>
<p>Issues &amp; solutions:</p>
<p>(1) portmap hangs and you can't turn off gdium</p>
<p>Add the following lines to /etc/network/interfaces.</p>
<blockquote><p>auto lo<br />
iface lo inet loopback</p></blockquote>
<p>(2)cannot access mtab: Input/output error</p>
<p>That's because /etc/fstab is not configured. Add the follow lines into your /etc/fstab. You can add or delete the partitions if you want.</p>
<blockquote><p>/dev/sda1 / ext3 noatime 1 1<br />
/dev/sda4 swap swap defaults 0 0<br />
none /tmp tmpfs defaults 0 0<br />
none /var/log tmpfs defaults 0 0<br />
none /proc proc defaults 0 0<br />
none /sys/kernel/debug debugfs defaults 0 0</p></blockquote>
<p>(3) Sound does not work on my system!!</p>
<p>Add you the the audio group.</p>
<blockquote><p>usermod -a - G audio yajin</p></blockquote>
<p>(4) The system can not display Chinese characters.</p>
<blockquote><p>apt-get install locales</p>
<p>dpkg-reconfigure locales</p></blockquote>
<p>Please make sure zh_CN locale is selected. You can install wqy fonts if you want.</p>
<blockquote><p>apt-get install xfonts-wqy ttf-wqy-zenhei</p></blockquote>
<p>(5) How to display the flash player in youtube</p>
<blockquote><p><span style="background-color: #ffffff;">apt-get install swfdec-mozilla</span></p></blockquote>
<p>The feedbacks are welcome.</p>
]]></content:encoded>
			<wfw:commentRss>http://vm-kernel.org/blog/2009/03/20/how-to-install-debian-lenny-on-gdium/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>My New Toy: Gdium Liberty 1000</title>
		<link>http://vm-kernel.org/blog/2009/03/16/my-new-toy-gdium-liberty-1000/</link>
		<comments>http://vm-kernel.org/blog/2009/03/16/my-new-toy-gdium-liberty-1000/#comments</comments>
		<pubDate>Mon, 16 Mar 2009 07:40:03 +0000</pubDate>
		<dc:creator>yajin</dc:creator>
				<category><![CDATA[ARM/MIPS]]></category>
		<category><![CDATA[loongson]]></category>
		<category><![CDATA[gdium]]></category>
		<category><![CDATA[OLPH]]></category>

		<guid isPermaLink="false">http://vm-kernel.org/blog/2009/03/16/my-new-toy-gdium-liberty-1000/</guid>
		<description><![CDATA[This morning I eventually received my gdium liberty 1000 from zjs express, nearly 5 days after its shipping! Last time I use sf express to ship my mp4 player to Beijing in less than 2 days. I understand, because of the battery stuff can not be shipped by airline, but 5 days is excessive for [...]]]></description>
			<content:encoded><![CDATA[<p align="justify">This morning I eventually received my gdium liberty 1000 from <a href="http://www.zjs.com.cn/eng/index.aspx">zjs express</a>, nearly 5 days after its shipping! Last time I use <a href="http://en.sf-express.com/">sf express</a> to ship my mp4 player to Beijing in less than 2 days. I understand, because of the battery stuff can not be shipped by airline, but 5 days is excessive for train and even for truck!</p>
<p>Although a little dissatisfied with the shipping express, gdium seems very attractive to me at my first glance for its smart size and its black color. It spend me a little time to make the battery work because I do not know how to assemble the battery at first. The speed of gdium is not as good as I had expected for a 900MHZ CPU. But there is room for optimization because of the N32 MIPS ABI. The screen resolution is excellent, 1024*600 is enough for most of the web sites. The Chinese fonts display very well when I visit the sina.com.cn, thanks to <a href="http://wenq.org/index.cgi">wqy fonts</a>. The Youtube videos can also display very well in Firefox. Awesome! I do not find which plugin does firefox use to display the flash, gnash maybe? The gtk desktop is not very fluent, but that's ok because I will replace it with a lightweight desktop.</p>
<p>Gdium, to me, is a development platform more than a notebook for daily use. I want a MIPS development platform for a long time and gdium is the very one. It is better than the <a href="http://www.lemote.com/english/yeeloong.html">yeeloong</a> notebook, which I planned to buy a few months ago, for gdium has an bigger LCD and good look.</p>
<p>I have too many plans on this new toy, porting android, porting lguest and kvm. But the issue is there is no uart interface on gdium. If you want the uart interface, you need to seal it by yourself. That is too hard to me, a hardware beginner.</p>
<p>If there is an emulator of gdium, life would be much easier. I can use the emulator to test the pmon/linux kernel and lguest porting. I know I can develop a gdium emulator based on qemu, but I have done too much about the emulator stuff, <a href="http://vm-kernel.org/qemu-omap3.htm">qemu-omap3</a>, <a href="http://code.google.com/p/jz-hacking/wiki/qemujz">qemu-jz</a>, virtualmips and a little fed up with emulator development. But emulator is really a big helper for kernel related development......</p>
<p>Following is my todo list these months.</p>
<ul>
<li>install debian and a lightweight desktop for gdium</li>
<li>develop an emulator of gdium based on qemu</li>
<li>port lguest and kvm to MIPS</li>
<li>port android to gdium and tune the performance of dalvik runtime on MIPS target</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://vm-kernel.org/blog/2009/03/16/my-new-toy-gdium-liberty-1000/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>
