Linux on Capio II (Geode) ?

Hi all.

Has anyone run Linux from the Disk-on-Chip on these little beasts? Bought 11 of them for about $2 apiece. They have 2xUSB, sound, e100 ethernet, 16MB DOC, 64MB 144 pin SODIMM SDRAM.

I have a Rocky 558EV SBC running SuSE 9.0 with DOC socket to transfer OS images, but even with all DOC support compiled into the SuSE 2.4.21 kernel, fdisk, dd, mkfs, etc. seem to freeze up when accessing the DOC.

And yes, I'm a newbie at embedded stuff, so it's possible (likely?) that I overlooked something totally basic and/or obvious.

Comments? Hints? Advice? OS images?

TIA, Phil

Reply to
Phil
Loading thread data ...

kernel,

Have a look at Lewin's experiences.

formatting link

I haven't tried the DOC, but found the terminal stuff in the Geode really flakey. The processor would stop for significant periods (>1 millisecond, from memory) while video operations were happening. A very strange relationship between the processor and the video chip.

Cheers,

-- Alf

Reply to
Unbeliever

Quick response only, I'm not at home (home Internet is not working right).

Actually it is not stopped, it's servicing a SMM interrupt. Every {time period} a nonmaskable SMM interrupt occurs. The Geode hardware doesn't support text modes natively. In text modes, the SMM ISR checks to see if the color or character memory has changed, and if so it updates the frame buffer memory. You can mitigate this evil behavior somewhat by disabling text-mode-related SMM traps. (BTW, this won't prevent the periodic interrupts, which also handle other things, but it will prevent text-mode RAM hits from triggering SMM traps).

Ultimately the only way to get Geode tuned properly for an application with any kind of realtime needs is to get a customized BIOS with your particular fetish implemented in the VSA code.

Reply to
Lewin A.R.W. Edwards

We are using a Geode GX1 based Compaq Internet Appliance 2. We have not experienced any of the problem you mentioned. The only strange thing is that I can only run at 1024x768 and my friend can only run at

800x600. Any other video mode would get the monitor out of sync. I am using Xfree 3.3.6 and my friend is using Xfree 4.2. Any idea why?
Reply to
Edward Lee epl

Are you using text modes? The discussion we're having here relates to use of modes which, ordinarily, would be supported by character generator hardware (which the CS5530/GX1 combo lacks). Font/color rendering, blink text and cursor are all emulated in unpreemptible firmware. You'll note that there are many Geode BIOSes out there that show significant problems with text-mode scrolling in Linux, BTW.

There are other functions in Geode which also go through this baroque arrangement of HW/SW codependency, but text mode display rendering is one of the biggies. Geode is not a good choice for realtime applications unless you can get great vendor support for customized BIOSes (and not always even then).

The changes between these two versions are pretty radical, and in the case of 3.x servers, there are at /least/ three different forks of the source tree; two closed-source XF86_SVGA servers (one from NS, one from a third party I have yet to identify), and one official open-source version from xfree86.org. I don't know that there is any good source of documentation on all of this besides the XFree86 source. Unfortunately the "official" NS sources are only available with an NDA (? I'm not sure how this is reconcilable with GPL).

Anyway, these versions all differ substantially in how they calculate and validate clock settings. The symptom you describe is, I'd say, par for the course (it can be instructive to scope the sync lines and see what's being set up, BTW!). If you are very careful to specify exact video mode setup in the ModeLine, you can *usually* get a particular mode working [except scandoubled modes - a patch is required for 4.x - see my webpage] but really the only way to ensure identicical behavior between systems is to use the _exact_ same binaries. An alternative option is to use the fbdev server running over kernel framebuffer console.

One problem with 4.x servers is that all the "built-in" implicit modelines need to be overridden. It can be very hard to work out exactly where the server is picking up its config information sometimes, and/or hard to work out why it is rejecting user-supplied modelines.

Reply to
Lewin A.R.W. Edwards

Yes, we are using text mode for Dos and Linux, piror to run X. The scrolling is slow, but not unusually slow.

I am using the open source XFree 3.3.6. I am not surprised that my friend's system work on 800x600 only, since the original box (for msn) was designed to run at 800x600. What's surprising is that I can only run at 1024x768, with an external Multi-Sync monitor.

I have tried modeline timings from my own (worked on many other systems), the example on your site and another one from the web. None of them can get the display to work in 800x600.

It appears that the system has a firmware limitation coded somewhere to a fixed resolution.

Reply to
Edward Lee epl

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.