xf86-video-geode 2.11.0: last call!

With yesterday's release of version 2.11.0 of the X.org driver for the Geode GX2/LX, a whole cycle was wrapped up for many of the developers involved:

  • Jordan Crouse was among the unlucky ones who recently lost their job at AMD. The same layoff also affected Coreboot developer Marc Jones and other Geode specialists (see Jordan's blog article for details).
  • Several members of the OLPC project are also moving on, now that most Linux kernel and X.org patches have been merged upstream.
  • People like myself who were working in the thin client industry on Geode-based products are also moving on.

As such, remaining bugs and our milestone goal to merge back support for older GX1 Geodes might never be taken care of. From this perspective, we welcome active participation of new developers with access to a wide variety of Geode hardware to contribute and, eventually, take over upstream maintenance of xf86-video-geode.


Available for a new job

A couple of years ago, I started what has probably been the best job I've held so far, as a Business Development Manager for Artec Group where I focused on marketing and selling the ThinCan LTSP client.

During that time, I used a combination of Guerrilla Marketing techniques to spread the word about this cool Estonian embedded platform in its LTSP client configuration and defined an extremely tight market-oriented focus that saw this relatively obscure electronic design start-up rise to the forefront of the LTSP hardware market and also brought the company commendable notoriety in the Coreboot community, thanks to its Programmable LPC Dongle, a low-cost ROM emulator that can be used to bootstrap various embedded hardware and test firmware images.

Looking back at close to 3 years with Artec (if we include the stint I did at Linutop), I most fondly remember how I managed to bring the Estonian and Turkish nations closer together in collaborating on Innovation. On my first visit to Turkey, I had noticed that very little is know about Estonia in Turkey, even though both countries have a collaboration that dates back to the 1920's, so my tactic was to introduce Estonia's achievements as a whole, to establish confidence in Artec's offering. It worked:

Among other things, my idea to organize an Estonian ICT Conference during the visit of Estonian PM Andrus Ansip in Turkey created a lot of extremely positive buzz that resulted in Estonia being mentioned as a trendy country in a prime time Turkish TV series. During this time, I've also made a lot of contacts among the Estonian and Turkish business communities and, more surprisingly, among the Estonian diplomacy who, much to my amazement, welcomed my ideas for better promoting Estonian interests abroad with great enthusiasm.

Come December 2008, my time at Artec will become a page in my employment history. While the Thincan remains one of Artec's key products, current marketing and sales resources are focused on new markets and new technologies that completely fall outside my core expertise, which is why the company decided to let me go.

I thus welcome offers from interested parties in Coreboot or LTSP markets. Other refreshing offers from outside the box - such as in business diplomacy - are equally welcome, as I've been pondering a career change for a long time.


Still more Old Skool goodies to send to a good home

Debian Developer Peter De Schrijver dropped by tonight and left with the Atari stuff, but there's still more stuff left.


SBM that adds USB boot support?

Having recently demoted my old ThinkPad 240x to Debian/Testing testbed, I wanted to re-install Debian from scratch on it, to make sure that I would have a clean reference system to work with.

However, this being a very old ThinkPad model, there is no CD-ROM drive to speak of. The only external means of booting is with an optional floppy disk drive. Sure enough, there exists a nice helper called SBM (included in the utility folder on all Debian CDs since several releases) that adds CD-ROM boot support to any BIOS.

Instead, My idea would be to perform the reinstall using the USB stick version of Debian-Installer, bootstrapped by SBM on the floppy disk. Does anybody know of an SBM release that adds USB boot support? If not, is there any other tool that performs a similar trick?


another Tux bites the dust

At the dayjob, we've been evaluating various OS options for a customer project. Without going into details, it involves installing embedded software on a ThinCan for a special usage case. The basic needs are simple: graphic environment to run a custom application (OS neutral), plus a few drivers for hardware attached to the ThinCan. That's it. Nothing to excited about.

Comparing various team members' proposals to implement the OS base was the real shocker: no matter how optimized the software base and compiler options, no matter which build environment was used (Thin Station, Open Embedded, Gentoo, etc.), we couldn't get a performance that was remotely usable:

  • Boot time goes well over a minute, which is way too slow.
  • The graphic environment is sluggish, to say the least. True enough, distributions like Thin Station come with rather outdated versions of everything, but still... that slow?!
  • Refactoring IceWM to provide clean 95-ish functionalities using current XDG standards would require a fair amount of work. By the time we'd be done, IceWM would probably gain a thick footprint like XFCE progressively did.

Then came the proposal from our team's lone Windows guy: XP Embedded. Booted in less than 10 seconds, has a graphical environment that is usable out of the box and integrating the customer's application was a breeze. Heck, the demo is practically a finished product already and took just a couple of hours to assemble! To make matters worse, the total we'd be paying in licensing fees, for all the Windows components we choose, would amount to far less than what it would cost to polish either of the Free Software -based proposals.

Before anyone goes and puts on their asbestos suit, I'm already aware that the point of Free Software is to keep people employed and to make the community at large benefit from everyone's code improvements by contributing patches to upstream. Please keep in mind that, in contrast, business requirements are to get results at a reasonable cost, reasonably fast and to produce a well-polished product. The Free Software community has finally conquered the challenges of the desktop and was already on the server ages ago, but we ain't quite there yet on embedded devices, I'm afraid.

While I personally refuse to run anything else than Ubuntu on my laptop, let's face it, in the above case, the savings in time=money were obvious and the resulting product quality, even at demo stage, spoke for itself. Thus, another Tux bit the dust.


Québec government sued for buying Microsoft products without any public call for tender

As per the original press release:

In Quebec, access to public markets is the rule while contracts attribution without invitation to tender is the exception. A public market should be transparent, fair and most importantly, open to all. The solutions as well as the propositions must be evaluated objectively on known and accepted criteria. Furthermore, the regulation implies that public markets have to enhance the local economic development as well as the Quebec technologies.

From February to June 2008, FACIL has noticed sales of proprietary software for more than 25 million dollars. These purchases were made for products offered by large multinational enterprises, with no regard to suppliers in Quebec.

Much to my surprise, news about this lawsuit have spread as far as Vietnam! Something tells me that this court case might have lasting repercussions...


Dear Lazyweb: constructive homelessness

Dear Lazyweb,

I'm a permanent resident of one country, but I'm representing the interests of another one as a part of my job. Anyhow, I'm constantly traveling, so I cannot consider myself as having a residence anywhere in particular.

Still, the health insurance and taxation offices of the country where I'm registered as a resident are constantly annoying me with requests for additional clarifications about "working abroad" (trying to imply that I might have relocated to the country where my employer has their head office), which is a complete waste of my time, because the previous explanation is never good enough for them and they keep on twisting every word I say.

I was thus wondering if someone ever found a way to not have any official place of residence anywhere and still be able to get visas for the countries they need to visit and also be able to rent apartments in the countries that they visit the most frequently without ending up with residence permits for each of them, so as to avoid the above mess with multiple jurisdictions?

This question is not about evading taxation. It's about finding a solution to avoid wasting time constantly filing paperwork just because the bureaucracy cannot understand a situation where someone's lifestyle doesn't fit the traditional model of living and working in exactly one city.


brainstorm: new LPC dongle design

One of our most popular products at the dayjob has been our Programmable LPC Dongle. It has seen widespread use as an embedded hardware development and debugging tool and is particularly popular among Coreboot developers as a ROM emulator, because of its low price and because we publish the FPGA code under the LGPL.

Unfortunately, our current LPC Dongle product is nearing end of life, because some components are no longer available.

We're currently designing a brand new Programmable LPC Dongle and, noticing the plethora of improvement ideas we already received from the Coreboot community, we decided to widen the scope and invite a larger group of hardware developers to tell us what features they want to see in our next-generation Programmable LPC Dongle.

Anyone interested in participating in this brainstorm is welcome to send me their ideas to first-middle.lastname@artecgroup.com by September 1st 2008. While we cannot guarantee that every idea submitted will be used, we will definitely be reading all the feedback we receive.


Ah, the wonders of e-commerce!

After excruciatingly long months of waiting for all pieces of the puzzle to fall into place, I am pleased to announce that the dayjob finally rolled out its very first online shop!

The process of putting this together has been quite an experience: I had to learn about the wonders of payment authorization gateways, different taxation jurisdictions, etc. For instance, we have to deal with 4 taxation jurisdictions:

  1. Estonian corporates and individuals: always add 18% VAT.
  2. Other EU individuals: always add 18% VAT.
  3. Other EU corporates: can be exempted from VAT, if their EU tax registration number is valid. Otherwise, add 18% VAT.
  4. Corporates and individuals from outside EU: always exempted from VAT.

As much as we looked around, we could not find any e-commerce site engine that can handle all the intricacies of dealing with EU corporate customers who may or may not have a valid EU taxation exemption number so, for now, our online shop only handles cases 1, 2 and 4 properly.

What can you find on our online shop?

  • Our acclaimed LTSP client hardware solution, the ThinCan.
  • Our really cool Programmable LPC Dongle, which is an Open Source tool for developing and debugging firmware running on devices attached to an LPC bus. I mentioned Open Source, because we publish the FPGA code and Python scripts needed to access the LPC Dongle under the LGPL.
  • Various other products which we happen to sell in the Baltic market.

Anyhow, I'm really happy to finally see this online shop deployed. So many people had wanted to purchase a ThinCan using a credit card or from countries for which shipping costs were difficult to determine and we unfortunately could not easily accommodate them. This is now resolved. Enjoy!


xf86-video-cyrix and xf86-video-nsc: it's dead, Jim

It had to happen sooner or later:

The X.org drivers for the old GX1 variants of the Geode chips formerly made by Cyrix and NSC no longer build against the current X.org release. Given the imminent release of X.org 7.4 (server core 1.5), this essentially means that users of older Geodes will have a nasty surprise, the day they upgrade to Ubuntu/Intrepid, which ships with core 1.5. Soon after, the release immediately following Debian/Lenny will be affected too.

There is a planned milestone to eventually reintegrate support for older GX1 products into the clean and up-to-date xf86-video-geode framework, but this will unfortunately come too late for those upgrading to Ubuntu/Intrepid, unless...

...unless someone volunteers to copy gx_* files inside xf86-video-geode and graft GX1 support into the resulting gx1_* files. If you have access to Cyrix/NSC GX1 + CS5530 or AMD SC hardware and a reasonable knowledge of the X.org codebase, your contribution would be most welcome.


O: planner -- project management application

This one had been a long time in the making, but here it goes: I'm orphaning Planner. Why? Because upstream hasn't been too active in ages, save from a few random bug fixes, and because the GCC 4.3 transition at Debian has exposed yet more bugs that make it FTBFS. The package had been marked as RFA for a while, but I decided that I'm not gonna wait any longer; O it is. Hopefully, an experienced GNOME maintainer will take over and revamp the upstream code into a usable shape. If not, then I guess we just found another dead package in the archive. So be it.


HOWTO build a clean LTSP boot image that includes the latest updates

Thanks to Oliver Grawert and Michael Haas for this idea!

  1. Check your LTSP server's sources.list

    Ensure that the server has the relevant APT sources to fetch the latest updates:

    deb http://security.ubuntu.com/ubuntu hardy-security main universe restricted multiverse
    #deb-src http://security.ubuntu.com/ubuntu hardy-security main universe restricted multiverse
    deb http://fi.archive.ubuntu.com/ubuntu/ hardy-updates main universe restricted multiverse
    #deb-src http://fi.archive.ubuntu.com/ubuntu/ hardy-updates main universe restricted multiverse
    deb http://fi.archive.ubuntu.com/ubuntu/ hardy main universe restricted multiverse
    #deb-src http://fi.archive.ubuntu.com/ubuntu/ hardy main universe restricted multiverse
    deb http://ppa.launchpad.net/q-funk/ubuntu hardy main
    #deb-src http://ppa.launchpad.net/q-funk/ubuntu hardy main

    In this example, the Finnish Ubuntu mirror for the Hardy suite is used. Change this as necessary. Notice that all source package lines are purposely commented out.

  2. Build a boot image using that sources.list

    Build the image using the following command:

    ltsp-build-client --copy-sourceslist --accept-unsigned-packages

    This builds the image using the repositories found in the server's sources.list. Accepting unsigned packages is necessary, because the PPA is not digitally signed.

The above method is a good way to check what would happen on a clean install, if any particular package were updated to a newer proposed release that is currently sitting on someone's PPA.


HOWTO make Geode thin clients work on Ubuntu/Hardy LTSP

As summarized by Ace Suares, to validate my first rough upgrading instructions:

  1. Upgrade the packages in the LTSP chroot

    First become root:

    sudo chroot /opt/ltsp/i386

    Then add the repository, update and upgrade:

    echo "deb http://ppa.launchpad.net/q-funk/ubuntu hardy main" >> /etc/apt/sources.list

    apt-get update && apt-get upgrade && apt-get clean

    APT will inform you that some packages cannot be authenticated. This is normal, since the PPA is not digitally signed. Simply answer Yes.

  2. Purge the transitional AMD driver

    apt-get --purge remove xserver-xorg-video-amd

    Then, exit the chroot:

  3. Update the LTSP boot image

    sudo ltsp-update-image

    On a 64-bit server, the correct command is:

    sudo ltsp-update-image --arch=i386
  4. Profit?

Happy Midsummer, everyone!


xf86-video-geode: now with full OLPC support!

Freshly uploaded to Debian: xf86-video-geode 2.10.0. Asides from a slouch of bug fixes, this version finally includes complete support for features unique to the OLPX XO-1.



Kuradne Geode draiveri!

Yes, another post about the Geode drivers. After much head banging, I finally figured out that the sloppy method used to generate the list of supported PCI ID for each driver in Debian and Ubuntu is what wreaked havoc with the GEODE driver:

  1. Support for the GX2 chipset was backported into the old NSC driver, which created a PCI ID conflict with the official support that is present in the GEODE driver.
  2. To make matters worse, that damn NSC driver also conflicts with the older CYRIX driver that supports earlier versions of the Geode chipset.

To fix both issues, I have produced new NSC and GEODE packages and uploaded them into my Ubuntu PPA for the Hardy series.

Tip: as soon as you have upgraded, purge the -amd transitional package; it only confuses the X server and disrupts operation if you leave it there, especially inside an LTSP chroot. If you were using a static xorg.conf, simply upgrade the Device line to use "geode" rather than "amd" and you're done.

After upgrading to these packages, normal operation should be restored for all Geode variants. As a bonus, X should now even be able to work without an xorg.conf (of course, with the wrong keyboard map, unless you live in USA) and in all known LTSP variants.



updated ALSA driver for early PowerPC hardware

Risto Suominen contacted me recently, after seeing my Ubuntu wiki page where I try to document what works and what doesn't using ALSA on PowerPC hardware. He has developed a patch against the snd-powermac driver that mainly support 603, 604 and G3 PowerMac hardware, to implement better support for several old Mac models. He was wondering where he could find testers for his work, so I offered to blog about it here. You can find his diff and patching instructions on his website. You can contact Risto to report on your testing's result using firstname.lastname@gmail.com


Estonian ICT conference, March 18th 2008, TOBB Plaza, Istanbul, Türkiye

I previously wrote about my visits to Turkey to develop our export market in the Middle-East and how I ended up representing the whole Estonian business world in bilateral negotiations with Turkey. I'm going there again for two weeks, this time accompanied by a whole business delegation headed by Estonian prime minister Andrus Ansip.

Asides from various official events organized by our Turkish hosts to present Turkey to their Estonian guests, the crux of the visit is a conference hosted by DEIK and the Estonian embassy, on Tuesday, March 18th. The goal of this conference is to present Estonia's extremely advanced use of ICT technology in E-Business and E-Governance. Speakers from several private and public sector organizations will explain how they benefited from Estonia's hyper-connected lifestyle and, most of all, how this has made every Estonian's life more pleasant, because it offers a convenient way of performing a broad range of online transactions not just with businesses, but also with governmental organizations.

Yours truly will speak about the advantages Estonia offers to investors and technology freaks alike, from the perspective of an industry insider who, given the opportunity of choosing his first pick for a liberal high-tech nation, dropped the Nokiaesque lands of Suomi to go Eesti.

The morning of conference will end with a business lunch where interested Turks can network with their Estonian counterparts and create lucrative bilateral opportunities.

Space in the TOBB Plaza auditorium is limited so those interested in attending should promptly contact DEIK to get their name added to the guest list.

Turks interested in learning more about Estonia in their own language should visit estonya.net.


Rumor has it...

...that Skype might be willing to port the Linux version of their application to Pulse Audio, as long as they get all the help they need to make this a quick and painless process. Rumor also has it that yours truly will have a visit from a Skype insider tomorrow at 13:00 EET to discuss this issue and, hopefully, be in a position to point the insider to a member of the PulseAudio community willing to guide them through this process. Rumor also has it that volunteers who contact yours truly on time to announce themselves might improve this port's chances of actually happening.


ThinCan + LinuxBIOS = cool LTSP hardware

At the dayjob, we're currently clearing our warehouse of previous hardware to make room for upcoming new models, so here's a shameless plug for those who want cool Linux hardware at a discount:

ThinCan DBE60

Hardware: AMD Geode SC2200, 64MB RAM, 32MB DiskOnChip Flash, 3x USB 1.1 ports, 1/8" audio out, Centronics port, VGA port, 10/100baseT network port.

Firmware: Etherboot or WinCE 4.1 RDP client.

Price: 50 EUR/each - less shipping costs - Minimum order: 10 pieces.

PS: we also have about 50 pieces of DBE60 motherboards (without case) that can be used as embedded controllers. People with good soldering skills can add a CompactFlash socket to the unpopulated pads, as desired.

ThinCan DBE61C

Hardware: AMD Geode LX700 with CS5536 companion chip, 256MB RAM, 4x USB 2.0 ports, 1/8" audio in and out, VGA port, 10/100baseT network port.

Firmware: Etherboot on LinuxBIOS. Supported natively since Ubuntu/Gutsy.

Price: 150 EUR/each - less shipping costs - Minimum order: 2 pieces.

Interested parties can contact us via the request form.

Re: xf86-video-amd: patched xserver-xorg-core available

I previously wrote that:

The next step is to produce patches against the X server 1.4 in Debian/Sid and Ubuntu/Hardy, and then get the fix merged into the upstream X.org tree before X server 1.5 is released.

Good news: Bryce Harrington produced patched X server 1.4 packages for Ubuntu/Hardy!

The LTSP and OLPC communities are hereby invited to test this ASAP. If nothing major is reported, this will be become the standard X server 1.4 for the Ubuntu/Hardy LTS release, following which the patch will also be merged into Debian/Sid.


xf86-video-amd: patched xserver-xorg-core available

Great news: After several weeks of investigating, Bart finally figured out what made the driver for the AMD Geode GX/LX chipset fail on recent X.org servers: it turns out that, starting with X server 1.3, changes under the hood took place that affect a number of products booting off a General Software BIOS, making the whole hardware freeze as soon as a DDC probe is attempted. Bart promptly produced two patches against the x86emu component of X server 1.3 that fix the issue. Hurray!

Ubuntu/Gutsy packages of the patched X server 1.3, plus current AMD drivers, are available in my PPA.

For Debian/Lenny, the same packages compile from Ubuntu sources as-is. Meanwhile, those of you running Debian/Etch only need to compile the Ubuntu sources for the above AMD driver against the X server 1.1 available in Etch.

This should finally allow people developing distributions for LTSP or for the OLPC to use standard Debian packages.

The next step is to produce patches against the X server 1.4 in Debian/Sid and Ubuntu/Hardy, and then get the fix merged into the upstream X.org tree before X server 1.5 is released. We're already working on it, but help is always welcome.


xf86-video-amd from OLPC not for public consumption

Holger reported in his blog that he uploaded a backport of the AMD Geode GX/LX X.org module to Debian. He also points out that what he has backported is from a non-Debian source. In case it wasn't obvious to him, there are good reasons why the official Debian module is not from the OLPC branch: the OLPC branch includes OLPC-only code that breaks operation for non-OLPC hardware. This means that the backport package is completely useless for the vast majority of GX/LX hardware on the market. Well done, Holger!


Hunting for a new laptop (part 2)

Earlier, I had reported on my quest for a new laptop. To recap, I had narrowed down my choice to an LG model whose 12.1" 1280x800 WXGA display and ATI Mobility Radeon X1250 graphic chip failed to be recognized by the Ubuntu CD. Back then, my initial tests were performed using a Feisty CD. Since then, I have returned with a Gutsy CD and got equally disappointing results: E: screen found, but none offers a usable configuration.

Some people suggested buying a laptop with an all-Intel chipset. While Intel chipsets are indeed the best-supported in the business, largely because Intel invests its own resources into coding Linux drivers for all of its products, products based on Intel chipsets tend to be double the price of those based on VIA motherboards with ATI graphic chips. Seeing how quickly hardware devaluates on the market, it feels rather unjustified to pay such a fortune for an Intel-based product, only to see its market value cut in half less than a year later.

Here's a tip for AMD/ATI marketroids: invest as much resources into coding GPL kernel and X.org drivers for all of your products as you did for the OLPC project and always do so a good 12 months before entry to market. Otherwise, prepare for bankruptcy, because companies like Intel who don't shun the Linux market will eat you alive.

Me goes back laptop hunting...