PC-Engines

From DD-WRT Wiki

(Difference between revisions)
Jump to: navigation, search
Revision as of 14:48, 23 November 2013 (edit)
Sash (Talk | contribs)
(Installation)
← Previous diff
Revision as of 17:06, 23 November 2013 (edit) (undo)
Sash (Talk | contribs)
(Overclocking Alix)
Next diff →
Line 118: Line 118:
- + <nowiki>
Next you must chose what to over (or under) clock and how much: Next you must chose what to over (or under) clock and how much:
Value CPU MEM Value CPU MEM
-"3d3" = 333 133 
-"3d5" = 366 133 
-"3d7" = 400 133 
-"3d9" = 433 133 
-"3db" = 466 133 
-"3dd" = 500 133 
-"3df" = 533 133 
-"3e1" = 566 133 
- 
-"4d3" = 333 166 
-"4d5" = 366 166 
-"4d7" = 400 166 
-"4d9" = 433 166 <---- OLPC Baseline 
-"4db" = 466 166 
-"4dd" = 500 166 
-"4df" = 533 166 
-"4e1" = 566 166 
- 
-"5d3" = 333 200 
-"5d5" = 366 200 
-"5d7" = 400 200 
-"5d9" = 433 200 
-"5db" = 466 200 
-"5dd" = 500 200 
-"5df" = 533 200 
-"5e1" = 566 200 
- 
-"653" = 333 216 
-"655" = 366 216 
-"657" = 400 216 
-"659" = 433 216 
-"65b" = 466 216 
-"65d" = 500 216 
-"65f" = 533 216 
-"661" = 566 216 
"6d3" = 333 233 "6d3" = 333 233
Line 168: Line 133:
"6e1" = 566 233 "6e1" = 566 233
-"7d3" = 333 266+"8d3" = 333 300
-"7d5" = 366 266+"8d5" = 366 300
-"7d7" = 400 266+"8d7" = 400 300
-"7d9" = 433 266+"8d9" = 433 300
-"7db" = 466 266+"8db" = 466 300
-"7dd" = 500 266+"8dd" = 500 300
-"7df" = 533 266+"8df" = 533 300
-"7e1" = 566 266+"8e1" = 566 300
-"6d3" = 333 333+"9d3" = 333 333
-"6d5" = 366 333+"9d5" = 366 333
-"6d7" = 400 333+"9d7" = 400 333
-"6d9" = 433 333+"9d9" = 433 333
-"6db" = 466 333+"9db" = 466 333
-"6dd" = 500 333+"9dd" = 500 333
-"6df" = 533 333+"9df" = 533 333
-"6e1" = 566 333+"9e1" = 566 333
 + 
 +"ad3" = 333 366
 +"ad5" = 366 366
 +"ad7" = 400 366
 +"ad9" = 433 366
 +"adb" = 466 366
 +"add" = 500 366
 +"adf" = 533 366
 +"ae1" = 566 366
 + 
 +"bd3" = 333 400
 +"bd5" = 366 400
 +"bd7" = 400 400
 +"bd9" = 433 400
 +"bdb" = 466 400
 +"bdd" = 500 400
 +"bdf" = 533 400
 +"be1" = 566 400
 + 
 +"cd3" = 333 433
 +"cd5" = 366 433
 +"cd7" = 400 433
 +"cd9" = 433 433
 +"cdb" = 466 433
 +"cdd" = 500 433
 +"cdf" = 533 433
 +"ce1" = 566 433
NOTE: In case the pattern is unclear, for any value you have: NOTE: In case the pattern is unclear, for any value you have:
Line 191: Line 183:
Add 100 to increase MEM by 33 MHz Add 100 to increase MEM by 33 MHz
Subtract 100 to decrease MEM by 33 MHz Subtract 100 to decrease MEM by 33 MHz
 +
 +</nowiki>
[http://www.dd-wrt.com/phpBB2/viewtopic.php?t=43613&view=previous&sid=1bd6fc2a42e930e328ccae00c2e3cb58 Forum discussion] [http://www.dd-wrt.com/phpBB2/viewtopic.php?t=43613&view=previous&sid=1bd6fc2a42e930e328ccae00c2e3cb58 Forum discussion]

Revision as of 17:06, 23 November 2013

Contents


The page is about the popular PC-Engines Alix and Wrap (eol) boards. They Alix based on the AMD Geode LX700/800 cpu's which are simple x86 cores desinged in the mid 90's. The Wrap boards are x86, too, but are labled National Semiconductor chips. AMD bought the CPU devision some years ago and relabled the CPU's.

Installation

initial flash

  • CompactFlash Card >32MB (for outdoor usage industrial cards should be preferred)
  • physdiskwrite >v. 0.5
  • x86 version *serial.image
  • CF-cardreader



Windows

physdiskwrite [-u] <image-file>

...or just simply drag-and-drop the image file onto the physdiskwrite.exe icon.

Linux

Just

dd if=/*serial.image of=/dev/"media"

Web

  • x86 webupgrade version if dd-wrt is already running

Additional information

BrainSlayer:
dd-wrt-webupgrade images are for upgrading using the webinterface too. for new install, please use the .image files and physdiskwrite for writing

dd-wrt boots per default from /dev/hda - /dev/hdd interfaces which means you can install it on any ide compatible device like cf cards or standard harddisks
per default dd-wrt prints only messages out on the serial console. if you have a vga capable device you may modify the booloader settings to use tty0 instead of ttyS0
you can also edit the bootloader settings in a perstant way on /boot/boot/grub/menu.lst after booting per default eth0 is wan and remote management on port 8080 is enabled. all other ethernet interfaces are used as lan interfaces but can be reconfigured from the basic setup page later if your ethernet interface is not detected, please login using the serial console and write me the "lspci" output (nickname: brainslayer within the forum)

image types:

dd-wrt-webupgrade_public.bin = free dd-wrt x86 version (for webupgrade) dd-wrt_public.image = free dd-wrt x86 version (raw image for cf or hdd) this version is limited to 4096 connections and wifi support is missing

dd-wrt-webupgrade_full.bin = full dd-wrt x86 version for registered users (for webupgrade) dd-wrt_full.image = full dd-wrt x86 version for registered users (raw image for cf or hdd) this version does support wifi as well as up to 65536 connections, future versions may support more depending on the available memory

dd-wrt-webupgrade_full_smp.bin = full dd-wrt x86 version for registered users (for webupgrade) dd-wrt_full_smp.image = full dd-wrt x86 version for registered users (raw image for cf or hdd) this version does support wifi as well as up to 65536 connections, future versions may support more depending on the available memory additionally this version is capable of using multiple cpu's


for registering you must buy a licence at the shop site

BS


Serial Console

Current builds are configured for 115200 baud, 8-bits, no parity and 1 stop bit (8n1). If you're using something like a Soekris or Alix board, it is more than likely that the initial baud rate set in the BIOS is different, so you'll need to use BIOS baud rate on your terminal device if you want to see the self-test messages from the target system at initial power-on and then change the baud rate to 115200 once the DD-WRT image starts to execute.

Once you're confident that DD-WRT is booting reliably, you can leave the baud rate on your terminal set to 115200 permanently, or you can reconfigure the target system BIOS, or the DD-WRT image, to match each other.

When using a Linux computer as your terminal device, you can change the baud rate from within MiniCom without having to exit the program.

If you're using "tip" on a BSD derivative you'll need to exit and reconnect using a different target config name. For instance, you might be using the target label "hardwire" to connect to the console at 9600 baud (with the command "tip hardwire"). You will probably need to add a new target config into the /etc/remote file to define the higher speed connection:-

   fastwire|High speed console for x86 DD-WRT box:\
     :dv=/dev/tty00:pa=none:tc=direct:br#115200:
    

You would then use the command "tip fastwire" to connect using 115200 baud.

Overclocking Alix

Using this information is art own risk!
The AMD Geode LX processor is capable of beeing overclocked.
I greped the script from here and modified it sightly. The register values i got from the OLPC projekt which uses the AMD Geoade also in their device.

PC-Engines designed the boards with 433MHz CPU/333MHz RAM (LX700) or 500MHz CPU/400MHz RAM (LX800) clock speeds. So i only will show the relevant register settings which are interesting for us. In general the LX700 has the same core as the LX800 so both should work fin with the same cpu speeds. But you will have to verify via datasheet that the RAM of the LX700 boards is capable of running at 400MHz, else you will have to run it on 333MHz! In the forum it was dicussed that the LX800 was running unstable when overclocked higher then 533MHz.


Now its time to overclock.

VENDOR=`cat /proc/cpuinfo | grep vendor_id | cut -d : -f 2 | sed 's/^ *\(.*\) *$/\1/'`
CPU_FAMILY=`cat /proc/cpuinfo | grep "cpu family" | cut -d : -f 2 | sed 's/^ *\(.*\) *$/\1/'`
CPU_MODEL=`cat /proc/cpuinfo | grep "model" | head -n 1 | cut -d : -f 2 | sed 's/^ *\(.*\) *$/\1/'`
if [ -z $VENDOR ]; then exit; fi
if [ -z $CPU_MODEL -o -z $CPU_FAMILY ]; then exit; fi
if [ $VENDOR = "AuthenticAMD" -a $CPU_FAMILY -eq 5 -a $CPU_MODEL -eq 10 ]; then
  echo -n "AMD Geode LX CPU found ... "
  LVALUE=`rdmsr  0x4c000014 | cut -b 1-3`
  # 4dd = 500 MHz CPU, 166 MHz RAM
  # 4df = 533 MHz CPU, 166 MHz RAM
  if [ $LVALUE = "4dd" ]; then
        RVALUE=`rdmsr  0x4c000014 | cut -b 4-11`
        VALUE=0x4df$RVALUE
        echo -n "overclocking CPU to 533 MHz - "
        wrmsr 0x4c000014 $VALUE
        rdmsr 0x4c000014
  else
        echo leaving CPU clock unchanged
  fi
fi



Next you must chose what to over (or under) clock and how much:

Value     CPU  MEM

"6d3"   =  333   233
"6d5"   =  366   233
"6d7"   =  400   233
"6d9"   =  433   233
"6db"   =  466   233
"6dd"   =  500   233
"6df"   =  533   233
"6e1"   =  566   233

"8d3"   =  333   300
"8d5"   =  366   300
"8d7"   =  400   300
"8d9"   =  433   300
"8db"   =  466   300
"8dd"   =  500   300
"8df"   =  533   300
"8e1"   =  566   300

"9d3"   =  333   333
"9d5"   =  366   333
"9d7"   =  400   333
"9d9"   =  433   333
"9db"   =  466   333
"9dd"   =  500   333
"9df"   =  533   333
"9e1"   =  566   333

"ad3"   =  333   366
"ad5"   =  366   366
"ad7"   =  400   366
"ad9"   =  433   366
"adb"   =  466   366
"add"   =  500   366
"adf"   =  533   366
"ae1"   =  566   366

"bd3"   =  333   400
"bd5"   =  366   400
"bd7"   =  400   400
"bd9"   =  433   400
"bdb"   =  466   400
"bdd"   =  500   400
"bdf"   =  533   400
"be1"   =  566   400

"cd3"   =  333   433
"cd5"   =  366   433
"cd7"   =  400   433
"cd9"   =  433   433
"cdb"   =  466   433
"cdd"   =  500   433
"cdf"   =  533   433
"ce1"   =  566   433

NOTE: In case the pattern is unclear, for any value you have:
            Add 2 to increase CPU by 33 MHz
            Subtract 2 to decrease CPU by 33 MHz
            Add 100 to increase MEM by 33 MHz
            Subtract 100 to decrease MEM by 33 MHz


Forum discussion

FAQ

Q. I'm using dd to write the image to a flash memory card for my Soekris/Alix box, but even though the card appears to be detected properly, the console message always shows a "missing OS" or "OS not found" message. What could be the problem?

A. Check the size (capacity) of your flash card. Current builds will no longer fit onto a 32MB card. You should use a 64MB card as a minimum (and considering how cheap these cards are nowadays, you'd be better off running out and buying a 1GB or 2GB).

If that isn't the problem, then check your "dd" command line is correct. You should verify that the flash target device is correct from dmesg output (do not just follow the example text blindly... you stand a good chance of irretrievably corrupting your master system disk if you do). Also ensure that you specify the device name without a partition number (ie:- it should be /dev/sdb not /dev/sdb1). This is easy to remember once you realize that dd is writing a boot-block into the flash "disk" as well as the OS (it's all bundled up inside the DD-WRT image), so the write must start at the very beginning of the disk, not the beginning of the first (or any other) partition/slice.


WARP/Alix Bios Upgrade

Zur erst müssen Sie prüfen ob ein Biosupdate für Ihr WRAP System notwendig ist. Sie benötigen mindestens Version 1.08 vom WRAP Bios damit die Installation über Netboot einwandfrei funktioniert. Aktuell (Stand 26-07-2007) ist die Biosversion 1.11.

In dem Beispiel ist noch die Biosversion 1.03 vorhanden.

PC Engines WRAP.1C v1.03 640 KB Base Memory 130048 KB Extended Memory

01F0 Master 808A Flesh Card ATAPI No boot device available, press Enter to continue.

Um das Biosupdate durchzuführen gehen Sie bitte wie folgt vor:

   * Schließen Sie Ihr WRAP mit einem Nullmodemkabel an Ihren Computer an und starten Sie ein Terminalprogramm wie HyperTerminal oder ZOC.
   * Konfigurieren Sie Ihr Terminal den seriellen Einstellungen vom WRAP entsprechend. Das WRAP ist von Werk auf 38400,8N1 eingestellt. Stellen Sie ein eventuelles Hardware Handshake aus, als Terminalemulation benutzen Sie "Linux" oder "VT100" wenn eine Auswahlmöglichkeit besteht.
   * Schalten Sie das WRAP an, Sie sollten im Terminal das hochzählen des Speichers sehen können. Kommt statt einer lesbaren Ausage nur Zeichensalat stimmen die Einstellungen für die serielle Konsole nicht. Versuchen Sie es dann mit 9600 und 57600 Baud anstatt der 38400. Bei einer dieser Einstellungen muss etwas zu sehen sein. Bekommen Sie überhaupt keine Ausgabe vom WRAP ist die serielle Konsole im Bios vom WRAP deaktiviert. In diesem Fall müssen Sie das WRAP stromlos schalten. Dann müssen Sie den Taster auf der WRAP Platine (Vorderseite) drücken und das WRAP wieder einschalten während der Taster weiterhin gedrückt ist. Damit wird in jedem Fall das Biossetup des WRAP gestartet. Dort aktivieren Sie mit "r" wieder die serielle Konsole. Sollte im Terminalprogramm wieder nur Zeichensalat zu sehen sein müssen Sie alle drei möglichen Baudraten (9600, 38400 und 57600) durchtesten.
   * Nachdem Sie sichergestellt haben, dass die Terminaleinstellungen korrekt sind schalten Sie das WRAP wieder aus und dann wieder ein. Drücken Sie nach dem Einschalten sofort die Taste "s" um in das Bios des WRAP zu gelangen. Im Terminal sollte dann folgendes zu sehen sein:

WRAP setup (9) 9600 baud *3* 38400 baud (5) 57600 baud

  • C* CHS mode (L) LBA mode

(X) Xmodem upload (Q) Quit

   * Mit der Taste 'x' starten Sie das Biosupdate über die serielle Schnittstelle. Das neue Bios muss per X-Modem Upload dem WRAP zur Verfügung gestellt werden. Ein aktuelles Bios finden Sie auf dem Webseiten von PC Engines. Für das WRAP notwendige Biosupdate heisst WRAP1.UPD wenn Sie ein WRAP.1x (also die B,C oder E Revision) Board einsetzen. Bitte denken Sie daran, das ein Biosupdate niemals unterbrochen werden darf. Sei es durch Stromausfall oder Neustart eines Rechners. Im schlimmsten Fall ist Ihr WRAP Board dann nur noch mit einem speziellen Flashadapter reparabel.

External links

Original PC-Engines produkt page