add the amd au1500 based q5 board per case 0000374
authorDavid Anders <dave123@abcsinc.com>
Wed, 25 Jan 2006 14:59:21 +0000 (14:59 -0000)
committerDavid Anders <dave123@abcsinc.com>
Wed, 25 Jan 2006 14:59:21 +0000 (14:59 -0000)
42 files changed:
target/device/Config.in
target/device/jp/Config.in [new file with mode: 0644]
target/device/jp/Makefile.in [new file with mode: 0644]
target/device/jp/q5/Makefile.in [new file with mode: 0644]
target/device/jp/q5/busybox.config [new file with mode: 0644]
target/device/jp/q5/depmod.pl [new file with mode: 0755]
target/device/jp/q5/device_table.txt [new file with mode: 0644]
target/device/jp/q5/kernel-patches-2.4.26/001-q5 [new file with mode: 0644]
target/device/jp/q5/kernel-patches-2.4.26/002-build_fixes [new file with mode: 0644]
target/device/jp/q5/kernel-patches-2.4.26/004-correct_toolchain [new file with mode: 0644]
target/device/jp/q5/kernel-patches-2.4.26/100-version [new file with mode: 0644]
target/device/jp/q5/kernel-patches-2.4.29/001-q5 [new file with mode: 0644]
target/device/jp/q5/kernel-patches-2.4.29/004-correct_toolchain [new file with mode: 0644]
target/device/jp/q5/kernel-patches-2.4.29/100-version [new file with mode: 0644]
target/device/jp/q5/linux.config [new file with mode: 0644]
target/device/jp/q5/linux.mk [new file with mode: 0644]
target/device/jp/q5/skel.tar.gz [new file with mode: 0644]
target/device/jp/q5/target_skeleton/etc/TZ [new file with mode: 0644]
target/device/jp/q5/target_skeleton/etc/fstab [new file with mode: 0644]
target/device/jp/q5/target_skeleton/etc/group [new file with mode: 0644]
target/device/jp/q5/target_skeleton/etc/hostname [new file with mode: 0644]
target/device/jp/q5/target_skeleton/etc/hosts [new file with mode: 0644]
target/device/jp/q5/target_skeleton/etc/init.d/S20urandom [new file with mode: 0755]
target/device/jp/q5/target_skeleton/etc/init.d/S40network [new file with mode: 0755]
target/device/jp/q5/target_skeleton/etc/init.d/rcS [new file with mode: 0755]
target/device/jp/q5/target_skeleton/etc/inittab [new file with mode: 0644]
target/device/jp/q5/target_skeleton/etc/inputrc [new file with mode: 0644]
target/device/jp/q5/target_skeleton/etc/issue [new file with mode: 0644]
target/device/jp/q5/target_skeleton/etc/network/interfaces [new file with mode: 0644]
target/device/jp/q5/target_skeleton/etc/passwd [new file with mode: 0644]
target/device/jp/q5/target_skeleton/etc/profile [new file with mode: 0644]
target/device/jp/q5/target_skeleton/etc/protocols [new file with mode: 0644]
target/device/jp/q5/target_skeleton/etc/resolv.conf [new file with mode: 0644]
target/device/jp/q5/target_skeleton/etc/securetty [new file with mode: 0644]
target/device/jp/q5/target_skeleton/etc/services [new file with mode: 0644]
target/device/jp/q5/target_skeleton/etc/shadow [new file with mode: 0644]
target/device/jp/q5/target_skeleton/root/.bash_history [new file with mode: 0644]
target/device/jp/q5/target_skeleton/root/.bash_logout [new file with mode: 0644]
target/device/jp/q5/target_skeleton/root/.bash_profile [new file with mode: 0644]
target/device/jp/q5/target_skeleton/root/.bashrc [new file with mode: 0644]
target/device/jp/q5/target_skeleton/usr/share/udhcpc/default.script [new file with mode: 0755]
target/device/jp/q5/uClibc.config.mipsel [new file with mode: 0644]

index 8378bff13abc330e8c5f7e0641c07b885e6ecb7f..a3b6179ab58d65a553e7ae9ed7e56e575ba1e776 100644 (file)
@@ -5,6 +5,7 @@ source "target/device/Hitachi/Config.in"
 source "target/device/AMD/Config.in"
 source "target/device/Via/Config.in"
 source "target/device/Sharp/Config.in"
+source "target/device/jp/Config.in"
 
 # This must be last
 source "target/generic/Config.in"
diff --git a/target/device/jp/Config.in b/target/device/jp/Config.in
new file mode 100644 (file)
index 0000000..6a8f993
--- /dev/null
@@ -0,0 +1,18 @@
+config BR2_TARGET_Q5
+       bool "jp-embedded Q5 board support"
+       default n
+       depends BR2_mipsel
+       select BR2_PACKAGE_LINUX
+       help
+         jp-embedded Q5 series MIPS based boards, see http://www.jp-embedded.com for further information.
+
+comment "Package support"
+       depends BR2_TARGET_Q5
+
+config BR2_PACKAGE_LINUX
+       bool "linux"
+       default n
+       depends BR2_TARGET_Q5
+       help
+           The Linux kernel.
+           http://www.kernel.org/
diff --git a/target/device/jp/Makefile.in b/target/device/jp/Makefile.in
new file mode 100644 (file)
index 0000000..acb173d
--- /dev/null
@@ -0,0 +1,7 @@
+# Override the default uClibc configuration
+ifeq ($(strip $(BR2_TARGET_Q5)),y)
+
+include target/device/jp/q5/Makefile.in
+include target/device/jp/q5/linux.mk
+
+endif
diff --git a/target/device/jp/q5/Makefile.in b/target/device/jp/q5/Makefile.in
new file mode 100644 (file)
index 0000000..9c98080
--- /dev/null
@@ -0,0 +1,10 @@
+JP_Q5_PATH=target/device/jp/q5
+
+BR2_PACKAGE_BUSYBOX_CONFIG=$(JP_Q5_PATH)/busybox.config
+UCLIBC_CONFIG_FILE=$(JP_Q5_PATH)/uClibc.config.$(ARCH)
+
+TARGET_SKELETON=$(JP_Q5_PATH)/skel.tar.gz
+TARGET_SKEL_DIR=$(JP_Q5_PATH)/target_skeleton
+TARGET_DEVICE_TABLE=$(JP_Q5_PATH)/device_table.txt
+
+TARGETS+=linux
diff --git a/target/device/jp/q5/busybox.config b/target/device/jp/q5/busybox.config
new file mode 100644 (file)
index 0000000..061e5f4
--- /dev/null
@@ -0,0 +1,483 @@
+#
+# Automatically generated make config: don't edit
+#
+HAVE_DOT_CONFIG=y
+
+#
+# General Configuration
+#
+# CONFIG_FEATURE_BUFFERS_USE_MALLOC is not set
+CONFIG_FEATURE_BUFFERS_GO_ON_STACK=y
+# CONFIG_FEATURE_BUFFERS_GO_IN_BSS is not set
+CONFIG_FEATURE_VERBOSE_USAGE=y
+# CONFIG_FEATURE_INSTALLER is not set
+# CONFIG_LOCALE_SUPPORT is not set
+# CONFIG_FEATURE_DEVFS is not set
+CONFIG_FEATURE_DEVPTS=y
+# CONFIG_FEATURE_CLEAN_UP is not set
+CONFIG_FEATURE_SUID=y
+# CONFIG_FEATURE_SUID_CONFIG is not set
+# CONFIG_SELINUX is not set
+
+#
+# Build Options
+#
+# CONFIG_STATIC is not set
+CONFIG_LFS=y
+# USING_CROSS_COMPILER is not set
+EXTRA_CFLAGS_OPTIONS=""
+
+#
+# Installation Options
+#
+# CONFIG_INSTALL_NO_USR is not set
+PREFIX="./_install"
+
+#
+# Archival Utilities
+#
+# CONFIG_AR is not set
+CONFIG_BUNZIP2=y
+# CONFIG_CPIO is not set
+# CONFIG_DPKG is not set
+# CONFIG_DPKG_DEB is not set
+CONFIG_GUNZIP=y
+# CONFIG_FEATURE_GUNZIP_UNCOMPRESS is not set
+CONFIG_GZIP=y
+# CONFIG_RPM2CPIO is not set
+# CONFIG_RPM is not set
+CONFIG_TAR=y
+CONFIG_FEATURE_TAR_CREATE=y
+CONFIG_FEATURE_TAR_BZIP2=y
+# CONFIG_FEATURE_TAR_FROM is not set
+CONFIG_FEATURE_TAR_GZIP=y
+# CONFIG_FEATURE_TAR_COMPRESS is not set
+# CONFIG_FEATURE_TAR_OLDGNU_COMPATABILITY is not set
+CONFIG_FEATURE_TAR_GNU_EXTENSIONS=y
+# CONFIG_FEATURE_TAR_LONG_OPTIONS is not set
+# CONFIG_UNCOMPRESS is not set
+CONFIG_UNZIP=y
+
+#
+# Common options for cpio and tar
+#
+# CONFIG_FEATURE_UNARCHIVE_TAPE is not set
+
+#
+# Coreutils
+#
+CONFIG_BASENAME=y
+# CONFIG_CAL is not set
+CONFIG_CAT=y
+CONFIG_CHGRP=y
+CONFIG_CHMOD=y
+CONFIG_CHOWN=y
+CONFIG_CHROOT=y
+CONFIG_CMP=y
+# CONFIG_COMM is not set
+CONFIG_CP=y
+CONFIG_CUT=y
+CONFIG_DATE=y
+CONFIG_FEATURE_DATE_ISOFMT=y
+CONFIG_DD=y
+CONFIG_DF=y
+CONFIG_DIRNAME=y
+CONFIG_DOS2UNIX=y
+CONFIG_UNIX2DOS=y
+CONFIG_DU=y
+CONFIG_FEATURE_DU_DEFALT_BLOCKSIZE_1K=y
+CONFIG_ECHO=y
+CONFIG_FEATURE_FANCY_ECHO=y
+CONFIG_ENV=y
+# CONFIG_PRINTENV is not set
+CONFIG_EXPR=y
+CONFIG_FALSE=y
+# CONFIG_FOLD is not set
+CONFIG_HEAD=y
+# CONFIG_FEATURE_FANCY_HEAD is not set
+CONFIG_HOSTID=y
+CONFIG_ID=y
+CONFIG_INSTALL=y
+# CONFIG_LENGTH is not set
+CONFIG_LN=y
+CONFIG_LOGNAME=y
+CONFIG_LS=y
+CONFIG_FEATURE_LS_FILETYPES=y
+CONFIG_FEATURE_LS_FOLLOWLINKS=y
+CONFIG_FEATURE_LS_RECURSIVE=y
+CONFIG_FEATURE_LS_SORTFILES=y
+CONFIG_FEATURE_LS_TIMESTAMPS=y
+CONFIG_FEATURE_LS_USERNAME=y
+CONFIG_FEATURE_LS_COLOR=y
+CONFIG_MD5SUM=y
+CONFIG_MKDIR=y
+# CONFIG_MKFIFO is not set
+CONFIG_MKNOD=y
+CONFIG_MV=y
+# CONFIG_NICE is not set
+# CONFIG_OD is not set
+# CONFIG_PRINTF is not set
+CONFIG_PWD=y
+# CONFIG_REALPATH is not set
+CONFIG_RM=y
+CONFIG_RMDIR=y
+# CONFIG_SEQ is not set
+CONFIG_SHA1SUM=y
+CONFIG_SLEEP=y
+# CONFIG_FEATURE_FANCY_SLEEP is not set
+CONFIG_SORT=y
+CONFIG_SORT_BIG=y
+# CONFIG_STAT is not set
+CONFIG_STTY=y
+# CONFIG_SUM is not set
+CONFIG_SYNC=y
+CONFIG_TAIL=y
+CONFIG_FEATURE_FANCY_TAIL=y
+CONFIG_TEE=y
+CONFIG_FEATURE_TEE_USE_BLOCK_IO=y
+CONFIG_TEST=y
+
+#
+# test (forced enabled for use with shell)
+#
+CONFIG_FEATURE_TEST_64=y
+CONFIG_TOUCH=y
+# CONFIG_TR is not set
+CONFIG_TRUE=y
+CONFIG_TTY=y
+CONFIG_UNAME=y
+CONFIG_UNIQ=y
+CONFIG_USLEEP=y
+CONFIG_UUDECODE=y
+CONFIG_UUENCODE=y
+# CONFIG_WATCH is not set
+CONFIG_WC=y
+# CONFIG_WHO is not set
+CONFIG_WHOAMI=y
+CONFIG_YES=y
+
+#
+# Common options for cp and mv
+#
+CONFIG_FEATURE_PRESERVE_HARDLINKS=y
+
+#
+# Common options for ls and more
+#
+CONFIG_FEATURE_AUTOWIDTH=y
+
+#
+# Common options for df, du, ls
+#
+CONFIG_FEATURE_HUMAN_READABLE=y
+
+#
+# Common options for md5sum, sha1sum
+#
+CONFIG_FEATURE_MD5_SHA1_SUM_CHECK=y
+
+#
+# Console Utilities
+#
+CONFIG_CHVT=y
+CONFIG_CLEAR=y
+CONFIG_DEALLOCVT=y
+# CONFIG_DUMPKMAP is not set
+# CONFIG_LOADFONT is not set
+# CONFIG_LOADKMAP is not set
+CONFIG_OPENVT=y
+CONFIG_RESET=y
+# CONFIG_SETKEYCODES is not set
+
+#
+# Debian Utilities
+#
+CONFIG_MKTEMP=y
+# CONFIG_PIPE_PROGRESS is not set
+CONFIG_READLINK=y
+CONFIG_FEATURE_READLINK_FOLLOW=y
+CONFIG_RUN_PARTS=y
+CONFIG_START_STOP_DAEMON=y
+CONFIG_WHICH=y
+
+#
+# Linux Ext2 FS Progs
+#
+# CONFIG_CHATTR is not set
+# CONFIG_LSATTR is not set
+
+#
+# Editors
+#
+# CONFIG_AWK is not set
+# CONFIG_PATCH is not set
+CONFIG_SED=y
+CONFIG_VI=y
+CONFIG_FEATURE_VI_COLON=y
+CONFIG_FEATURE_VI_YANKMARK=y
+CONFIG_FEATURE_VI_SEARCH=y
+CONFIG_FEATURE_VI_USE_SIGNALS=y
+CONFIG_FEATURE_VI_DOT_CMD=y
+CONFIG_FEATURE_VI_READONLY=y
+CONFIG_FEATURE_VI_SETOPTS=y
+CONFIG_FEATURE_VI_SET=y
+CONFIG_FEATURE_VI_WIN_RESIZE=y
+CONFIG_FEATURE_VI_OPTIMIZE_CURSOR=y
+
+#
+# Finding Utilities
+#
+CONFIG_FIND=y
+CONFIG_FEATURE_FIND_MTIME=y
+CONFIG_FEATURE_FIND_PERM=y
+CONFIG_FEATURE_FIND_TYPE=y
+CONFIG_FEATURE_FIND_XDEV=y
+# CONFIG_FEATURE_FIND_NEWER is not set
+# CONFIG_FEATURE_FIND_INUM is not set
+CONFIG_GREP=y
+CONFIG_FEATURE_GREP_EGREP_ALIAS=y
+CONFIG_FEATURE_GREP_FGREP_ALIAS=y
+CONFIG_FEATURE_GREP_CONTEXT=y
+CONFIG_XARGS=y
+# CONFIG_FEATURE_XARGS_SUPPORT_CONFIRMATION is not set
+CONFIG_FEATURE_XARGS_SUPPORT_QUOTES=y
+CONFIG_FEATURE_XARGS_SUPPORT_TERMOPT=y
+CONFIG_FEATURE_XARGS_SUPPORT_ZERO_TERM=y
+
+#
+# Init Utilities
+#
+CONFIG_INIT=y
+CONFIG_FEATURE_USE_INITTAB=y
+CONFIG_FEATURE_INITRD=y
+# CONFIG_FEATURE_INIT_COREDUMPS is not set
+CONFIG_FEATURE_EXTRA_QUIET=y
+CONFIG_HALT=y
+CONFIG_POWEROFF=y
+CONFIG_REBOOT=y
+# CONFIG_MESG is not set
+
+#
+# Login/Password Management Utilities
+#
+# CONFIG_USE_BB_PWD_GRP is not set
+CONFIG_ADDGROUP=y
+CONFIG_DELGROUP=y
+CONFIG_ADDUSER=y
+CONFIG_DELUSER=y
+CONFIG_GETTY=y
+# CONFIG_FEATURE_U_W_TMP is not set
+CONFIG_LOGIN=y
+CONFIG_FEATURE_SECURETTY=y
+CONFIG_PASSWD=y
+CONFIG_SU=y
+CONFIG_SULOGIN=y
+CONFIG_VLOCK=y
+
+#
+# Common options for adduser, deluser, login, su
+#
+CONFIG_FEATURE_SHADOWPASSWDS=y
+
+#
+# Miscellaneous Utilities
+#
+# CONFIG_ADJTIMEX is not set
+# CONFIG_CROND is not set
+# CONFIG_CRONTAB is not set
+CONFIG_DC=y
+# CONFIG_DEVFSD is not set
+# CONFIG_EJECT is not set
+# CONFIG_LAST is not set
+# CONFIG_HDPARM is not set
+# CONFIG_MAKEDEVS is not set
+CONFIG_MT=y
+# CONFIG_RX is not set
+CONFIG_STRINGS=y
+CONFIG_TIME=y
+# CONFIG_WATCHDOG is not set
+
+#
+# Linux Module Utilities
+#
+CONFIG_INSMOD=y
+CONFIG_FEATURE_2_4_MODULES=y
+# CONFIG_FEATURE_2_6_MODULES is not set
+# CONFIG_FEATURE_INSMOD_VERSION_CHECKING is not set
+# CONFIG_FEATURE_INSMOD_KSYMOOPS_SYMBOLS is not set
+# CONFIG_FEATURE_INSMOD_LOADINKMEM is not set
+# CONFIG_FEATURE_INSMOD_LOAD_MAP is not set
+CONFIG_LSMOD=y
+CONFIG_FEATURE_LSMOD_PRETTY_2_6_OUTPUT=y
+CONFIG_FEATURE_QUERY_MODULE_INTERFACE=y
+CONFIG_MODPROBE=y
+CONFIG_RMMOD=y
+CONFIG_FEATURE_CHECK_TAINTED_MODULE=y
+
+#
+# Networking Utilities
+#
+# CONFIG_FEATURE_IPV6 is not set
+# CONFIG_ARPING is not set
+# CONFIG_ETHER_WAKE is not set
+# CONFIG_FAKEIDENTD is not set
+# CONFIG_FTPGET is not set
+# CONFIG_FTPPUT is not set
+CONFIG_HOSTNAME=y
+# CONFIG_HTTPD is not set
+CONFIG_IFCONFIG=y
+CONFIG_FEATURE_IFCONFIG_STATUS=y
+# CONFIG_FEATURE_IFCONFIG_SLIP is not set
+# CONFIG_FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ is not set
+# CONFIG_FEATURE_IFCONFIG_HW is not set
+# CONFIG_FEATURE_IFCONFIG_BROADCAST_PLUS is not set
+CONFIG_IFUPDOWN=y
+# CONFIG_FEATURE_IFUPDOWN_IP is not set
+CONFIG_FEATURE_IFUPDOWN_IP_BUILTIN=y
+CONFIG_FEATURE_IFUPDOWN_IPV4=y
+# CONFIG_FEATURE_IFUPDOWN_IPV6 is not set
+# CONFIG_FEATURE_IFUPDOWN_IPX is not set
+# CONFIG_FEATURE_IFUPDOWN_MAPPING is not set
+# CONFIG_INETD is not set
+# CONFIG_IP is not set
+# CONFIG_IPCALC is not set
+# CONFIG_IPADDR is not set
+# CONFIG_IPLINK is not set
+# CONFIG_IPROUTE is not set
+# CONFIG_IPTUNNEL is not set
+# CONFIG_NAMEIF is not set
+# CONFIG_NC is not set
+CONFIG_NETSTAT=y
+CONFIG_NSLOOKUP=y
+CONFIG_PING=y
+CONFIG_FEATURE_FANCY_PING=y
+CONFIG_ROUTE=y
+CONFIG_TELNET=y
+CONFIG_FEATURE_TELNET_TTYPE=y
+# CONFIG_FEATURE_TELNET_AUTOLOGIN is not set
+# CONFIG_TELNETD is not set
+# CONFIG_TFTP is not set
+# CONFIG_TRACEROUTE is not set
+# CONFIG_VCONFIG is not set
+CONFIG_WGET=y
+CONFIG_FEATURE_WGET_STATUSBAR=y
+CONFIG_FEATURE_WGET_AUTHENTICATION=y
+# CONFIG_FEATURE_WGET_IP6_LITERAL is not set
+
+#
+# udhcp Server/Client
+#
+CONFIG_UDHCPD=y
+CONFIG_UDHCPC=y
+CONFIG_DUMPLEASES=y
+CONFIG_FEATURE_UDHCP_SYSLOG=y
+# CONFIG_FEATURE_UDHCP_DEBUG is not set
+# CONFIG_ZCIP is not set
+
+#
+# Process Utilities
+#
+CONFIG_FREE=y
+CONFIG_KILL=y
+CONFIG_KILLALL=y
+CONFIG_PIDOF=y
+CONFIG_PS=y
+# CONFIG_RENICE is not set
+# CONFIG_TOP is not set
+CONFIG_UPTIME=y
+# CONFIG_SYSCTL is not set
+
+#
+# Another Bourne-like Shell
+#
+CONFIG_FEATURE_SH_IS_ASH=y
+# CONFIG_FEATURE_SH_IS_HUSH is not set
+# CONFIG_FEATURE_SH_IS_LASH is not set
+# CONFIG_FEATURE_SH_IS_MSH is not set
+# CONFIG_FEATURE_SH_IS_NONE is not set
+CONFIG_ASH=y
+
+#
+# Ash Shell Options
+#
+CONFIG_ASH_JOB_CONTROL=y
+# CONFIG_ASH_TIMEOUT is not set
+CONFIG_ASH_ALIAS=y
+CONFIG_ASH_MATH_SUPPORT=y
+CONFIG_ASH_MATH_SUPPORT_64=y
+# CONFIG_ASH_GETOPTS is not set
+# CONFIG_ASH_CMDCMD is not set
+# CONFIG_ASH_MAIL is not set
+CONFIG_ASH_OPTIMIZE_FOR_SIZE=y
+# CONFIG_ASH_RANDOM_SUPPORT is not set
+# CONFIG_HUSH is not set
+# CONFIG_LASH is not set
+# CONFIG_MSH is not set
+
+#
+# Bourne Shell Options
+#
+# CONFIG_FEATURE_SH_EXTRA_QUIET is not set
+# CONFIG_FEATURE_SH_STANDALONE_SHELL is not set
+CONFIG_FEATURE_COMMAND_EDITING=y
+CONFIG_FEATURE_COMMAND_HISTORY=15
+CONFIG_FEATURE_COMMAND_SAVEHISTORY=y
+CONFIG_FEATURE_COMMAND_TAB_COMPLETION=y
+# CONFIG_FEATURE_COMMAND_USERNAME_COMPLETION is not set
+CONFIG_FEATURE_SH_FANCY_PROMPT=y
+
+#
+# System Logging Utilities
+#
+CONFIG_SYSLOGD=y
+CONFIG_FEATURE_ROTATE_LOGFILE=y
+# CONFIG_FEATURE_REMOTE_LOG is not set
+# CONFIG_FEATURE_IPC_SYSLOG is not set
+CONFIG_KLOGD=y
+CONFIG_LOGGER=y
+
+#
+# Linux System Utilities
+#
+CONFIG_DMESG=y
+# CONFIG_FBSET is not set
+# CONFIG_FDFLUSH is not set
+CONFIG_FDFORMAT=y
+CONFIG_FDISK=y
+FDISK_SUPPORT_LARGE_DISKS=y
+CONFIG_FEATURE_FDISK_WRITABLE=y
+# CONFIG_FEATURE_AIX_LABEL is not set
+# CONFIG_FEATURE_SGI_LABEL is not set
+# CONFIG_FEATURE_SUN_LABEL is not set
+# CONFIG_FEATURE_OSF_LABEL is not set
+# CONFIG_FEATURE_FDISK_ADVANCED is not set
+# CONFIG_FREERAMDISK is not set
+# CONFIG_FSCK_MINIX is not set
+# CONFIG_MKFS_MINIX is not set
+CONFIG_GETOPT=y
+CONFIG_HEXDUMP=y
+CONFIG_HWCLOCK=y
+CONFIG_FEATURE_HWCLOCK_LONGOPTIONS=y
+# CONFIG_LOSETUP is not set
+# CONFIG_MKSWAP is not set
+CONFIG_MORE=y
+CONFIG_FEATURE_USE_TERMIOS=y
+CONFIG_PIVOT_ROOT=y
+CONFIG_RDATE=y
+CONFIG_SWAPONOFF=y
+CONFIG_MOUNT=y
+# CONFIG_NFSMOUNT is not set
+CONFIG_UMOUNT=y
+# CONFIG_FEATURE_MOUNT_FORCE is not set
+
+#
+# Common options for mount/umount
+#
+CONFIG_FEATURE_MOUNT_LOOP=y
+# CONFIG_FEATURE_MTAB_SUPPORT is not set
+# CONFIG_READPROFILE is not set
+
+#
+# Debugging Options
+#
+# CONFIG_DEBUG is not set
diff --git a/target/device/jp/q5/depmod.pl b/target/device/jp/q5/depmod.pl
new file mode 100755 (executable)
index 0000000..5e8d5f3
--- /dev/null
@@ -0,0 +1,237 @@
+#!/usr/bin/perl -w
+# vi: set ts=4:
+# Copyright (c) 2001 David Schleef <ds@schleef.org>
+# Copyright (c) 2001 Erik Andersen <andersen@codepoet.org>
+# Copyright (c) 2001 Stuart Hughes <stuarth@lineo.com>
+# Copyright (c) 2002 Steven J. Hill <shill@broadcom.com>
+# This program is free software; you can redistribute it and/or modify it
+# under the same terms as Perl itself.
+
+# TODO -- use strict mode...
+#use strict;
+
+use Getopt::Long;
+use File::Find;
+
+
+# Set up some default values
+
+my $basedir="";
+my $kernel;
+my $kernelsyms;
+my $stdout=0;
+my $verbose=0;
+
+
+# get command-line options
+
+my %opt;
+
+GetOptions(
+       \%opt,
+       "help|h",
+       "basedir|b=s" => \$basedir,
+       "kernel|k=s" => \$kernel,
+       "kernelsyms|F=s" => \$kernelsyms,
+       "stdout|n" => \$stdout,
+       "verbose|v" => \$verbose,
+);
+
+if (defined $opt{help}) {
+       print
+       "  $0 [OPTION]... [basedir]\n",
+       "     -h --help\t\tShow this help screen\n",
+       "     -b --basedir\tModules base directory (defaults to /lib/modules)\n",
+       "     -k --kernel\tKernel binary for the target\n",
+       "     -F --kernelsyms\tKernel symbol file\n",
+       "     -n --stdout\tWrite to stdout instead of <basedir>/modules.dep\n",
+       "     -v --verbose\tPrint out lots of debugging stuff\n",
+       ;
+       exit 1;
+}
+
+if($basedir !~ m-/lib/modules-) {
+    warn "WARNING: base directory does not match ..../lib/modules\n";
+}
+
+# Find the list of .o files living under $basedir
+#if ($verbose) { printf "Locating all modules\n"; }
+my($ofile) = "";
+my($file) = "";
+my(@liblist) = ();
+find sub {
+       if ( -f $_  && ! -d $_ ) {
+               $file = $File::Find::name;
+               if ( $file =~ /.o$/ ) {
+                       push(@liblist, $file);
+                       if ($verbose) { printf "$file\n"; }
+               }
+       }
+}, $basedir;
+if ($verbose) { printf "Finished locating modules\n"; }
+
+foreach $obj ( @liblist, $kernel ){
+    # turn the input file name into a target tag name
+    # vmlinux is a special that is only used to resolve symbols
+    if($obj =~ /vmlinux/) {
+        $tgtname = "vmlinux";
+    } else {
+        ($tgtname) = $obj =~ m-(/lib/modules/.*)$-;
+    }
+
+    warn "MODULE = $tgtname\n" if $verbose;
+
+    # get a list of symbols
+       @output=`nm $obj`;
+       $ksymtab=grep m/ __ksymtab/, @output;
+
+    # gather the exported symbols
+       if($ksymtab){
+        # explicitly exported
+        foreach ( @output ) {
+            / __ksymtab_(.*)$/ and do {
+                warn "sym = $1\n" if $verbose;
+                $exp->{$1} = $tgtname;
+            };
+        }
+       } else {
+        # exporting all symbols
+        foreach ( @output) {
+            / [ABCDGRST] (.*)$/ and do {
+                warn "syma = $1\n" if $verbose;
+                $exp->{$1} = $tgtname;
+            };
+        }
+       }
+    # gather the unresolved symbols
+    foreach ( @output ) {
+        !/ __this_module/ && / U (.*)$/ and do {
+            warn "und = $1\n" if $verbose;
+            push @{$dep->{$tgtname}}, $1;
+        };
+    }
+}
+
+
+# reduce dependancies: remove unresolvable and resolved from vmlinux
+# remove duplicates
+foreach $module (keys %$dep) {
+    $mod->{$module} = {};
+    foreach (@{$dep->{$module}}) {
+        if( $exp->{$_} ) {
+            warn "resolved symbol $_ in file $exp->{$_}\n" if $verbose;
+            next if $exp->{$_} =~ /vmlinux/;
+            $mod->{$module}{$exp->{$_}} = 1;
+        } else {
+            warn "unresolved symbol $_ in file $module\n";
+        }
+    }
+}
+
+# resolve the dependancies for each module
+if ($stdout == 1) {
+       foreach $module ( keys %$mod ) {
+               print "$module:\t";
+               @sorted = sort bydep keys %{$mod->{$module}};
+               print join(" \\\n\t",@sorted);
+               print "\n\n";
+       }
+} else {
+       open(OFILE, ">$basedir/modules.dep");
+       foreach $module ( keys %$mod ) {
+               print OFILE "$module:\t";
+               @sorted = sort bydep keys %{$mod->{$module}};
+               print OFILE join(" \\\n\t",@sorted);
+               print OFILE "\n\n";
+       }
+}
+
+
+sub bydep
+{
+    foreach my $f ( keys %{$mod->{$b}} ) {
+        if($f eq $a) {
+            return 1;
+        }
+    }
+    return -1;
+}
+
+
+
+__END__
+
+=head1 NAME
+
+depmod.pl - a cross platform script to generate kernel module dependency
+               lists which can then be used by modprobe.
+
+=head1 SYNOPSIS
+
+depmod.pl [OPTION]... [basedir]...
+
+Example:
+
+       depmod.pl -F linux/System.map target/lib/modules
+
+=head1 DESCRIPTION
+
+The purpose of this script is to automagically generate a list of of kernel
+module dependancies.  This script produces dependancy lists that should be
+identical to the depmod program from the modutils package.  Unlike the depmod
+binary, however, depmod.pl is designed to be run on your host system, not
+on your target system.
+
+This script was written by David Schleef <ds@schleef.org> to be used in
+conjunction with the BusyBox modprobe applet.
+
+=head1 OPTIONS
+
+=over 4
+
+=item B<-h --help>
+
+This displays the help message.
+
+=item B<-b --basedir>
+
+The base directory uner which the target's modules will be found.  This
+defaults to the /lib/modules directory.
+
+=item B<-k --kernel>
+
+Kernel binary for the target.  You must either supply a kernel binary
+or a kernel symbol file (using the -F option).
+
+=item B<-F --kernelsyms>
+
+Kernel symbol file for the target.  You must supply either a kernel symbol file
+kernel binary for the target (using the -k option).
+
+=item B<-n --stdout>
+
+Write to stdout instead of modules.dep.  This is currently hard coded...
+kernel binary for the target (using the -k option).
+
+=item B<--verbose>
+
+Be verbose (not implemented)
+
+=back
+
+=head1 COPYRIGHT
+
+Copyright (c) 2001 David Schleef <ds@schleef.org>
+Copyright (c) 2001 Erik Andersen <andersen@codepoet.org>
+Copyright (c) 2001 Stuart Hughes <stuarth@lineo.com>
+This program is free software; you can redistribute it and/or modify it
+under the same terms as Perl itself.
+
+=head1 AUTHOR
+
+David Schleef <ds@schleef.org>
+
+=cut
+
+# $Id: depmod.pl,v 1.1 2004/12/08 01:34:41 andersen Exp $
+
diff --git a/target/device/jp/q5/device_table.txt b/target/device/jp/q5/device_table.txt
new file mode 100644 (file)
index 0000000..8b46ca0
--- /dev/null
@@ -0,0 +1,162 @@
+# When building a target filesystem, it is desirable to not have to
+# become root and then run 'mknod' a thousand times.  Using a device 
+# table you can create device nodes and directories "on the fly".
+#
+# This is a sample device table file for use with genext2fs.  You can
+# do all sorts of interesting things with a device table file.  For
+# example, if you want to adjust the permissions on a particular file
+# you can just add an entry like:
+#   /sbin/foobar        f       2755    0       0       -       -       -       -       -
+# and (assuming the file /sbin/foobar exists) it will be made setuid
+# root (regardless of what its permissions are on the host filesystem.
+# Furthermore, you can use a single table entry to create a many device
+# minors.  For example, if I wanted to create /dev/hda and /dev/hda[0-15]
+# I could just use the following two table entries:
+#   /dev/hda    b       640     0       0       3       0       0       0       -
+#   /dev/hda    b       640     0       0       3       1       1       1       15
+# 
+# Device table entries take the form of:
+# <name>    <type>      <mode>  <uid>   <gid>   <major> <minor> <start> <inc>   <count>
+# where name is the file name,  type can be one of: 
+#       f       A regular file
+#       d       Directory
+#       c       Character special device file
+#       b       Block special device file
+#       p       Fifo (named pipe)
+# uid is the user id for the target file, gid is the group id for the
+# target file.  The rest of the entries (major, minor, etc) apply only 
+# to device special files.
+
+# Have fun
+# -Erik Andersen <andersen@codepoet.org>
+#
+
+#<name>                <type>  <mode>  <uid>   <gid>   <major> <minor> <start> <inc>   <count>
+/dev           d       755     0       0       -       -       -       -       -
+/dev/pts       d       755     0       0       -       -       -       -       -
+/tmp           d       1777    0       0       -       -       -       -       -
+/etc           d       755     0       0       -       -       -       -       -
+/home/default  d       2755    1000    1000    -       -       -       -       -
+#<name>                                        <type>  <mode>  <uid>   <gid>   <major> <minor> <start> <inc>   <count>
+/bin/busybox                           f       4755    0       0       -       -       -       -       -
+/etc/shadow                            f       600     0       0       -       -       -       -       -
+/etc/passwd                            f       644     0       0       -       -       -       -       -
+/etc/network/if-up.d                   d       755     0       0       -       -       -       -       -
+/etc/network/if-pre-up.d               d       755     0       0       -       -       -       -       -
+/etc/network/if-down.d                 d       755     0       0       -       -       -       -       -
+/etc/network/if-post-down.d            d       755     0       0       -       -       -       -       -
+/usr/share/udhcpc/default.script       f       755     0       0       -       -       -       -       -
+# uncomment this to allow starting x as non-root
+#/usr/X11R6/bin/Xfbdev         f       4755    0       0       -       -       -       -       -
+# Normal system devices
+/dev/mem       c       640     0       0       1       1       0       0       -
+/dev/kmem      c       640     0       0       1       2       0       0       -
+/dev/null      c       666     0       0       1       3       0       0       -
+/dev/zero      c       666     0       0       1       5       0       0       -
+/dev/random    c       666     0       0       1       8       0       0       -
+/dev/urandom   c       666     0       0       1       9       0       0       -
+/dev/ram       b       640     0       0       1       1       0       0       -
+/dev/ram       b       640     0       0       1       0       0       1       4
+/dev/loop      b       640     0       0       7       0       0       1       2
+/dev/rtc       c       640     0       0       10      135     -       -       -
+/dev/console   c       666     0       0       5       1       -       -       -
+/dev/tty       c       666     0       0       5       0       -       -       -
+/dev/tty       c       666     0       0       4       0       0       1       8
+/dev/ttyp      c       666     0       0       3       0       0       1       10
+/dev/ptyp      c       666     0       0       2       0       0       1       10
+/dev/ptmx      c       666     0       0       5       2       -       -       -
+/dev/ttyP      c       666     0       0       57      0       0       1       4
+/dev/ttyS      c       666     0       0       4       64      0       1       4
+/dev/fb                c       640     0       5       29      0       0       32      4
+#/dev/ttySA    c       666     0       0       204     5       0       1       3
+/dev/psaux     c       666     0       0       10      1       0       0       -
+#/dev/ppp      c       666     0       0       108     0       -       -       -
+
+# MTD stuff
+/dev/mtd       c       640     0       0       90      0       0       2       4
+/dev/mtdblock  b       640     0       0       31      0       0       1       4
+
+#Tun/tap driver
+/dev/net       d       755     0       0       -       -       -       -       -
+/dev/net/tun   c       660     0       0       10      200     -       -       -
+
+# Audio stuff
+#/dev/audio    c       666     0       29      14      4       -       -       -
+#/dev/audio1   c       666     0       29      14      20      -       -       -
+#/dev/dsp      c       666     0       29      14      3       -       -       -
+#/dev/dsp1     c       666     0       29      14      19      -       -       -
+#/dev/sndstat  c       666     0       29      14      6       -       -       -
+
+# User-mode Linux stuff
+/dev/ubda      b       640     0       0       98      0       0       0       -
+/dev/ubda      b       640     0       0       98      1       1       1       15
+
+# IDE Devices
+/dev/hda       b       640     0       0       3       0       0       0       -
+/dev/hda       b       640     0       0       3       1       1       1       15
+/dev/hdb       b       640     0       0       3       64      0       0       -
+/dev/hdb       b       640     0       0       3       65      1       1       15
+#/dev/hdc      b       640     0       0       22      0       0       0       -
+#/dev/hdc      b       640     0       0       22      1       1       1       15
+#/dev/hdd      b       640     0       0       22      64      0       0       -
+#/dev/hdd      b       640     0       0       22      65      1       1       15
+#/dev/hde      b       640     0       0       33      0       0       0       -
+#/dev/hde      b       640     0       0       33      1       1       1       15
+#/dev/hdf      b       640     0       0       33      64      0       0       -
+#/dev/hdf      b       640     0       0       33      65      1       1       15
+#/dev/hdg      b       640     0       0       34      0       0       0       -
+#/dev/hdg      b       640     0       0       34      1       1       1       15
+#/dev/hdh      b       640     0       0       34      64      0       0       -
+#/dev/hdh      b       640     0       0       34      65      1       1       15
+
+# SCSI Devices
+#/dev/sda      b       640     0       0       8       0       0       0       -
+#/dev/sda      b       640     0       0       8       1       1       1       15
+#/dev/sdb      b       640     0       0       8       16      0       0       -
+#/dev/sdb      b       640     0       0       8       17      1       1       15
+#/dev/sdc      b       640     0       0       8       32      0       0       -
+#/dev/sdc      b       640     0       0       8       33      1       1       15
+#/dev/sdd      b       640     0       0       8       48      0       0       -
+#/dev/sdd      b       640     0       0       8       49      1       1       15
+#/dev/sde      b       640     0       0       8       64      0       0       -
+#/dev/sde      b       640     0       0       8       65      1       1       15
+#/dev/sdf      b       640     0       0       8       80      0       0       -
+#/dev/sdf      b       640     0       0       8       81      1       1       15
+#/dev/sdg      b       640     0       0       8       96      0       0       -
+#/dev/sdg      b       640     0       0       8       97      1       1       15
+#/dev/sdh      b       640     0       0       8       112     0       0       -
+#/dev/sdh      b       640     0       0       8       113     1       1       15
+#/dev/sg       c       640     0       0       21      0       0       1       15
+#/dev/scd      b       640     0       0       11      0       0       1       15
+#/dev/st       c       640     0       0       9       0       0       1       8
+#/dev/nst      c       640     0       0       9       128     0       1       8
+#/dev/st       c       640     0       0       9       32      1       1       4
+#/dev/st       c       640     0       0       9       64      1       1       4
+#/dev/st       c       640     0       0       9       96      1       1       4
+
+# Floppy disk devices
+#/dev/fd       b       640     0       0       2       0       0       1       2
+#/dev/fd0d360  b       640     0       0       2       4       0       0       -
+#/dev/fd1d360  b       640     0       0       2       5       0       0       -
+#/dev/fd0h1200 b       640     0       0       2       8       0       0       -
+#/dev/fd1h1200 b       640     0       0       2       9       0       0       -
+#/dev/fd0u1440 b       640     0       0       2       28      0       0       -
+#/dev/fd1u1440 b       640     0       0       2       29      0       0       -
+#/dev/fd0u2880 b       640     0       0       2       32      0       0       -
+#/dev/fd1u2880 b       640     0       0       2       33      0       0       -
+
+# All the proprietary cdrom devices in the world
+#/dev/aztcd    b       640     0       0       29      0       0       0       -
+#/dev/bpcd     b       640     0       0       41      0       0       0       -
+#/dev/capi20   c       640     0       0       68      0       0       1       2
+#/dev/cdu31a   b       640     0       0       15      0       0       0       -
+#/dev/cdu535   b       640     0       0       24      0       0       0       -
+#/dev/cm206cd  b       640     0       0       32      0       0       0       -
+#/dev/sjcd     b       640     0       0       18      0       0       0       -
+#/dev/sonycd   b       640     0       0       15      0       0       0       -
+#/dev/gscd     b       640     0       0       16      0       0       0       -
+#/dev/sbpcd    b       640     0       0       25      0       0       0       -
+#/dev/sbpcd    b       640     0       0       25      0       0       1       4
+#/dev/mcd      b       640     0       0       23      0       0       0       -
+#/dev/optcd    b       640     0       0       17      0       0       0       -
+
diff --git a/target/device/jp/q5/kernel-patches-2.4.26/001-q5 b/target/device/jp/q5/kernel-patches-2.4.26/001-q5
new file mode 100644 (file)
index 0000000..70ca0c5
--- /dev/null
@@ -0,0 +1,730 @@
+diff -Naur -p -X do_not_diff -I '\$Id' -I '@(#)' linux-2.4.25-rc2_org/arch/mips/au1000/common/Makefile linux-2.4.25-rc2_q/arch/mips/au1000/common/Makefile
+--- linux-2.4.25-rc2_org/arch/mips/au1000/common/Makefile      2004-02-13 01:03:35.000000000 +0100
++++ linux-2.4.25-rc2_q/arch/mips/au1000/common/Makefile        2004-02-13 10:04:07.000000000 +0100
+@@ -16,7 +16,7 @@ all: au1000.o
+ O_TARGET := au1000.o
+-export-objs           = prom.o clocks.o power.o usbdev.o
++export-objs           = prom.o clocks.o power.o usbdev.o setup.o
+ obj-y := prom.o int-handler.o dma.o irq.o puts.o time.o reset.o \
+       clocks.o power.o setup.o sleeper.o
+diff -Naur -p -X do_not_diff -I '\$Id' -I '@(#)' linux-2.4.25-rc2_org/arch/mips/au1000/common/pci_fixup.c linux-2.4.25-rc2_q/arch/mips/au1000/common/pci_fixup.c
+--- linux-2.4.25-rc2_org/arch/mips/au1000/common/pci_fixup.c   2004-02-13 01:03:35.000000000 +0100
++++ linux-2.4.25-rc2_q/arch/mips/au1000/common/pci_fixup.c     2004-02-13 10:09:43.000000000 +0100
+@@ -105,42 +105,8 @@ void __init pcibios_fixup(void)
+ void __init pcibios_fixup_irqs(void)
+ {
+-#if defined( CONFIG_SOC_AU1500 ) || defined( CONFIG_SOC_AU1550 )
+-      unsigned int slot, func;
+-      unsigned char pin;
+-      struct pci_dev *dev;
+-
+-      pci_for_each_dev(dev) {
+-              if (dev->bus->number != 0)
+-                      return;
+-
+-              dev->irq = 0xff;
+-              slot = PCI_SLOT(dev->devfn);
+-#if defined( CONFIG_SOC_AU1500 )
+-              switch (slot) {
+-                      case 12:
+-                      case 13:
+-                      default:
+-                              dev->irq = AU1000_PCI_INTA;
+-                              break;
+-              }
+-#elif defined( CONFIG_SOC_AU1550 )
+-              switch (slot) {
+-                      default:
+-                      case 12:
+-                              dev->irq = AU1000_PCI_INTA;
+-                              break;
+-                      case 13:
+-                              dev->irq = AU1000_PCI_INTB;
+-                              break;
+-              }
+-#endif
+-
+-              pci_write_config_byte(dev, PCI_INTERRUPT_LINE, dev->irq);
+-              DBG("slot %d irq %d\n", slot, dev->irq);
+-      }
+-#endif
+ }
++
+ unsigned int pcibios_assign_all_busses(void)
+ {
+       return 0;
+diff -Naur -p -X do_not_diff -I '\$Id' -I '@(#)' linux-2.4.25-rc2_org/arch/mips/au1000/common/prom.c linux-2.4.25-rc2_q/arch/mips/au1000/common/prom.c
+--- linux-2.4.25-rc2_org/arch/mips/au1000/common/prom.c        2004-02-13 01:03:32.000000000 +0100
++++ linux-2.4.25-rc2_q/arch/mips/au1000/common/prom.c  2004-02-13 10:07:12.000000000 +0100
+@@ -81,7 +81,7 @@ void  prom_init_cmdline(void)
+ }
+-char *prom_getenv(char *envname)
++char *prom_getenv_n(char *envname, int n)
+ {
+       /*
+        * Return a pointer to the given environment variable.
+@@ -89,19 +89,24 @@ char *prom_getenv(char *envname)
+        */
+       t_env_var *env = (t_env_var *)prom_envp;
+-      int i;
++      int i, j=0;
+       i = strlen(envname);
+       while(env->name) {
+               if(strncmp(envname, env->name, i) == 0) {
+-                      return(env->name + strlen(envname) + 1);
++                      if(j++ == n) return(env->name + strlen(envname) + 1);
+               }
+               env++;
+       }
+       return(NULL);
+ }
++char *prom_getenv(char *envname)
++{
++      return prom_getenv_n(envname, 0);
++}
++
+ inline unsigned char str2hexnum(unsigned char c)
+ {
+       if(c >= '0' && c <= '9')
+@@ -128,18 +133,18 @@ inline void str2eaddr(unsigned char *ea,
+       }
+ }
+-int get_ethernet_addr(char *ethernet_addr)
++int get_ethernet_addr_n(char *ethernet_addr, int n)
+ {
+         char *ethaddr_str;
+-        ethaddr_str = prom_getenv("ethaddr");
++        ethaddr_str = prom_getenv_n("ethaddr", n);
+       if (!ethaddr_str) {
+               printk("ethaddr not set in boot prom\n");
+               return -1;
+       }
+       str2eaddr(ethernet_addr, ethaddr_str);
+-#if 0
++#if 1
+       {
+               int i;
+@@ -153,7 +158,13 @@ int get_ethernet_addr(char *ethernet_add
+       return 0;
+ }
++int get_ethernet_addr(char *ethernet_addr)
++{
++      return get_ethernet_addr_n(ethernet_addr, 0);
++}
++
+ void prom_free_prom_memory (void) {}
++EXPORT_SYMBOL(get_ethernet_addr_n);
+ EXPORT_SYMBOL(prom_getcmdline);
+ EXPORT_SYMBOL(get_ethernet_addr);
+ EXPORT_SYMBOL(str2eaddr);
+diff -Naur -p -X do_not_diff -I '\$Id' -I '@(#)' linux-2.4.25-rc2_org/arch/mips/au1000/common/setup.c linux-2.4.25-rc2_q/arch/mips/au1000/common/setup.c
+--- linux-2.4.25-rc2_org/arch/mips/au1000/common/setup.c       2004-02-13 01:03:31.000000000 +0100
++++ linux-2.4.25-rc2_q/arch/mips/au1000/common/setup.c 2004-02-13 10:04:07.000000000 +0100
+@@ -57,6 +57,7 @@ extern struct ide_ops *ide_ops;
+ #endif
+ extern struct rtc_ops no_rtc_ops;
++void (*__wbflush) (void);
+ extern char * __init prom_getcmdline(void);
+ extern void __init board_setup(void);
+ extern void au1000_restart(char *);
+@@ -71,6 +72,11 @@ static phys_t au1500_fixup_bigphys_addr(
+ extern void au1xxx_time_init(void);
+ extern void au1xxx_timer_setup(void);
++void au1500_wbflush(void)
++{
++        __asm__ volatile ("sync");
++}
++
+ void __init au1x00_setup(void)
+ {
+       char *argptr;
+@@ -89,6 +95,8 @@ void __init au1x00_setup(void)
+       }
+ #endif          
++      __wbflush = au1500_wbflush;
++
+ #ifdef CONFIG_FB_AU1100
+     if ((argptr = strstr(argptr, "video=")) == NULL) {
+         argptr = prom_getcmdline();
+@@ -215,3 +223,6 @@ static phys_t au1500_fixup_bigphys_addr(
+               return phys_addr;
+ }
+ #endif
++
++EXPORT_SYMBOL(__wbflush);
++
+diff -Naur -p -X do_not_diff -I '\$Id' -I '@(#)' linux-2.4.25-rc2_org/arch/mips/au1000/pb1500/irqmap.c linux-2.4.25-rc2_q/arch/mips/au1000/pb1500/irqmap.c
+--- linux-2.4.25-rc2_org/arch/mips/au1000/pb1500/irqmap.c      2004-02-13 01:03:28.000000000 +0100
++++ linux-2.4.25-rc2_q/arch/mips/au1000/pb1500/irqmap.c        2004-02-13 10:10:21.000000000 +0100
+@@ -76,6 +76,7 @@ au1xxx_irq_map_t au1xxx_irq_map[] = {
+       { AU1500_GPIO_202, INTC_INT_LOW_LEVEL, 0 },
+       { AU1500_GPIO_203, INTC_INT_LOW_LEVEL, 0 },
+       { AU1500_GPIO_205, INTC_INT_LOW_LEVEL, 0 },
++      { AU1500_GPIO_206, INTC_INT_FALL_EDGE, 0 },
+       { AU1500_GPIO_207, INTC_INT_LOW_LEVEL, 0 },
+       { AU1000_ACSYNC_INT, INTC_INT_RISE_EDGE, 0 },
+diff -Naur -p -X do_not_diff -I '\$Id' -I '@(#)' linux-2.4.25-rc2_org/arch/mips/kernel/head.S linux-2.4.25-rc2_q/arch/mips/kernel/head.S
+--- linux-2.4.25-rc2_org/arch/mips/kernel/head.S       2004-02-13 01:02:42.000000000 +0100
++++ linux-2.4.25-rc2_q/arch/mips/kernel/head.S 2004-02-13 10:07:43.000000000 +0100
+@@ -33,7 +33,9 @@
+                * Reserved space for exception handlers.
+                * Necessary for machines which link their kernels at KSEG0.
+                */
+-              .fill   0x400
++              j kernel_entry
++              nop
++              .org 0x400
+               /* The following two symbols are used for kernel profiling. */
+               EXPORT(stext)
+diff -Naur -p -X do_not_diff -I '\$Id' -I '@(#)' linux-2.4.25-rc2_org/arch/mips/Makefile linux-2.4.25-rc2_q/arch/mips/Makefile
+--- linux-2.4.25-rc2_org/arch/mips/Makefile    2004-02-13 01:01:00.000000000 +0100
++++ linux-2.4.25-rc2_q/arch/mips/Makefile      2004-04-09 10:40:09.000000000 +0200
+@@ -69,13 +69,13 @@ endif
+ set_gccflags = $(shell \
+ while :; do \
+       cpu=$(1); isa=-$(2); \
+-      for gcc_opt in -march= -mcpu=; do \
++      for gcc_opt in -march=; do \
+               $(CC) $$gcc_opt$$cpu $$isa -S -o /dev/null \
+                       -xc /dev/null > /dev/null 2>&1 && \
+                       break 2; \
+       done; \
+       cpu=$(3); isa=-$(4); \
+-      for gcc_opt in -march= -mcpu=; do \
++      for gcc_opt in -march=; do \
+               $(CC) $$gcc_opt$$cpu $$isa -S -o /dev/null \
+                       -xc /dev/null > /dev/null 2>&1 && \
+                       break 2; \
+@@ -90,7 +90,7 @@ else \
+ fi; \
+ gas_abi=-Wa,-32; gas_cpu=$$cpu; gas_isa=-Wa,$$isa; \
+ while :; do \
+-      for gas_opt in -Wa,-march= -Wa,-mcpu=; do \
++      for gas_opt in -Wa,-march=; do \
+               $(CC) $$gas_abi $$gas_opt$$cpu $$gas_isa -Wa,-Z -c \
+                       -o /dev/null -xassembler /dev/null > /dev/null 2>&1 && \
+                       break 2; \
+diff -Naur -p -X do_not_diff -I '\$Id' -I '@(#)' linux-2.4.25-rc2_org/drivers/char/dummy_keyb.c linux-2.4.25-rc2_q/drivers/char/dummy_keyb.c
+--- linux-2.4.25-rc2_org/drivers/char/dummy_keyb.c     2004-02-12 23:51:10.000000000 +0100
++++ linux-2.4.25-rc2_q/drivers/char/dummy_keyb.c       2004-02-13 10:11:06.000000000 +0100
+@@ -29,6 +29,7 @@
+ #include <linux/errno.h>
+ #include <linux/init.h>
+ #include <linux/input.h>
++#include <linux/pm.h>
+ void kbd_leds(unsigned char leds)
+ {
+@@ -140,3 +141,46 @@ void __init kbd_init_hw(void)
+ {
+       printk("Dummy keyboard driver installed.\n");
+ }
++
++
++void panic_blink(void)
++ {
++ }
++
++
++ int pckbd_translate(unsigned char scancode, unsigned char *keycode,
++                   char raw_mode)
++ {
++   return 0;
++ }
++
++ char pckbd_unexpected_up(unsigned char keycode)
++ {
++   return 0;
++ }
++
++
++ void pckbd_leds(unsigned char leds)
++ {
++ }
++
++
++ int pckbd_setkeycode(unsigned int scancode, unsigned int keycode)
++ {
++   return 0;
++ }
++
++ int pckbd_getkeycode(unsigned int scancode)
++ {
++   return 0;
++ }
++
++ void __init pckbd_init_hw(void)
++ {
++ }
++
++ int pckbd_pm_resume(struct pm_dev *dev, pm_request_t rqst, void *data)
++ {
++   return 0;
++ }
++
+diff -Naur -p -X do_not_diff -I '\$Id' -I '@(#)' linux-2.4.25-rc2_org/drivers/char/Makefile linux-2.4.25-rc2_q/drivers/char/Makefile
+--- linux-2.4.25-rc2_org/drivers/char/Makefile 2004-02-12 23:50:40.000000000 +0100
++++ linux-2.4.25-rc2_q/drivers/char/Makefile   2004-02-13 10:11:06.000000000 +0100
+@@ -32,7 +32,7 @@ mod-subdirs  :=      joystick ftape drm drm-4.
+ list-multi    :=      
+ KEYMAP   =defkeymap.o
+-KEYBD    =pc_keyb.o
++KEYBD    =dummy_keyb.o
+ CONSOLE  =console.o
+ SERIAL   =serial.o
+diff -Naur -p -X do_not_diff -I '\$Id' -I '@(#)' linux-2.4.25-rc2_org/drivers/mtd/chips/cfi_cmdset_0002.c linux-2.4.25-rc2_q/drivers/mtd/chips/cfi_cmdset_0002.c
+--- linux-2.4.25-rc2_org/drivers/mtd/chips/cfi_cmdset_0002.c   2004-02-13 00:49:45.000000000 +0100
++++ linux-2.4.25-rc2_q/drivers/mtd/chips/cfi_cmdset_0002.c     2004-03-16 10:04:18.000000000 +0100
+@@ -511,7 +511,7 @@ static int do_write_oneword(struct map_i
+          or tells us why it failed. */        
+       dq6 = CMD(1<<6);
+       dq5 = CMD(1<<5);
+-      timeo = jiffies + (HZ/1000); /* setting timeout to 1ms for now */
++      timeo = jiffies + HZ; /* setting timeout to 1ms for now */
+               
+       oldstatus = cfi_read(map, adr);
+       status = cfi_read(map, adr);
+@@ -540,9 +540,7 @@ static int do_write_oneword(struct map_i
+                       oldstatus = cfi_read(map, adr);
+                       status = cfi_read(map, adr);
+                   
+-                      if ( (oldstatus & 0x00FF) == (status & 0x00FF) ) {
+-                              printk(KERN_WARNING "Warning: DQ5 raised while program operation was in progress, however operation completed OK\n" );
+-                      } else { 
++                      if ( (oldstatus & 0x00FF) != (status & 0x00FF) ) {
+                               /* DQ5 is active so we can do a reset and stop the erase */
+                               cfi_write(map, CMD(0xF0), chip->start);
+                               printk(KERN_WARNING "Internal flash device timeout occurred or write operation was performed while flash was programming.\n" );
+diff -Naur -p -X do_not_diff -I '\$Id' -I '@(#)' linux-2.4.25-rc2_org/drivers/mtd/maps/physmap.c linux-2.4.25-rc2_q/drivers/mtd/maps/physmap.c
+--- linux-2.4.25-rc2_org/drivers/mtd/maps/physmap.c    2004-02-13 00:50:09.000000000 +0100
++++ linux-2.4.25-rc2_q/drivers/mtd/maps/physmap.c      2004-02-13 10:11:40.000000000 +0100
+@@ -86,28 +86,24 @@ static int                   mtd_parts_n
+ #else
+ static struct mtd_partition physmap_partitions[] = {
+ /* Put your own partition definitions here */
+-#if 0
+       {
+-              name:           "bootROM",
+-              size:           0x80000,
++              name:           "fs1",
++              size:           28*1024*1024,
+               offset:         0,
+-              mask_flags:     MTD_WRITEABLE,  /* force read-only */
+       }, {
+-              name:           "zImage",
+-              size:           0x100000,
++              name:           "bootldr",
++              size:           128*1024,
+               offset:         MTDPART_OFS_APPEND,
+               mask_flags:     MTD_WRITEABLE,  /* force read-only */
+       }, {
+-              name:           "ramdisk.gz",
+-              size:           0x300000,
++              name:           "kernel",
++              size:           1*1024*1024,
+               offset:         MTDPART_OFS_APPEND,
+-              mask_flags:     MTD_WRITEABLE,  /* force read-only */
+       }, {
+-              name:           "User FS",
++              name:           "fs2",
+               size:           MTDPART_SIZ_FULL,
+               offset:         MTDPART_OFS_APPEND,
+       }
+-#endif
+ };
+ #define NUM_PARTITIONS        (sizeof(physmap_partitions)/sizeof(struct mtd_partition))
+diff -Naur -p -X do_not_diff -I '\$Id' -I '@(#)' linux-2.4.25-rc2_org/drivers/net/au1000_eth.c linux-2.4.25-rc2_q/drivers/net/au1000_eth.c
+--- linux-2.4.25-rc2_org/drivers/net/au1000_eth.c      2004-02-12 23:33:59.000000000 +0100
++++ linux-2.4.25-rc2_q/drivers/net/au1000_eth.c        2004-02-13 10:06:01.000000000 +0100
+@@ -97,6 +97,7 @@ extern int get_ethernet_addr(char *ether
+ extern inline void str2eaddr(unsigned char *ea, unsigned char *str);
+ extern inline unsigned char str2hexnum(unsigned char c);
+ extern char * __init prom_getcmdline(void);
++extern int get_ethernet_addr_n(char *ethernet_addr, int n);
+ /*
+  * Theory of operation
+@@ -591,6 +592,99 @@ int ks8995m_status(struct net_device *de
+       return 0;
+ }
++int ns_83847_reset(struct net_device *dev, int phy_addr)
++ {
++       s16 mii_control, timeout;
++
++ //    printk("ns_reset\n");
++       mii_control = mdio_read(dev, phy_addr, MII_CONTROL);
++       mdio_write(dev, phy_addr, MII_CONTROL, mii_control | MII_CNTL_RESET);
++       mdelay(1);
++       for (timeout = 100; timeout > 0; --timeout) {
++               mii_control = mdio_read(dev, phy_addr, MII_CONTROL);
++               if ((mii_control & MII_CNTL_RESET) == 0)
++                       break;
++               mdelay(1);
++       }
++       if (mii_control & MII_CNTL_RESET) {
++               printk(KERN_ERR "%s PHY reset timeout !\n", dev->name);
++               return -1;
++       }
++       return 0;
++ }
++
++int ns_83847_init(struct net_device *dev, int phy_addr)
++ {
++      s16 data;
++ //    printk("ns_init\n");
++
++       /* Stop auto-negotiation */
++ //    data = mdio_read(dev, phy_addr, MII_CONTROL);
++ //    mdio_write(dev, phy_addr, MII_CONTROL, data & ~MII_CNTL_AUTO);
++ //    mdio_write(dev, phy_addr,    0, 0x0000);
++       mdio_write(dev, phy_addr, MII_CONTROL, MII_CNTL_F100 /* | MII_CNTL_FDX */);
++
++       /* Set advertisement to 10/100 and Half/Full duplex (full capabilities) */
++       data = mdio_read(dev, phy_addr, MII_ANADV);
++       /* obs PAUSE bit */
++       data |= MII_NWAY_TX | MII_NWAY_TX_FDX | MII_NWAY_T_FDX | MII_NWAY_T; /* MII_NWAY_T4 not sopported */ ;
++       mdio_write(dev, phy_addr, MII_ANADV, data);
++
++       /* Bypass led stretching? */
++       data = mdio_read(dev, phy_addr, MII_NS_PHYCTRL);
++       data |= MII_NS_PHYCTRL_BP_STRETCH;
++       mdio_write(dev, phy_addr, MII_NS_PHYCTRL, data);
++
++       /* Restart auto-negotiation */
++       data = mdio_read(dev, phy_addr, MII_CONTROL);
++       data |= MII_CNTL_RST_AUTO | MII_CNTL_AUTO;
++       mdio_write(dev, phy_addr, MII_CONTROL, data);
++
++       return 0;
++ }
++
++int ns_83847_status(struct net_device *dev, int phy_addr, u16 *link, u16 *speed)
++ {
++       u16 mii_data;
++       struct au1000_private *aup;
++
++       if (!dev) {
++               printk(KERN_ERR "ns_83847_status error: NULL dev\n");
++               return -1;
++       }
++       aup = (struct au1000_private *) dev->priv;
++
++       mii_data = mdio_read(dev, aup->phy_addr, MII_STATUS);
++ //    printk("ns_status: %04x\n", mii_data);
++       if (mii_data & MII_STAT_LINK) {
++               *link = 1;
++               mii_data = mdio_read(dev, aup->phy_addr, MII_NS_PHYSTS);
++               if (mii_data & MII_NS_PHYSTS_SPEED_10) {
++                       *speed = IF_PORT_10BASET;
++                       dev->if_port = IF_PORT_10BASET;
++               }
++               else  {
++                       if (mii_data & MII_NS_PHYSTS_DUPLEX_FULL) {
++                               *speed = IF_PORT_100BASEFX;
++                               dev->if_port = IF_PORT_100BASEFX;
++                       }
++                       else {
++                               *speed = IF_PORT_100BASETX;
++                               dev->if_port = IF_PORT_100BASETX;
++                       }
++               }
++
++       }
++       else {
++               *link = 0;
++               *speed = 0;
++               dev->if_port = IF_PORT_UNKNOWN;
++       }
++       return 0;
++ }
++
++
++
+ #ifdef CONFIG_MIPS_BOSPORUS
+ int stub_init(struct net_device *dev, int phy_addr)
+ {
+@@ -616,6 +710,12 @@ stub_status(struct net_device *dev, int 
+ }
+ #endif
++struct phy_ops ns_83847_ops = {
++       ns_83847_init,
++       ns_83847_reset,
++       ns_83847_status,
++};
++
+ struct phy_ops bcm_5201_ops = {
+       bcm_5201_init,
+       bcm_5201_reset,
+@@ -667,6 +767,7 @@ static struct mii_chip_info {
+       struct phy_ops *phy_ops;        
+       int dual_phy;
+ } mii_chip_table[] = {
++      {"Natsemi DP83847 PHY", 0x2000, 0x5c30, &ns_83847_ops },
+       {"Broadcom BCM5201 10/100 BaseT PHY",0x0040,0x6212, &bcm_5201_ops,0},
+       {"Broadcom BCM5221 10/100 BaseT PHY",0x0040,0x61e4, &bcm_5201_ops,0},
+       {"Broadcom BCM5222 10/100 BaseT PHY",0x0040,0x6322, &bcm_5201_ops,1},
+@@ -868,6 +969,8 @@ static int mii_probe (struct net_device 
+                       }
+               }
+       }
++      printk(KERN_ERR "%s: Au1x No MII transceivers found!\n", dev->name);
++      return -1;
+ found:
+ #ifdef CONFIG_MIPS_BOSPORUS
+@@ -1176,21 +1279,10 @@ au1000_probe(u32 ioaddr, int irq, int po
+       switch (ioaddr) {
+       case AU1000_ETH0_BASE:
+       case AU1500_ETH0_BASE:
+-              /* check env variables first */
+               if (!get_ethernet_addr(ethaddr)) { 
+                       memcpy(au1000_mac_addr, ethaddr, sizeof(dev->dev_addr));
+               } else {
+-                      /* Check command line */
+-                      argptr = prom_getcmdline();
+-                      if ((pmac = strstr(argptr, "ethaddr=")) == NULL) {
+-                              printk(KERN_INFO "%s: No mac address found\n", 
+-                                              dev->name);
+-                              /* use the hard coded mac addresses */
+-                      } else {
+-                              str2eaddr(ethaddr, pmac + strlen("ethaddr="));
+-                              memcpy(au1000_mac_addr, ethaddr, 
+-                                              sizeof(dev->dev_addr));
+-                      }
++                      printk(KERN_INFO "%s: No mac address found\n", dev->name);
+               }
+               if (ioaddr == AU1000_ETH0_BASE)
+                       aup->enable = (volatile u32 *) 
+@@ -1206,6 +1298,11 @@ au1000_probe(u32 ioaddr, int irq, int po
+       case AU1000_ETH1_BASE:
+       case AU1500_ETH1_BASE:
++              if (!get_ethernet_addr_n(ethaddr, 1)) {
++                        memcpy(au1000_mac_addr, ethaddr, sizeof(dev->dev_addr));
++                } else {
++                        printk(KERN_INFO "%s: No mac address found\n", dev->name);
++                }
+               if (ioaddr == AU1000_ETH1_BASE)
+                       aup->enable = (volatile u32 *) 
+                               ((unsigned long)AU1000_MAC1_ENABLE);
+@@ -1213,7 +1310,6 @@ au1000_probe(u32 ioaddr, int irq, int po
+                       aup->enable = (volatile u32 *) 
+                               ((unsigned long)AU1500_MAC1_ENABLE);
+               memcpy(dev->dev_addr, au1000_mac_addr, sizeof(dev->dev_addr));
+-              dev->dev_addr[4] += 0x10;
+               setup_hw_rings(aup, MAC1_RX_DMA_ADDR, MAC1_TX_DMA_ADDR);
+               aup->mac_id = 1;
+               au_macs[1] = aup;
+diff -Naur -p -X do_not_diff -I '\$Id' -I '@(#)' linux-2.4.25-rc2_org/drivers/net/au1000_eth.h linux-2.4.25-rc2_q/drivers/net/au1000_eth.h
+--- linux-2.4.25-rc2_org/drivers/net/au1000_eth.h      2004-02-12 23:33:54.000000000 +0100
++++ linux-2.4.25-rc2_q/drivers/net/au1000_eth.h        2004-02-13 10:06:01.000000000 +0100
+@@ -86,6 +86,28 @@
+ #define MII_STAT_CAN_TX_FDX 0x4000
+ #define       MII_STAT_CAN_T4     0x8000
++/* mii registers for NS 83847 */
++#define MII_NS_PHYSTS   0x10
++#define MII_NS_FCSCR    0x14
++#define MII_NS_RECR     0x15
++#define MII_NS_PCSR     0x16
++#define MII_NS_PHYCTRL  0x19
++#define MII_NS_10BTSCR  0x1a
++#define MII_NS_CDCTRL   0x1b
++
++/* MII_NS_PHYSTS bits */
++#define MII_NS_PHYSTS_LINK            (1)
++#define MII_NS_PHYSTS_SPEED_10        (1<<1)
++#define MII_NS_PHYSTS_DUPLEX_FULL     (1<<2)
++
++/* MII_NS_PHYCTRL bits */
++#define MII_NS_PHYCTRL_BP_STRETCH     (1<<8)
++
++/* MII_NS_CDCTRL bits */
++#define MII_NS_CDCTRL_CD_ENABLE       (1<<15)
++#define MII_NS_CDCTRL_RISETIME        (1<<11)
++#define MII_NS_CDCTRL_FALLTIME        (1<<9)
++
+ #define               MII_ID1_OUI_LO          0xFC00  /* low bits of OUI mask */
+ #define               MII_ID1_MODEL           0x03F0  /* model number */
+diff -Naur -p -X do_not_diff -I '\$Id' -I '@(#)' linux-2.4.25-rc2_org/drivers/net/natsemi.c linux-2.4.25-rc2_q/drivers/net/natsemi.c
+--- linux-2.4.25-rc2_org/drivers/net/natsemi.c 2004-02-12 23:29:19.000000000 +0100
++++ linux-2.4.25-rc2_q/drivers/net/natsemi.c   2004-04-22 09:28:51.000000000 +0200
+@@ -773,7 +773,11 @@ static int __devinit natsemi_probe1 (str
+               goto err_ioremap;
+       }
+-      /* Work around the dropped serial bit. */
++#ifdef __mips__
++      if (get_ethernet_addr_n(dev->dev_addr, 2)) {
++              printk(KERN_INFO "%s: No mac address found\n", dev->name);
++      }
++#else
+       prev_eedata = eeprom_read(ioaddr, 6);
+       for (i = 0; i < 3; i++) {
+               int eedata = eeprom_read(ioaddr, i + 7);
+@@ -781,6 +785,7 @@ static int __devinit natsemi_probe1 (str
+               dev->dev_addr[i*2+1] = eedata >> 7;
+               prev_eedata = eedata;
+       }
++#endif
+       dev->base_addr = ioaddr;
+       dev->irq = irq;
+diff -Naur -p -X do_not_diff -I '\$Id' -I '@(#)' linux-2.4.25-rc2_org/drivers/net/wireless/hermes.h linux-2.4.25-rc2_q/drivers/net/wireless/hermes.h
+--- linux-2.4.25-rc2_org/drivers/net/wireless/hermes.h 2004-02-12 23:47:43.000000000 +0100
++++ linux-2.4.25-rc2_q/drivers/net/wireless/hermes.h   2004-02-13 10:13:40.000000000 +0100
+@@ -302,9 +302,9 @@ typedef struct hermes_response {
+ #define hermes_read_reg(hw, off) ((hw)->io_space ? \
+       inw((hw)->iobase + ( (off) << (hw)->reg_spacing )) : \
+       readw((hw)->iobase + ( (off) << (hw)->reg_spacing )))
+-#define hermes_write_reg(hw, off, val) ((hw)->io_space ? \
+-      outw_p((val), (hw)->iobase + ( (off) << (hw)->reg_spacing )) : \
+-      writew((val), (hw)->iobase + ( (off) << (hw)->reg_spacing )))
++#define hermes_write_reg(hw, off, val) { if((hw)->io_space) \
++      outw_p((val), (hw)->iobase + ( (off) << (hw)->reg_spacing )); else \
++      writew((val), (hw)->iobase + ( (off) << (hw)->reg_spacing ));}
+ #define hermes_read_regn(hw, name) (hermes_read_reg((hw), HERMES_##name))
+ #define hermes_write_regn(hw, name, val) (hermes_write_reg((hw), HERMES_##name, (val)))
+diff -Naur -p -X do_not_diff -I '\$Id' -I '@(#)' linux-2.4.25-rc2_org/include/asm-mips/au1000.h linux-2.4.25-rc2_q/include/asm-mips/au1000.h
+--- linux-2.4.25-rc2_org/include/asm-mips/au1000.h     2004-02-12 23:06:31.000000000 +0100
++++ linux-2.4.25-rc2_q/include/asm-mips/au1000.h       2004-02-13 10:41:49.000000000 +0100
+@@ -283,14 +283,14 @@ extern au1xxx_irq_map_t au1xxx_irq_map[]
+ #define INTC_INT_HIGH_AND_LOW_LEVEL    0x7
+ /* Interrupt Numbers */
+-#define AU1000_UART0_INT          0
++#define AU1000_UART0_INT          3
+ #define AU1000_UART1_INT          1 /* au1000 */
+ #define AU1000_UART2_INT          2 /* au1000 */
+ #define AU1000_PCI_INTA           1 /* au1500 */
+ #define AU1000_PCI_INTB           2 /* au1500 */
+-#define AU1000_UART3_INT          3
++#define AU1000_UART3_INT          0
+ #define AU1000_SSI0_INT           4 /* au1000 */
+ #define AU1000_SSI1_INT           5 /* au1000 */
+@@ -693,12 +693,12 @@ extern au1xxx_irq_map_t au1xxx_irq_map[]
+ /* UARTS 0-3 */
+-#define UART0_ADDR                0xB1100000
++#define UART0_ADDR                0xB1400000
+ #define UART1_ADDR                0xB1200000
+ #define UART2_ADDR                0xB1300000
+-#define UART3_ADDR                0xB1400000
++#define UART3_ADDR                0xB1100000
+ #define UART_BASE                 UART0_ADDR
+-#define UART_DEBUG_BASE           UART3_ADDR
++#define UART_DEBUG_BASE           UART0_ADDR
+ #define UART_RX               0       /* Receive buffer */
+ #define UART_TX               4       /* Transmit buffer */
+diff -Naur -p -X do_not_diff -I '\$Id' -I '@(#)' linux-2.4.25-rc2_org/include/asm-mips/page.h linux-2.4.25-rc2_q/include/asm-mips/page.h
+--- linux-2.4.25-rc2_org/include/asm-mips/page.h       2004-02-12 23:06:14.000000000 +0100
++++ linux-2.4.25-rc2_q/include/asm-mips/page.h 2004-03-23 14:18:38.000000000 +0100
+@@ -13,7 +13,6 @@
+ #include <linux/config.h>
+ #include <asm/break.h>
+-#ifdef __KERNEL__
+ /*
+  * PAGE_SHIFT determines the page size
+@@ -30,6 +29,7 @@
+ #define PAGE_SIZE     (1L << PAGE_SHIFT)
+ #define PAGE_MASK     (~(PAGE_SIZE-1))
++#ifdef __KERNEL__
+ #ifndef __ASSEMBLY__
+ #include <asm/cacheflush.h>
+diff -Naur -p -X do_not_diff -I '\$Id' -I '@(#)' linux-2.4.25-rc2_org/include/asm-mips/wbflush.h linux-2.4.25-rc2_q/include/asm-mips/wbflush.h
+--- linux-2.4.25-rc2_org/include/asm-mips/wbflush.h    2004-02-12 23:06:33.000000000 +0100
++++ linux-2.4.25-rc2_q/include/asm-mips/wbflush.h      2004-02-13 20:42:57.000000000 +0100
+@@ -15,8 +15,11 @@
+ #ifdef CONFIG_CPU_HAS_WB
+-extern void (*__wbflush)(void);
+-extern void wbflush_setup(void);
++//extern void (*__wbflush)(void);
++//extern void wbflush_setup(void);
++
++
++#define __wbflush() { __asm__ volatile ("sync"); }
+ #define wbflush()                     \
+       do {                            \
+diff -Naur -p -X do_not_diff -I '\$Id' -I '@(#)' linux-2.4.25-rc2_org/include/pcmcia/cs_types.h linux-2.4.25-rc2_q/include/pcmcia/cs_types.h
+--- linux-2.4.25-rc2_org/include/pcmcia/cs_types.h     2004-02-12 23:13:05.000000000 +0100
++++ linux-2.4.25-rc2_q/include/pcmcia/cs_types.h       2004-02-13 10:15:10.000000000 +0100
+@@ -37,6 +37,7 @@
+ #endif
+ #if defined(__arm__) || defined(__mips__)
++//obs jp: on mips, "typedef unsigned long long ioaddr_t;" may be needed to support cardbus
+ typedef u_int   ioaddr_t;
+ #else
+ typedef u_short       ioaddr_t;
+diff -Naur -p -X do_not_diff -I '\$Id' -I '@(#)' linux-2.4.25-rc2_org/include/pcmcia/ss.h linux-2.4.25-rc2_q/include/pcmcia/ss.h
+--- linux-2.4.25-rc2_org/include/pcmcia/ss.h   2004-02-12 23:13:02.000000000 +0100
++++ linux-2.4.25-rc2_q/include/pcmcia/ss.h     2004-02-13 10:15:32.000000000 +0100
+@@ -112,7 +112,7 @@ typedef struct pccard_mem_map {
+     u_char    map;
+     u_char    flags;
+     u_short   speed;
+-    u_long    sys_start, sys_stop;
++    ioaddr_t  sys_start, sys_stop;
+     u_int     card_start;
+ } pccard_mem_map;
+diff -Naur -p -X do_not_diff -I '\$Id' -I '@(#)' linux-2.4.25-rc2_org/init/do_mounts.c linux-2.4.25-rc2_q/init/do_mounts.c
+--- linux-2.4.25-rc2_org/init/do_mounts.c      2004-02-12 22:59:08.000000000 +0100
++++ linux-2.4.25-rc2_q/init/do_mounts.c        2004-02-13 10:16:02.000000000 +0100
+@@ -760,8 +760,6 @@ static void __init devfs_make_root(char 
+ static void __init mount_root(void)
+ {
+ #ifdef CONFIG_ROOT_NFS
+-       if (MAJOR(ROOT_DEV) == NFS_MAJOR
+-           && MINOR(ROOT_DEV) == NFS_MINOR) {
+               if (mount_nfs_root()) {
+                       sys_chdir("/root");
+                       ROOT_DEV = current->fs->pwdmnt->mnt_sb->s_dev;
+@@ -770,7 +768,6 @@ static void __init mount_root(void)
+               }
+               printk(KERN_ERR "VFS: Unable to mount root fs via NFS, trying floppy.\n");
+               ROOT_DEV = MKDEV(FLOPPY_MAJOR, 0);
+-      }
+ #endif
+       devfs_make_root(root_device_name);
+       create_dev("/dev/root", ROOT_DEV, root_device_name);
+
diff --git a/target/device/jp/q5/kernel-patches-2.4.26/002-build_fixes b/target/device/jp/q5/kernel-patches-2.4.26/002-build_fixes
new file mode 100644 (file)
index 0000000..a592850
--- /dev/null
@@ -0,0 +1,81 @@
+diff -Naur linux-2.4.26-q5.org/arch/mips/au1000/common/clocks.c linux-2.4.26-q5/arch/mips/au1000/common/clocks.c
+--- linux-2.4.26-q5.org/arch/mips/au1000/common/clocks.c       2003-08-25 07:44:39.000000000 -0400
++++ linux-2.4.26-q5/arch/mips/au1000/common/clocks.c   2005-06-23 02:52:03.390000000 -0400
+@@ -85,9 +85,8 @@
+               lcd_clock = sys_busclk / 4;
+       if (lcd_clock > 50000) /* Epson MAX */
+-                      printk(__FUNCTION__
+-                             ": warning: LCD clock too high (%d KHz)\n",
+-                             lcd_clock);
++                      printk("%s: warning: LCD clock too high (%d KHz)\n",
++                             __FUNCTION__, lcd_clock);
+ }
+ unsigned int get_au1x00_lcd_clock(void)
+--- linux-2.4.26-q5.org/arch/mips/kernel/time.c        2004-02-18 08:36:30.000000000 -0500
++++ linux-2.4.26-q5/arch/mips/kernel/time.c    2005-06-23 03:13:07.720000000 -0400
+@@ -25,6 +25,7 @@
+ #include <linux/interrupt.h>
+ #include <linux/module.h>
++#include <asm/compiler.h>
+ #include <asm/bootinfo.h>
+ #include <asm/cpu.h>
+ #include <asm/time.h>
+@@ -242,7 +243,7 @@
+       __asm__("multu  %1,%2"
+               : "=h" (res)
+               : "r" (count), "r" (sll32_usecs_per_cycle)
+-              : "lo", "accum");
++              : "lo", GCC_REG_ACCUM);
+       /*
+        * Due to possible jiffies inconsistencies, we need to check
+@@ -297,7 +298,7 @@
+       __asm__("multu  %1,%2"
+               : "=h" (res)
+               : "r" (count), "r" (quotient)
+-              : "lo", "accum");
++              : "lo", GCC_REG_ACCUM);
+       /*
+        * Due to possible jiffies inconsistencies, we need to check
+@@ -339,7 +340,7 @@
+                               : "r" (timerhi), "m" (timerlo),
+                                 "r" (tmp), "r" (USECS_PER_JIFFY),
+                                 "r" (USECS_PER_JIFFY_FRAC)
+-                              : "hi", "lo", "accum");
++                              : "hi", "lo", GCC_REG_ACCUM);
+                       cached_quotient = quotient;
+               }
+       }
+@@ -353,7 +354,7 @@
+       __asm__("multu  %1,%2"
+               : "=h" (res)
+               : "r" (count), "r" (quotient)
+-              : "lo", "accum");
++              : "lo", GCC_REG_ACCUM);
+       /*
+        * Due to possible jiffies inconsistencies, we need to checkdiff -Naur linux-2.4.26-q5.org/include/asm-mips/compiler.h linux-2.4.26-q5/include/asm-mips/compiler.h
+--- linux-2.4.26-q5.org/include/asm-mips/compiler.h    1969-12-31 19:00:00.000000000 -0500
++++ linux-2.4.26-q5/include/asm-mips/compiler.h        2005-06-23 02:52:25.000000000 -0400
+@@ -0,0 +1,17 @@
++/*
++ * Copyright (C) 2004  Maciej W. Rozycki
++ *
++ * This file is subject to the terms and conditions of the GNU General Public
++ * License.  See the file "COPYING" in the main directory of this archive
++ * for more details.
++ */
++#ifndef _ASM_COMPILER_H
++#define _ASM_COMPILER_H
++
++#if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
++#define GCC_REG_ACCUM "$0"
++#else
++#define GCC_REG_ACCUM "accum"
++#endif
++
++#endif /* _ASM_COMPILER_H */
diff --git a/target/device/jp/q5/kernel-patches-2.4.26/004-correct_toolchain b/target/device/jp/q5/kernel-patches-2.4.26/004-correct_toolchain
new file mode 100644 (file)
index 0000000..53e509d
--- /dev/null
@@ -0,0 +1,24 @@
+--- linux-2.4.29/arch/mips/Makefile.orig       2005-03-08 23:24:05.000000000 -0700
++++ linux-2.4.29/arch/mips/Makefile    2005-03-08 23:27:37.000000000 -0700
+@@ -17,16 +17,16 @@
+ # Select the object file format to substitute into the linker script.
+ #
+ ifdef CONFIG_CPU_LITTLE_ENDIAN
+-tool-prefix   = mipsel-linux-
++#tool-prefix  = mipsel-linux-
+ ld-emul               = elf32ltsmip
+ else
+-tool-prefix   = mips-linux-
++#tool-prefix  = mips-linux-
+ ld-emul               = elf32btsmip
+ endif
+-ifdef CONFIG_CROSSCOMPILE
+-CROSS_COMPILE = $(tool-prefix)
+-endif
++#ifdef CONFIG_CROSSCOMPILE
++#CROSS_COMPILE        = $(tool-prefix)
++#endif
+ MAKEBOOT = $(MAKE) -C arch/$(ARCH)/boot
diff --git a/target/device/jp/q5/kernel-patches-2.4.26/100-version b/target/device/jp/q5/kernel-patches-2.4.26/100-version
new file mode 100644 (file)
index 0000000..813d45f
--- /dev/null
@@ -0,0 +1,11 @@
+--- linux/Makefile.orig        2004-08-18 14:17:14.000000000 -0600
++++ linux/Makefile     2004-08-18 14:17:54.000000000 -0600
+@@ -1,7 +1,7 @@
+ VERSION = 2
+ PATCHLEVEL = 4
+ SUBLEVEL = 26
+-EXTRAVERSION =
++EXTRAVERSION =-q5
+ KERNELRELEASE=$(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION)
diff --git a/target/device/jp/q5/kernel-patches-2.4.29/001-q5 b/target/device/jp/q5/kernel-patches-2.4.29/001-q5
new file mode 100644 (file)
index 0000000..5f1af42
--- /dev/null
@@ -0,0 +1,420 @@
+diff -Naur -p -X do_not_diff -I '\$Id' -I '@(#)' linux-2.4.25-rc2_org/arch/mips/au1000/common/Makefile linux-2.4.25-rc2_q/arch/mips/au1000/common/Makefile
+--- linux-2.4.25-rc2_org/arch/mips/au1000/common/Makefile      2004-02-13 01:03:35.000000000 +0100
++++ linux-2.4.25-rc2_q/arch/mips/au1000/common/Makefile        2004-02-13 10:04:07.000000000 +0100
+@@ -16,7 +16,7 @@ all: au1000.o
+ O_TARGET := au1000.o
+-export-objs           = prom.o clocks.o power.o usbdev.o
++export-objs           = prom.o clocks.o power.o usbdev.o setup.o
+ obj-y := prom.o int-handler.o dma.o irq.o puts.o time.o reset.o \
+       clocks.o power.o setup.o sleeper.o
+diff -Naur -p -X do_not_diff -I '\$Id' -I '@(#)' linux-2.4.25-rc2_org/arch/mips/au1000/common/prom.c linux-2.4.25-rc2_q/arch/mips/au1000/common/prom.c
+--- linux-2.4.25-rc2_org/arch/mips/au1000/common/prom.c        2004-02-13 01:03:32.000000000 +0100
++++ linux-2.4.25-rc2_q/arch/mips/au1000/common/prom.c  2004-02-13 10:07:12.000000000 +0100
+@@ -81,7 +81,7 @@ void  prom_init_cmdline(void)
+ }
+-char *prom_getenv(char *envname)
++char *prom_getenv_n(char *envname, int n)
+ {
+       /*
+        * Return a pointer to the given environment variable.
+@@ -89,19 +89,24 @@ char *prom_getenv(char *envname)
+        */
+       t_env_var *env = (t_env_var *)prom_envp;
+-      int i;
++      int i, j=0;
+       i = strlen(envname);
+       while(env->name) {
+               if(strncmp(envname, env->name, i) == 0) {
+-                      return(env->name + strlen(envname) + 1);
++                      if(j++ == n) return(env->name + strlen(envname) + 1);
+               }
+               env++;
+       }
+       return(NULL);
+ }
++char *prom_getenv(char *envname)
++{
++      return prom_getenv_n(envname, 0);
++}
++
+ inline unsigned char str2hexnum(unsigned char c)
+ {
+       if(c >= '0' && c <= '9')
+@@ -128,18 +133,18 @@ inline void str2eaddr(unsigned char *ea,
+       }
+ }
+-int get_ethernet_addr(char *ethernet_addr)
++int get_ethernet_addr_n(char *ethernet_addr, int n)
+ {
+         char *ethaddr_str;
+-        ethaddr_str = prom_getenv("ethaddr");
++        ethaddr_str = prom_getenv_n("ethaddr", n);
+       if (!ethaddr_str) {
+               printk("ethaddr not set in boot prom\n");
+               return -1;
+       }
+       str2eaddr(ethernet_addr, ethaddr_str);
+-#if 0
++#if 1
+       {
+               int i;
+@@ -153,7 +158,13 @@ int get_ethernet_addr(char *ethernet_add
+       return 0;
+ }
++int get_ethernet_addr(char *ethernet_addr)
++{
++      return get_ethernet_addr_n(ethernet_addr, 0);
++}
++
+ void prom_free_prom_memory (void) {}
++EXPORT_SYMBOL(get_ethernet_addr_n);
+ EXPORT_SYMBOL(prom_getcmdline);
+ EXPORT_SYMBOL(get_ethernet_addr);
+ EXPORT_SYMBOL(str2eaddr);
+diff -Naur -p -X do_not_diff -I '\$Id' -I '@(#)' linux-2.4.25-rc2_org/arch/mips/au1000/common/setup.c linux-2.4.25-rc2_q/arch/mips/au1000/common/setup.c
+--- linux-2.4.25-rc2_org/arch/mips/au1000/common/setup.c       2004-02-13 01:03:31.000000000 +0100
++++ linux-2.4.25-rc2_q/arch/mips/au1000/common/setup.c 2004-02-13 10:04:07.000000000 +0100
+@@ -57,6 +57,7 @@ extern struct ide_ops *ide_ops;
+ #endif
+ extern struct rtc_ops no_rtc_ops;
++void (*__wbflush) (void);
+ extern char * __init prom_getcmdline(void);
+ extern void __init board_setup(void);
+ extern void au1000_restart(char *);
+@@ -71,6 +72,11 @@ static phys_t au1500_fixup_bigphys_addr(
+ extern void au1xxx_time_init(void);
+ extern void au1xxx_timer_setup(void);
++void au1500_wbflush(void)
++{
++        __asm__ volatile ("sync");
++}
++
+ void __init au1x00_setup(void)
+ {
+       char *argptr;
+@@ -89,6 +95,8 @@ void __init au1x00_setup(void)
+       }
+ #endif          
++      __wbflush = au1500_wbflush;
++
+ #ifdef CONFIG_FB_AU1100
+     if ((argptr = strstr(argptr, "video=")) == NULL) {
+         argptr = prom_getcmdline();
+@@ -215,3 +223,6 @@ static phys_t au1500_fixup_bigphys_addr(
+               return phys_addr;
+ }
+ #endif
++
++EXPORT_SYMBOL(__wbflush);
++
+diff -Naur -p -X do_not_diff -I '\$Id' -I '@(#)' linux-2.4.25-rc2_org/arch/mips/kernel/head.S linux-2.4.25-rc2_q/arch/mips/kernel/head.S
+--- linux-2.4.25-rc2_org/arch/mips/kernel/head.S       2004-02-13 01:02:42.000000000 +0100
++++ linux-2.4.25-rc2_q/arch/mips/kernel/head.S 2004-02-13 10:07:43.000000000 +0100
+@@ -33,7 +33,9 @@
+                * Reserved space for exception handlers.
+                * Necessary for machines which link their kernels at KSEG0.
+                */
+-              .fill   0x400
++              j kernel_entry
++              nop
++              .org 0x400
+               /* The following two symbols are used for kernel profiling. */
+               EXPORT(stext)
+diff -Naur -p -X do_not_diff -I '\$Id' -I '@(#)' linux-2.4.25-rc2_org/arch/mips/Makefile linux-2.4.25-rc2_q/arch/mips/Makefile
+--- linux-2.4.25-rc2_org/arch/mips/Makefile    2004-02-13 01:01:00.000000000 +0100
++++ linux-2.4.25-rc2_q/arch/mips/Makefile      2004-04-09 10:40:09.000000000 +0200
+@@ -69,13 +69,13 @@ endif
+ set_gccflags = $(shell \
+ while :; do \
+       cpu=$(1); isa=-$(2); \
+-      for gcc_opt in -march= -mcpu=; do \
++      for gcc_opt in -march=; do \
+               $(CC) $$gcc_opt$$cpu $$isa -S -o /dev/null \
+                       -xc /dev/null > /dev/null 2>&1 && \
+                       break 2; \
+       done; \
+       cpu=$(3); isa=-$(4); \
+-      for gcc_opt in -march= -mcpu=; do \
++      for gcc_opt in -march=; do \
+               $(CC) $$gcc_opt$$cpu $$isa -S -o /dev/null \
+                       -xc /dev/null > /dev/null 2>&1 && \
+                       break 2; \
+@@ -90,7 +90,7 @@ else \
+ fi; \
+ gas_abi=-Wa,-32; gas_cpu=$$cpu; gas_isa=-Wa,$$isa; \
+ while :; do \
+-      for gas_opt in -Wa,-march= -Wa,-mcpu=; do \
++      for gas_opt in -Wa,-march=; do \
+               $(CC) $$gas_abi $$gas_opt$$cpu $$gas_isa -Wa,-Z -c \
+                       -o /dev/null -xassembler /dev/null > /dev/null 2>&1 && \
+                       break 2; \
+diff -Naur -p -X do_not_diff -I '\$Id' -I '@(#)' linux-2.4.25-rc2_org/drivers/char/dummy_keyb.c linux-2.4.25-rc2_q/drivers/char/dummy_keyb.c
+--- linux-2.4.25-rc2_org/drivers/char/dummy_keyb.c     2004-02-12 23:51:10.000000000 +0100
++++ linux-2.4.25-rc2_q/drivers/char/dummy_keyb.c       2004-02-13 10:11:06.000000000 +0100
+@@ -29,6 +29,7 @@
+ #include <linux/errno.h>
+ #include <linux/init.h>
+ #include <linux/input.h>
++#include <linux/pm.h>
+ void kbd_leds(unsigned char leds)
+ {
+@@ -140,3 +141,46 @@ void __init kbd_init_hw(void)
+ {
+       printk("Dummy keyboard driver installed.\n");
+ }
++
++
++void panic_blink(void)
++ {
++ }
++
++
++ int pckbd_translate(unsigned char scancode, unsigned char *keycode,
++                   char raw_mode)
++ {
++   return 0;
++ }
++
++ char pckbd_unexpected_up(unsigned char keycode)
++ {
++   return 0;
++ }
++
++
++ void pckbd_leds(unsigned char leds)
++ {
++ }
++
++
++ int pckbd_setkeycode(unsigned int scancode, unsigned int keycode)
++ {
++   return 0;
++ }
++
++ int pckbd_getkeycode(unsigned int scancode)
++ {
++   return 0;
++ }
++
++ void __init pckbd_init_hw(void)
++ {
++ }
++
++ int pckbd_pm_resume(struct pm_dev *dev, pm_request_t rqst, void *data)
++ {
++   return 0;
++ }
++
+diff -Naur -p -X do_not_diff -I '\$Id' -I '@(#)' linux-2.4.25-rc2_org/drivers/char/Makefile linux-2.4.25-rc2_q/drivers/char/Makefile
+--- linux-2.4.25-rc2_org/drivers/char/Makefile 2004-02-12 23:50:40.000000000 +0100
++++ linux-2.4.25-rc2_q/drivers/char/Makefile   2004-02-13 10:11:06.000000000 +0100
+@@ -32,7 +32,7 @@ mod-subdirs  :=      joystick ftape drm drm-4.
+ list-multi    :=      
+ KEYMAP   =defkeymap.o
+-KEYBD    =pc_keyb.o
++KEYBD    =dummy_keyb.o
+ CONSOLE  =console.o
+ SERIAL   =serial.o
+diff -Naur -p -X do_not_diff -I '\$Id' -I '@(#)' linux-2.4.25-rc2_org/drivers/mtd/chips/cfi_cmdset_0002.c linux-2.4.25-rc2_q/drivers/mtd/chips/cfi_cmdset_0002.c
+--- linux-2.4.25-rc2_org/drivers/mtd/chips/cfi_cmdset_0002.c   2004-02-13 00:49:45.000000000 +0100
++++ linux-2.4.25-rc2_q/drivers/mtd/chips/cfi_cmdset_0002.c     2004-03-16 10:04:18.000000000 +0100
+@@ -511,7 +511,7 @@ static int do_write_oneword(struct map_i
+          or tells us why it failed. */        
+       dq6 = CMD(1<<6);
+       dq5 = CMD(1<<5);
+-      timeo = jiffies + (HZ/1000); /* setting timeout to 1ms for now */
++      timeo = jiffies + HZ; /* setting timeout to 1ms for now */
+               
+       oldstatus = cfi_read(map, adr);
+       status = cfi_read(map, adr);
+@@ -540,9 +540,7 @@ static int do_write_oneword(struct map_i
+                       oldstatus = cfi_read(map, adr);
+                       status = cfi_read(map, adr);
+                   
+-                      if ( (oldstatus & 0x00FF) == (status & 0x00FF) ) {
+-                              printk(KERN_WARNING "Warning: DQ5 raised while program operation was in progress, however operation completed OK\n" );
+-                      } else { 
++                      if ( (oldstatus & 0x00FF) != (status & 0x00FF) ) {
+                               /* DQ5 is active so we can do a reset and stop the erase */
+                               cfi_write(map, CMD(0xF0), chip->start);
+                               printk(KERN_WARNING "Internal flash device timeout occurred or write operation was performed while flash was programming.\n" );
+diff -Naur -p -X do_not_diff -I '\$Id' -I '@(#)' linux-2.4.25-rc2_org/drivers/mtd/maps/physmap.c linux-2.4.25-rc2_q/drivers/mtd/maps/physmap.c
+--- linux-2.4.25-rc2_org/drivers/mtd/maps/physmap.c    2004-02-13 00:50:09.000000000 +0100
++++ linux-2.4.25-rc2_q/drivers/mtd/maps/physmap.c      2004-02-13 10:11:40.000000000 +0100
+@@ -86,28 +86,24 @@ static int                   mtd_parts_n
+ #else
+ static struct mtd_partition physmap_partitions[] = {
+ /* Put your own partition definitions here */
+-#if 0
+       {
+-              name:           "bootROM",
+-              size:           0x80000,
++              name:           "fs1",
++              size:           28*1024*1024,
+               offset:         0,
+-              mask_flags:     MTD_WRITEABLE,  /* force read-only */
+       }, {
+-              name:           "zImage",
+-              size:           0x100000,
++              name:           "bootldr",
++              size:           128*1024,
+               offset:         MTDPART_OFS_APPEND,
+               mask_flags:     MTD_WRITEABLE,  /* force read-only */
+       }, {
+-              name:           "ramdisk.gz",
+-              size:           0x300000,
++              name:           "kernel",
++              size:           1*1024*1024,
+               offset:         MTDPART_OFS_APPEND,
+-              mask_flags:     MTD_WRITEABLE,  /* force read-only */
+       }, {
+-              name:           "User FS",
++              name:           "fs2",
+               size:           MTDPART_SIZ_FULL,
+               offset:         MTDPART_OFS_APPEND,
+       }
+-#endif
+ };
+ #define NUM_PARTITIONS        (sizeof(physmap_partitions)/sizeof(struct mtd_partition))
+diff -Naur -p -X do_not_diff -I '\$Id' -I '@(#)' linux-2.4.25-rc2_org/drivers/net/natsemi.c linux-2.4.25-rc2_q/drivers/net/natsemi.c
+--- linux-2.4.25-rc2_org/drivers/net/natsemi.c 2004-02-12 23:29:19.000000000 +0100
++++ linux-2.4.25-rc2_q/drivers/net/natsemi.c   2004-04-22 09:28:51.000000000 +0200
+@@ -773,7 +773,11 @@ static int __devinit natsemi_probe1 (str
+               goto err_ioremap;
+       }
+-      /* Work around the dropped serial bit. */
++#ifdef __mips__
++      if (get_ethernet_addr_n(dev->dev_addr, 2)) {
++              printk(KERN_INFO "%s: No mac address found\n", dev->name);
++      }
++#else
+       prev_eedata = eeprom_read(ioaddr, 6);
+       for (i = 0; i < 3; i++) {
+               int eedata = eeprom_read(ioaddr, i + 7);
+@@ -781,6 +785,7 @@ static int __devinit natsemi_probe1 (str
+               dev->dev_addr[i*2+1] = eedata >> 7;
+               prev_eedata = eedata;
+       }
++#endif
+       dev->base_addr = ioaddr;
+       dev->irq = irq;
+diff -Naur -p -X do_not_diff -I '\$Id' -I '@(#)' linux-2.4.25-rc2_org/drivers/net/wireless/hermes.h linux-2.4.25-rc2_q/drivers/net/wireless/hermes.h
+--- linux-2.4.25-rc2_org/drivers/net/wireless/hermes.h 2004-02-12 23:47:43.000000000 +0100
++++ linux-2.4.25-rc2_q/drivers/net/wireless/hermes.h   2004-02-13 10:13:40.000000000 +0100
+@@ -302,9 +302,9 @@ typedef struct hermes_response {
+ #define hermes_read_reg(hw, off) ((hw)->io_space ? \
+       inw((hw)->iobase + ( (off) << (hw)->reg_spacing )) : \
+       readw((hw)->iobase + ( (off) << (hw)->reg_spacing )))
+-#define hermes_write_reg(hw, off, val) ((hw)->io_space ? \
+-      outw_p((val), (hw)->iobase + ( (off) << (hw)->reg_spacing )) : \
+-      writew((val), (hw)->iobase + ( (off) << (hw)->reg_spacing )))
++#define hermes_write_reg(hw, off, val) { if((hw)->io_space) \
++      outw_p((val), (hw)->iobase + ( (off) << (hw)->reg_spacing )); else \
++      writew((val), (hw)->iobase + ( (off) << (hw)->reg_spacing ));}
+ #define hermes_read_regn(hw, name) (hermes_read_reg((hw), HERMES_##name))
+ #define hermes_write_regn(hw, name, val) (hermes_write_reg((hw), HERMES_##name, (val)))
+diff -Naur -p -X do_not_diff -I '\$Id' -I '@(#)' linux-2.4.25-rc2_org/include/asm-mips/page.h linux-2.4.25-rc2_q/include/asm-mips/page.h
+--- linux-2.4.25-rc2_org/include/asm-mips/page.h       2004-02-12 23:06:14.000000000 +0100
++++ linux-2.4.25-rc2_q/include/asm-mips/page.h 2004-03-23 14:18:38.000000000 +0100
+@@ -13,7 +13,6 @@
+ #include <linux/config.h>
+ #include <asm/break.h>
+-#ifdef __KERNEL__
+ /*
+  * PAGE_SHIFT determines the page size
+@@ -30,6 +29,7 @@
+ #define PAGE_SIZE     (1L << PAGE_SHIFT)
+ #define PAGE_MASK     (~(PAGE_SIZE-1))
++#ifdef __KERNEL__
+ #ifndef __ASSEMBLY__
+ #include <asm/cacheflush.h>
+diff -Naur -p -X do_not_diff -I '\$Id' -I '@(#)' linux-2.4.25-rc2_org/include/asm-mips/wbflush.h linux-2.4.25-rc2_q/include/asm-mips/wbflush.h
+--- linux-2.4.25-rc2_org/include/asm-mips/wbflush.h    2004-02-12 23:06:33.000000000 +0100
++++ linux-2.4.25-rc2_q/include/asm-mips/wbflush.h      2004-02-13 20:42:57.000000000 +0100
+@@ -15,8 +15,11 @@
+ #ifdef CONFIG_CPU_HAS_WB
+-extern void (*__wbflush)(void);
+-extern void wbflush_setup(void);
++//extern void (*__wbflush)(void);
++//extern void wbflush_setup(void);
++
++
++#define __wbflush() { __asm__ volatile ("sync"); }
+ #define wbflush()                     \
+       do {                            \
+diff -Naur -p -X do_not_diff -I '\$Id' -I '@(#)' linux-2.4.25-rc2_org/include/pcmcia/cs_types.h linux-2.4.25-rc2_q/include/pcmcia/cs_types.h
+--- linux-2.4.25-rc2_org/include/pcmcia/cs_types.h     2004-02-12 23:13:05.000000000 +0100
++++ linux-2.4.25-rc2_q/include/pcmcia/cs_types.h       2004-02-13 10:15:10.000000000 +0100
+@@ -37,6 +37,7 @@
+ #endif
+ #if defined(__arm__) || defined(__mips__)
++//obs jp: on mips, "typedef unsigned long long ioaddr_t;" may be needed to support cardbus
+ typedef u_int   ioaddr_t;
+ #else
+ typedef u_short       ioaddr_t;
+diff -Naur -p -X do_not_diff -I '\$Id' -I '@(#)' linux-2.4.25-rc2_org/include/pcmcia/ss.h linux-2.4.25-rc2_q/include/pcmcia/ss.h
+--- linux-2.4.25-rc2_org/include/pcmcia/ss.h   2004-02-12 23:13:02.000000000 +0100
++++ linux-2.4.25-rc2_q/include/pcmcia/ss.h     2004-02-13 10:15:32.000000000 +0100
+@@ -112,7 +112,7 @@ typedef struct pccard_mem_map {
+     u_char    map;
+     u_char    flags;
+     u_short   speed;
+-    u_long    sys_start, sys_stop;
++    ioaddr_t  sys_start, sys_stop;
+     u_int     card_start;
+ } pccard_mem_map;
+diff -Naur -p -X do_not_diff -I '\$Id' -I '@(#)' linux-2.4.25-rc2_org/init/do_mounts.c linux-2.4.25-rc2_q/init/do_mounts.c
+--- linux-2.4.25-rc2_org/init/do_mounts.c      2004-02-12 22:59:08.000000000 +0100
++++ linux-2.4.25-rc2_q/init/do_mounts.c        2004-02-13 10:16:02.000000000 +0100
+@@ -760,8 +760,6 @@ static void __init devfs_make_root(char 
+ static void __init mount_root(void)
+ {
+ #ifdef CONFIG_ROOT_NFS
+-       if (MAJOR(ROOT_DEV) == NFS_MAJOR
+-           && MINOR(ROOT_DEV) == NFS_MINOR) {
+               if (mount_nfs_root()) {
+                       sys_chdir("/root");
+                       ROOT_DEV = current->fs->pwdmnt->mnt_sb->s_dev;
+@@ -770,7 +768,6 @@ static void __init mount_root(void)
+               }
+               printk(KERN_ERR "VFS: Unable to mount root fs via NFS, trying floppy.\n");
+               ROOT_DEV = MKDEV(FLOPPY_MAJOR, 0);
+-      }
+ #endif
+       devfs_make_root(root_device_name);
+       create_dev("/dev/root", ROOT_DEV, root_device_name);
+
diff --git a/target/device/jp/q5/kernel-patches-2.4.29/004-correct_toolchain b/target/device/jp/q5/kernel-patches-2.4.29/004-correct_toolchain
new file mode 100644 (file)
index 0000000..53e509d
--- /dev/null
@@ -0,0 +1,24 @@
+--- linux-2.4.29/arch/mips/Makefile.orig       2005-03-08 23:24:05.000000000 -0700
++++ linux-2.4.29/arch/mips/Makefile    2005-03-08 23:27:37.000000000 -0700
+@@ -17,16 +17,16 @@
+ # Select the object file format to substitute into the linker script.
+ #
+ ifdef CONFIG_CPU_LITTLE_ENDIAN
+-tool-prefix   = mipsel-linux-
++#tool-prefix  = mipsel-linux-
+ ld-emul               = elf32ltsmip
+ else
+-tool-prefix   = mips-linux-
++#tool-prefix  = mips-linux-
+ ld-emul               = elf32btsmip
+ endif
+-ifdef CONFIG_CROSSCOMPILE
+-CROSS_COMPILE = $(tool-prefix)
+-endif
++#ifdef CONFIG_CROSSCOMPILE
++#CROSS_COMPILE        = $(tool-prefix)
++#endif
+ MAKEBOOT = $(MAKE) -C arch/$(ARCH)/boot
diff --git a/target/device/jp/q5/kernel-patches-2.4.29/100-version b/target/device/jp/q5/kernel-patches-2.4.29/100-version
new file mode 100644 (file)
index 0000000..7e420d1
--- /dev/null
@@ -0,0 +1,11 @@
+--- linux/Makefile.orig        2004-08-18 14:17:14.000000000 -0600
++++ linux/Makefile     2004-08-18 14:17:54.000000000 -0600
+@@ -1,7 +1,7 @@
+ VERSION = 2
+ PATCHLEVEL = 4
+ SUBLEVEL = 29
+-EXTRAVERSION =
++EXTRAVERSION =-q5
+ KERNELRELEASE=$(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION)
diff --git a/target/device/jp/q5/linux.config b/target/device/jp/q5/linux.config
new file mode 100644 (file)
index 0000000..f299cb5
--- /dev/null
@@ -0,0 +1,858 @@
+#
+# Automatically generated by make menuconfig: don't edit
+#
+CONFIG_MIPS=y
+CONFIG_MIPS32=y
+# CONFIG_MIPS64 is not set
+
+#
+# Code maturity level options
+#
+CONFIG_EXPERIMENTAL=y
+
+#
+# Loadable module support
+#
+CONFIG_MODULES=y
+# CONFIG_MODVERSIONS is not set
+# CONFIG_KMOD is not set
+
+#
+# Machine selection
+#
+# CONFIG_ACER_PICA_61 is not set
+# CONFIG_MIPS_BOSPORUS is not set
+# CONFIG_MIPS_MIRAGE is not set
+# CONFIG_MIPS_DB1000 is not set
+# CONFIG_MIPS_DB1100 is not set
+# CONFIG_MIPS_DB1500 is not set
+# CONFIG_MIPS_PB1000 is not set
+# CONFIG_MIPS_PB1100 is not set
+CONFIG_MIPS_PB1500=y
+# CONFIG_MIPS_HYDROGEN3 is not set
+# CONFIG_MIPS_PB1550 is not set
+# CONFIG_MIPS_XXS1500 is not set
+# CONFIG_MIPS_MTX1 is not set
+# CONFIG_COGENT_CSB250 is not set
+# CONFIG_BAGET_MIPS is not set
+# CONFIG_CASIO_E55 is not set
+# CONFIG_MIPS_COBALT is not set
+# CONFIG_DECSTATION is not set
+# CONFIG_MIPS_EV64120 is not set
+# CONFIG_MIPS_EV96100 is not set
+# CONFIG_MIPS_IVR is not set
+# CONFIG_HP_LASERJET is not set
+# CONFIG_IBM_WORKPAD is not set
+# CONFIG_LASAT is not set
+# CONFIG_MIPS_ITE8172 is not set
+# CONFIG_MIPS_ATLAS is not set
+# CONFIG_MIPS_MAGNUM_4000 is not set
+# CONFIG_MIPS_MALTA is not set
+# CONFIG_MIPS_SEAD is not set
+# CONFIG_MOMENCO_OCELOT is not set
+# CONFIG_MOMENCO_OCELOT_G is not set
+# CONFIG_MOMENCO_OCELOT_C is not set
+# CONFIG_MOMENCO_JAGUAR_ATX is not set
+# CONFIG_PMC_YOSEMITE is not set
+# CONFIG_DDB5074 is not set
+# CONFIG_DDB5476 is not set
+# CONFIG_DDB5477 is not set
+# CONFIG_NEC_OSPREY is not set
+# CONFIG_NEC_EAGLE is not set
+# CONFIG_OLIVETTI_M700 is not set
+# CONFIG_NINO is not set
+# CONFIG_SGI_IP22 is not set
+# CONFIG_SGI_IP27 is not set
+# CONFIG_SIBYTE_SB1xxx_SOC is not set
+# CONFIG_SNI_RM200_PCI is not set
+# CONFIG_TANBAC_TB0226 is not set
+# CONFIG_TANBAC_TB0229 is not set
+# CONFIG_TOSHIBA_JMR3927 is not set
+# CONFIG_TOSHIBA_RBTX4927 is not set
+# CONFIG_VICTOR_MPC30X is not set
+# CONFIG_ZAO_CAPCELLA is not set
+# CONFIG_HIGHMEM is not set
+CONFIG_RWSEM_GENERIC_SPINLOCK=y
+# CONFIG_RWSEM_XCHGADD_ALGORITHM is not set
+CONFIG_SOC_AU1X00=y
+CONFIG_SOC_AU1500=y
+CONFIG_NEW_TIME_C=y
+CONFIG_PCI=y
+CONFIG_NEW_PCI=y
+CONFIG_PCI_AUTO=y
+CONFIG_NONCOHERENT_IO=y
+CONFIG_PC_KEYB=y
+# CONFIG_MIPS_AU1000 is not set
+
+#
+# CPU selection
+#
+CONFIG_CPU_MIPS32=y
+# CONFIG_CPU_MIPS64 is not set
+# CONFIG_CPU_R3000 is not set
+# CONFIG_CPU_TX39XX is not set
+# CONFIG_CPU_VR41XX is not set
+# CONFIG_CPU_R4300 is not set
+# CONFIG_CPU_R4X00 is not set
+# CONFIG_CPU_TX49XX is not set
+# CONFIG_CPU_R5000 is not set
+# CONFIG_CPU_R5432 is not set
+# CONFIG_CPU_R6000 is not set
+# CONFIG_CPU_NEVADA is not set
+# CONFIG_CPU_R8000 is not set
+# CONFIG_CPU_R10000 is not set
+# CONFIG_CPU_RM7000 is not set
+# CONFIG_CPU_RM9000 is not set
+# CONFIG_CPU_SB1 is not set
+CONFIG_PAGE_SIZE_4KB=y
+# CONFIG_PAGE_SIZE_16KB is not set
+# CONFIG_PAGE_SIZE_64KB is not set
+CONFIG_CPU_HAS_PREFETCH=y
+# CONFIG_VTAG_ICACHE is not set
+CONFIG_64BIT_PHYS_ADDR=y
+CONFIG_CPU_ADVANCED=y
+CONFIG_CPU_HAS_LLSC=y
+# CONFIG_CPU_HAS_LLDSCD is not set
+CONFIG_CPU_HAS_WB=y
+CONFIG_CPU_HAS_SYNC=y
+
+#
+# General setup
+#
+CONFIG_CPU_LITTLE_ENDIAN=y
+CONFIG_NET=y
+CONFIG_PCI_NAMES=y
+# CONFIG_ISA is not set
+# CONFIG_TC is not set
+# CONFIG_MCA is not set
+# CONFIG_SBUS is not set
+CONFIG_HOTPLUG=y
+
+#
+# PCMCIA/CardBus support
+#
+# CONFIG_PCMCIA is not set
+
+#
+# PCI Hotplug Support
+#
+# CONFIG_HOTPLUG_PCI is not set
+# CONFIG_HOTPLUG_PCI_COMPAQ is not set
+# CONFIG_HOTPLUG_PCI_COMPAQ_NVRAM is not set
+CONFIG_SYSVIPC=y
+# CONFIG_BSD_PROCESS_ACCT is not set
+CONFIG_SYSCTL=y
+CONFIG_KCORE_ELF=y
+# CONFIG_KCORE_AOUT is not set
+# CONFIG_BINFMT_AOUT is not set
+CONFIG_BINFMT_ELF=y
+# CONFIG_MIPS32_COMPAT is not set
+# CONFIG_MIPS32_O32 is not set
+# CONFIG_MIPS32_N32 is not set
+# CONFIG_BINFMT_ELF32 is not set
+# CONFIG_BINFMT_MISC is not set
+# CONFIG_OOM_KILLER is not set
+# CONFIG_PM is not set
+
+#
+# Memory Technology Devices (MTD)
+#
+CONFIG_MTD=y
+# CONFIG_MTD_DEBUG is not set
+CONFIG_MTD_PARTITIONS=y
+CONFIG_MTD_CONCAT=y
+# CONFIG_MTD_REDBOOT_PARTS is not set
+# CONFIG_MTD_CMDLINE_PARTS is not set
+CONFIG_MTD_CHAR=y
+CONFIG_MTD_BLOCK=y
+# CONFIG_FTL is not set
+# CONFIG_NFTL is not set
+
+#
+# RAM/ROM/Flash chip drivers
+#
+CONFIG_MTD_CFI=y
+# CONFIG_MTD_JEDECPROBE is not set
+CONFIG_MTD_GEN_PROBE=y
+CONFIG_MTD_CFI_ADV_OPTIONS=y
+CONFIG_MTD_CFI_NOSWAP=y
+# CONFIG_MTD_CFI_BE_BYTE_SWAP is not set
+# CONFIG_MTD_CFI_LE_BYTE_SWAP is not set
+CONFIG_MTD_CFI_GEOMETRY=y
+# CONFIG_MTD_CFI_B1 is not set
+CONFIG_MTD_CFI_B2=y
+CONFIG_MTD_CFI_B4=y
+# CONFIG_MTD_CFI_B8 is not set
+CONFIG_MTD_CFI_I1=y
+CONFIG_MTD_CFI_I2=y
+# CONFIG_MTD_CFI_I4 is not set
+# CONFIG_MTD_CFI_I8 is not set
+# CONFIG_MTD_CFI_INTELEXT is not set
+CONFIG_MTD_CFI_AMDSTD=y
+# CONFIG_MTD_CFI_STAA is not set
+# CONFIG_MTD_RAM is not set
+CONFIG_MTD_ROM=y
+# CONFIG_MTD_ABSENT is not set
+# CONFIG_MTD_OBSOLETE_CHIPS is not set
+# CONFIG_MTD_AMDSTD is not set
+# CONFIG_MTD_SHARP is not set
+# CONFIG_MTD_JEDEC is not set
+
+#
+# Mapping drivers for chip access
+#
+CONFIG_MTD_PHYSMAP=y
+CONFIG_MTD_PHYSMAP_START=18000000
+CONFIG_MTD_PHYSMAP_LEN=2000000
+CONFIG_MTD_PHYSMAP_BUSWIDTH=4
+# CONFIG_MTD_PB1000 is not set
+# CONFIG_MTD_PB1500 is not set
+# CONFIG_MTD_PB1100 is not set
+# CONFIG_MTD_CSTM_MIPS_IXX is not set
+# CONFIG_MTD_OCELOT is not set
+# CONFIG_MTD_LASAT is not set
+# CONFIG_MTD_PCI is not set
+# CONFIG_MTD_PCMCIA is not set
+
+#
+# Self-contained MTD device drivers
+#
+# CONFIG_MTD_PMC551 is not set
+# CONFIG_MTD_SLRAM is not set
+# CONFIG_MTD_MTDRAM is not set
+# CONFIG_MTD_BLKMTD is not set
+# CONFIG_MTD_DOC1000 is not set
+# CONFIG_MTD_DOC2000 is not set
+# CONFIG_MTD_DOC2001 is not set
+# CONFIG_MTD_DOCPROBE is not set
+
+#
+# NAND Flash Device Drivers
+#
+# CONFIG_MTD_NAND is not set
+
+#
+# Parallel port support
+#
+# CONFIG_PARPORT is not set
+
+#
+# Plug and Play configuration
+#
+# CONFIG_PNP is not set
+# CONFIG_ISAPNP is not set
+
+#
+# Block devices
+#
+# CONFIG_BLK_DEV_FD is not set
+# CONFIG_BLK_DEV_XD is not set
+# CONFIG_PARIDE is not set
+# CONFIG_BLK_CPQ_DA is not set
+# CONFIG_BLK_CPQ_CISS_DA is not set
+# CONFIG_CISS_SCSI_TAPE is not set
+# CONFIG_CISS_MONITOR_THREAD is not set
+# CONFIG_BLK_DEV_DAC960 is not set
+# CONFIG_BLK_DEV_UMEM is not set
+CONFIG_BLK_DEV_LOOP=y
+# CONFIG_BLK_DEV_NBD is not set
+# CONFIG_BLK_DEV_RAM is not set
+# CONFIG_BLK_DEV_INITRD is not set
+# CONFIG_BLK_STATS is not set
+
+#
+# Multi-device support (RAID and LVM)
+#
+# CONFIG_MD is not set
+# CONFIG_BLK_DEV_MD is not set
+# CONFIG_MD_LINEAR is not set
+# CONFIG_MD_RAID0 is not set
+# CONFIG_MD_RAID1 is not set
+# CONFIG_MD_RAID5 is not set
+# CONFIG_MD_MULTIPATH is not set
+# CONFIG_BLK_DEV_LVM is not set
+
+#
+# Networking options
+#
+CONFIG_PACKET=y
+# CONFIG_PACKET_MMAP is not set
+# CONFIG_NETLINK_DEV is not set
+CONFIG_NETFILTER=y
+# CONFIG_NETFILTER_DEBUG is not set
+CONFIG_FILTER=y
+CONFIG_UNIX=y
+CONFIG_INET=y
+CONFIG_IP_MULTICAST=y
+CONFIG_IP_ADVANCED_ROUTER=y
+CONFIG_IP_MULTIPLE_TABLES=y
+# CONFIG_IP_ROUTE_FWMARK is not set
+# CONFIG_IP_ROUTE_NAT is not set
+# CONFIG_IP_ROUTE_MULTIPATH is not set
+# CONFIG_IP_ROUTE_TOS is not set
+# CONFIG_IP_ROUTE_VERBOSE is not set
+CONFIG_IP_PNP=y
+# CONFIG_IP_PNP_DHCP is not set
+CONFIG_IP_PNP_BOOTP=y
+# CONFIG_IP_PNP_RARP is not set
+CONFIG_NET_IPIP=y
+CONFIG_NET_IPGRE=y
+# CONFIG_NET_IPGRE_BROADCAST is not set
+# CONFIG_IP_MROUTE is not set
+# CONFIG_ARPD is not set
+# CONFIG_INET_ECN is not set
+# CONFIG_SYN_COOKIES is not set
+
+#
+#   IP: Netfilter Configuration
+#
+CONFIG_IP_NF_CONNTRACK=m
+CONFIG_IP_NF_FTP=m
+# CONFIG_IP_NF_AMANDA is not set
+# CONFIG_IP_NF_TFTP is not set
+# CONFIG_IP_NF_IRC is not set
+CONFIG_IP_NF_QUEUE=m
+CONFIG_IP_NF_IPTABLES=y
+CONFIG_IP_NF_MATCH_LIMIT=m
+CONFIG_IP_NF_MATCH_MAC=m
+# CONFIG_IP_NF_MATCH_PKTTYPE is not set
+CONFIG_IP_NF_MATCH_MARK=m
+CONFIG_IP_NF_MATCH_MULTIPORT=m
+CONFIG_IP_NF_MATCH_TOS=m
+# CONFIG_IP_NF_MATCH_RECENT is not set
+# CONFIG_IP_NF_MATCH_ECN is not set
+# CONFIG_IP_NF_MATCH_DSCP is not set
+# CONFIG_IP_NF_MATCH_AH_ESP is not set
+# CONFIG_IP_NF_MATCH_LENGTH is not set
+# CONFIG_IP_NF_MATCH_TTL is not set
+CONFIG_IP_NF_MATCH_TCPMSS=m
+# CONFIG_IP_NF_MATCH_HELPER is not set
+CONFIG_IP_NF_MATCH_STATE=m
+# CONFIG_IP_NF_MATCH_CONNTRACK is not set
+CONFIG_IP_NF_MATCH_UNCLEAN=m
+# CONFIG_IP_NF_MATCH_OWNER is not set
+CONFIG_IP_NF_FILTER=m
+CONFIG_IP_NF_TARGET_REJECT=m
+# CONFIG_IP_NF_TARGET_MIRROR is not set
+CONFIG_IP_NF_NAT=m
+CONFIG_IP_NF_NAT_NEEDED=y
+CONFIG_IP_NF_TARGET_MASQUERADE=m
+CONFIG_IP_NF_TARGET_REDIRECT=m
+# CONFIG_IP_NF_NAT_LOCAL is not set
+# CONFIG_IP_NF_NAT_SNMP_BASIC is not set
+CONFIG_IP_NF_NAT_FTP=m
+CONFIG_IP_NF_MANGLE=m
+CONFIG_IP_NF_TARGET_TOS=m
+# CONFIG_IP_NF_TARGET_ECN is not set
+# CONFIG_IP_NF_TARGET_DSCP is not set
+CONFIG_IP_NF_TARGET_MARK=m
+CONFIG_IP_NF_TARGET_LOG=m
+# CONFIG_IP_NF_TARGET_ULOG is not set
+# CONFIG_IP_NF_TARGET_TCPMSS is not set
+# CONFIG_IP_NF_ARPTABLES is not set
+
+#
+#   IP: Virtual Server Configuration
+#
+# CONFIG_IP_VS is not set
+# CONFIG_IPV6 is not set
+# CONFIG_KHTTPD is not set
+
+#
+#    SCTP Configuration (EXPERIMENTAL)
+#
+# CONFIG_IP_SCTP is not set
+# CONFIG_ATM is not set
+CONFIG_VLAN_8021Q=y
+# CONFIG_IPX is not set
+# CONFIG_ATALK is not set
+
+#
+# Appletalk devices
+#
+# CONFIG_DEV_APPLETALK is not set
+# CONFIG_DECNET is not set
+CONFIG_BRIDGE=m
+# CONFIG_X25 is not set
+# CONFIG_LAPB is not set
+# CONFIG_LLC is not set
+# CONFIG_NET_DIVERT is not set
+# CONFIG_ECONET is not set
+# CONFIG_WAN_ROUTER is not set
+# CONFIG_NET_FASTROUTE is not set
+# CONFIG_NET_HW_FLOWCONTROL is not set
+
+#
+# QoS and/or fair queueing
+#
+CONFIG_NET_SCHED=y
+CONFIG_NET_SCH_CBQ=m
+CONFIG_NET_SCH_HTB=m
+# CONFIG_NET_SCH_CSZ is not set
+# CONFIG_NET_SCH_HFSC is not set
+CONFIG_NET_SCH_PRIO=m
+CONFIG_NET_SCH_RED=m
+# CONFIG_NET_SCH_SFQ is not set
+# CONFIG_NET_SCH_TEQL is not set
+CONFIG_NET_SCH_TBF=m
+CONFIG_NET_SCH_GRED=m
+# CONFIG_NET_SCH_DELAY is not set
+CONFIG_NET_SCH_DSMARK=m
+CONFIG_NET_SCH_INGRESS=m
+CONFIG_NET_QOS=y
+CONFIG_NET_ESTIMATOR=y
+CONFIG_NET_CLS=y
+CONFIG_NET_CLS_TCINDEX=m
+CONFIG_NET_CLS_ROUTE4=m
+CONFIG_NET_CLS_ROUTE=y
+CONFIG_NET_CLS_FW=m
+CONFIG_NET_CLS_U32=m
+# CONFIG_NET_CLS_RSVP is not set
+# CONFIG_NET_CLS_RSVP6 is not set
+CONFIG_NET_CLS_POLICE=y
+
+#
+# Network testing
+#
+# CONFIG_NET_PKTGEN is not set
+
+#
+# Telephony Support
+#
+# CONFIG_PHONE is not set
+# CONFIG_PHONE_IXJ is not set
+# CONFIG_PHONE_IXJ_PCMCIA is not set
+
+#
+# ATA/IDE/MFM/RLL support
+#
+# CONFIG_IDE is not set
+# CONFIG_BLK_DEV_HD is not set
+
+#
+# SCSI support
+#
+# CONFIG_SCSI is not set
+
+#
+# Fusion MPT device support
+#
+# CONFIG_FUSION is not set
+# CONFIG_FUSION_BOOT is not set
+# CONFIG_FUSION_ISENSE is not set
+# CONFIG_FUSION_CTL is not set
+# CONFIG_FUSION_LAN is not set
+
+#
+# IEEE 1394 (FireWire) support (EXPERIMENTAL)
+#
+# CONFIG_IEEE1394 is not set
+
+#
+# I2O device support
+#
+# CONFIG_I2O is not set
+# CONFIG_I2O_PCI is not set
+# CONFIG_I2O_BLOCK is not set
+# CONFIG_I2O_LAN is not set
+# CONFIG_I2O_SCSI is not set
+# CONFIG_I2O_PROC is not set
+
+#
+# Network device support
+#
+CONFIG_NETDEVICES=y
+
+#
+# ARCnet devices
+#
+# CONFIG_ARCNET is not set
+# CONFIG_DUMMY is not set
+CONFIG_BONDING=m
+# CONFIG_EQUALIZER is not set
+# CONFIG_TUN is not set
+# CONFIG_ETHERTAP is not set
+
+#
+# Ethernet (10 or 100Mbit)
+#
+CONFIG_NET_ETHERNET=y
+CONFIG_MIPS_AU1X00_ENET=y
+# CONFIG_BCM5222_DUAL_PHY is not set
+# CONFIG_SUNLANCE is not set
+# CONFIG_HAPPYMEAL is not set
+# CONFIG_SUNBMAC is not set
+# CONFIG_SUNQE is not set
+# CONFIG_SUNGEM is not set
+# CONFIG_NET_VENDOR_3COM is not set
+# CONFIG_LANCE is not set
+# CONFIG_NET_VENDOR_SMC is not set
+# CONFIG_NET_VENDOR_RACAL is not set
+# CONFIG_HP100 is not set
+# CONFIG_NET_ISA is not set
+CONFIG_NET_PCI=y
+# CONFIG_PCNET32 is not set
+# CONFIG_AMD8111_ETH is not set
+# CONFIG_ADAPTEC_STARFIRE is not set
+# CONFIG_APRICOT is not set
+# CONFIG_B44 is not set
+# CONFIG_CS89x0 is not set
+# CONFIG_TULIP is not set
+# CONFIG_DE4X5 is not set
+# CONFIG_DGRS is not set
+# CONFIG_DM9102 is not set
+# CONFIG_EEPRO100 is not set
+# CONFIG_EEPRO100_PIO is not set
+# CONFIG_E100 is not set
+# CONFIG_LNE390 is not set
+# CONFIG_FEALNX is not set
+# CONFIG_NATSEMI is not set
+# CONFIG_NE2K_PCI is not set
+# CONFIG_FORCEDETH is not set
+# CONFIG_NE3210 is not set
+# CONFIG_ES3210 is not set
+# CONFIG_8139CP is not set
+CONFIG_8139TOO=y
+CONFIG_8139TOO_PIO=y
+# CONFIG_8139TOO_TUNE_TWISTER is not set
+# CONFIG_8139TOO_8129 is not set
+# CONFIG_8139_OLD_RX_RESET is not set
+# CONFIG_SIS900 is not set
+# CONFIG_EPIC100 is not set
+# CONFIG_SUNDANCE is not set
+# CONFIG_SUNDANCE_MMIO is not set
+# CONFIG_TLAN is not set
+# CONFIG_VIA_RHINE is not set
+# CONFIG_VIA_RHINE_MMIO is not set
+# CONFIG_WINBOND_840 is not set
+# CONFIG_LAN_SAA9730 is not set
+# CONFIG_NET_POCKET is not set
+
+#
+# Ethernet (1000 Mbit)
+#
+# CONFIG_ACENIC is not set
+# CONFIG_DL2K is not set
+# CONFIG_E1000 is not set
+# CONFIG_MYRI_SBUS is not set
+# CONFIG_NS83820 is not set
+# CONFIG_HAMACHI is not set
+# CONFIG_YELLOWFIN is not set
+# CONFIG_R8169 is not set
+# CONFIG_SK98LIN is not set
+# CONFIG_TIGON3 is not set
+# CONFIG_FDDI is not set
+# CONFIG_HIPPI is not set
+# CONFIG_PLIP is not set
+CONFIG_PPP=m
+# CONFIG_PPP_MULTILINK is not set
+# CONFIG_PPP_FILTER is not set
+CONFIG_PPP_ASYNC=m
+# CONFIG_PPP_SYNC_TTY is not set
+CONFIG_PPP_DEFLATE=m
+CONFIG_PPP_BSDCOMP=m
+CONFIG_PPPOE=m
+# CONFIG_SLIP is not set
+
+#
+# Wireless LAN (non-hamradio)
+#
+CONFIG_NET_RADIO=y
+CONFIG_STRIP=m
+CONFIG_WAVELAN=m
+CONFIG_ARLAN=m
+CONFIG_AIRONET4500=m
+CONFIG_AIRONET4500_NONCS=m
+CONFIG_AIRONET4500_PNP=y
+CONFIG_AIRONET4500_PCI=y
+# CONFIG_AIRONET4500_ISA is not set
+# CONFIG_AIRONET4500_I365 is not set
+CONFIG_AIRONET4500_PROC=m
+CONFIG_AIRO=m
+# CONFIG_HERMES is not set
+# CONFIG_PLX_HERMES is not set
+# CONFIG_TMD_HERMES is not set
+# CONFIG_PCI_HERMES is not set
+CONFIG_NET_WIRELESS=y
+
+#
+# Token Ring devices
+#
+# CONFIG_TR is not set
+# CONFIG_NET_FC is not set
+# CONFIG_RCPCI is not set
+# CONFIG_SHAPER is not set
+
+#
+# Wan interfaces
+#
+# CONFIG_WAN is not set
+
+#
+# Amateur Radio support
+#
+# CONFIG_HAMRADIO is not set
+
+#
+# IrDA (infrared) support
+#
+# CONFIG_IRDA is not set
+
+#
+# ISDN subsystem
+#
+# CONFIG_ISDN is not set
+
+#
+# Input core support
+#
+# CONFIG_INPUT is not set
+# CONFIG_INPUT_KEYBDEV is not set
+# CONFIG_INPUT_MOUSEDEV is not set
+# CONFIG_INPUT_JOYDEV is not set
+# CONFIG_INPUT_EVDEV is not set
+# CONFIG_INPUT_UINPUT is not set
+
+#
+# Character devices
+#
+CONFIG_VT=y
+CONFIG_VT_CONSOLE=y
+# CONFIG_SERIAL is not set
+# CONFIG_SERIAL_EXTENDED is not set
+CONFIG_SERIAL_NONSTANDARD=y
+# CONFIG_COMPUTONE is not set
+# CONFIG_ROCKETPORT is not set
+# CONFIG_CYCLADES is not set
+# CONFIG_DIGIEPCA is not set
+# CONFIG_DIGI is not set
+# CONFIG_ESPSERIAL is not set
+# CONFIG_MOXA_INTELLIO is not set
+# CONFIG_MOXA_SMARTIO is not set
+# CONFIG_ISI is not set
+# CONFIG_SYNCLINK is not set
+# CONFIG_SYNCLINKMP is not set
+# CONFIG_N_HDLC is not set
+# CONFIG_RISCOM8 is not set
+# CONFIG_SPECIALIX is not set
+# CONFIG_SX is not set
+# CONFIG_RIO is not set
+# CONFIG_STALDRV is not set
+# CONFIG_SERIAL_TX3912 is not set
+# CONFIG_SERIAL_TX3912_CONSOLE is not set
+# CONFIG_SERIAL_TXX9 is not set
+# CONFIG_SERIAL_TXX9_CONSOLE is not set
+CONFIG_AU1X00_UART=y
+CONFIG_AU1X00_SERIAL_CONSOLE=y
+# CONFIG_AU1X00_USB_TTY is not set
+# CONFIG_AU1X00_USB_RAW is not set
+# CONFIG_TXX927_SERIAL is not set
+CONFIG_UNIX98_PTYS=y
+CONFIG_UNIX98_PTY_COUNT=256
+
+#
+# I2C support
+#
+# CONFIG_I2C is not set
+
+#
+# Mice
+#
+# CONFIG_BUSMOUSE is not set
+# CONFIG_MOUSE is not set
+
+#
+# Joysticks
+#
+# CONFIG_INPUT_GAMEPORT is not set
+# CONFIG_QIC02_TAPE is not set
+# CONFIG_IPMI_HANDLER is not set
+# CONFIG_IPMI_PANIC_EVENT is not set
+# CONFIG_IPMI_DEVICE_INTERFACE is not set
+# CONFIG_IPMI_KCS is not set
+# CONFIG_IPMI_WATCHDOG is not set
+
+#
+# Watchdog Cards
+#
+# CONFIG_WATCHDOG is not set
+# CONFIG_SCx200 is not set
+# CONFIG_SCx200_GPIO is not set
+# CONFIG_AMD_PM768 is not set
+# CONFIG_NVRAM is not set
+# CONFIG_RTC is not set
+# CONFIG_MIPS_RTC is not set
+# CONFIG_DTLK is not set
+# CONFIG_R3964 is not set
+# CONFIG_APPLICOM is not set
+
+#
+# Ftape, the floppy tape device driver
+#
+# CONFIG_FTAPE is not set
+# CONFIG_AGP is not set
+
+#
+# Direct Rendering Manager (XFree86 DRI support)
+#
+# CONFIG_DRM is not set
+# CONFIG_AU1X00_GPIO is not set
+# CONFIG_TS_AU1X00_ADS7846 is not set
+
+#
+# File systems
+#
+# CONFIG_QUOTA is not set
+# CONFIG_QFMT_V2 is not set
+# CONFIG_AUTOFS_FS is not set
+# CONFIG_AUTOFS4_FS is not set
+# CONFIG_REISERFS_FS is not set
+# CONFIG_REISERFS_CHECK is not set
+# CONFIG_REISERFS_PROC_INFO is not set
+# CONFIG_ADFS_FS is not set
+# CONFIG_ADFS_FS_RW is not set
+# CONFIG_AFFS_FS is not set
+# CONFIG_HFS_FS is not set
+# CONFIG_HFSPLUS_FS is not set
+# CONFIG_BEFS_FS is not set
+# CONFIG_BEFS_DEBUG is not set
+# CONFIG_BFS_FS is not set
+# CONFIG_EXT3_FS is not set
+# CONFIG_JBD is not set
+# CONFIG_JBD_DEBUG is not set
+# CONFIG_FAT_FS is not set
+# CONFIG_MSDOS_FS is not set
+# CONFIG_UMSDOS_FS is not set
+# CONFIG_VFAT_FS is not set
+# CONFIG_EFS_FS is not set
+# CONFIG_JFFS_FS is not set
+CONFIG_JFFS2_FS=y
+CONFIG_JFFS2_FS_DEBUG=0
+# CONFIG_CRAMFS is not set
+CONFIG_TMPFS=y
+CONFIG_RAMFS=y
+# CONFIG_ISO9660_FS is not set
+# CONFIG_JOLIET is not set
+# CONFIG_ZISOFS is not set
+# CONFIG_JFS_FS is not set
+# CONFIG_JFS_DEBUG is not set
+# CONFIG_JFS_STATISTICS is not set
+# CONFIG_MINIX_FS is not set
+# CONFIG_VXFS_FS is not set
+# CONFIG_NTFS_FS is not set
+# CONFIG_NTFS_RW is not set
+# CONFIG_HPFS_FS is not set
+CONFIG_PROC_FS=y
+# CONFIG_DEVFS_FS is not set
+# CONFIG_DEVFS_MOUNT is not set
+# CONFIG_DEVFS_DEBUG is not set
+CONFIG_DEVPTS_FS=y
+# CONFIG_QNX4FS_FS is not set
+# CONFIG_QNX4FS_RW is not set
+# CONFIG_ROMFS_FS is not set
+# CONFIG_EXT2_FS is not set
+# CONFIG_SYSV_FS is not set
+# CONFIG_UDF_FS is not set
+# CONFIG_UDF_RW is not set
+# CONFIG_UFS_FS is not set
+# CONFIG_UFS_FS_WRITE is not set
+# CONFIG_XFS_FS is not set
+# CONFIG_XFS_QUOTA is not set
+# CONFIG_XFS_RT is not set
+# CONFIG_XFS_TRACE is not set
+# CONFIG_XFS_DEBUG is not set
+
+#
+# Network File Systems
+#
+# CONFIG_CODA_FS is not set
+# CONFIG_INTERMEZZO_FS is not set
+# CONFIG_NFS_FS is not set
+# CONFIG_NFS_V3 is not set
+# CONFIG_NFS_DIRECTIO is not set
+# CONFIG_ROOT_NFS is not set
+# CONFIG_NFSD is not set
+# CONFIG_NFSD_V3 is not set
+# CONFIG_NFSD_TCP is not set
+# CONFIG_SUNRPC is not set
+# CONFIG_LOCKD is not set
+# CONFIG_SMB_FS is not set
+# CONFIG_NCP_FS is not set
+# CONFIG_NCPFS_PACKET_SIGNING is not set
+# CONFIG_NCPFS_IOCTL_LOCKING is not set
+# CONFIG_NCPFS_STRONG is not set
+# CONFIG_NCPFS_NFS_NS is not set
+# CONFIG_NCPFS_OS2_NS is not set
+# CONFIG_NCPFS_SMALLDOS is not set
+# CONFIG_NCPFS_NLS is not set
+# CONFIG_NCPFS_EXTRAS is not set
+# CONFIG_ZISOFS_FS is not set
+
+#
+# Partition Types
+#
+# CONFIG_PARTITION_ADVANCED is not set
+CONFIG_MSDOS_PARTITION=y
+# CONFIG_SMB_NLS is not set
+# CONFIG_NLS is not set
+
+#
+# Multimedia devices
+#
+# CONFIG_VIDEO_DEV is not set
+
+#
+# Console drivers
+#
+# CONFIG_VGA_CONSOLE is not set
+# CONFIG_MDA_CONSOLE is not set
+
+#
+# Frame-buffer support
+#
+# CONFIG_FB is not set
+
+#
+# Sound
+#
+# CONFIG_SOUND is not set
+
+#
+# USB support
+#
+# CONFIG_USB is not set
+
+#
+# Support for USB gadgets
+#
+# CONFIG_USB_GADGET is not set
+
+#
+# Bluetooth support
+#
+# CONFIG_BLUEZ is not set
+
+#
+# Kernel hacking
+#
+CONFIG_CROSSCOMPILE=y
+# CONFIG_RUNTIME_DEBUG is not set
+# CONFIG_KGDB is not set
+# CONFIG_GDB_CONSOLE is not set
+# CONFIG_DEBUG_INFO is not set
+# CONFIG_MAGIC_SYSRQ is not set
+# CONFIG_MIPS_UNCACHED is not set
+CONFIG_LOG_BUF_SHIFT=0
+
+#
+# Cryptographic options
+#
+# CONFIG_CRYPTO is not set
+
+#
+# Library routines
+#
+# CONFIG_CRC32 is not set
+CONFIG_ZLIB_INFLATE=y
+CONFIG_ZLIB_DEFLATE=y
+CONFIG_FW_LOADER=y
diff --git a/target/device/jp/q5/linux.mk b/target/device/jp/q5/linux.mk
new file mode 100644 (file)
index 0000000..32b8c3d
--- /dev/null
@@ -0,0 +1,132 @@
+#############################################################
+#
+# Linux kernel targets
+#
+# Note:  If you have any patches to apply, create the directory
+# sources/kernel-patches and put your patches in there and number
+# them in the order you wish to apply them...  i.e.
+#
+#   sources/kernel-patches/001-my-special-stuff.bz2
+#   sources/kernel-patches/003-gcc-Os.bz2
+#   sources/kernel-patches/004_no-warnings.bz2
+#   sources/kernel-patches/030-lowlatency-mini.bz2
+#   sources/kernel-patches/031-lowlatency-fixes-5.bz2
+#   sources/kernel-patches/099-shutup.bz2
+#   etc...
+#
+# these patches will all be applied by the patch-kernel.sh
+# script (which will also abort the build if it finds rejects)
+#  -Erik
+#
+#############################################################
+ifneq ($(filter $(TARGETS),linux),)
+
+# Base version of Linux kernel that we need to download
+DOWNLOAD_LINUX_VERSION=2.4.26
+# Version of Linux kernel AFTER applying all patches
+LINUX_VERSION=$(DOWNLOAD_LINUX_VERSION)-q5
+
+
+# File name for the Linux kernel binary
+LINUX_KERNEL=linux-kernel-$(LINUX_VERSION)-$(ARCH).srec
+
+
+# Linux kernel configuration file
+LINUX_KCONFIG=$(JP_Q5_PATH)/linux.config
+
+# kernel patches
+LINUX_PATCH_DIR=target/device/jp/q5/kernel-patches-$(DOWNLOAD_LINUX_VERSION)/
+
+
+
+
+LINUX_FORMAT=vmlinux
+LINUX_KARCH:=$(shell echo $(ARCH) | sed -e 's/i[3-9]86/i386/' \
+       -e 's/mipsel/mips/' \
+       -e 's/powerpc/ppc/' \
+       -e 's/sh[234]/sh/' \
+       )
+LINUX_BINLOC=$(LINUX_FORMAT)
+LINUX_DIR=$(BUILD_DIR)/linux-$(LINUX_VERSION)
+LINUX_SOURCE=linux-$(DOWNLOAD_LINUX_VERSION).tar.bz2
+LINUX_SITE=http://www.kernel.org/pub/linux/kernel/v2.4
+# Used by pcmcia-cs and others
+LINUX_SOURCE_DIR=$(LINUX_DIR)
+
+
+$(DL_DIR)/$(LINUX_SOURCE):
+       -mkdir -p $(DL_DIR)
+       $(WGET) -P $(DL_DIR) $(LINUX_SITE)/$(LINUX_SOURCE)
+
+$(LINUX_DIR)/.unpacked: $(DL_DIR)/$(LINUX_SOURCE)
+       -mkdir -p $(TOOL_BUILD_DIR)
+       -(cd $(TOOL_BUILD_DIR); ln -snf $(LINUX_DIR) linux)
+       bzcat $(DL_DIR)/$(LINUX_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
+ifneq ($(DOWNLOAD_LINUX_VERSION),$(LINUX_VERSION))
+       # Rename the dir from the downloaded version to the AFTER patch version
+       mv -f $(BUILD_DIR)/linux-$(DOWNLOAD_LINUX_VERSION) $(BUILD_DIR)/linux-$(LINUX_VERSION)
+endif
+       toolchain/patch-kernel.sh $(LINUX_DIR) $(LINUX_PATCH_DIR)
+       touch $(LINUX_DIR)/.unpacked
+
+$(LINUX_KCONFIG):
+       @if [ ! -f "$(LINUX_KCONFIG)" ] ; then \
+               echo ""; \
+               echo "You should create a .config for your kernel"; \
+               echo "and install it as $(LINUX_KCONFIG)"; \
+               echo ""; \
+               sleep 5; \
+       fi;
+
+$(LINUX_DIR)/.configured $(BUILD_DIR)/linux/.configured:  $(LINUX_DIR)/.unpacked  $(LINUX_KCONFIG)
+       $(SED) "s,^ARCH.*,ARCH=$(LINUX_KARCH),g;" $(LINUX_DIR)/Makefile
+       $(SED) "s,^CROSS_COMPILE.*,CROSS_COMPILE=$(KERNEL_CROSS),g;" $(LINUX_DIR)/Makefile
+       -cp $(LINUX_KCONFIG) $(LINUX_DIR)/.config
+ifeq ($(strip $(BR2_mips)),y)
+       $(SED) "s,CONFIG_CPU_LITTLE_ENDIAN=y,# CONFIG_CPU_LITTLE_ENDIAN is not set\n# CONFIG_BINFMT_IRIX is not set," $(LINUX_DIR)/.config
+endif
+       $(MAKE) PATH=$(TARGET_PATH) -C $(LINUX_DIR) oldconfig include/linux/version.h
+       touch $(LINUX_DIR)/.configured
+
+$(LINUX_DIR)/.depend_done:  $(LINUX_DIR)/.configured
+       $(MAKE) PATH=$(TARGET_PATH) -C $(LINUX_DIR) dep
+       touch $(LINUX_DIR)/.depend_done
+
+$(LINUX_DIR)/$(LINUX_BINLOC): $(LINUX_DIR)/.depend_done
+       $(MAKE) PATH=$(TARGET_PATH) -C $(LINUX_DIR) $(LINUX_FORMAT)
+       $(MAKE) PATH=$(TARGET_PATH) -C $(LINUX_DIR) modules
+
+$(LINUX_KERNEL): $(LINUX_DIR)/$(LINUX_BINLOC)
+       $(KERNEL_CROSS)objcopy -O srec $(LINUX_DIR)/$(LINUX_BINLOC) $(LINUX_KERNEL)
+       touch -c $(LINUX_KERNEL)
+
+$(TARGET_DIR)/lib/modules/$(LINUX_VERSION)/modules.dep: $(LINUX_KERNEL)
+       rm -rf $(TARGET_DIR)/lib/modules
+       rm -f $(TARGET_DIR)/sbin/cardmgr
+       $(MAKE) PATH=$(TARGET_PATH) -C $(LINUX_DIR) DEPMOD=`which true` \
+               INSTALL_MOD_PATH=$(TARGET_DIR) modules_install
+       (cd $(TARGET_DIR)/lib/modules; ln -s $(LINUX_VERSION)/kernel/drivers .)
+       $(JP_Q5_PATH)/depmod.pl \
+               -b $(TARGET_DIR)/lib/modules/$(LINUX_VERSION)/ \
+               -k $(LINUX_DIR)/vmlinux \
+               -F $(LINUX_DIR)/System.map \
+               > $(TARGET_DIR)/lib/modules/$(LINUX_VERSION)/modules.dep
+
+$(STAGING_DIR)/include/linux/version.h: $(LINUX_DIR)/.configured
+       mkdir -p $(STAGING_DIR)/include
+       tar -ch -C $(LINUX_DIR)/include -f - linux | tar -xf - -C $(STAGING_DIR)/include/
+       tar -ch -C $(LINUX_DIR)/include -f - asm | tar -xf - -C $(STAGING_DIR)/include/
+
+linux: $(STAGING_DIR)/include/linux/version.h $(TARGET_DIR)/lib/modules/$(LINUX_VERSION)/modules.dep
+
+linux-source: $(DL_DIR)/$(LINUX_SOURCE)
+
+# This has been renamed so we do _NOT_ by default run this on 'make clean'
+linuxclean: clean
+       rm -f $(LINUX_KERNEL)
+       -$(MAKE) PATH=$(TARGET_PATH) -C $(LINUX_DIR) clean
+
+linux-dirclean:
+       rm -rf $(LINUX_DIR)
+
+endif
diff --git a/target/device/jp/q5/skel.tar.gz b/target/device/jp/q5/skel.tar.gz
new file mode 100644 (file)
index 0000000..301c5cf
Binary files /dev/null and b/target/device/jp/q5/skel.tar.gz differ
diff --git a/target/device/jp/q5/target_skeleton/etc/TZ b/target/device/jp/q5/target_skeleton/etc/TZ
new file mode 100644 (file)
index 0000000..9fcb2a3
--- /dev/null
@@ -0,0 +1 @@
+MST7MDT
diff --git a/target/device/jp/q5/target_skeleton/etc/fstab b/target/device/jp/q5/target_skeleton/etc/fstab
new file mode 100644 (file)
index 0000000..6d33629
--- /dev/null
@@ -0,0 +1,8 @@
+# /etc/fstab: static file system information.
+#
+# <file system> <mount pt>     <type>  <options>         <dump> <pass>
+/dev/root       /              ext2    rw,noauto         0      1
+proc           /proc          proc     defaults          0      0
+devpts         /dev/pts       devpts   defaults,gid=5,mode=620   0      0
+tmpfs           /tmp           tmpfs    defaults          0      0
+
diff --git a/target/device/jp/q5/target_skeleton/etc/group b/target/device/jp/q5/target_skeleton/etc/group
new file mode 100644 (file)
index 0000000..a21ef0f
--- /dev/null
@@ -0,0 +1,10 @@
+root:x:0:
+daemon:x:1:
+bin:x:2:
+sys:x:3:
+adm:x:4:
+tty:x:5:
+disk:x:6:
+utmp:x:43:
+staff:x:50:
+default:x:1000:
diff --git a/target/device/jp/q5/target_skeleton/etc/hostname b/target/device/jp/q5/target_skeleton/etc/hostname
new file mode 100644 (file)
index 0000000..52e67d6
--- /dev/null
@@ -0,0 +1 @@
+uclibc
diff --git a/target/device/jp/q5/target_skeleton/etc/hosts b/target/device/jp/q5/target_skeleton/etc/hosts
new file mode 100644 (file)
index 0000000..ba712fe
--- /dev/null
@@ -0,0 +1 @@
+127.0.0.1      localhost
diff --git a/target/device/jp/q5/target_skeleton/etc/init.d/S20urandom b/target/device/jp/q5/target_skeleton/etc/init.d/S20urandom
new file mode 100755 (executable)
index 0000000..433fafe
--- /dev/null
@@ -0,0 +1,44 @@
+#! /bin/sh
+#
+# urandom      This script saves the random seed between reboots.
+#              It is called from the boot, halt and reboot scripts.
+#
+# Version:     @(#)urandom  1.33  22-Jun-1998  miquels@cistron.nl
+#
+
+[ -c /dev/urandom ] || exit 0
+#. /etc/default/rcS
+
+case "$1" in
+       start|"")
+               if [ "$VERBOSE" != no ]
+               then
+                       echo -n "Initializing random number generator... "
+               fi
+               # Load and then save 512 bytes,
+               # which is the size of the entropy pool
+               if [ -f /etc/random-seed ]
+               then
+                       cat /etc/random-seed >/dev/urandom
+               fi
+               rm -f /etc/random-seed
+               umask 077
+               dd if=/dev/urandom of=/etc/random-seed count=1 \
+                       >/dev/null 2>&1 || echo "urandom start: failed."
+               umask 022
+               [ "$VERBOSE" != no ] && echo "done."
+               ;;
+       stop)
+               # Carry a random seed from shut-down to start-up;
+               # see documentation in linux/drivers/char/random.c
+               [ "$VERBOSE" != no ] && echo -n "Saving random seed... "
+               umask 077
+               dd if=/dev/urandom of=/etc/random-seed count=1 \
+                       >/dev/null 2>&1 || echo "urandom stop: failed."
+               [ "$VERBOSE" != no ] && echo "done."
+               ;;
+       *)
+               echo "Usage: urandom {start|stop}" >&2
+               exit 1
+               ;;
+esac
diff --git a/target/device/jp/q5/target_skeleton/etc/init.d/S40network b/target/device/jp/q5/target_skeleton/etc/init.d/S40network
new file mode 100755 (executable)
index 0000000..d835d9c
--- /dev/null
@@ -0,0 +1,35 @@
+#!/bin/sh
+#
+# Start the network....
+#
+
+start() {
+       echo "Starting network..."
+       /sbin/ifup -a
+}      
+stop() {
+       echo -n "Stopping network..."
+       /sbin/ifdown -a
+}
+restart() {
+       stop
+       start
+}      
+
+case "$1" in
+  start)
+       start
+       ;;
+  stop)
+       stop
+       ;;
+  restart|reload)
+       restart
+       ;;
+  *)
+       echo $"Usage: $0 {start|stop|restart}"
+       exit 1
+esac
+
+exit $?
+
diff --git a/target/device/jp/q5/target_skeleton/etc/init.d/rcS b/target/device/jp/q5/target_skeleton/etc/init.d/rcS
new file mode 100755 (executable)
index 0000000..de41153
--- /dev/null
@@ -0,0 +1,27 @@
+#!/bin/sh
+
+
+# Start all init scripts in /etc/init.d
+# executing them in numerical order.
+#
+for i in /etc/init.d/S??* ;do
+
+     # Ignore dangling symlinks (if any).
+     [ ! -f "$i" ] && continue
+
+     case "$i" in
+       *.sh)
+           # Source shell script for speed.
+           (
+               trap - INT QUIT TSTP
+               set start
+               . $i
+           )
+           ;;
+       *)
+           # No sh extension, so fork subprocess.
+           $i start
+           ;;
+    esac
+done
+
diff --git a/target/device/jp/q5/target_skeleton/etc/inittab b/target/device/jp/q5/target_skeleton/etc/inittab
new file mode 100644 (file)
index 0000000..8c809af
--- /dev/null
@@ -0,0 +1,47 @@
+# /etc/inittab
+#
+# Copyright (C) 2001 Erik Andersen <andersen@codepoet.org>
+#
+# Note: BusyBox init doesn't support runlevels.  The runlevels field is
+# completely ignored by BusyBox init. If you want runlevels, use
+# sysvinit.
+#
+# Format for each entry: <id>:<runlevels>:<action>:<process>
+#
+# id        == tty to run on, or empty for /dev/console
+# runlevels == ignored
+# action    == one of sysinit, respawn, askfirst, wait, and once
+# process   == program to run
+
+# Startup the system
+null::sysinit:/bin/mount -o remount,rw /
+null::sysinit:/bin/mount -t proc proc /proc
+null::sysinit:/bin/mount -a
+null::sysinit:/bin/hostname -F /etc/hostname
+null::sysinit:/sbin/ifconfig lo 127.0.0.1 up
+null::sysinit:/sbin/route add -net 127.0.0.0 netmask 255.0.0.0 lo
+# now run any rc scripts
+::sysinit:/etc/init.d/rcS
+
+# Set up a couple of getty's
+#tty1::respawn:/sbin/getty 38400 tty1
+#tty2::respawn:/sbin/getty 38400 tty2
+
+# Put a getty on the serial port
+ttyS0::respawn:/sbin/getty -L ttyS0 115200 vt100
+
+# Logging junk
+null::sysinit:/bin/touch /var/log/messages
+null::respawn:/sbin/syslogd -n -m 0
+null::respawn:/sbin/klogd -n
+#tty3::respawn:/usr/bin/tail -f /var/log/messages
+
+# Stuff to do for the 3-finger salute
+::ctrlaltdel:/sbin/reboot
+
+# Stuff to do before rebooting
+null::shutdown:/usr/bin/killall klogd
+null::shutdown:/usr/bin/killall syslogd
+null::shutdown:/bin/umount -a -r
+null::shutdown:/sbin/swapoff -a
+
diff --git a/target/device/jp/q5/target_skeleton/etc/inputrc b/target/device/jp/q5/target_skeleton/etc/inputrc
new file mode 100644 (file)
index 0000000..2f1cb60
--- /dev/null
@@ -0,0 +1,44 @@
+# /etc/inputrc - global inputrc for libreadline
+# See readline(3readline) and `info readline' for more information.
+
+# Be 8 bit clean.
+set input-meta on
+set output-meta on
+set bell-style visible
+
+# To allow the use of 8bit-characters like the german umlauts, comment out
+# the line below. However this makes the meta key not work as a meta key,
+# which is annoying to those which don't need to type in 8-bit characters.
+
+# set convert-meta off
+
+"\e0d": backward-word
+"\e0c": forward-word
+"\e[h": beginning-of-line
+"\e[f": end-of-line
+"\e[1~": beginning-of-line
+"\e[4~": end-of-line
+#"\e[5~": beginning-of-history
+#"\e[6~": end-of-history
+"\e[3~": delete-char
+"\e[2~": quoted-insert
+
+# Common standard keypad and cursor
+# (codes courtsey Werner Fink, <werner@suse.de>)
+#"\e[1~": history-search-backward
+"\e[2~": yank
+"\e[3~": delete-char
+#"\e[4~": set-mark
+"\e[5~": history-search-backward
+"\e[6~": history-search-forward
+# Normal keypad and cursor of xterm
+"\e[F": end-of-line
+"\e[H": beginning-of-line
+# Application keypad and cursor of xterm
+"\eOA": previous-history
+"\eOC": forward-char
+"\eOB": next-history
+"\eOD": backward-char
+"\eOF": end-of-line
+"\eOH": beginning-of-line
+
diff --git a/target/device/jp/q5/target_skeleton/etc/issue b/target/device/jp/q5/target_skeleton/etc/issue
new file mode 100644 (file)
index 0000000..f24b862
--- /dev/null
@@ -0,0 +1,4 @@
+
+
+Welcome to the Erik's uClibc development environment.
+
diff --git a/target/device/jp/q5/target_skeleton/etc/network/interfaces b/target/device/jp/q5/target_skeleton/etc/network/interfaces
new file mode 100644 (file)
index 0000000..218b82c
--- /dev/null
@@ -0,0 +1,4 @@
+# Configure Loopback
+auto lo
+iface lo inet loopback
+
diff --git a/target/device/jp/q5/target_skeleton/etc/passwd b/target/device/jp/q5/target_skeleton/etc/passwd
new file mode 100644 (file)
index 0000000..e0f473f
--- /dev/null
@@ -0,0 +1,13 @@
+root:x:0:0:root:/root:/bin/sh
+daemon:x:1:1:daemon:/usr/sbin:/bin/sh
+bin:x:2:2:bin:/bin:/bin/sh
+sys:x:3:3:sys:/dev:/bin/sh
+sync:x:4:100:sync:/bin:/bin/sync
+mail:x:8:8:mail:/var/spool/mail:/bin/sh
+proxy:x:13:13:proxy:/bin:/bin/sh
+www-data:x:33:33:www-data:/var/www:/bin/sh
+backup:x:34:34:backup:/var/backups:/bin/sh
+operator:x:37:37:Operator:/var:/bin/sh
+sshd:x:103:99:Operator:/var:/bin/sh
+nobody:x:99:99:nobody:/home:/bin/sh
+default:x:1000:1000:Default non-root user:/home/default:/bin/sh
diff --git a/target/device/jp/q5/target_skeleton/etc/profile b/target/device/jp/q5/target_skeleton/etc/profile
new file mode 100644 (file)
index 0000000..6aa4259
--- /dev/null
@@ -0,0 +1,48 @@
+# ~/.bashrc: executed by bash(1) for non-login interactive shells.
+
+export PATH=\
+/bin:\
+/sbin:\
+/usr/bin:\
+/usr/sbin:\
+/usr/bin/X11:\
+/usr/local/bin
+
+# If running interactively, then:
+if [ "$PS1" ]; then
+
+    if [ "$BASH" ]; then
+       export PS1="[\u@\h \W]\\$ "
+       alias ll='/bin/ls -laFh'
+       alias ls='/bin/ls -F'
+       export LS_COLORS='no=00:fi=00:di=01;34:ln=01;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.gz=01;31:*.bz2=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.jpg=01;35:*.jpeg=01;35:*.png=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.mpg=01;35:*.mpeg=01;35:*.avi=01;35:*.fli=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:';
+    else
+      if [ "`id -u`" -eq 0 ]; then 
+       export PS1='# '
+      else
+       export PS1='$ '
+      fi
+    fi
+
+    export USER=`id -un`
+    export LOGNAME=$USER
+    export HOSTNAME=`/bin/hostname`
+    export HISTSIZE=1000
+    export HISTFILESIZE=1000
+    export PAGER='/bin/more '
+    export EDITOR='/bin/vi'
+    export INPUTRC=/etc/inputrc
+    export DMALLOC_OPTIONS=debug=0x34f47d83,inter=100,log=logfile
+
+    ### Some aliases
+    alias ps2='ps facux '
+    alias ps1='ps faxo "%U %t %p %a" '
+    alias af='ps af'
+    alias cls='clear'
+    alias df='df -h'
+    alias indent='indent -bad -bap -bbo -nbc -br -brs -c33 -cd33 -ncdb -ce -ci4 -cli0 -cp33 -cs -d0 -di1 -nfc1 -nfca -hnl -i4 -ip0 -l75 -lp -npcs -npsl -nsc -nsob -nss -ts4 '
+    #alias bc='bc -l'
+    alias minicom='minicom -c on'
+    alias calc='calc -Cd '
+    alias bc='calc -Cd '
+fi;
diff --git a/target/device/jp/q5/target_skeleton/etc/protocols b/target/device/jp/q5/target_skeleton/etc/protocols
new file mode 100644 (file)
index 0000000..1ac8a40
--- /dev/null
@@ -0,0 +1,31 @@
+# /etc/protocols:
+# $Id: protocols,v 1.1 2004/10/09 02:49:18 andersen Exp $
+#
+# Internet (IP) protocols
+#
+#      from: @(#)protocols     5.1 (Berkeley) 4/17/89
+#
+# Updated for NetBSD based on RFC 1340, Assigned Numbers (July 1992).
+
+ip     0       IP              # internet protocol, pseudo protocol number
+icmp   1       ICMP            # internet control message protocol
+igmp   2       IGMP            # Internet Group Management
+ggp    3       GGP             # gateway-gateway protocol
+ipencap        4       IP-ENCAP        # IP encapsulated in IP (officially ``IP'')
+st     5       ST              # ST datagram mode
+tcp    6       TCP             # transmission control protocol
+egp    8       EGP             # exterior gateway protocol
+pup    12      PUP             # PARC universal packet protocol
+udp    17      UDP             # user datagram protocol
+hmp    20      HMP             # host monitoring protocol
+xns-idp        22      XNS-IDP         # Xerox NS IDP
+rdp    27      RDP             # "reliable datagram" protocol
+iso-tp4        29      ISO-TP4         # ISO Transport Protocol class 4
+xtp    36      XTP             # Xpress Tranfer Protocol
+ddp    37      DDP             # Datagram Delivery Protocol
+idpr-cmtp      39      IDPR-CMTP       # IDPR Control Message Transport
+rspf   73      RSPF            #Radio Shortest Path First.
+vmtp   81      VMTP            # Versatile Message Transport
+ospf   89      OSPFIGP         # Open Shortest Path First IGP
+ipip   94      IPIP            # Yet Another IP encapsulation
+encap  98      ENCAP           # Yet Another IP encapsulation
diff --git a/target/device/jp/q5/target_skeleton/etc/resolv.conf b/target/device/jp/q5/target_skeleton/etc/resolv.conf
new file mode 100644 (file)
index 0000000..71a86dd
--- /dev/null
@@ -0,0 +1,2 @@
+domain dev.null
+nameserver 127.0.0.1
diff --git a/target/device/jp/q5/target_skeleton/etc/securetty b/target/device/jp/q5/target_skeleton/etc/securetty
new file mode 100644 (file)
index 0000000..81616f3
--- /dev/null
@@ -0,0 +1,12 @@
+tty1
+tty2
+tty3
+tty4
+tty5
+tty6
+tty7
+tty8
+ttyS0
+ttyS1
+ttyS2
+ttyS3
diff --git a/target/device/jp/q5/target_skeleton/etc/services b/target/device/jp/q5/target_skeleton/etc/services
new file mode 100644 (file)
index 0000000..b287b63
--- /dev/null
@@ -0,0 +1,302 @@
+# /etc/services:
+# $Id: services,v 1.1 2004/10/09 02:49:18 andersen Exp $
+#
+# Network services, Internet style
+#
+# Note that it is presently the policy of IANA to assign a single well-known
+# port number for both TCP and UDP; hence, most entries here have two entries
+# even if the protocol doesn't support UDP operations.
+# Updated from RFC 1700, ``Assigned Numbers'' (October 1994).  Not all ports
+# are included, only the more common ones.
+
+tcpmux         1/tcp                           # TCP port service multiplexer
+echo           7/tcp
+echo           7/udp
+discard                9/tcp           sink null
+discard                9/udp           sink null
+systat         11/tcp          users
+daytime                13/tcp
+daytime                13/udp
+netstat                15/tcp
+qotd           17/tcp          quote
+msp            18/tcp                          # message send protocol
+msp            18/udp                          # message send protocol
+chargen                19/tcp          ttytst source
+chargen                19/udp          ttytst source
+ftp-data       20/tcp
+ftp            21/tcp
+fsp            21/udp          fspd
+ssh            22/tcp                          # SSH Remote Login Protocol
+ssh            22/udp                          # SSH Remote Login Protocol
+telnet         23/tcp
+# 24 - private
+smtp           25/tcp          mail
+# 26 - unassigned
+time           37/tcp          timserver
+time           37/udp          timserver
+rlp            39/udp          resource        # resource location
+nameserver     42/tcp          name            # IEN 116
+whois          43/tcp          nicname
+re-mail-ck     50/tcp                          # Remote Mail Checking Protocol
+re-mail-ck     50/udp                          # Remote Mail Checking Protocol
+domain         53/tcp          nameserver      # name-domain server
+domain         53/udp          nameserver
+mtp            57/tcp                          # deprecated
+bootps         67/tcp                          # BOOTP server
+bootps         67/udp
+bootpc         68/tcp                          # BOOTP client
+bootpc         68/udp
+tftp           69/udp
+gopher         70/tcp                          # Internet Gopher
+gopher         70/udp
+rje            77/tcp          netrjs
+finger         79/tcp
+www            80/tcp          http            # WorldWideWeb HTTP
+www            80/udp                          # HyperText Transfer Protocol
+link           87/tcp          ttylink
+kerberos       88/tcp          kerberos5 krb5  # Kerberos v5
+kerberos       88/udp          kerberos5 krb5  # Kerberos v5
+supdup         95/tcp
+# 100 - reserved
+hostnames      101/tcp         hostname        # usually from sri-nic
+iso-tsap       102/tcp         tsap            # part of ISODE.
+csnet-ns       105/tcp         cso-ns          # also used by CSO name server
+csnet-ns       105/udp         cso-ns
+# unfortunately the poppassd (Eudora) uses a port which has already
+# been assigned to a different service. We list the poppassd as an
+# alias here. This should work for programs asking for this service.
+# (due to a bug in inetd the 3com-tsmux line is disabled)
+#3com-tsmux    106/tcp         poppassd
+#3com-tsmux    106/udp         poppassd
+rtelnet                107/tcp                         # Remote Telnet
+rtelnet                107/udp
+pop-2          109/tcp         postoffice      # POP version 2
+pop-2          109/udp
+pop-3          110/tcp                         # POP version 3
+pop-3          110/udp
+sunrpc         111/tcp         portmapper      # RPC 4.0 portmapper TCP
+sunrpc         111/udp         portmapper      # RPC 4.0 portmapper UDP
+auth           113/tcp         authentication tap ident
+sftp           115/tcp
+uucp-path      117/tcp
+nntp           119/tcp         readnews untp   # USENET News Transfer Protocol
+ntp            123/tcp
+ntp            123/udp                         # Network Time Protocol
+netbios-ns     137/tcp                         # NETBIOS Name Service
+netbios-ns     137/udp
+netbios-dgm    138/tcp                         # NETBIOS Datagram Service
+netbios-dgm    138/udp
+netbios-ssn    139/tcp                         # NETBIOS session service
+netbios-ssn    139/udp
+imap2          143/tcp                         # Interim Mail Access Proto v2
+imap2          143/udp
+snmp           161/udp                         # Simple Net Mgmt Proto
+snmp-trap      162/udp         snmptrap        # Traps for SNMP
+cmip-man       163/tcp                         # ISO mgmt over IP (CMOT)
+cmip-man       163/udp
+cmip-agent     164/tcp
+cmip-agent     164/udp
+xdmcp          177/tcp                         # X Display Mgr. Control Proto
+xdmcp          177/udp
+nextstep       178/tcp         NeXTStep NextStep       # NeXTStep window
+nextstep       178/udp         NeXTStep NextStep       # server
+bgp            179/tcp                         # Border Gateway Proto.
+bgp            179/udp
+prospero       191/tcp                         # Cliff Neuman's Prospero
+prospero       191/udp
+irc            194/tcp                         # Internet Relay Chat
+irc            194/udp
+smux           199/tcp                         # SNMP Unix Multiplexer
+smux           199/udp
+at-rtmp                201/tcp                         # AppleTalk routing
+at-rtmp                201/udp
+at-nbp         202/tcp                         # AppleTalk name binding
+at-nbp         202/udp
+at-echo                204/tcp                         # AppleTalk echo
+at-echo                204/udp
+at-zis         206/tcp                         # AppleTalk zone information
+at-zis         206/udp
+qmtp           209/tcp                         # The Quick Mail Transfer Protocol
+qmtp           209/udp                         # The Quick Mail Transfer Protocol
+z3950          210/tcp         wais            # NISO Z39.50 database
+z3950          210/udp         wais
+ipx            213/tcp                         # IPX
+ipx            213/udp
+imap3          220/tcp                         # Interactive Mail Access
+imap3          220/udp                         # Protocol v3
+ulistserv      372/tcp                         # UNIX Listserv
+ulistserv      372/udp
+https          443/tcp                         # MCom
+https          443/udp                         # MCom
+snpp           444/tcp                         # Simple Network Paging Protocol
+snpp           444/udp                         # Simple Network Paging Protocol
+saft           487/tcp                         # Simple Asynchronous File Transfer
+saft           487/udp                         # Simple Asynchronous File Transfer
+npmp-local     610/tcp         dqs313_qmaster  # npmp-local / DQS
+npmp-local     610/udp         dqs313_qmaster  # npmp-local / DQS
+npmp-gui       611/tcp         dqs313_execd    # npmp-gui / DQS
+npmp-gui       611/udp         dqs313_execd    # npmp-gui / DQS
+hmmp-ind       612/tcp         dqs313_intercell# HMMP Indication / DQS
+hmmp-ind       612/udp         dqs313_intercell# HMMP Indication / DQS
+#
+# UNIX specific services
+#
+exec           512/tcp
+biff           512/udp         comsat
+login          513/tcp
+who            513/udp         whod
+shell          514/tcp         cmd             # no passwords used
+syslog         514/udp
+printer                515/tcp         spooler         # line printer spooler
+talk           517/udp
+ntalk          518/udp
+route          520/udp         router routed   # RIP
+timed          525/udp         timeserver
+tempo          526/tcp         newdate
+courier                530/tcp         rpc
+conference     531/tcp         chat
+netnews                532/tcp         readnews
+netwall                533/udp                         # -for emergency broadcasts
+uucp           540/tcp         uucpd           # uucp daemon
+afpovertcp     548/tcp                         # AFP over TCP
+afpovertcp     548/udp                         # AFP over TCP
+remotefs       556/tcp         rfs_server rfs  # Brunhoff remote filesystem
+klogin         543/tcp                         # Kerberized `rlogin' (v5)
+kshell         544/tcp         krcmd           # Kerberized `rsh' (v5)
+kerberos-adm   749/tcp                         # Kerberos `kadmin' (v5)
+#
+webster                765/tcp                         # Network dictionary
+webster                765/udp
+#
+# From ``Assigned Numbers'':
+#
+#> The Registered Ports are not controlled by the IANA and on most systems
+#> can be used by ordinary user processes or programs executed by ordinary
+#> users.
+#
+#> Ports are used in the TCP [45,106] to name the ends of logical
+#> connections which carry long term conversations.  For the purpose of
+#> providing services to unknown callers, a service contact port is
+#> defined.  This list specifies the port used by the server process as its
+#> contact port.  While the IANA can not control uses of these ports it
+#> does register or list uses of these ports as a convienence to the
+#> community.
+#
+nfsdstatus     1110/tcp
+nfsd-keepalive 1110/udp
+
+ingreslock     1524/tcp
+ingreslock     1524/udp
+prospero-np    1525/tcp                        # Prospero non-privileged
+prospero-np    1525/udp
+datametrics    1645/tcp        old-radius      # datametrics / old radius entry
+datametrics    1645/udp        old-radius      # datametrics / old radius entry
+sa-msg-port    1646/tcp        old-radacct     # sa-msg-port / old radacct entry
+sa-msg-port    1646/udp        old-radacct     # sa-msg-port / old radacct entry
+radius         1812/tcp                        # Radius
+radius         1812/udp                        # Radius
+radacct                1813/tcp                        # Radius Accounting
+radacct                1813/udp                        # Radius Accounting
+nfsd           2049/tcp        nfs
+nfsd           2049/udp        nfs
+cvspserver     2401/tcp                        # CVS client/server operations
+cvspserver     2401/udp                        # CVS client/server operations
+mysql          3306/tcp                        # MySQL
+mysql          3306/udp                        # MySQL
+rfe            5002/tcp                        # Radio Free Ethernet
+rfe            5002/udp                        # Actually uses UDP only
+cfengine       5308/tcp                        # CFengine
+cfengine       5308/udp                        # CFengine
+bbs            7000/tcp                        # BBS service
+#
+#
+# Kerberos (Project Athena/MIT) services
+# Note that these are for Kerberos v4, and are unofficial.  Sites running
+# v4 should uncomment these and comment out the v5 entries above.
+#
+kerberos4      750/udp         kerberos-iv kdc # Kerberos (server) udp
+kerberos4      750/tcp         kerberos-iv kdc # Kerberos (server) tcp
+kerberos_master        751/udp                         # Kerberos authentication
+kerberos_master        751/tcp                         # Kerberos authentication
+passwd_server  752/udp                         # Kerberos passwd server
+krb_prop       754/tcp                         # Kerberos slave propagation
+krbupdate      760/tcp         kreg            # Kerberos registration
+kpasswd                761/tcp         kpwd            # Kerberos "passwd"
+kpop           1109/tcp                        # Pop with Kerberos
+knetd          2053/tcp                        # Kerberos de-multiplexor
+zephyr-srv     2102/udp                        # Zephyr server
+zephyr-clt     2103/udp                        # Zephyr serv-hm connection
+zephyr-hm      2104/udp                        # Zephyr hostmanager
+eklogin                2105/tcp                        # Kerberos encrypted rlogin
+#
+# Unofficial but necessary (for NetBSD) services
+#
+supfilesrv     871/tcp                         # SUP server
+supfiledbg     1127/tcp                        # SUP debugging
+#
+# Datagram Delivery Protocol services
+#
+rtmp           1/ddp                           # Routing Table Maintenance Protocol
+nbp            2/ddp                           # Name Binding Protocol
+echo           4/ddp                           # AppleTalk Echo Protocol
+zip            6/ddp                           # Zone Information Protocol
+#
+# Services added for the Debian GNU/Linux distribution
+poppassd       106/tcp                         # Eudora
+poppassd       106/udp                         # Eudora
+mailq          174/tcp                         # Mailer transport queue for Zmailer
+mailq          174/tcp                         # Mailer transport queue for Zmailer
+omirr          808/tcp         omirrd          # online mirror
+omirr          808/udp         omirrd          # online mirror
+rmtcfg         1236/tcp                        # Gracilis Packeten remote config server
+xtel           1313/tcp                        # french minitel
+coda_opcons    1355/udp                        # Coda opcons            (Coda fs)
+coda_venus     1363/udp                        # Coda venus             (Coda fs)
+coda_auth      1357/udp                        # Coda auth              (Coda fs)
+coda_udpsrv    1359/udp                        # Coda udpsrv            (Coda fs)
+coda_filesrv   1361/udp                        # Coda filesrv           (Coda fs)
+codacon                1423/tcp        venus.cmu       # Coda Console           (Coda fs)
+coda_aux1      1431/tcp                        # coda auxiliary service (Coda fs)
+coda_aux1      1431/udp                        # coda auxiliary service (Coda fs)
+coda_aux2      1433/tcp                        # coda auxiliary service (Coda fs)
+coda_aux2      1433/udp                        # coda auxiliary service (Coda fs)
+coda_aux3      1435/tcp                        # coda auxiliary service (Coda fs)
+coda_aux3      1435/udp                        # coda auxiliary service (Coda fs)
+cfinger                2003/tcp                        # GNU Finger
+afbackup       2988/tcp                        # Afbackup system
+afbackup       2988/udp                        # Afbackup system
+icp            3130/tcp                        # Internet Cache Protocol (Squid)
+icp            3130/udp                        # Internet Cache Protocol (Squid)
+postgres       5432/tcp                        # POSTGRES
+postgres       5432/udp                        # POSTGRES
+fax            4557/tcp                        # FAX transmission service        (old)
+hylafax                4559/tcp                        # HylaFAX client-server protocol  (new)
+noclog         5354/tcp                        # noclogd with TCP (nocol)
+noclog         5354/udp                        # noclogd with UDP (nocol)
+hostmon                5355/tcp                        # hostmon uses TCP (nocol)
+hostmon                5355/udp                        # hostmon uses TCP (nocol)
+ircd           6667/tcp                        # Internet Relay Chat
+ircd           6667/udp                        # Internet Relay Chat
+webcache       8080/tcp                        # WWW caching service
+webcache       8080/udp                        # WWW caching service
+tproxy         8081/tcp                        # Transparent Proxy
+tproxy         8081/udp                        # Transparent Proxy
+mandelspawn    9359/udp        mandelbrot      # network mandelbrot
+amanda         10080/udp                       # amanda backup services
+amandaidx      10082/tcp                       # amanda backup services
+amidxtape      10083/tcp                       # amanda backup services
+isdnlog                20011/tcp                       # isdn logging system
+isdnlog                20011/udp                       # isdn logging system
+vboxd          20012/tcp                       # voice box system
+vboxd          20012/udp                       # voice box system
+binkp           24554/tcp                      # Binkley
+binkp           24554/udp                      # Binkley
+asp            27374/tcp                       # Address Search Protocol
+asp            27374/udp                       # Address Search Protocol
+tfido           60177/tcp                      # Ifmail
+tfido           60177/udp                      # Ifmail
+fido            60179/tcp                      # Ifmail
+fido            60179/udp                      # Ifmail
+
+# Local services
+
diff --git a/target/device/jp/q5/target_skeleton/etc/shadow b/target/device/jp/q5/target_skeleton/etc/shadow
new file mode 100644 (file)
index 0000000..4941a1a
--- /dev/null
@@ -0,0 +1,12 @@
+root::10933:0:99999:7:::
+bin:*:10933:0:99999:7:::
+daemon:*:10933:0:99999:7:::
+adm:*:10933:0:99999:7:::
+lp:*:10933:0:99999:7:::
+sync:*:10933:0:99999:7:::
+shutdown:*:10933:0:99999:7:::
+halt:*:10933:0:99999:7:::
+uucp:*:10933:0:99999:7:::
+operator:*:10933:0:99999:7:::
+nobody:*:10933:0:99999:7:::
+default::10933:0:99999:7:::
diff --git a/target/device/jp/q5/target_skeleton/root/.bash_history b/target/device/jp/q5/target_skeleton/root/.bash_history
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/target/device/jp/q5/target_skeleton/root/.bash_logout b/target/device/jp/q5/target_skeleton/root/.bash_logout
new file mode 100644 (file)
index 0000000..77ef1f9
--- /dev/null
@@ -0,0 +1,7 @@
+# ~/.bash_logout: executed by bash(1) when login shell exits.
+
+# when leaving the console clear the screen to increase privacy
+
+case "`tty`" in
+    /dev/tty[0-9]*) clear
+esac
diff --git a/target/device/jp/q5/target_skeleton/root/.bash_profile b/target/device/jp/q5/target_skeleton/root/.bash_profile
new file mode 100644 (file)
index 0000000..27bf149
--- /dev/null
@@ -0,0 +1,15 @@
+# .bash_profile
+
+export PATH=\
+/bin:\
+/sbin:\
+/usr/bin:\
+/usr/sbin:\
+/usr/bin/X11:\
+/usr/local/bin
+
+umask 022
+
+if [ -f ~/.bashrc ]; then
+    source ~/.bashrc
+fi
diff --git a/target/device/jp/q5/target_skeleton/root/.bashrc b/target/device/jp/q5/target_skeleton/root/.bashrc
new file mode 100644 (file)
index 0000000..c97c9c4
--- /dev/null
@@ -0,0 +1,48 @@
+# ~/.bashrc: executed by bash(1) for non-login interactive shells.
+
+export PATH=\
+/bin:\
+/sbin:\
+/usr/bin:\
+/usr/sbin:\
+/usr/bin/X11:\
+/usr/local/bin
+
+# If running interactively, then:
+if [ "$PS1" ]; then
+
+    if [ "$BASH" ]; then
+       export PS1="[\u@\h \W]\\$ "
+    else
+      if [ "`id -u`" -eq 0 ]; then 
+       export PS1='# '
+      else
+       export PS1='$ '
+      fi
+    fi
+
+    export USER=`id -un`
+    export LOGNAME=$USER
+    export HOSTNAME=`/bin/hostname`
+    export HISTSIZE=1000
+    export HISTFILESIZE=1000
+    export PAGER='/bin/more '
+    export EDITOR='/bin/vi'
+    export INPUTRC=/etc/inputrc
+    export DMALLOC_OPTIONS=debug=0x34f47d83,inter=100,log=logfile
+    export LS_COLORS='no=00:fi=00:di=01;34:ln=01;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.gz=01;31:*.bz2=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.jpg=01;35:*.jpeg=01;35:*.png=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.mpg=01;35:*.mpeg=01;35:*.avi=01;35:*.fli=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:';
+
+    ### Some aliases
+    alias ps2='ps facux '
+    alias ps1='ps faxo "%U %t %p %a" '
+    alias af='ps af'
+    alias cls='clear'
+    alias ll='/bin/ls -laFh'
+    alias ls='/bin/ls -F'
+    alias df='df -h'
+    alias indent='indent -bad -bap -bbo -nbc -br -brs -c33 -cd33 -ncdb -ce -ci4 -cli0 -cp33 -cs -d0 -di1 -nfc1 -nfca -hnl -i4 -ip0 -l75 -lp -npcs -npsl -nsc -nsob -nss -ts4 '
+    #alias bc='bc -l'
+    alias minicom='minicom -c on'
+    alias calc='calc -Cd '
+    alias bc='calc -Cd '
+fi;
diff --git a/target/device/jp/q5/target_skeleton/usr/share/udhcpc/default.script b/target/device/jp/q5/target_skeleton/usr/share/udhcpc/default.script
new file mode 100755 (executable)
index 0000000..a52a7f8
--- /dev/null
@@ -0,0 +1,39 @@
+#!/bin/sh
+
+# udhcpc script edited by Tim Riker <Tim@Rikers.org>
+
+[ -z "$1" ] && echo "Error: should be called from udhcpc" && exit 1
+
+RESOLV_CONF="/etc/resolv.conf"
+[ -n "$broadcast" ] && BROADCAST="broadcast $broadcast"
+[ -n "$subnet" ] && NETMASK="netmask $subnet"
+
+case "$1" in
+       deconfig)
+               /sbin/ifconfig $interface 0.0.0.0
+               ;;
+
+       renew|bound)
+               /sbin/ifconfig $interface $ip $BROADCAST $NETMASK
+
+               if [ -n "$router" ] ; then
+                       echo "deleting routers"
+                       while route del default gw 0.0.0.0 dev $interface ; do
+                               :
+                       done
+
+                       for i in $router ; do
+                               route add default gw $i dev $interface
+                       done
+               fi
+
+               echo -n > $RESOLV_CONF
+               [ -n "$domain" ] && echo search $domain >> $RESOLV_CONF
+               for i in $dns ; do
+                       echo adding dns $i
+                       echo nameserver $i >> $RESOLV_CONF
+               done
+               ;;
+esac
+
+exit 0
diff --git a/target/device/jp/q5/uClibc.config.mipsel b/target/device/jp/q5/uClibc.config.mipsel
new file mode 100644 (file)
index 0000000..fe1c4ac
--- /dev/null
@@ -0,0 +1,160 @@
+#
+# Automatically generated make config: don't edit
+#
+# TARGET_alpha is not set
+# TARGET_arm is not set
+# TARGET_bfin is not set
+# TARGET_cris is not set
+# TARGET_e1 is not set
+# TARGET_frv is not set
+# TARGET_h8300 is not set
+# TARGET_i386 is not set
+# TARGET_i960 is not set
+# TARGET_m68k is not set
+# TARGET_microblaze is not set
+TARGET_mips=y
+# TARGET_nios is not set
+# TARGET_nios2 is not set
+# TARGET_powerpc is not set
+# TARGET_sh is not set
+# TARGET_sh64 is not set
+# TARGET_sparc is not set
+# TARGET_v850 is not set
+# TARGET_x86_64 is not set
+
+#
+# Target Architecture Features and Options
+#
+HAVE_ELF=y
+ARCH_SUPPORTS_LITTLE_ENDIAN=y
+TARGET_ARCH="mips"
+ARCH_CFLAGS="-mno-split-addresses"
+ARCH_SUPPORTS_BIG_ENDIAN=y
+# CONFIG_MIPS_ISA_1 is not set
+# CONFIG_MIPS_ISA_2 is not set
+# CONFIG_MIPS_ISA_3 is not set
+# CONFIG_MIPS_ISA_4 is not set
+CONFIG_MIPS_ISA_MIPS32=y
+# CONFIG_MIPS_ISA_MIPS64 is not set
+ARCH_LITTLE_ENDIAN=y
+# ARCH_BIG_ENDIAN is not set
+# ARCH_HAS_NO_MMU is not set
+ARCH_HAS_MMU=y
+UCLIBC_HAS_FLOATS=y
+HAS_FPU=y
+DO_C99_MATH=y
+KERNEL_SOURCE="/home/jp/buildroot_jp/build_test/toolchain_build_mipsel/linux"
+C_SYMBOL_PREFIX=""
+HAVE_DOT_CONFIG=y
+
+#
+# General Library Settings
+#
+# HAVE_NO_PIC is not set
+DOPIC=y
+# HAVE_NO_SHARED is not set
+HAVE_SHARED=y
+# ARCH_HAS_NO_LDSO is not set
+BUILD_UCLIBC_LDSO=y
+# FORCE_SHAREABLE_TEXT_SEGMENTS is not set
+LDSO_LDD_SUPPORT=y
+LDSO_CACHE_SUPPORT=y
+# LDSO_PRELOAD_FILE_SUPPORT is not set
+LDSO_BASE_FILENAME="ld.so"
+# DL_FINI_CRT_COMPAT is not set
+UCLIBC_CTOR_DTOR=y
+# HAS_NO_THREADS is not set
+UCLIBC_HAS_THREADS=y
+PTHREADS_DEBUG_SUPPORT=y
+UCLIBC_HAS_LFS=y
+# UCLIBC_STATIC_LDCONFIG is not set
+# MALLOC is not set
+# MALLOC_SIMPLE is not set
+MALLOC_STANDARD=y
+MALLOC_GLIBC_COMPAT=y
+UCLIBC_DYNAMIC_ATEXIT=y
+HAS_SHADOW=y
+# UNIX98PTY_ONLY is not set
+ASSUME_DEVPTS=y
+UCLIBC_HAS_TM_EXTENSIONS=y
+UCLIBC_HAS_TZ_CACHING=y
+UCLIBC_HAS_TZ_FILE=y
+UCLIBC_HAS_TZ_FILE_READ_MANY=y
+UCLIBC_TZ_FILE_PATH="/etc/TZ"
+
+#
+# Networking Support
+#
+UCLIBC_HAS_IPV6=y
+UCLIBC_HAS_RPC=y
+UCLIBC_HAS_FULL_RPC=y
+
+#
+# String and Stdio Support
+#
+UCLIBC_HAS_STRING_GENERIC_OPT=y
+UCLIBC_HAS_STRING_ARCH_OPT=y
+UCLIBC_HAS_CTYPE_TABLES=y
+UCLIBC_HAS_CTYPE_SIGNED=y
+# UCLIBC_HAS_CTYPE_UNSAFE is not set
+UCLIBC_HAS_CTYPE_CHECKED=y
+# UCLIBC_HAS_CTYPE_ENFORCED is not set
+UCLIBC_HAS_WCHAR=y
+# UCLIBC_HAS_LOCALE is not set
+UCLIBC_HAS_HEXADECIMAL_FLOATS=y
+UCLIBC_HAS_GLIBC_CUSTOM_PRINTF=y
+UCLIBC_PRINTF_SCANF_POSITIONAL_ARGS=9
+UCLIBC_HAS_SCANF_GLIBC_A_FLAG=y
+# UCLIBC_HAS_STDIO_BUFSIZ_NONE is not set
+# UCLIBC_HAS_STDIO_BUFSIZ_256 is not set
+# UCLIBC_HAS_STDIO_BUFSIZ_512 is not set
+# UCLIBC_HAS_STDIO_BUFSIZ_1024 is not set
+# UCLIBC_HAS_STDIO_BUFSIZ_2048 is not set
+UCLIBC_HAS_STDIO_BUFSIZ_4096=y
+# UCLIBC_HAS_STDIO_BUFSIZ_8192 is not set
+UCLIBC_HAS_STDIO_BUILTIN_BUFFER_NONE=y
+# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_4 is not set
+# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_8 is not set
+UCLIBC_HAS_STDIO_GETC_MACRO=y
+UCLIBC_HAS_STDIO_PUTC_MACRO=y
+UCLIBC_HAS_STDIO_AUTO_RW_TRANSITION=y
+# UCLIBC_HAS_FOPEN_LARGEFILE_MODE is not set
+UCLIBC_HAS_FOPEN_EXCLUSIVE_MODE=y
+UCLIBC_HAS_GLIBC_CUSTOM_STREAMS=y
+UCLIBC_HAS_PRINTF_M_SPEC=y
+UCLIBC_HAS_ERRNO_MESSAGES=y
+# UCLIBC_HAS_SYS_ERRLIST is not set
+UCLIBC_HAS_SIGNUM_MESSAGES=y
+# UCLIBC_HAS_SYS_SIGLIST is not set
+UCLIBC_HAS_GNU_GETOPT=y
+
+#
+# Big and Tall
+#
+UCLIBC_HAS_REGEX=y
+# UCLIBC_HAS_WORDEXP is not set
+UCLIBC_HAS_FTW=y
+UCLIBC_HAS_GLOB=y
+
+#
+# Library Installation Options
+#
+SHARED_LIB_LOADER_PREFIX="/lib"
+RUNTIME_PREFIX="/"
+DEVEL_PREFIX="/usr/"
+
+#
+# uClibc security related options
+#
+# UCLIBC_SECURITY is not set
+
+#
+# uClibc development/debugging options
+#
+CROSS_COMPILER_PREFIX=""
+# DODEBUG is not set
+# DOASSERTS is not set
+# SUPPORT_LD_DEBUG is not set
+# SUPPORT_LD_DEBUG_EARLY is not set
+WARNINGS="-Wall"
+# UCLIBC_MJN3_ONLY is not set