Home / Linux 2.6 / Linux 2.6 Test Files Version 10
Name Modified Size InfoDownloads / Week
Parent folder
readme_linux_2.6_test_v10.txt 2012-08-30 7.7 kB
vmlinux2.6_v10.gz 2012-08-30 2.2 MB
initrd_busy_v10.gz 2012-08-30 3.1 MB
linux-2.6.35.4-mipsel-ps2-modules-v10.tar.bz2 2012-08-30 48.6 MB
Totals: 4 Items   53.9 MB 0
Files for testing Linux 2.6 on PS2
##################################

vmlinux2.6_v10.gz is a Linux kernel for PS2.

The Linux kernel is working stable with Debian 5.0.
The Linux kernel seems to work stable with Fedora 12 (n32).

Change history:
Version 10
- Support DVD-R video discs and other discs (CDVD driver)
- Fixed problems with MIPS ABI n32 (Fedora 12)
- Small fixes
Version 9
- Support for ABI n32 ELF binaries
- Not all n32 syscalls are working yet.
- Add support for PS2 and PS1 memory cards. Error messages are printed,
  because the partition table is scanned which doesn't exist. You can ignore
  these messages.
- Kernel doesn't compile when some kernel debugging feratures were enabled. Fixed.
- RPC: Use spinlocks always the same way to prevent deadlocks when preemption
  is enabled.
- Fixed allocation of thread structures (not page aligned when slab debugging
  is activated).
- Removed all patches from PS2 GCC (simple toolchain).
- Added sound support (old framework OSS).
Version 8
- Added support for atomic64 needed by newer WLAN modules
- Compiled WLAN modules from compat-wireless-3.2.5-1.tar.bz2
  disabled ath5k in config.mk
Version 7
- Added support for 128 bit registers
- Support for power button
- Added framebuffer driver (32 bit and 16 bit color, VESA, DTV, PAL and NTSC support)
Version 6
 - Added workarounds for CPU bugs
 - Flush data cache when loading executable code (Fix random errors).
Version 5
 - Fixed alignment of data in kernel (MIPS_CPU_SCACHE).
 - Use timer in CPU. Support for high resolution timers.
 - Use internal CPU timer as system time.
 - Many workarounds for R5900 CPU bugs (short loops, missing sync.l and sync.p).
 - Disable use of 64 bit register in kernel (for memcpy and memset).
 - Fixed handling of IRQ 7 (timer interrupt).
 - Added support for writing to RTC.
 - Added support for internal hard disc.
 - Added support for PS2 game pad.
 - Added code for CDVD (not working, not enabled).
Version 4
 - Support for time offsets smaller than 10ms.
 - Fixed handling of floating point registers in exception handler.
 - Fixed intruction cache invalidation.
 - Added support for reading of RTC.
 - Fixed alignment of GS packets (graphic is now working).
 - Fixed debug output on SBIOS console (ps2client).
 - Added network drivers for fat PS2 and slim PSTwo.
 - Added infrastructure for SIF locking and CDVD calls.
Version 3
 - Add USB support for slim PSTwo
Version 2
 - Add USB support for fat PS2

At least Kernelloader 2.4 is required. I have tested this
with the PS2 models:
- SCPH-50004/VGA
This is working with the default configuration
of kernelloader.
It has support for
- graphic, framebuffer, the X-Server is working
- network (slim and fat PS2)
- USB.
- USB storage devices and USB keyboards are working.
- PS2 game pad
- internal hard disc in fat PS2
- RTC
- NFS root
- EXT3
- Sound (OSS)
- Memory cards
- USB WLAN devices
- CD/DVD drive
It doesn't have support for:
- Some newer WLAN USB devices

Advanced Linux developers should be able to use it.
You need files from a Linux distribution for mipsel.
ABI o32 and n32 will work. ABI n32 can be unstable and 64 not supported.
The kernel doesn't include support for ABI 64 syscalls.

You can use it with Debian 5.0:
http://sourceforge.net/projects/kernelloader/files/Debian%205.0/debian-lenny-mipsel-v1.tgz

or Fedora 12:
http://fedoraproject.org/wiki/Architectures/MIPS

You need to extract it to the root of a
USB memory stick (EXT3) or hard disc (EXT3).

It is recommended to run it from the internal hard disc and
enable swap memory.

The files are build on a Ubuntu 12.04 from CVS
with tag LINUX_2_6_V10.

The file /etc/apt/sources.list need to have the following content:
deb http://ftp.debian.org/debian-archive/debian/ lenny main
deb-src http://ftp.debian.org/debian-archive/debian/ lenny main

The file /etc/yum.repos.d/fedora-mips.repo should be changed:
baseurl=http://files.mips101.org/Fedora-12-RPMS-MIPS/
enabled=1

Then the Fedora installer yum should work.

Install modules
###############

To install the modules, you need to login as root user and
extract the modules:
su
tar -C / -xjf linux-2.6.35.4-mipsel-ps2-modules-v10.tar.bz2
depmod -

ps2fb framebuffer configuration
###############################
The following kernel parameters configure the graphic mode:
video=ps2fb:pal
video=ps2fb:pal,640x480
video=ps2fb:pal,640x240
video=ps2fb:ntsc
video=ps2fb:ntsc,640x224
video=ps2fb:ntsc,640x448
video=ps2fb:vesa
video=ps2fb:vesa,640x480
video=ps2fb:vesa,800x600
video=ps2fb:vesa,1024x768
video=ps2fb:vesa,1280x1024,videomemsize=4194304
video=ps2fb:dtv
video=ps2fb:dtv,720x480
video=ps2fb:dtv,1280x720,videomemsize=4194304
video=ps2fb:dtv,1920x1080,videomemsize=4194304

The resolutions 1280x1024 and 1920x1080 support 16 bit color.
Lower resolutions support 32 bit color.
32 bit and 16 bit color are working correctly.
The color format is BGR and not RGB (inverted order of colors
in memory). Some programs and libraries can't handle this
(e.g. vice in X11, ROLF in 16 bit format, directfb in 16 and
32 bit color).
The default video memory size is 2MiB. You can always set the
higher modes, but only use them in text mode. Mapping of full
framebuffer will not work (only 2MiB).
The video memory is not allocated until the first application
mmaps the memory. It can't be swapped so it can decrease the
system performance.

The resolution can be changed with the command:
fbset -xres 800 -yres 600 -depth 32
fbset -xres 800 -yres 600 -depth 16

xorg configuration
##################

The framebuffer needs to be enabled.
xorg need to be installed:
apt-get install xorg
apt-get install xfce4
apt-get install fluxbox

You need to add one of the following lines to the file
~/.xinitrc to choose the desktop type:
exec fluxbox
exec xfce4-session

Fluxbox runs faster.
The file xorg.conf need to be copied to /etc/X11/xorg.conf
(http://sourceforge.net/projects/kernelloader/files/Linux%202.6/Linux%202.6%20Test%20Files%20Version%207/)
This file is configured to 640x480 and 32 bit color.
The color depth need to be configured to 24 or 15 bit.
X11 will automatically switch the resolution and color format.
It can be started as root user with the command:
startx

This is currently only working slow with an VGA monitor.

mplayer configuration
#####################

The mplayer can directly use the framebuffer. You can
start it with the commands:

fbset -xres 800 -yres 600 -depth 32
mplayer -nosound -vo fbdev -vf rgb2bgr=swap -fs video.mpg
mplayer -nosound -vo fbdev video.mpg

Where video.mpg is the video file which is played. If
the video is too large or uses a complex codec, the
playback will be too slow. The following configuration
leads to an acceptable speed:
MPEG1  320x240  (aspect 1)  29.970 fps  990.8 kbps (123.8 kbyte/s)

The color is correct when mode is 32 bit and the filter rgb2bgr
swaps the byte order.

Note: The mplayer crashs if the videomemsize is too small.
This can be avoided by a smaller resolution or by increasing
the videomemsize.

In X11 the mplayer doesn't work, because BGR is not supported
(inverted order of color bytes).

BusyBox initrd
##############

The file is initrd_busy_v10.gz.
This supports rootfs over CIFS (SAMBA).
The generated initrd can be used in kernel loader.

Kernel Parameters:
If you specify no parameter, it will start a busybox shell.
WARNING: All parameters must be specified if use any!!!
Otherwise the script has an error, because the parameter
passing is not robust (see bootshell.sh).

MYIP=192.168.0.10
Set IP address of PS2.

MYSMB=//192.168.0.124/ps2
Set mount path.

MYGW=192.168.0.1
Set gateway for PS2.

MYUSER=ps2
Set samba user.

MYPASSWD
Set samba password.

The file is hardcoded to "debian-lenny-mipsel-harddisc-image.bin"
Source: readme_linux_2.6_test_v10.txt, updated 2012-08-30