1
0
mirror of git://projects.qi-hardware.com/openwrt-xburst.git synced 2025-02-03 21:11:05 +02:00

Merge commit 'nbd/master' into xburst

Conflicts:

	target/linux/xburst/qi_lb60/config-2.6.32
This commit is contained in:
Lars-Peter Clausen 2010-03-17 16:10:43 +01:00
commit 277ecd06ee
196 changed files with 8667 additions and 90745 deletions

View File

@ -16,7 +16,9 @@ $(strip \
$(if $(filter svn://%,$(1)),svn, \
$(if $(filter cvs://%,$(1)),cvs, \
$(if $(filter hg://%,$(1)),hg, \
unknown \
$(if $(filter sftp://%,$(1)),bzr, \
unknown \
) \
) \
) \
) \
@ -53,11 +55,11 @@ define DownloadMethod/cvs
cd $(TMP_DIR)/dl && \
rm -rf $(SUBDIR) && \
[ \! -d $(SUBDIR) ] && \
cvs -d $(URL) co $(VERSION) $(SUBDIR) && \
find $(SUBDIR) -name CVS | xargs rm -rf && \
cvs -d $(URL) export $(VERSION) $(SUBDIR) && \
echo "Packing checkout..." && \
$(call dl_pack,$(TMP_DIR)/dl/$(FILE),$(SUBDIR)) && \
mv $(TMP_DIR)/dl/$(FILE) $(DL_DIR)/; \
mv $(TMP_DIR)/dl/$(FILE) $(DL_DIR)/ && \
rm -rf $(SUBDIR); \
)
endef
@ -68,11 +70,11 @@ define DownloadMethod/svn
cd $(TMP_DIR)/dl && \
rm -rf $(SUBDIR) && \
[ \! -d $(SUBDIR) ] && \
svn co --non-interactive -r$(VERSION) $(URL) $(SUBDIR) && \
find $(SUBDIR) -name .svn | xargs rm -rf && \
svn export --non-interactive -r$(VERSION) $(URL) $(SUBDIR) && \
echo "Packing checkout..." && \
$(call dl_pack,$(TMP_DIR)/dl/$(FILE),$(SUBDIR)) && \
mv $(TMP_DIR)/dl/$(FILE) $(DL_DIR)/; \
mv $(TMP_DIR)/dl/$(FILE) $(DL_DIR)/ && \
rm -rf $(SUBDIR); \
)
endef
@ -88,7 +90,8 @@ define DownloadMethod/git
echo "Packing checkout..." && \
rm -rf $(SUBDIR)/.git && \
$(call dl_pack,$(TMP_DIR)/dl/$(FILE),$(SUBDIR)) && \
mv $(TMP_DIR)/dl/$(FILE) $(DL_DIR)/; \
mv $(TMP_DIR)/dl/$(FILE) $(DL_DIR)/ && \
rm -rf $(SUBDIR); \
)
endef
@ -99,11 +102,11 @@ define DownloadMethod/bzr
cd $(TMP_DIR)/dl && \
rm -rf $(SUBDIR) && \
[ \! -d $(SUBDIR) ] && \
bzr co --lightweight -r$(VERSION) $(URL) $(SUBDIR) && \
find $(SUBDIR) -name .bzr | xargs rm -rf && \
bzr export -r$(VERSION) $(URL) $(SUBDIR) && \
echo "Packing checkout..." && \
$(call dl_pack,$(TMP_DIR)/dl/$(FILE),$(SUBDIR)) && \
mv $(TMP_DIR)/dl/$(FILE) $(DL_DIR)/; \
mv $(TMP_DIR)/dl/$(FILE) $(DL_DIR)/ &&
rm -rf $(SUBDIR); \
)
endef
@ -118,7 +121,8 @@ define DownloadMethod/hg
find $(SUBDIR) -name .hg | xargs rm -rf && \
echo "Packing checkout..." && \
$(call dl_pack,$(TMP_DIR)/dl/$(FILE),$(SUBDIR)) && \
mv $(TMP_DIR)/dl/$(FILE) $(DL_DIR)/; \
mv $(TMP_DIR)/dl/$(FILE) $(DL_DIR)/ && \
rm -rf $(SUBDIR); \
)
endef

View File

@ -20,9 +20,15 @@ endif
ifeq ($(LINUX_VERSION),2.6.32.9)
LINUX_KERNEL_MD5SUM:=0771a9c70503c92f40d815ef76eb62fe
endif
ifeq ($(LINUX_VERSION),2.6.32.10)
LINUX_KERNEL_MD5SUM:=5d996507ad482a3a8c8e6b2d48e7994b
endif
ifeq ($(LINUX_VERSION),2.6.33)
LINUX_KERNEL_MD5SUM:=c3883760b18d50e8d78819c54d579b00
endif
ifeq ($(LINUX_VERSION),2.6.33.1)
LINUX_KERNEL_MD5SUM:=73b514ec918b88a45656be191b1ee226
endif
# disable the md5sum check for unknown kernel versions
LINUX_KERNEL_MD5SUM?=x

View File

@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=base-files
PKG_RELEASE:=39
PKG_RELEASE:=40
PKG_FILE_DEPENDS:=$(PLATFORM_DIR)/ $(GENERIC_PLATFORM_DIR)/base-files/

View File

@ -15,11 +15,6 @@ boot() {
}
start() {
ifup -a
/sbin/wifi up
}
restart() {
setup_switch() { return 0; }
include /lib/network
@ -31,3 +26,7 @@ restart() {
stop() {
ifdown -a
}
restart() {
start
}

View File

@ -2,6 +2,10 @@
# Copyright (C) 2006-2010 OpenWrt.org
# Copyright (C) 2010 Vertical Communications
mount() {
/bin/busybox mount "$@"
}
boot_hook_add() {
local hook="${1}_hook"
local value="$2"

View File

@ -337,7 +337,7 @@ unbridge() {
local brdev
[ -x /usr/sbin/brctl ] || return 0
brctl show | grep "$dev" >/dev/null && {
brctl show 2>/dev/null | grep "$dev" >/dev/null && {
# interface is still part of a bridge, correct that
for brdev in $(brctl show | awk '$2 ~ /^[0-9].*\./ { print $1 }'); do

View File

@ -5,6 +5,7 @@
initramfs_test() {
if [ -n "$INITRAMFS" ]; then
boot_run_hook initramfs
preinit_ip_deconfig
break
fi
}

View File

@ -90,6 +90,9 @@ dnsmasq() {
config_get DOMAIN "$cfg" domain
config_get_bool readethers "$cfg" readethers
[ "$readethers" = "1" ] && [ -e "/etc/ethers" ] || touch /etc/ethers
config_get leasefile $cfg leasefile
[ -e "$leasefile" ] || touch "$leasefile"
config_get_bool cachelocal "$cfg" cachelocal 1

View File

@ -37,15 +37,20 @@ dropbear_start()
config_get port "${section}" Port
# C) banner file
local bannerfile
config_get bannerfile ${section} BannerFile
[ -f $bannerfile ] || bannerfile=''
config_get bannerfile "${section}" BannerFile
[ -f "$bannerfile" ] || bannerfile=''
# D) gatewayports
local gatewayports
config_get_bool gatewayports "${section}" GatewayPorts 0
[ "${gatewayports}" -eq 1 ] || gatewayports=''
# E) root password authentication
local norootpasswd
local rootpassauth
config_get_bool rootpassauth "${section}" RootPasswordAuth 1
[ "${rootpassauth}" -eq 0 ] && norootpasswd=1
# concatenate parameters
local args
args="${nopasswd:+-s }${port:+-p ${port} }${bannerfile:+-b $bannerfile }${gatewayports:+-a }-P /var/run/${NAME}.${PIDCOUNT}.pid"
args="${nopasswd:+-s }${norootpasswd:+-g }${port:+-p ${port} }${bannerfile:+-b $bannerfile }${gatewayports:+-a }-P /var/run/${NAME}.${PIDCOUNT}.pid"
# execute program and return its exit code
[ "${verbosed}" -ne 0 ] && echo "${initscript}: section ${section} starting ${PROG} ${args}"

View File

@ -1,5 +1,5 @@
#
# Copyright (C) 2006-2009 OpenWrt.org
# Copyright (C) 2006-2010 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
@ -9,12 +9,22 @@ include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=fuse
PKG_VERSION:=2.7.4
PKG_RELEASE:=2
PKG_VERSION:=2.8.3
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=@SF/$(PKG_NAME)
PKG_MD5SUM:=4879f06570d2225667534c37fea04213
PKG_MD5SUM:=517c8384f915e40647bda9f71579fd97
PKG_INSTALL:=1
# Kernel 2.4 Module
FUSE24_VERSION=2.5.3
FUSE24_SOURCE:=$(PKG_NAME)-$(FUSE24_VERSION).tar.gz
FUSE24_MD5SUM:=9c7e8b6606b9f158ae20b8521ba2867c
FUSE24_BUILD_DIR:=$(KERNEL_BUILD_DIR)/$(PKG_NAME)-$(FUSE24_VERSION)
FUSE24_INSTALL_DIR:=$(FUSE24_BUILD_DIR)/ipkg-install
FUSE24_PATCH_DIR:=./patches-kernel24
include $(INCLUDE_DIR)/package.mk
@ -38,18 +48,24 @@ endef
define Package/fuse-utils/description
$(call Package/fuse/Default/description)
This package contains the FUSE utility 'fusermount'.
This package contains the FUSE utilities.
- fusermount
- ulockmgr_server
endef
define KernelPackage/fuse
$(call Package/fuse/Default)
SUBMENU:=Filesystems
DEPENDS:=@LINUX_2_6
TITLE+= (kernel module)
KCONFIG:= CONFIG_FUSE_FS
FILES:=$(LINUX_DIR)/fs/fuse/fuse.$(LINUX_KMOD_SUFFIX)
AUTOLOAD:=$(call AutoLoad,80,fuse)
VERSION:=$(LINUX_VERSION)
$(call Package/fuse/Default)
SUBMENU:=Filesystems
TITLE+= (kernel module)
ifeq ($(KERNEL),2.4)
FILES:=$(FUSE24_INSTALL_DIR)/lib/modules/$(LINUX_VERSION)/kernel/fs/fuse/fuse.$(LINUX_KMOD_SUFFIX)
VERSION:=$(LINUX_VERSION)+$(FUSE24_VERSION)-$(PKG_RELEASE)
else
KCONFIG:= CONFIG_FUSE_FS
FILES:=$(LINUX_DIR)/fs/fuse/fuse.$(LINUX_KMOD_SUFFIX)
VERSION:=$(LINUX_VERSION)-$(LINUX_RELEASE)
endif
AUTOLOAD:=$(call AutoLoad,80,fuse)
endef
define KernelPackage/fuse/description
@ -62,76 +78,144 @@ $(call Package/fuse/Default)
SECTION:=libs
CATEGORY:=Libraries
TITLE+= (library)
DEPENDS:=+LINUX_2_4:kmod-fuse24 +LINUX_2_6:kmod-fuse
DEPENDS:=kmod-fuse
SUBMENU:=Filesystem
endef
define Package/libfuse/description
$(call Package/fuse/Default/description)
This package contains the FUSE shared library, needed by other programs.
This package contains the FUSE shared libraries, needed by other programs.
- libfuse
- libulockmgr
endef
CONFIGURE_VARS += \
kernsrcver="$(LINUX_VERSION)"
# generic args
CONFIGURE_ARGS += \
--enable-shared \
--enable-static \
--disable-rpath \
--enable-lib \
--enable-util \
--disable-example \
--disable-auto-modprobe \
--with-kernel="$(LINUX_DIR)" \
--disable-mtab
# Since kernel 2.6.14 the fuse module is officially part of the kernel.
# Generally it is better to use the kernel's module. Because it is patched
# against the DCACHE BUG on arm architectures (currently brcm-2.4, brcm-47xx)
# and from fuse 2.8.0 on it will be removed from the fuse package anyway.
#
CONFIGURE_ARGS += --disable-kernel-module
# kmod 2.4 args
FUSE24_CONFIGURE_ARGS := $(CONFIGURE_ARGS) \
--disable-lib --disable-util \
--enable-kernel-module --disable-auto-modprobe \
--with-kernel="$(LINUX_DIR)"
# generic package uses lib & utils
CONFIGURE_ARGS += --enable-lib --enable-util
####### FUSE24 - START ######
### if we're on kernel 2.4 build a kernel 2.4 compatible fuse module from older version, see also
### http://sourceforge.net/apps/mediawiki/fuse/index.php?title=FAQ#What_version_of_FUSE_do_I_need_to_use_FUSE_with_Linux_2.4.3F
ifeq ($(KERNEL),2.4)
define Download/fuse24
FILE:=$(FUSE24_SOURCE)
URL:=$(PKG_SOURCE_URL)
MD5SUM:=$(FUSE24_MD5SUM)
endef
$(eval $(call Download,fuse24))
define Build/Prepare/fuse24
rm -rf $(FUSE24_BUILD_DIR)/
mkdir -p $(FUSE24_BUILD_DIR)/
$(TAR) -xzf $(DL_DIR)/$(FUSE24_SOURCE) -C $(FUSE24_BUILD_DIR)/..
endef
define Build/Patch/fuse24
$(call PatchDir,$(FUSE24_BUILD_DIR),$(FUSE24_PATCH_DIR),)
endef
define Build/Configure/fuse24
(cd $(FUSE24_BUILD_DIR); \
rm -rf config.{cache,status} ; \
$(CONFIGURE_VARS) \
./configure \
$(FUSE24_CONFIGURE_ARGS) \
);
endef
define Build/Compile/fuse24
$(MAKE) -C $(FUSE24_BUILD_DIR)/$(MAKE_PATH) \
ARCH="$(LINUX_KARCH)" \
CROSS_COMPILE="$(TARGET_CROSS)" \
all;
endef
define Build/Install/fuse24
rm -rf $(FUSE24_INSTALL_DIR)
mkdir -p $(FUSE24_INSTALL_DIR)
$(MAKE) -C $(FUSE24_BUILD_DIR) \
ARCH="$(LINUX_KARCH)" \
CROSS_COMPILE="$(TARGET_CROSS)" \
DESTDIR="$(FUSE24_INSTALL_DIR)" \
install
endef
define Build/Prepare
@echo "--> Build/Prepare enter"
$(call Build/Prepare/fuse24)
$(call Build/Patch/fuse24)
$(call Build/Prepare/Default)
@echo "--> Build/Prepare leave"
endef
define Build/Configure
(cd $(PKG_BUILD_DIR); rm -f config.cache; \
touch configure.in ; \
touch aclocal.m4 ; \
touch Makefile.in ; \
touch include/config.h.in ; \
touch configure ; \
)
@echo "--> Build/Configure enter"
$(call Build/Configure/fuse24)
$(call Build/Configure/Default)
@echo "--> Build/Configure leave"
endef
define Build/Compile
$(MAKE) -C $(PKG_BUILD_DIR) \
ARCH="$(LINUX_KARCH)" \
CROSS_COMPILE="$(TARGET_CROSS)" \
DESTDIR="$(PKG_INSTALL_DIR)" \
AM_CFLAGS="$(TARGET_CFLAGS) -DDISABLE_COMPAT=1" \
EXTRA_DIST="" \
all install
@echo "--> Build/Compile enter"
$(call Build/Compile/fuse24)
$(call Build/Compile/Default)
@echo "--> Build/Compile leave"
endef
define Build/Install
@echo "--> Build/Install enter"
$(call Build/Install/fuse24)
$(call Build/Install/Default)
@echo "--> Build/Install leave"
endef
endif
####### FUSE24 - END ######
define Build/InstallDev
@echo "--> Build/InstallDev enter"
mkdir -p $(1)/usr/include
$(CP) $(PKG_INSTALL_DIR)/usr/include/fuse{,.h} $(1)/usr/include/
$(CP) $(PKG_INSTALL_DIR)/usr/include/{fuse,*.h} $(1)/usr/include/
mkdir -p $(1)/usr/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libfuse.{a,so*} $(1)/usr/lib/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/*.{a,so*} $(1)/usr/lib/
mkdir -p $(1)/usr/lib/pkgconfig
$(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/fuse.pc $(1)/usr/lib/pkgconfig/
$(SED) 's,-I$$$${includedir}/fuse,,g' $(1)/usr/lib/pkgconfig/fuse.pc
$(SED) 's,-L$$$${libdir},,g' $(1)/usr/lib/pkgconfig/fuse.pc
@echo "--> Build/InstallDev leave"
endef
define Package/fuse-utils/install
@echo "--> Package/fuse-utils/install enter"
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/fusermount $(1)/usr/bin/
# use cp and keep fusermount sticky bit
$(FIND) $(PKG_INSTALL_DIR)/usr/bin/ -type f -exec $(CP) -a {} $(1)/usr/bin/ \;
@echo "--> Package/fuse-utils/install leave"
endef
define Package/libfuse/install
@echo "--> Package/libfuse/install enter"
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libfuse.so.* $(1)/usr/lib/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so.* $(1)/usr/lib/
@echo "--> Package/libfuse/install leave"
endef
define Package/kmod-fuse/install
@echo "--> Package/kmod-fuse/install enter/leave"
endef
$(eval $(call BuildPackage,fuse-utils))

View File

@ -1,14 +0,0 @@
diff -Nru fuse-2.7.3.orig/kernel/configure fuse-2.7.3/kernel/configure
--- fuse-2.7.3.orig/kernel/configure 2008-02-19 15:00:19.000000000 -0500
+++ fuse-2.7.3/kernel/configure 2008-03-17 14:10:14.000000000 -0400
@@ -1851,7 +1851,9 @@
{ echo "$as_me:$LINENO: checking kernel source version" >&5
echo $ECHO_N "checking kernel source version... $ECHO_C" >&6; }
- if test -r $kernelbuild/include/linux/version.h && fgrep -q UTS_RELEASE $kernelbuild/include/linux/version.h; then
+ if [ -n "$kernsrcver" ]; then
+ echo "$kernsrcver (cached)"
+ elif test -r $kernelbuild/include/linux/version.h && fgrep -q UTS_RELEASE $kernelbuild/include/linux/version.h; then
kernsrcver=`(echo "#include <linux/version.h>"; echo "kernsrcver=UTS_RELEASE") | cpp -I $kernelbuild/include | grep "^kernsrcver=" | cut -d \" -f 2`
elif test -r $kernelbuild/include/linux/utsrelease.h && fgrep -q UTS_RELEASE $kernelbuild/include/linux/utsrelease.h; then
kernsrcver=`(echo "#include <linux/utsrelease.h>"; echo "kernsrcver=UTS_RELEASE") | cpp -I $kernelbuild/include | grep "^kernsrcver=" | cut -d \" -f 2`

View File

@ -1,15 +0,0 @@
diff -Nru fuse-2.7.3.orig/kernel/Makefile.in fuse-2.7.3/kernel/Makefile.in
--- fuse-2.7.3.orig/kernel/Makefile.in 2006-12-09 13:51:13.000000000 -0500
+++ fuse-2.7.3/kernel/Makefile.in 2008-03-17 14:12:32.000000000 -0400
@@ -25,11 +25,9 @@
install-y: all
$(mkdir_p) $(DESTDIR)$(fusemoduledir)
$(INSTALL) -m 644 $(fusemodule) $(DESTDIR)$(fusemoduledir)/$(fusemodule)
- -/sbin/depmod -a
uninstall-y:
rm -f $(DESTDIR)$(fusemoduledir)/$(fusemodule)
- -/sbin/depmod -a
clean:
-rm -f $(fusemodule) *.o .*.cmd *.mod.c *.ko *.s */*.o

View File

@ -1,6 +1,7 @@
--- fuse-2.7.3.orig/util/Makefile.in 2008-02-19 15:00:55.000000000 -0500
+++ fuse-2.7.3/util/Makefile.in 2008-03-17 14:14:10.000000000 -0400
@@ -528,7 +528,7 @@
diff -Nurp fuse-2.8.1.orig/util/Makefile.in fuse-2.8.1/util/Makefile.in
--- fuse-2.8.1.orig/util/Makefile.in 2009-09-11 12:50:00.000000000 +0200
+++ fuse-2.8.1/util/Makefile.in 2009-12-17 01:05:15.720554385 +0100
@@ -543,7 +543,7 @@ uninstall-am: uninstall-binPROGRAMS unin
install-exec-hook:
-chown root $(DESTDIR)$(bindir)/fusermount
-chmod u+s $(DESTDIR)$(bindir)/fusermount

View File

@ -1,613 +0,0 @@
diff -Nru fuse-2.7.3.orig/include/fuse_common_compat.h fuse-2.7.3/include/fuse_common_compat.h
--- fuse-2.7.3.orig/include/fuse_common_compat.h 2008-02-19 14:51:23.000000000 -0500
+++ fuse-2.7.3/include/fuse_common_compat.h 2008-03-17 14:55:01.000000000 -0400
@@ -17,6 +17,7 @@
unsigned int keep_cache : 1;
};
+#ifndef DISABLE_COMPAT
int fuse_mount_compat25(const char *mountpoint, struct fuse_args *args);
int fuse_mount_compat22(const char *mountpoint, const char *opts);
@@ -24,3 +25,4 @@
int fuse_mount_compat1(const char *mountpoint, const char *args[]);
void fuse_unmount_compat22(const char *mountpoint);
+#endif
diff -Nru fuse-2.7.3.orig/lib/fuse.c fuse-2.7.3/lib/fuse.c
--- fuse-2.7.3.orig/lib/fuse.c 2008-02-19 14:51:25.000000000 -0500
+++ fuse-2.7.3/lib/fuse.c 2008-03-17 15:04:54.000000000 -0400
@@ -14,8 +14,6 @@
#include "fuse_lowlevel.h"
#include "fuse_opt.h"
#include "fuse_misc.h"
-#include "fuse_common_compat.h"
-#include "fuse_compat.h"
#include <stdio.h>
#include <string.h>
@@ -626,129 +624,6 @@
fuse_do_prepare_interrupt(req, d);
}
-#ifndef __FreeBSD__
-
-static int fuse_compat_open(struct fuse_fs *fs, const char *path,
- struct fuse_file_info *fi)
-{
- int err;
- if (!fs->compat || fs->compat >= 25)
- err = fs->op.open(path, fi);
- else if (fs->compat == 22) {
- struct fuse_file_info_compat tmp;
- memcpy(&tmp, fi, sizeof(tmp));
- err = ((struct fuse_operations_compat22 *) &fs->op)->open(path,
- &tmp);
- memcpy(fi, &tmp, sizeof(tmp));
- fi->fh = tmp.fh;
- } else
- err = ((struct fuse_operations_compat2 *) &fs->op)
- ->open(path, fi->flags);
- return err;
-}
-
-static int fuse_compat_release(struct fuse_fs *fs, const char *path,
- struct fuse_file_info *fi)
-{
- if (!fs->compat || fs->compat >= 22)
- return fs->op.release(path, fi);
- else
- return ((struct fuse_operations_compat2 *) &fs->op)
- ->release(path, fi->flags);
-}
-
-static int fuse_compat_opendir(struct fuse_fs *fs, const char *path,
- struct fuse_file_info *fi)
-{
- if (!fs->compat || fs->compat >= 25)
- return fs->op.opendir(path, fi);
- else {
- int err;
- struct fuse_file_info_compat tmp;
- memcpy(&tmp, fi, sizeof(tmp));
- err = ((struct fuse_operations_compat22 *) &fs->op)
- ->opendir(path, &tmp);
- memcpy(fi, &tmp, sizeof(tmp));
- fi->fh = tmp.fh;
- return err;
- }
-}
-
-static void convert_statfs_compat(struct fuse_statfs_compat1 *compatbuf,
- struct statvfs *stbuf)
-{
- stbuf->f_bsize = compatbuf->block_size;
- stbuf->f_blocks = compatbuf->blocks;
- stbuf->f_bfree = compatbuf->blocks_free;
- stbuf->f_bavail = compatbuf->blocks_free;
- stbuf->f_files = compatbuf->files;
- stbuf->f_ffree = compatbuf->files_free;
- stbuf->f_namemax = compatbuf->namelen;
-}
-
-static void convert_statfs_old(struct statfs *oldbuf, struct statvfs *stbuf)
-{
- stbuf->f_bsize = oldbuf->f_bsize;
- stbuf->f_blocks = oldbuf->f_blocks;
- stbuf->f_bfree = oldbuf->f_bfree;
- stbuf->f_bavail = oldbuf->f_bavail;
- stbuf->f_files = oldbuf->f_files;
- stbuf->f_ffree = oldbuf->f_ffree;
- stbuf->f_namemax = oldbuf->f_namelen;
-}
-
-static int fuse_compat_statfs(struct fuse_fs *fs, const char *path,
- struct statvfs *buf)
-{
- int err;
-
- if (!fs->compat || fs->compat >= 25) {
- err = fs->op.statfs(fs->compat == 25 ? "/" : path, buf);
- } else if (fs->compat > 11) {
- struct statfs oldbuf;
- err = ((struct fuse_operations_compat22 *) &fs->op)
- ->statfs("/", &oldbuf);
- if (!err)
- convert_statfs_old(&oldbuf, buf);
- } else {
- struct fuse_statfs_compat1 compatbuf;
- memset(&compatbuf, 0, sizeof(struct fuse_statfs_compat1));
- err = ((struct fuse_operations_compat1 *) &fs->op)
- ->statfs(&compatbuf);
- if (!err)
- convert_statfs_compat(&compatbuf, buf);
- }
- return err;
-}
-
-#else /* __FreeBSD__ */
-
-static inline int fuse_compat_open(struct fuse_fs *fs, char *path,
- struct fuse_file_info *fi)
-{
- return fs->op.open(path, fi);
-}
-
-static inline int fuse_compat_release(struct fuse_fs *fs, const char *path,
- struct fuse_file_info *fi)
-{
- return fs->op.release(path, fi);
-}
-
-static inline int fuse_compat_opendir(struct fuse_fs *fs, const char *path,
- struct fuse_file_info *fi)
-{
- return fs->op.opendir(path, fi);
-}
-
-static inline int fuse_compat_statfs(struct fuse_fs *fs, const char *path,
- struct statvfs *buf)
-{
- return fs->op.statfs(fs->compat == 25 ? "/" : path, buf);
-}
-
-#endif /* __FreeBSD__ */
-
int fuse_fs_getattr(struct fuse_fs *fs, const char *path, struct stat *buf)
{
fuse_get_context()->private_data = fs->user_data;
@@ -821,7 +696,7 @@
{
fuse_get_context()->private_data = fs->user_data;
if (fs->op.release)
- return fuse_compat_release(fs, path, fi);
+ return fs->op.release(path, fi);
else
return 0;
}
@@ -831,7 +706,7 @@
{
fuse_get_context()->private_data = fs->user_data;
if (fs->op.opendir)
- return fuse_compat_opendir(fs, path, fi);
+ return fs->op.opendir(path, fi);
else
return 0;
}
@@ -841,7 +716,7 @@
{
fuse_get_context()->private_data = fs->user_data;
if (fs->op.open)
- return fuse_compat_open(fs, path, fi);
+ return fs->op.open(path, fi);
else
return 0;
}
@@ -900,7 +775,7 @@
{
fuse_get_context()->private_data = fs->user_data;
if (fs->op.statfs)
- return fuse_compat_statfs(fs, path, buf);
+ return fs->op.statfs(path, buf);
else {
buf->f_namemax = 255;
buf->f_bsize = 512;
@@ -3070,7 +2945,6 @@
if (!fs)
goto out_free;
- fs->compat = compat;
f->fs = fs;
/* Oh f**k, this is ugly! */
@@ -3114,11 +2988,6 @@
f->conf.readdir_ino = 1;
#endif
- if (compat && compat <= 25) {
- if (fuse_sync_compat_args(args) == -1)
- goto out_free_fs;
- }
-
f->se = fuse_lowlevel_new_common(args, &llop, sizeof(llop), f);
if (f->se == NULL) {
if (f->conf.help)
@@ -3254,19 +3123,6 @@
fuse_delete_context_key();
}
-static struct fuse *fuse_new_common_compat25(int fd, struct fuse_args *args,
- const struct fuse_operations *op,
- size_t op_size, int compat)
-{
- struct fuse *f = NULL;
- struct fuse_chan *ch = fuse_kern_chan_new(fd);
-
- if (ch)
- f = fuse_new_common(ch, args, op, op_size, NULL, compat);
-
- return f;
-}
-
/* called with fuse_context_lock held or during initialization (before
main() has been called) */
void fuse_register_module(struct fuse_module *mod)
@@ -3278,72 +3134,3 @@
mod->next = fuse_modules;
fuse_modules = mod;
}
-
-#ifndef __FreeBSD__
-
-static struct fuse *fuse_new_common_compat(int fd, const char *opts,
- const struct fuse_operations *op,
- size_t op_size, int compat)
-{
- struct fuse *f;
- struct fuse_args args = FUSE_ARGS_INIT(0, NULL);
-
- if (fuse_opt_add_arg(&args, "") == -1)
- return NULL;
- if (opts &&
- (fuse_opt_add_arg(&args, "-o") == -1 ||
- fuse_opt_add_arg(&args, opts) == -1)) {
- fuse_opt_free_args(&args);
- return NULL;
- }
- f = fuse_new_common_compat25(fd, &args, op, op_size, compat);
- fuse_opt_free_args(&args);
-
- return f;
-}
-
-struct fuse *fuse_new_compat22(int fd, const char *opts,
- const struct fuse_operations_compat22 *op,
- size_t op_size)
-{
- return fuse_new_common_compat(fd, opts, (struct fuse_operations *) op,
- op_size, 22);
-}
-
-struct fuse *fuse_new_compat2(int fd, const char *opts,
- const struct fuse_operations_compat2 *op)
-{
- return fuse_new_common_compat(fd, opts, (struct fuse_operations *) op,
- sizeof(struct fuse_operations_compat2),
- 21);
-}
-
-struct fuse *fuse_new_compat1(int fd, int flags,
- const struct fuse_operations_compat1 *op)
-{
- const char *opts = NULL;
- if (flags & FUSE_DEBUG_COMPAT1)
- opts = "debug";
- return fuse_new_common_compat(fd, opts, (struct fuse_operations *) op,
- sizeof(struct fuse_operations_compat1),
- 11);
-}
-
-FUSE_SYMVER(".symver fuse_exited,__fuse_exited@");
-FUSE_SYMVER(".symver fuse_process_cmd,__fuse_process_cmd@");
-FUSE_SYMVER(".symver fuse_read_cmd,__fuse_read_cmd@");
-FUSE_SYMVER(".symver fuse_set_getcontext_func,__fuse_set_getcontext_func@");
-FUSE_SYMVER(".symver fuse_new_compat2,fuse_new@");
-FUSE_SYMVER(".symver fuse_new_compat22,fuse_new@FUSE_2.2");
-
-#endif /* __FreeBSD__ */
-
-struct fuse *fuse_new_compat25(int fd, struct fuse_args *args,
- const struct fuse_operations_compat25 *op,
- size_t op_size)
-{
- return fuse_new_common_compat25(fd, args, (struct fuse_operations *) op,
- op_size, 25);
-}
-
-FUSE_SYMVER(".symver fuse_new_compat25,fuse_new@FUSE_2.5");
diff -Nru fuse-2.7.3.orig/lib/fuse_lowlevel.c fuse-2.7.3/lib/fuse_lowlevel.c
--- fuse-2.7.3.orig/lib/fuse_lowlevel.c 2008-02-19 14:51:26.000000000 -0500
+++ fuse-2.7.3/lib/fuse_lowlevel.c 2008-03-17 15:07:40.000000000 -0400
@@ -11,8 +11,6 @@
#include "fuse_opt.h"
#include "fuse_i.h"
#include "fuse_misc.h"
-#include "fuse_common_compat.h"
-#include "fuse_lowlevel_compat.h"
#include <stdio.h>
#include <stdlib.h>
@@ -1319,130 +1317,3 @@
{
return fuse_lowlevel_new_common(args, op, op_size, userdata);
}
-
-
-#ifndef __FreeBSD__
-
-static void fill_open_compat(struct fuse_open_out *arg,
- const struct fuse_file_info_compat *f)
-{
- arg->fh = f->fh;
- if (f->direct_io)
- arg->open_flags |= FOPEN_DIRECT_IO;
- if (f->keep_cache)
- arg->open_flags |= FOPEN_KEEP_CACHE;
-}
-
-static void convert_statfs_compat(const struct statfs *compatbuf,
- struct statvfs *buf)
-{
- buf->f_bsize = compatbuf->f_bsize;
- buf->f_blocks = compatbuf->f_blocks;
- buf->f_bfree = compatbuf->f_bfree;
- buf->f_bavail = compatbuf->f_bavail;
- buf->f_files = compatbuf->f_files;
- buf->f_ffree = compatbuf->f_ffree;
- buf->f_namemax = compatbuf->f_namelen;
-}
-
-int fuse_reply_open_compat(fuse_req_t req,
- const struct fuse_file_info_compat *f)
-{
- struct fuse_open_out arg;
-
- memset(&arg, 0, sizeof(arg));
- fill_open_compat(&arg, f);
- return send_reply_ok(req, &arg, sizeof(arg));
-}
-
-int fuse_reply_statfs_compat(fuse_req_t req, const struct statfs *stbuf)
-{
- struct statvfs newbuf;
-
- memset(&newbuf, 0, sizeof(newbuf));
- convert_statfs_compat(stbuf, &newbuf);
-
- return fuse_reply_statfs(req, &newbuf);
-}
-
-struct fuse_session *fuse_lowlevel_new_compat(const char *opts,
- const struct fuse_lowlevel_ops_compat *op,
- size_t op_size, void *userdata)
-{
- struct fuse_session *se;
- struct fuse_args args = FUSE_ARGS_INIT(0, NULL);
-
- if (opts &&
- (fuse_opt_add_arg(&args, "") == -1 ||
- fuse_opt_add_arg(&args, "-o") == -1 ||
- fuse_opt_add_arg(&args, opts) == -1)) {
- fuse_opt_free_args(&args);
- return NULL;
- }
- se = fuse_lowlevel_new(&args, (const struct fuse_lowlevel_ops *) op,
- op_size, userdata);
- fuse_opt_free_args(&args);
-
- return se;
-}
-
-struct fuse_ll_compat_conf {
- unsigned max_read;
- int set_max_read;
-};
-
-static const struct fuse_opt fuse_ll_opts_compat[] = {
- { "max_read=", offsetof(struct fuse_ll_compat_conf, set_max_read), 1 },
- { "max_read=%u", offsetof(struct fuse_ll_compat_conf, max_read), 0 },
- FUSE_OPT_KEY("max_read=", FUSE_OPT_KEY_KEEP),
- FUSE_OPT_END
-};
-
-int fuse_sync_compat_args(struct fuse_args *args)
-{
- struct fuse_ll_compat_conf conf;
-
- memset(&conf, 0, sizeof(conf));
- if (fuse_opt_parse(args, &conf, fuse_ll_opts_compat, NULL) == -1)
- return -1;
-
- if (fuse_opt_insert_arg(args, 1, "-osync_read"))
- return -1;
-
- if (conf.set_max_read) {
- char tmpbuf[64];
-
- sprintf(tmpbuf, "-omax_readahead=%u", conf.max_read);
- if (fuse_opt_insert_arg(args, 1, tmpbuf) == -1)
- return -1;
- }
- return 0;
-}
-
-FUSE_SYMVER(".symver fuse_reply_statfs_compat,fuse_reply_statfs@FUSE_2.4");
-FUSE_SYMVER(".symver fuse_reply_open_compat,fuse_reply_open@FUSE_2.4");
-FUSE_SYMVER(".symver fuse_lowlevel_new_compat,fuse_lowlevel_new@FUSE_2.4");
-
-#else /* __FreeBSD__ */
-
-int fuse_sync_compat_args(struct fuse_args *args)
-{
- (void) args;
- return 0;
-}
-
-#endif /* __FreeBSD__ */
-
-struct fuse_session *fuse_lowlevel_new_compat25(struct fuse_args *args,
- const struct fuse_lowlevel_ops_compat25 *op,
- size_t op_size, void *userdata)
-{
- if (fuse_sync_compat_args(args) == -1)
- return NULL;
-
- return fuse_lowlevel_new_common(args,
- (const struct fuse_lowlevel_ops *) op,
- op_size, userdata);
-}
-
-FUSE_SYMVER(".symver fuse_lowlevel_new_compat25,fuse_lowlevel_new@FUSE_2.5");
diff -Nru fuse-2.7.3.orig/lib/helper.c fuse-2.7.3/lib/helper.c
--- fuse-2.7.3.orig/lib/helper.c 2008-02-19 14:51:27.000000000 -0500
+++ fuse-2.7.3/lib/helper.c 2008-03-17 15:10:18.000000000 -0400
@@ -11,7 +11,6 @@
#include "fuse_misc.h"
#include "fuse_opt.h"
#include "fuse_lowlevel.h"
-#include "fuse_common_compat.h"
#include <stdio.h>
#include <stdlib.h>
@@ -206,7 +205,7 @@
close(fd);
} while (fd >= 0 && fd <= 2);
- fd = fuse_mount_compat25(mountpoint, args);
+ fd = fuse_kern_mount(mountpoint, args);
if (fd == -1)
return NULL;
@@ -353,100 +352,3 @@
{
return FUSE_VERSION;
}
-
-#include "fuse_compat.h"
-
-#ifndef __FreeBSD__
-
-struct fuse *fuse_setup_compat22(int argc, char *argv[],
- const struct fuse_operations_compat22 *op,
- size_t op_size, char **mountpoint,
- int *multithreaded, int *fd)
-{
- return fuse_setup_common(argc, argv, (struct fuse_operations *) op,
- op_size, mountpoint, multithreaded, fd, NULL,
- 22);
-}
-
-struct fuse *fuse_setup_compat2(int argc, char *argv[],
- const struct fuse_operations_compat2 *op,
- char **mountpoint, int *multithreaded,
- int *fd)
-{
- return fuse_setup_common(argc, argv, (struct fuse_operations *) op,
- sizeof(struct fuse_operations_compat2),
- mountpoint, multithreaded, fd, NULL, 21);
-}
-
-int fuse_main_real_compat22(int argc, char *argv[],
- const struct fuse_operations_compat22 *op,
- size_t op_size)
-{
- return fuse_main_common(argc, argv, (struct fuse_operations *) op,
- op_size, NULL, 22);
-}
-
-void fuse_main_compat1(int argc, char *argv[],
- const struct fuse_operations_compat1 *op)
-{
- fuse_main_common(argc, argv, (struct fuse_operations *) op,
- sizeof(struct fuse_operations_compat1), NULL, 11);
-}
-
-int fuse_main_compat2(int argc, char *argv[],
- const struct fuse_operations_compat2 *op)
-{
- return fuse_main_common(argc, argv, (struct fuse_operations *) op,
- sizeof(struct fuse_operations_compat2), NULL,
- 21);
-}
-
-int fuse_mount_compat1(const char *mountpoint, const char *args[])
-{
- /* just ignore mount args for now */
- (void) args;
- return fuse_mount_compat22(mountpoint, NULL);
-}
-
-FUSE_SYMVER(".symver fuse_setup_compat2,__fuse_setup@");
-FUSE_SYMVER(".symver fuse_setup_compat22,fuse_setup@FUSE_2.2");
-FUSE_SYMVER(".symver fuse_teardown,__fuse_teardown@");
-FUSE_SYMVER(".symver fuse_main_compat2,fuse_main@");
-FUSE_SYMVER(".symver fuse_main_real_compat22,fuse_main_real@FUSE_2.2");
-
-#endif /* __FreeBSD__ */
-
-
-struct fuse *fuse_setup_compat25(int argc, char *argv[],
- const struct fuse_operations_compat25 *op,
- size_t op_size, char **mountpoint,
- int *multithreaded, int *fd)
-{
- return fuse_setup_common(argc, argv, (struct fuse_operations *) op,
- op_size, mountpoint, multithreaded, fd, NULL,
- 25);
-}
-
-int fuse_main_real_compat25(int argc, char *argv[],
- const struct fuse_operations_compat25 *op,
- size_t op_size)
-{
- return fuse_main_common(argc, argv, (struct fuse_operations *) op,
- op_size, NULL, 25);
-}
-
-void fuse_teardown_compat22(struct fuse *fuse, int fd, char *mountpoint)
-{
- (void) fd;
- fuse_teardown_common(fuse, mountpoint);
-}
-
-int fuse_mount_compat25(const char *mountpoint, struct fuse_args *args)
-{
- return fuse_kern_mount(mountpoint, args);
-}
-
-FUSE_SYMVER(".symver fuse_setup_compat25,fuse_setup@FUSE_2.5");
-FUSE_SYMVER(".symver fuse_teardown_compat22,fuse_teardown@FUSE_2.2");
-FUSE_SYMVER(".symver fuse_main_real_compat25,fuse_main_real@FUSE_2.5");
-FUSE_SYMVER(".symver fuse_mount_compat25,fuse_mount@FUSE_2.5");
diff -Nru fuse-2.7.3.orig/lib/mount.c fuse-2.7.3/lib/mount.c
--- fuse-2.7.3.orig/lib/mount.c 2008-02-19 14:51:27.000000000 -0500
+++ fuse-2.7.3/lib/mount.c 2008-03-17 15:11:02.000000000 -0400
@@ -10,7 +10,6 @@
#include "fuse_i.h"
#include "fuse_misc.h"
#include "fuse_opt.h"
-#include "fuse_common_compat.h"
#include "mount_util.h"
#include <stdio.h>
@@ -312,11 +311,6 @@
waitpid(pid, NULL, 0);
}
-void fuse_unmount_compat22(const char *mountpoint)
-{
- fuse_kern_unmount(mountpoint, -1);
-}
-
static int fuse_mount_fusermount(const char *mountpoint, const char *opts,
int quiet)
{
@@ -380,11 +374,6 @@
return rv;
}
-int fuse_mount_compat22(const char *mountpoint, const char *opts)
-{
- return fuse_mount_fusermount(mountpoint, opts, 0);
-}
-
static int fuse_mount_sys(const char *mnt, struct mount_opts *mo,
const char *mnt_opts)
{
@@ -587,6 +576,3 @@
free(mo.mtab_opts);
return res;
}
-
-FUSE_SYMVER(".symver fuse_mount_compat22,fuse_mount@FUSE_2.2");
-FUSE_SYMVER(".symver fuse_unmount_compat22,fuse_unmount@FUSE_2.2");

View File

@ -1,6 +1,7 @@
--- fuse-2.7.3.orig/lib/helper.c 2008-11-22 03:25:11.000000000 +0100
+++ fuse-2.7.3/lib/helper.c 2008-11-22 04:06:35.000000000 +0100
@@ -178,13 +178,41 @@
diff -Nurp fuse-2.8.1.orig/lib/helper.c fuse-2.8.1/lib/helper.c
--- fuse-2.8.1.orig/lib/helper.c 2009-06-18 13:14:09.000000000 +0200
+++ fuse-2.8.1/lib/helper.c 2009-12-17 01:11:32.773356000 +0100
@@ -180,13 +180,41 @@ err:
int fuse_daemonize(int foreground)
{
int res;

View File

@ -1,118 +0,0 @@
#
# Copyright (C) 2008 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=fuse
PKG_VERSION:=2.5.3
PKG_RELEASE:=3
PKG_MD5SUM:=9c7e8b6606b9f158ae20b8521ba2867c
PKG_SOURCE_URL:=@SF/$(PKG_NAME)
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
include $(INCLUDE_DIR)/package.mk
define Package/fuse24/Default
TITLE:=FUSE for kernel 2.4
DEPENDS:=@LINUX_2_4
URL:=http://fuse.sourceforge.net/
endef
define Package/fuse24/Default/description
FUSE for kernel 2.4 (Filesystem in UserSpacE) contains only the kernel module.
The libraries and utilities can be compiled from a recent FUSE version (package fuse).
For details see:
http://apps.sourceforge.net/mediawiki/fuse/index.php?title=FAQ#What_version_of_FUSE_do_I_need_to_use_FUSE_with_Linux_2.4.3F
endef
define KernelPackage/fuse24
$(call Package/fuse24/Default)
SUBMENU:=Filesystems
DEPENDS:=@LINUX_2_4
TITLE+= (kernel module)
FILES:=$(PKG_INSTALL_DIR)/lib/modules/$(LINUX_VERSION)/kernel/fs/fuse/fuse.$(LINUX_KMOD_SUFFIX)
AUTOLOAD:=$(call AutoLoad,80,fuse)
endef
define KernelPackage/fuse24/description
$(call Package/fuse24/Default/description)
This package contains the FUSE kernel 2.4 module.
endef
define KernelPackage/fuse24/install
$(call $(Package/kmod-fuse24/install))
$(INSTALL_DIR) $(1)/etc/init.d
# symlinks /dev/misc/fuse to /dev/fuse on startup
$(INSTALL_BIN) ./files/fuse24.init $(1)/etc/init.d/fuse24
endef
define Build/Configure
(cd $(PKG_BUILD_DIR); \
rm -rf config.{cache,status} ; \
touch configure.in ; \
touch aclocal.m4 ; \
touch Makefile.in ; \
touch include/config.h.in ; \
touch configure ; \
$(TARGET_CONFIGURE_OPTS) \
CFLAGS="$(TARGET_CFLAGS)" \
./configure \
--target=$(GNU_TARGET_NAME) \
--host=$(GNU_TARGET_NAME) \
--build=$(GNU_HOST_NAME) \
--program-prefix="" \
--program-suffix="" \
--prefix=/usr \
--exec-prefix=/usr \
--bindir=/usr/bin \
--datadir=/usr/share \
--includedir=/usr/include \
--infodir=/usr/share/info \
--libdir=/usr/lib \
--libexecdir=/usr/lib \
--localstatedir=/var \
--mandir=/usr/share/man \
--sbindir=/usr/sbin \
--sysconfdir=/etc \
$(DISABLE_LARGEFILE) \
$(DISABLE_NLS) \
--enable-shared \
--enable-static \
--disable-rpath \
--enable-kernel-module \
--disable-example \
--disable-auto-modprobe \
--with-kernel=$(LINUX_DIR) \
--disable-mtab \
--disable-lib \
--disable-util \
);
endef
define Build/Compile
rm -rf $(PKG_INSTALL_DIR)
mkdir -p $(PKG_INSTALL_DIR)
$(MAKE) -C $(PKG_BUILD_DIR) \
ARCH="$(LINUX_KARCH)" \
CROSS_COMPILE="$(TARGET_CROSS)" \
DESTDIR="$(PKG_INSTALL_DIR)" \
all install
endef
define Build/InstallDev
mkdir -p $(1)/usr/include
$(CP) $(PKG_INSTALL_DIR)/usr/include/fuse{,.h} $(1)/usr/include/
mkdir -p $(1)/usr/lib/pkgconfig
$(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/fuse.pc $(1)/usr/lib/pkgconfig/
$(SED) 's,-I$$$${includedir}/fuse,,g' $(1)/usr/lib/pkgconfig/fuse.pc
$(SED) 's,-L$$$${libdir},,g' $(1)/usr/lib/pkgconfig/fuse.pc
endef
$(eval $(call KernelPackage,fuse24))

View File

@ -1,10 +0,0 @@
#!/bin/sh /etc/rc.common
# Copyright (C) 2009 OpenWrt.org
START=15
start() {
if ls /lib/modules/$(uname -r)/fuse.* > /dev/null 2>&1; then
[ ! -d /dev/misc ] && umask 022 && mkdir /dev/misc;
ln -s /dev/fuse /dev/misc/;
fi
}

View File

@ -1,4 +1,5 @@
# Copyright (C) 2006-2009 OpenWrt.org
#
# Copyright (C) 2006-2010 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
@ -8,7 +9,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=gdb
PKG_VERSION:=6.8
PKG_RELEASE:=1
PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=@GNU/gdb
@ -19,17 +20,19 @@ include $(INCLUDE_DIR)/package.mk
define Package/gdb/Default
SECTION:=utils
CATEGORY:=Utilities
DEPENDS:= @!(avr32||cris)
DEPENDS:=@!(avr32||cris)
endef
define Package/gdb
$(call Package/gdb/Default)
TITLE:=GNU Debugger
DEPENDS+= +libreadline +libncurses
DEPENDS+=+libreadline +libncurses
endef
define Package/gdb/description
GNU debugger
GDB, the GNU Project debugger, allows you to see what is going on `inside'
another program while it executes -- or what another program was doing at the
moment it crashed.
endef
define Package/gdbserver
@ -38,14 +41,14 @@ $(call Package/gdb/Default)
endef
define Package/gdbserver/description
GDBSERVER is a program that allows you to run GDB on a different machine
than the one which is running the program being debugged.
GDBSERVER is a program that allows you to run GDB on a different machine than the
one which is running the program being debugged.
endef
# XXX: add --disable-werror to prevent build failure with arm
CONFIGURE_ARGS+= \
--with-system-readline \
--disable-werror \
--disable-werror
CONFIGURE_VARS+= \
ac_cv_search_tgetent="$(TARGET_LDFLAGS) -lncurses -lreadline"
@ -54,19 +57,22 @@ define Build/Compile
$(MAKE) -C $(PKG_BUILD_DIR) \
DESTDIR="$(PKG_INSTALL_DIR)" \
CPPFLAGS="$(TARGET_CPPFLAGS)" \
all install-gdb
all
$(MAKE) -C $(PKG_BUILD_DIR) \
DESTDIR="$(PKG_INSTALL_DIR)" \
CPPFLAGS="$(TARGET_CPPFLAGS)" \
install-gdb
endef
define Package/gdb/install
define Package/gdb/install
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/gdb $(1)/usr/bin/
endef
define Package/gdbserver/install
define Package/gdbserver/install
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/gdbserver $(1)/usr/bin/
endef
$(eval $(call BuildPackage,gdb))
$(eval $(call BuildPackage,gdbserver))

View File

@ -47,7 +47,6 @@ $(call KernelPackage/hostap/Default)
TITLE:=Host AP support for Prism2/2.5/3
DEPENDS:=@PCI_SUPPORT||PCMCIA_SUPPORT +LINUX_2_6:kmod-lib80211 +wireless-tools
KCONFIG:=CONFIG_HOSTAP CONFIG_HOSTAP_FIRMWARE=y CONFIG_HOSTAP_FIRMWARE_NVRAM=y
PROVIDES:=kmod-hostap
endef
define KernelPackage/hostap/2.4

View File

@ -1,5 +1,5 @@
#
# Copyright (C) 2006 OpenWrt.org
#
# Copyright (C) 2006-2010 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=iproute2
PKG_VERSION:=2.6.29-1
PKG_RELEASE:=1
PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=http://devresources.linux-foundation.org/dev/iproute2/download/
@ -48,7 +48,7 @@ define Build/Configure
$(SED) "s,^LIBC_INCLUDE.*,LIBC_INCLUDE=$(STAGING_DIR)/include," \
$(PKG_BUILD_DIR)/Makefile
# For now disable compiling of the misc directory because it seems to fail
rm -rf $(PKG_BUILD_DIR)/misc
rm -rf $(PKG_BUILD_DIR)/misc
$(SED) "s, misc,," $(PKG_BUILD_DIR)/Makefile
endef
@ -59,8 +59,8 @@ MAKE_FLAGS += \
all tc/tc ip/ip
define Build/Compile
$(MAKE) -C $(PKG_BUILD_DIR)/netem HOSTCC="$(HOSTCC)" EXTRA_CCOPTS="$(TARGET_CFLAGS)" CFLAGS="-D_GNU_SOURCE -O2 -Wstrict-prototypes -Wall -I ../include -DRESOLVE_HOSTNAMES"
$(Build/Compile/Default)
$(_SINGLE)$(MAKE) -C $(PKG_BUILD_DIR)/netem HOSTCC="$(HOSTCC)" EXTRA_CCOPTS="$(TARGET_CFLAGS)" CFLAGS="-D_GNU_SOURCE -O2 -Wstrict-prototypes -Wall -I ../include -DRESOLVE_HOSTNAMES"
$(_SINGLE)$(Build/Compile/Default)
endef
define Build/InstallDev
@ -90,5 +90,3 @@ endef
$(eval $(call BuildPackage,ip))
$(eval $(call BuildPackage,tc))
$(eval $(call BuildPackage,genl))

View File

@ -1,5 +1,5 @@
#
# Copyright (C) 2006-2009 OpenWrt.org
# Copyright (C) 2006-2010 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
@ -10,7 +10,7 @@ include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=iptables
PKG_VERSION:=1.4.6
PKG_RELEASE:=1
PKG_RELEASE:=2
PKG_MD5SUM:=c67cf30e281a924def6426be0973df56
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
@ -19,7 +19,7 @@ PKG_SOURCE_URL:=http://www.netfilter.org/projects/iptables/files \
ftp://ftp.de.netfilter.org/pub/netfilter/iptables/ \
ftp://ftp.no.netfilter.org/pub/netfilter/iptables/
PKG_FIXUP = libtool
PKG_FIXUP:=libtool
include $(INCLUDE_DIR)/package.mk
ifeq ($(DUMP),)
@ -48,15 +48,15 @@ $(call Package/iptables/Default)
endef
define Package/iptables/description
IPv4 firewall administration tool.
Includes support for:
- comment
- limit
- LOG
- mac
- multiport
- REJECT
- TCPMSS
IPv4 firewall administration tool.
Includes support for:
- comment
- limit
- LOG
- mac
- multiport
- REJECT
- TCPMSS
endef
define Package/iptables-mod-conntrack
@ -65,11 +65,11 @@ $(call Package/iptables/Module, +kmod-ipt-conntrack)
endef
define Package/iptables-mod-conntrack/description
Basic iptables extensions for connection tracking.
Includes:
- state
- raw
- NOTRACK
Basic iptables extensions for connection tracking.
Includes:
- state
- raw
- NOTRACK
endef
define Package/iptables-mod-conntrack-extra
@ -78,11 +78,11 @@ $(call Package/iptables/Module, +kmod-ipt-conntrack-extra)
endef
define Package/iptables-mod-conntrack-extra/description
Extra iptables extensions for connection tracking.
Includes:
- libipt_conntrack
- libipt_helper
- libipt_connmark/CONNMARK
Extra iptables extensions for connection tracking.
Includes:
- libipt_conntrack
- libipt_helper
- libipt_connmark/CONNMARK
endef
define Package/iptables-mod-filter
@ -91,10 +91,10 @@ $(call Package/iptables/Module, +kmod-ipt-filter)
endef
define Package/iptables-mod-filter/description
iptables extensions for packet content inspection.
Includes:
- libipt_string
- libipt_layer7
iptables extensions for packet content inspection.
Includes:
- libipt_string
- libipt_layer7
endef
define Package/iptables-mod-imq
@ -103,9 +103,9 @@ $(call Package/iptables/Module, +kmod-ipt-imq)
endef
define Package/iptables-mod-imq/description
iptables extension for IMQ support.
Includes:
- libipt_IMQ
iptables extension for IMQ support.
Includes:
- libipt_IMQ
endef
define Package/iptables-mod-ipopt
@ -114,19 +114,19 @@ $(call Package/iptables/Module, +kmod-ipt-ipopt)
endef
define Package/iptables-mod-ipopt/description
iptables extensions for matching/changing IP packet options.
Includes:
- libipt_CLASSIFY
- libipt_dscp/DSCP
- libipt_ecn/ECN
- libipt_length
- libipt_mac
- libipt_mark/MARK
- libipt_statistic
- libipt_tcpmms
- libipt_tos/TOS
- libipt_ttl/TTL
- libipt_unclean
iptables extensions for matching/changing IP packet options.
Includes:
- libipt_CLASSIFY
- libipt_dscp/DSCP
- libipt_ecn/ECN
- libipt_length
- libipt_mac
- libipt_mark/MARK
- libipt_statistic
- libipt_tcpmms
- libipt_tos/TOS
- libipt_ttl/TTL
- libipt_unclean
endef
define Package/iptables-mod-ipsec
@ -135,11 +135,11 @@ $(call Package/iptables/Module, +kmod-ipt-ipsec)
endef
define Package/iptables-mod-ipsec/description
iptables extensions for matching ipsec traffic.
Includes:
- libipt_ah
- libipt_esp
- libipt_policy
iptables extensions for matching ipsec traffic.
Includes:
- libipt_ah
- libipt_esp
- libipt_policy
endef
define Package/iptables-mod-ipset
@ -148,10 +148,10 @@ $(call Package/iptables/Module, @LINUX_2_6)
endef
define Package/iptables-mod-ipset/description
IPset iptables extensions.
Includes:
- libipt_set
- libipt_SET
IPset iptables extensions.
Includes:
- libipt_set
- libipt_SET
endef
define Package/iptables-mod-nat
@ -160,11 +160,11 @@ $(call Package/iptables/Module, +kmod-ipt-nat)
endef
define Package/iptables-mod-nat/description
iptables extensions for basic NAT targets.
Includes:
- MASQUERADE
- SNAT
- DNAT
iptables extensions for basic NAT targets.
Includes:
- MASQUERADE
- SNAT
- DNAT
endef
define Package/iptables-mod-nat-extra
@ -173,9 +173,9 @@ $(call Package/iptables/Module, +kmod-ipt-nat-extra)
endef
define Package/iptables-mod-nat-extra/description
iptables extensions for extra NAT targets.
Includes:
- REDIRECT
iptables extensions for extra NAT targets.
Includes:
- REDIRECT
endef
define Package/iptables-mod-ulog
@ -184,9 +184,9 @@ $(call Package/iptables/Module, +kmod-ipt-ulog)
endef
define Package/iptables-mod-ulog/description
iptables extensions for user-space packet logging.
Includes:
- libipt_ULOG
iptables extensions for user-space packet logging.
Includes:
- libipt_ULOG
endef
define Package/iptables-mod-iprange
@ -195,9 +195,9 @@ $(call Package/iptables/Module, +kmod-ipt-iprange)
endef
define Package/iptables-mod-iprange/description
iptables extensions for matching ip ranges.
Includes:
- libipt_iprange
iptables extensions for matching ip ranges.
Includes:
- libipt_iprange
endef
define Package/iptables-mod-extra
@ -206,12 +206,12 @@ $(call Package/iptables/Module, +kmod-ipt-extra)
endef
define Package/iptables-mod-extra/description
other extra iptables extensions.
Includes:
- libipt_owner
- libipt_physdev
- libipt_pkttype
- libipt_recent
Other extra iptables extensions.
Includes:
- libipt_owner
- libipt_physdev
- libipt_pkttype
- libipt_recent
endef
define Package/iptables-utils
@ -268,18 +268,20 @@ IPTABLES_MAKEOPTS = \
KERNEL_DIR="$(LINUX_DIR)" PREFIX=/usr \
KBUILD_OUTPUT="$(LINUX_DIR)" \
DESTDIR="$(PKG_INSTALL_DIR)" \
all install $(MAKE_TARGETS)
$(MAKE_TARGETS)
define Build/Compile
mkdir -p $(PKG_INSTALL_DIR)
$(INSTALL_DIR) $(PKG_INSTALL_DIR)
$(MAKE) -C $(PKG_BUILD_DIR) $(IPTABLES_MAKEOPTS)
$(MAKE) -C $(PKG_BUILD_DIR) $(IPTABLES_MAKEOPTS) install
$(MAKE) -C $(PKG_BUILD_DIR)/libipq $(IPTABLES_MAKEOPTS)
$(MAKE) -C $(PKG_BUILD_DIR)/libipq $(IPTABLES_MAKEOPTS) install
endef
define Build/InstallDev
mkdir -p $(1)/usr/include
mkdir -p $(1)/usr/include/iptables
mkdir -p $(1)/usr/include/net/netfilter
$(INSTALL_DIR) $(1)/usr/include
$(INSTALL_DIR) $(1)/usr/include/iptables
$(INSTALL_DIR) $(1)/usr/include/net/netfilter
# XXX: iptables header fixup, some headers are not installed by iptables anymore
$(CP) $(PKG_BUILD_DIR)/include/net/netfilter/*.h $(1)/usr/include/net/netfilter/
@ -290,11 +292,11 @@ define Build/InstallDev
$(CP) $(PKG_BUILD_DIR)/include/libiptc $(1)/usr/include/
$(CP) $(PKG_INSTALL_DIR)/usr/include/* $(1)/usr/include/
mkdir -p $(1)/usr/lib
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libxtables.{a,so*} $(1)/usr/lib/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libip*tc.{a,so*} $(1)/usr/lib/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libipq.a $(1)/usr/lib/
mkdir -p $(1)/usr/lib/pkgconfig
$(INSTALL_DIR) $(1)/usr/lib/pkgconfig
$(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/xtables.pc $(1)/usr/lib/pkgconfig/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libiptc.pc $(1)/usr/lib/pkgconfig/
endef

View File

@ -97,6 +97,7 @@ $(call KernelPackage/crypto/Depends,+kmod-crypto-des @!TARGET_ubicom32)
TITLE:=HIFN 795x crypto accelerator
KCONFIG:= \
CONFIG_CRYPTO_HW=y \
CONFIG_HW_RANDOM=y \
CONFIG_CRYPTO_DEV_HIFN_795X \
CONFIG_CRYPTO_DEV_HIFN_795X_RNG=y
FILES:=$(LINUX_DIR)/drivers/crypto/hifn_795x.$(LINUX_KMOD_SUFFIX)

View File

@ -18,7 +18,7 @@ USBINPUT_DIR?=input/misc
define KernelPackage/usb-core
SUBMENU:=$(USB_MENU)
TITLE:=Support for USB
DEPENDS:=@USB_SUPPORT +LINUX_2_6_31:kmod-nls-base +LINUX_2_6_32:kmod-nls-base
DEPENDS:=@USB_SUPPORT +LINUX_2_6_31:kmod-nls-base +LINUX_2_6_32:kmod-nls-base +LINUX_2_6_33:kmod-nls-base
KCONFIG:=CONFIG_USB
AUTOLOAD:=$(call AutoLoad,20,usbcore,1)
endef

View File

@ -1,4 +1,4 @@
#
#
# Copyright (C) 2006 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
@ -8,14 +8,12 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=linux-atm
PKG_VERSION:=2.4.1
PKG_VERSION:=2.5.1
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)_$(PKG_VERSION).orig.tar.gz
PKG_SOURCE_URL:=http://ftp.debian.org/debian/pool/main/l/linux-atm/
PKG_MD5SUM:=84fef49cc39ff2605204246666f65864
PKG_FIXUP:=libtool
PKG_MD5SUM:=9560b0e1f410a05b849dfdab465dd758
include $(INCLUDE_DIR)/package.mk
@ -23,7 +21,6 @@ define Package/linux-atm
SECTION:=libs
CATEGORY:=Libraries
TITLE:=Linux ATM library
DEPENDS:=+kmod-atm
URL:=http://linux-atm.sourceforge.net/
endef
@ -63,24 +60,54 @@ endef
ifneq ($(CONFIG_PACKAGE_linux-atm),)
define Build/InstallDev
mkdir -p $(1)/usr/include
$(CP) $(PKG_INSTALL_DIR)/usr/include/atm{,d,sap}.h \
$(CP) $(PKG_BUILD_DIR)/src/include/atm{,d,sap}.h \
$(1)/usr/include/
mkdir -p $(1)/usr/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libatm.{a,so*} \
$(CP) $(PKG_BUILD_DIR)/src/lib/.libs/libatm.{a,so*} \
$(1)/usr/lib/
endef
endif
define Package/linux-atm/install
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libatm.so.* $(1)/usr/lib/
$(CP) $(PKG_BUILD_DIR)/src/lib/.libs/libatm.so.* $(1)/usr/lib/
endef
define Package/atm-tools/install
$(INSTALL_DIR) $(1)/usr/sbin/
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/atmarp{,d} $(1)/usr/sbin/
$(INSTALL_BIN) $(PKG_BUILD_DIR)/src/arpd/atmarp{,d} $(1)/usr/sbin/
$(INSTALL_DIR) $(1)/lib/network
$(INSTALL_BIN) ./files/ipoa.sh $(1)/lib/network/
$(INSTALL_DIR) $(1)/usr/bin/
#
#The following is disabled by default but still useful for some debugging
#
# $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/atmaddr $(1)/usr/sbin/
# $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/atmloop $(1)/usr/sbin/
# $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/atmtcp $(1)/usr/sbin/
# $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/esi $(1)/usr/sbin/
# $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/aread $(1)/usr/bin/
# $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/awrite $(1)/usr/bin/
# $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/atmdiag $(1)/usr/bin/
# $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/atmdump $(1)/usr/bin/
#
# The following is really for some specific application, and obsolete for most of it
#
# $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/atmsigd $(1)/usr/sbin/
# $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/bus $(1)/usr/sbin/
# $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/ilmid $(1)/usr/sbin/
# $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/ilmidiag $(1)/usr/sbin/
# $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/lecs $(1)/usr/sbin/
# $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/les $(1)/usr/sbin/
# $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/mpcd $(1)/usr/sbin/
# $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/zeppelin $(1)/usr/sbin/
# $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/atmswitch $(1)/usr/bin/
# $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/saaldump $(1)/usr/bin/
# $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/sonetdiag $(1)/usr/bin/
# $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/svc_recv $(1)/usr/bin/
# $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/svc_send $(1)/usr/bin/
# $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/ttcp_atm $(1)/usr/bin/
endef
$(eval $(call BuildPackage,linux-atm))

File diff suppressed because it is too large Load Diff

View File

@ -1,162 +0,0 @@
Index: linux-atm-2.4.1/configure.in
===================================================================
--- linux-atm-2.4.1.orig/configure.in 2007-10-20 19:19:10.594232210 +0200
+++ linux-atm-2.4.1/configure.in 2007-10-20 19:19:16.214552491 +0200
@@ -153,26 +153,5 @@
src/Makefile \
src/include/Makefile \
src/lib/Makefile \
- src/test/Makefile \
- src/debug/Makefile \
- src/qgen/Makefile \
- src/saal/Makefile \
- src/sigd/Makefile \
- src/maint/Makefile \
- src/arpd/Makefile \
- src/ilmid/Makefile \
- src/ilmid/asn1/Makefile \
- src/man/Makefile \
- src/led/Makefile \
- src/lane/Makefile \
- src/mpoad/Makefile \
- src/switch/Makefile \
- src/switch/debug/Makefile \
- src/switch/tcp/Makefile \
- src/config/Makefile \
- src/config/init-redhat/Makefile \
- src/extra/Makefile \
- src/extra/linux-atm.spec \
- src/extra/ANS/Makefile
)
Index: linux-atm-2.4.1/src/Makefile.am
===================================================================
--- linux-atm-2.4.1.orig/src/Makefile.am 2007-10-20 19:19:10.602232664 +0200
+++ linux-atm-2.4.1/src/Makefile.am 2007-10-20 19:19:16.218552720 +0200
@@ -1,3 +1,2 @@
-SUBDIRS = include lib test debug qgen saal sigd maint arpd ilmid man led lane \
- mpoad switch config extra
+SUBDIRS = include lib
Index: linux-atm-2.4.1/src/include/linux/atmbr2684.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-atm-2.4.1/src/include/linux/atmbr2684.h 2007-10-20 19:19:16.230553402 +0200
@@ -0,0 +1,117 @@
+#ifndef _LINUX_ATMBR2684_H
+#define _LINUX_ATMBR2684_H
+
+#include <linux/atm.h>
+#include <linux/if.h> /* For IFNAMSIZ */
+#include <linux/if_ether.h> /* ETH_P_* */
+
+/*
+ * Type of media we're bridging (ethernet, token ring, etc) Currently only
+ * ethernet is supported
+ */
+#define BR2684_MEDIA_ETHERNET (0) /* 802.3 */
+#define BR2684_MEDIA_802_4 (1) /* 802.4 */
+#define BR2684_MEDIA_TR (2) /* 802.5 - token ring */
+#define BR2684_MEDIA_FDDI (3)
+#define BR2684_MEDIA_802_6 (4) /* 802.6 */
+
+/*
+ * Is there FCS inbound on this VC? This currently isn't supported.
+ */
+#define BR2684_FCSIN_NO (0)
+#define BR2684_FCSIN_IGNORE (1)
+#define BR2684_FCSIN_VERIFY (2)
+
+/*
+ * Is there FCS outbound on this VC? This currently isn't supported.
+ */
+#define BR2684_FCSOUT_NO (0)
+#define BR2684_FCSOUT_SENDZERO (1)
+#define BR2684_FCSOUT_GENERATE (2)
+
+/*
+ * Does this VC include LLC encapsulation?
+ */
+#define BR2684_ENCAPS_VC (0) /* VC-mux */
+#define BR2684_ENCAPS_LLC (1)
+#define BR2684_ENCAPS_AUTODETECT (2) /* Unsuported */
+
+/*
+ * Is this VC bridged or routed?
+ */
+
+#define BR2684_PAYLOAD_ROUTED (0)
+#define BR2684_PAYLOAD_BRIDGED (1)
+
+
+/*
+ * This is for the ATM_NEWBACKENDIF call - these are like socket families:
+ * the first element of the structure is the backend number and the rest
+ * is per-backend specific
+ */
+struct atm_newif_br2684 {
+ atm_backend_t backend_num; /* ATM_BACKEND_BR2684 */
+ int media; /* BR2684_MEDIA_* */
+ char ifname[IFNAMSIZ];
+ int mtu;
+ int payload; /* bridged or routed */
+};
+
+/*
+ * This structure is used to specify a br2684 interface - either by a
+ * positive integer (returned by ATM_NEWBACKENDIF) or the interfaces name
+ */
+#define BR2684_FIND_BYNOTHING (0)
+#define BR2684_FIND_BYNUM (1)
+#define BR2684_FIND_BYIFNAME (2)
+struct br2684_if_spec {
+ int method; /* BR2684_FIND_* */
+ union {
+ char ifname[IFNAMSIZ];
+ int devnum;
+ } spec;
+};
+
+/*
+ * This is for the ATM_SETBACKEND call - these are like socket families:
+ * the first element of the structure is the backend number and the rest
+ * is per-backend specific
+ */
+struct atm_backend_br2684 {
+ atm_backend_t backend_num; /* ATM_BACKEND_BR2684 */
+ struct br2684_if_spec ifspec;
+ int fcs_in; /* BR2684_FCSIN_* */
+ int fcs_out; /* BR2684_FCSOUT_* */
+ int fcs_auto; /* 1: fcs_{in,out} disabled if no FCS rx'ed */
+ int encaps; /* BR2684_ENCAPS_* */
+ int payload; /* BR2684_PAYLOAD_* */
+ int has_vpiid; /* 1: use vpn_id - Unsupported */
+ __u8 vpn_id[7];
+ int send_padding; /* unsupported */
+ int min_size; /* we will pad smaller packets than this */
+};
+
+/*
+ * The BR2684_SETFILT ioctl is an experimental mechanism for folks
+ * terminating a large number of IP-only vcc's. When netfilter allows
+ * efficient per-if in/out filters, this support will be removed
+ */
+struct br2684_filter {
+ __u32 prefix; /* network byte order */
+ __u32 netmask; /* 0 = disable filter */
+};
+
+struct br2684_filter_set {
+ struct br2684_if_spec ifspec;
+ struct br2684_filter filter;
+};
+
+enum br2684_payload {
+ p_routed = BR2684_PAYLOAD_ROUTED,
+ p_bridged = BR2684_PAYLOAD_BRIDGED,
+};
+
+#define BR2684_SETFILT _IOW( 'a', ATMIOC_BACKEND + 0, \
+ struct br2684_filter_set)
+
+#endif /* _LINUX_ATMBR2684_H */

View File

@ -1,66 +1,44 @@
Index: linux-atm-2.4.1/src/qgen/Makefile.am
Index: linux-atm-2.5.1/src/qgen/Makefile.am
===================================================================
--- linux-atm-2.4.1.orig/src/qgen/Makefile.am 2007-10-20 19:19:10.354218533 +0200
+++ linux-atm-2.4.1/src/qgen/Makefile.am 2007-10-20 19:19:16.814586679 +0200
@@ -3,7 +3,7 @@
--- linux-atm-2.5.1.orig/src/qgen/Makefile.am 2010-02-27 01:36:10.156687492 +0100
+++ linux-atm-2.5.1/src/qgen/Makefile.am 2010-02-27 01:36:23.388686762 +0100
@@ -2,7 +2,7 @@
qgen_SOURCES = common.c common.h file.c file.h first.c ql_y.y ql_l.l qgen.c \
qgen.h second.c third.c
-qgen_LDADD = -lfl
+qgen_LDADD =
q_dump_SOURCES = common.c
q_dump_LDADD = qd.dump.standalone.o
Index: linux-atm-2.4.1/src/qgen/Makefile.in
CC = @CC_FOR_BUILD@
CFLAGS = @CFLAGS_FOR_BUILD@
Index: linux-atm-2.5.1/src/qgen/Makefile.in
===================================================================
--- linux-atm-2.4.1.orig/src/qgen/Makefile.in 2007-10-20 19:19:11.898306522 +0200
+++ linux-atm-2.4.1/src/qgen/Makefile.in 2007-10-20 19:19:16.814586679 +0200
@@ -90,7 +90,7 @@
qgen_SOURCES = common.c common.h file.c file.h first.c ql_y.y ql_l.l qgen.c qgen.h second.c third.c
--- linux-atm-2.5.1.orig/src/qgen/Makefile.in 2010-02-27 01:36:10.156687492 +0100
+++ linux-atm-2.5.1/src/qgen/Makefile.in 2010-02-27 02:06:38.992684137 +0100
@@ -58,7 +58,7 @@
am__depfiles_maybe = depfiles
am__mv = mv -f
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
- $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+ $(AM_CFLAGS) $(CFLAGS)
LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
--mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
@@ -208,7 +208,7 @@
qgen_SOURCES = common.c common.h file.c file.h first.c ql_y.y ql_l.l qgen.c \
qgen.h second.c third.c
-qgen_LDADD = -lfl
+qgen_LDADD =
q_dump_SOURCES = common.c
q_dump_LDADD = qd.dump.standalone.o
Index: linux-atm-2.4.1/src/qgen/ql_l.c
#TESTS = $(check_PROGRAMS)
EXTRA_DIST = ql_y.h ql_y.c ql_l.c
Index: linux-atm-2.5.1/src/sigd/Makefile.am
===================================================================
--- linux-atm-2.4.1.orig/src/qgen/ql_l.c 2007-10-20 19:19:11.906306980 +0200
+++ linux-atm-2.4.1/src/qgen/ql_l.c 2007-10-20 19:19:16.842588278 +0200
@@ -501,6 +501,11 @@
#include "qgen.h"
#include "ql_y.h"
+int yywrap(void)
+{
+ return 1;
+}
+
typedef struct _tree {
struct _tree *left,*right;
Index: linux-atm-2.4.1/src/sigd/cfg_l.c
===================================================================
--- linux-atm-2.4.1.orig/src/sigd/cfg_l.c 2007-10-20 19:19:10.378219897 +0200
+++ linux-atm-2.4.1/src/sigd/cfg_l.c 2007-10-20 19:19:16.854588969 +0200
@@ -11,6 +11,10 @@
#include <stdio.h>
#include <unistd.h>
+int yywrap(void)
+{
+ return 1;
+}
/* cfront 1.2 defines "c_plusplus" instead of "__cplusplus" */
#ifdef c_plusplus
Index: linux-atm-2.4.1/src/sigd/Makefile.am
===================================================================
--- linux-atm-2.4.1.orig/src/sigd/Makefile.am 2007-10-20 19:19:10.386220355 +0200
+++ linux-atm-2.4.1/src/sigd/Makefile.am 2007-10-20 19:19:16.882590565 +0200
--- linux-atm-2.5.1.orig/src/sigd/Makefile.am 2010-02-27 01:36:10.160686786 +0100
+++ linux-atm-2.5.1/src/sigd/Makefile.am 2010-02-27 01:36:23.392683892 +0100
@@ -8,7 +8,7 @@
$(top_builddir)/src/qgen/qd.dump.o \
$(top_builddir)/src/q2931/qd.dump.o \
$(top_builddir)/src/lib/libatm.la \
$(top_builddir)/src/saal/libsaal.a
-atmsigd_LDADD = $(atmsigd_XTRAS) -lfl
@ -68,23 +46,23 @@ Index: linux-atm-2.4.1/src/sigd/Makefile.am
atmsigd_DEPENDENCIES = mess.c $(atmsigd_XTRAS)
CLEANFILES = mess.c
Index: linux-atm-2.4.1/src/sigd/Makefile.in
Index: linux-atm-2.5.1/src/sigd/Makefile.in
===================================================================
--- linux-atm-2.4.1.orig/src/sigd/Makefile.in 2007-10-20 19:19:12.018313361 +0200
+++ linux-atm-2.4.1/src/sigd/Makefile.in 2007-10-20 19:19:16.886590795 +0200
@@ -92,7 +92,7 @@
atmsigd_XTRAS = mess.o $(top_builddir)/src/qgen/q.out.o $(top_builddir)/src/qgen/qd.dump.o $(top_builddir)/src/lib/libatm.la $(top_builddir)/src/saal/libsaal.a
--- linux-atm-2.5.1.orig/src/sigd/Makefile.in 2010-02-27 01:36:10.160686786 +0100
+++ linux-atm-2.5.1/src/sigd/Makefile.in 2010-02-27 01:36:23.396685195 +0100
@@ -244,7 +244,7 @@
$(top_builddir)/src/lib/libatm.la \
$(top_builddir)/src/saal/libsaal.a
-atmsigd_LDADD = $(atmsigd_XTRAS) -lfl
+atmsigd_LDADD = $(atmsigd_XTRAS)
atmsigd_DEPENDENCIES = mess.c $(atmsigd_XTRAS)
CLEANFILES = mess.c
Index: linux-atm-2.4.1/src/switch/debug/debug.c
sysconf_DATA = atmsigd.conf
Index: linux-atm-2.5.1/src/switch/debug/debug.c
===================================================================
--- linux-atm-2.4.1.orig/src/switch/debug/debug.c 2007-10-20 19:19:12.414335932 +0200
+++ linux-atm-2.4.1/src/switch/debug/debug.c 2007-10-20 19:19:16.894591246 +0200
--- linux-atm-2.5.1.orig/src/switch/debug/debug.c 2010-02-27 01:36:10.160686786 +0100
+++ linux-atm-2.5.1/src/switch/debug/debug.c 2010-02-27 01:36:23.396685195 +0100
@@ -20,6 +20,11 @@
#define PRV(call) ((FAB *) (call)->fab)
@ -97,10 +75,10 @@ Index: linux-atm-2.4.1/src/switch/debug/debug.c
typedef struct _fab {
CALL *next; /* relay.c may not keep track of calls, but WE are */
Index: linux-atm-2.4.1/src/switch/debug/Makefile.am
Index: linux-atm-2.5.1/src/switch/debug/Makefile.am
===================================================================
--- linux-atm-2.4.1.orig/src/switch/debug/Makefile.am 2007-10-20 19:19:10.406221495 +0200
+++ linux-atm-2.4.1/src/switch/debug/Makefile.am 2007-10-20 19:19:16.906591931 +0200
--- linux-atm-2.5.1.orig/src/switch/debug/Makefile.am 2010-02-27 01:36:10.164686879 +0100
+++ linux-atm-2.5.1/src/switch/debug/Makefile.am 2010-02-27 01:36:23.396685195 +0100
@@ -5,7 +5,7 @@
sw_debug_SOURCES = debug.c
sw_debug_XTRAS = $(top_builddir)/src/switch/libsw.a \
@ -110,23 +88,24 @@ Index: linux-atm-2.4.1/src/switch/debug/Makefile.am
sw_debug_DEPENDENCIES = $(sw_debug_XTRAS)
Index: linux-atm-2.4.1/src/switch/debug/Makefile.in
Index: linux-atm-2.5.1/src/switch/debug/Makefile.in
===================================================================
--- linux-atm-2.4.1.orig/src/switch/debug/Makefile.in 2007-10-20 19:19:12.378333877 +0200
+++ linux-atm-2.4.1/src/switch/debug/Makefile.in 2007-10-20 19:19:16.918592613 +0200
@@ -92,7 +92,7 @@
sw_debug_SOURCES = debug.c
sw_debug_XTRAS = $(top_builddir)/src/switch/libsw.a $(top_builddir)/src/lib/libatm.la
--- linux-atm-2.5.1.orig/src/switch/debug/Makefile.in 2010-02-27 01:36:10.164686879 +0100
+++ linux-atm-2.5.1/src/switch/debug/Makefile.in 2010-02-27 01:36:23.396685195 +0100
@@ -199,7 +199,8 @@
sw_debug_XTRAS = $(top_builddir)/src/switch/libsw.a \
$(top_builddir)/src/lib/libatm.la
-sw_debug_LDADD = $(sw_debug_XTRAS) -lfl
+sw_debug_LDADD = $(sw_debug_XTRAS)
+sw_debug_LDADD = $(sw_debug_XTRAS)
+
sw_debug_DEPENDENCIES = $(sw_debug_XTRAS)
Index: linux-atm-2.4.1/src/switch/tcp/Makefile.am
EXTRA_DIST = demo README
all: all-am
Index: linux-atm-2.5.1/src/switch/tcp/Makefile.am
===================================================================
--- linux-atm-2.4.1.orig/src/switch/tcp/Makefile.am 2007-10-20 19:19:10.422222406 +0200
+++ linux-atm-2.4.1/src/switch/tcp/Makefile.am 2007-10-20 19:19:16.922592837 +0200
--- linux-atm-2.5.1.orig/src/switch/tcp/Makefile.am 2010-02-27 01:36:10.201682113 +0100
+++ linux-atm-2.5.1/src/switch/tcp/Makefile.am 2010-02-27 01:36:23.412882977 +0100
@@ -5,7 +5,7 @@
sw_tcp_SOURCES = tcpsw.c
sw_tcp_XTRAS = $(top_builddir)/src/switch/libsw.a \
@ -136,23 +115,23 @@ Index: linux-atm-2.4.1/src/switch/tcp/Makefile.am
sw_tcp_DEPENDENCIES = $(sw_tcp_XTRAS)
EXTRA_DIST = mkfiles README
Index: linux-atm-2.4.1/src/switch/tcp/Makefile.in
Index: linux-atm-2.5.1/src/switch/tcp/Makefile.in
===================================================================
--- linux-atm-2.4.1.orig/src/switch/tcp/Makefile.in 2007-10-20 19:19:12.422336385 +0200
+++ linux-atm-2.4.1/src/switch/tcp/Makefile.in 2007-10-20 19:19:16.926593064 +0200
@@ -92,7 +92,7 @@
sw_tcp_SOURCES = tcpsw.c
sw_tcp_XTRAS = $(top_builddir)/src/switch/libsw.a $(top_builddir)/src/lib/libatm.la
--- linux-atm-2.5.1.orig/src/switch/tcp/Makefile.in 2010-02-27 01:36:10.209681349 +0100
+++ linux-atm-2.5.1/src/switch/tcp/Makefile.in 2010-02-27 01:36:23.417680887 +0100
@@ -199,7 +199,7 @@
sw_tcp_XTRAS = $(top_builddir)/src/switch/libsw.a \
$(top_builddir)/src/lib/libatm.la
-sw_tcp_LDADD = $(sw_tcp_XTRAS) -lfl
+sw_tcp_LDADD = $(sw_tcp_XTRAS)
sw_tcp_DEPENDENCIES = $(sw_tcp_XTRAS)
EXTRA_DIST = mkfiles README
Index: linux-atm-2.4.1/src/switch/tcp/tcpsw.c
all: all-am
Index: linux-atm-2.5.1/src/switch/tcp/tcpsw.c
===================================================================
--- linux-atm-2.4.1.orig/src/switch/tcp/tcpsw.c 2007-10-20 19:19:12.426336614 +0200
+++ linux-atm-2.4.1/src/switch/tcp/tcpsw.c 2007-10-20 19:19:16.954594660 +0200
--- linux-atm-2.5.1.orig/src/switch/tcp/tcpsw.c 2010-02-27 01:36:10.221684444 +0100
+++ linux-atm-2.5.1/src/switch/tcp/tcpsw.c 2010-02-27 01:36:23.428680415 +0100
@@ -35,6 +35,10 @@
#define MAX_PACKET (ATM_MAX_AAL5_PDU+sizeof(struct atmtcp_hdr))
#define BUFFER_SIZE (MAX_PACKET*2)
@ -164,45 +143,78 @@ Index: linux-atm-2.4.1/src/switch/tcp/tcpsw.c
typedef struct _table {
struct _link *out; /* output port */
Index: linux-atm-2.4.1/src/test/ispl_l.c
Index: linux-atm-2.5.1/src/test/Makefile.am
===================================================================
--- linux-atm-2.4.1.orig/src/test/ispl_l.c 2007-10-20 19:19:10.442223546 +0200
+++ linux-atm-2.4.1/src/test/ispl_l.c 2007-10-20 19:19:16.962595124 +0200
@@ -11,6 +11,11 @@
#include <stdio.h>
#include <unistd.h>
--- linux-atm-2.5.1.orig/src/test/Makefile.am 2010-02-27 01:36:10.221684444 +0100
+++ linux-atm-2.5.1/src/test/Makefile.am 2010-02-27 01:36:23.428680415 +0100
@@ -20,7 +20,7 @@
bw_SOURCES = bw.c
isp_SOURCES = isp.c isp.h ispl_y.y ispl_l.l
isp_XTRAS = $(LDADD)
-isp_LDADD = $(isp_XTRAS) -lfl
+isp_LDADD = $(isp_XTRAS)
isp_DEPENDENCIES = $(isp_XTRAS)
window_SOURCES = window.c
Index: linux-atm-2.5.1/src/test/Makefile.in
===================================================================
--- linux-atm-2.5.1.orig/src/test/Makefile.in 2010-02-27 01:36:10.225688778 +0100
+++ linux-atm-2.5.1/src/test/Makefile.in 2010-02-27 01:36:23.432685583 +0100
@@ -282,7 +282,7 @@
bw_SOURCES = bw.c
isp_SOURCES = isp.c isp.h ispl_y.y ispl_l.l
isp_XTRAS = $(LDADD)
-isp_LDADD = $(isp_XTRAS) -lfl
+isp_LDADD = $(isp_XTRAS)
isp_DEPENDENCIES = $(isp_XTRAS)
window_SOURCES = window.c
CLEANFILES = errnos.inc
Index: linux-atm-2.5.1/src/test/ispl_l.l
===================================================================
--- linux-atm-2.5.1/src/test/ispl_l.l-orig 2010-03-15 10:52:39.000000000 -0500
+++ linux-atm-2.5.1/src/test/ispl_l.l 2010-03-15 10:54:45.000000000 -0500
@@ -17,6 +17,11 @@
#include "isp.h"
#include "ispl_y.h"
+int yywrap(void)
+{
+ return 1;
+ return 1;
+}
+
static int lineno = 1;
/* cfront 1.2 defines "c_plusplus" instead of "__cplusplus" */
#ifdef c_plusplus
Index: linux-atm-2.4.1/src/test/Makefile.am
%}
Index: linux-atm-2.5.1/src/qgen/ql_l.l
===================================================================
--- linux-atm-2.4.1.orig/src/test/Makefile.am 2007-10-20 19:19:11.858304242 +0200
+++ linux-atm-2.4.1/src/test/Makefile.am 2007-10-20 19:19:16.962595124 +0200
@@ -15,7 +15,7 @@
bw_SOURCES = bw.c
isp_SOURCES = isp.c isp.h ispl_y.y ispl_l.l
isp_XTRAS = $(LDADD)
-isp_LDADD = $(isp_XTRAS) -lfl
+isp_LDADD = $(isp_XTRAS)
isp_DEPENDENCIES = $(isp_XTRAS) errnos.inc
window_SOURCES = window.c
--- linux-atm-2.5.1/src/qgen/ql_l.l.orig 2010-03-15 11:07:01.000000000 -0500
+++ linux-atm-2.5.1/src/qgen/ql_l.l 2010-03-15 11:06:04.000000000 -0500
@@ -10,6 +10,11 @@
#include "qgen.h"
#include "ql_y.h"
Index: linux-atm-2.4.1/src/test/Makefile.in
+int yywrap(void)
+{
+ return 1;
+}
+
typedef struct _tree {
struct _tree *left,*right;
const char str[0];
Index: linux-atm-2.5.1/src/sigd/cfg_l.l
===================================================================
--- linux-atm-2.4.1.orig/src/test/Makefile.in 2007-10-20 19:19:11.826302420 +0200
+++ linux-atm-2.4.1/src/test/Makefile.in 2007-10-20 19:19:16.962595124 +0200
@@ -102,7 +102,7 @@
bw_SOURCES = bw.c
isp_SOURCES = isp.c isp.h ispl_y.y ispl_l.l
isp_XTRAS = $(LDADD)
-isp_LDADD = $(isp_XTRAS) -lfl
+isp_LDADD = $(isp_XTRAS)
isp_DEPENDENCIES = $(isp_XTRAS) errnos.inc
window_SOURCES = window.c
--- linux-atm-2.5.1/src/sigd/cfg_l.l-orig 2010-03-15 11:12:39.000000000 -0500
+++ linux-atm-2.5.1/src/sigd/cfg_l.l 2010-03-15 11:13:22.000000000 -0500
@@ -16,6 +16,10 @@
#include "cfg_y.h"
+int yywrap(void)
+{
+ return 1;
+}
static int lineno = 1;
static int token; /* f@#%ing flex doesn't grok return after BEGIN */

File diff suppressed because it is too large Load Diff

View File

@ -1,13 +0,0 @@
Index: linux-atm-2.4.1/src/include/stdint.h
===================================================================
--- linux-atm-2.4.1.orig/src/include/stdint.h 2007-10-20 19:19:10.194209414 +0200
+++ linux-atm-2.4.1/src/include/stdint.h 2007-10-20 19:19:18.282670346 +0200
@@ -6,7 +6,7 @@
#if __GLIBC__ >= 2 && __GLIBC_MINOR__ >= 1
-#include "/usr/include/stdint.h"
+#include_next <stdint.h>
#elif __GLIBC__ >= 2

View File

@ -1,53 +0,0 @@
Index: linux-atm-2.4.1/configure
===================================================================
--- linux-atm-2.4.1.orig/configure 2007-10-20 19:19:17.578630228 +0200
+++ linux-atm-2.4.1/configure 2007-10-20 19:19:18.630690180 +0200
@@ -8825,7 +8825,7 @@
fi;
- ac_config_files="$ac_config_files Makefile doc/Makefile m4/Makefile src/Makefile src/include/Makefile src/lib/Makefile"
+ ac_config_files="$ac_config_files Makefile doc/Makefile m4/Makefile src/Makefile src/include/Makefile src/lib/Makefile src/arpd/Makefile"
cat >confcache <<\_ACEOF
# This file is a shell script that caches the results of configure
# tests run on this system so they can be shared between configure
@@ -9367,6 +9367,7 @@
"src/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/Makefile" ;;
"src/include/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/include/Makefile" ;;
"src/lib/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/lib/Makefile" ;;
+ "src/arpd/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/arpd/Makefile" ;;
"default-1" ) CONFIG_COMMANDS="$CONFIG_COMMANDS default-1" ;;
"config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;;
*) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5
Index: linux-atm-2.4.1/configure.in
===================================================================
--- linux-atm-2.4.1.orig/configure.in 2007-10-20 19:19:16.214552491 +0200
+++ linux-atm-2.4.1/configure.in 2007-10-20 19:19:18.642690862 +0200
@@ -153,5 +153,6 @@
src/Makefile \
src/include/Makefile \
src/lib/Makefile \
+ src/arpd/Makefile \
)
Index: linux-atm-2.4.1/src/Makefile.am
===================================================================
--- linux-atm-2.4.1.orig/src/Makefile.am 2007-10-20 19:19:16.218552720 +0200
+++ linux-atm-2.4.1/src/Makefile.am 2007-10-20 19:19:18.650691320 +0200
@@ -1,2 +1,2 @@
-SUBDIRS = include lib
+SUBDIRS = include lib arpd
Index: linux-atm-2.4.1/src/Makefile.in
===================================================================
--- linux-atm-2.4.1.orig/src/Makefile.in 2007-10-20 19:19:17.650634330 +0200
+++ linux-atm-2.4.1/src/Makefile.in 2007-10-20 19:19:18.678692917 +0200
@@ -96,7 +96,7 @@
VERSION = @VERSION@
YACC = @YACC@
-SUBDIRS = include lib
+SUBDIRS = include lib arpd
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = ../config.h
CONFIG_CLEAN_FILES =

View File

@ -1,42 +0,0 @@
Index: linux-atm-2.4.1/src/arpd/arp.c
===================================================================
--- linux-atm-2.4.1.orig/src/arpd/arp.c 2007-10-20 19:19:10.002198470 +0200
+++ linux-atm-2.4.1/src/arpd/arp.c 2007-10-20 19:19:19.138719139 +0200
@@ -15,7 +15,6 @@
#include <sys/types.h>
#include <sys/socket.h> /* for linux/if_arp.h */
#include <netinet/in.h> /* for ntohs, etc. */
-#define _LINUX_NETDEVICE_H /* very crude hack for glibc2 */
#include <linux/if_arp.h>
#include <linux/if_ether.h>
#include <atm.h>
Index: linux-atm-2.4.1/src/arpd/io.c
===================================================================
--- linux-atm-2.4.1.orig/src/arpd/io.c 2007-10-20 19:19:09.994198016 +0200
+++ linux-atm-2.4.1/src/arpd/io.c 2007-10-20 19:19:19.154720039 +0200
@@ -16,12 +16,11 @@
#include <sys/types.h>
#include <sys/socket.h>
#include <sys/ioctl.h>
-#include <net/if.h>
+#include <linux/if.h>
#include <netinet/in.h>
#include <atm.h>
#include <linux/atmclip.h> /* for CLIP_DEFAULT_IDLETIMER */
#include <linux/atmarp.h>
-#define _LINUX_NETDEVICE_H /* glibc2 */
#include <linux/if_arp.h>
#include "atmd.h"
Index: linux-atm-2.4.1/src/arpd/itf.c
===================================================================
--- linux-atm-2.4.1.orig/src/arpd/itf.c 2007-10-20 19:19:10.010198930 +0200
+++ linux-atm-2.4.1/src/arpd/itf.c 2007-10-20 19:19:19.186721859 +0200
@@ -12,7 +12,6 @@
#include <sys/types.h>
#include <linux/atmclip.h>
#include <sys/socket.h>
-#define _LINUX_NETDEVICE_H /* glibc2 */
#include <linux/if_arp.h>
#include "atmd.h"

File diff suppressed because it is too large Load Diff

View File

@ -68,7 +68,7 @@
--- /dev/null
+++ b/net/mac80211/rc80211_minstrel_ht.c
@@ -0,0 +1,809 @@
@@ -0,0 +1,815 @@
+/*
+ * Copyright (C) 2010 Felix Fietkau <nbd@openwrt.org>
+ *
@ -262,6 +262,13 @@
+ int cur_prob, cur_prob_tp, cur_tp, cur_tp2;
+ int group, i, index;
+
+ if (mi->ampdu_packets > 0) {
+ mi->avg_ampdu_len = minstrel_ewma(mi->avg_ampdu_len,
+ MINSTREL_FRAC(mi->ampdu_len, mi->ampdu_packets), EWMA_LEVEL);
+ mi->ampdu_len = 0;
+ mi->ampdu_packets = 0;
+ }
+
+ mi->sample_slow = 0;
+ mi->sample_count = 0;
+ mi->max_tp_rate = 0;
@ -415,6 +422,25 @@
+ }
+}
+
+static void
+minstrel_aggr_check(struct minstrel_priv *mp, struct ieee80211_sta *pubsta, struct sk_buff *skb)
+{
+ struct ieee80211_hdr *hdr = (struct ieee80211_hdr *) skb->data;
+ struct sta_info *sta = container_of(pubsta, struct sta_info, sta);
+ u16 tid;
+
+ if (unlikely(!ieee80211_is_data_qos(hdr->frame_control)))
+ return;
+
+ if (unlikely(skb->protocol == cpu_to_be16(ETH_P_PAE)))
+ return;
+
+ tid = *ieee80211_get_qos_ctl(hdr) & IEEE80211_QOS_CTL_TID_MASK;
+ if (likely(sta->ampdu_mlme.tid_state_tx[tid] != HT_AGG_STATE_IDLE))
+ return;
+
+ ieee80211_start_tx_ba_session(pubsta, tid);
+}
+
+static void
+minstrel_ht_tx_status(void *priv, struct ieee80211_supported_band *sband,
@ -444,8 +470,8 @@
+ info->status.ampdu_len = 1;
+ }
+
+ mi->avg_ampdu_len = minstrel_ewma(mi->avg_ampdu_len,
+ MINSTREL_FRAC(info->status.ampdu_len, 1), 90);
+ mi->ampdu_packets++;
+ mi->ampdu_len += info->status.ampdu_len;
+
+ if (!mi->sample_wait && !mi->sample_tries && mi->sample_count > 0) {
+ mi->sample_wait = 4 + MINSTREL_TRUNC(mi->avg_ampdu_len);
@ -490,8 +516,10 @@
+ MINSTREL_FRAC(20, 100))
+ minstrel_downgrade_rate(mi, &mi->max_tp_rate2, false);
+
+ if (time_after(jiffies, mi->stats_update + (mp->update_interval / 2 * HZ) / 1000))
+ if (time_after(jiffies, mi->stats_update + (mp->update_interval / 2 * HZ) / 1000)) {
+ minstrel_ht_update_stats(mp, mi);
+ minstrel_aggr_check(mp, sta, skb);
+ }
+}
+
+static void
@ -616,26 +644,6 @@
+}
+
+static void
+minstrel_aggr_check(struct minstrel_priv *mp, struct ieee80211_sta *pubsta, struct sk_buff *skb)
+{
+ struct ieee80211_hdr *hdr = (struct ieee80211_hdr *) skb->data;
+ struct sta_info *sta = container_of(pubsta, struct sta_info, sta);
+ u16 tid;
+
+ if (unlikely(!ieee80211_is_data_qos(hdr->frame_control)))
+ return;
+
+ if (unlikely(skb->protocol == cpu_to_be16(ETH_P_PAE)))
+ return;
+
+ tid = *ieee80211_get_qos_ctl(hdr) & IEEE80211_QOS_CTL_TID_MASK;
+ if (likely(sta->ampdu_mlme.tid_state_tx[tid] != HT_AGG_STATE_IDLE))
+ return;
+
+ ieee80211_start_tx_ba_session(pubsta, tid);
+}
+
+static void
+minstrel_ht_get_rate(void *priv, struct ieee80211_sta *sta, void *priv_sta,
+ struct ieee80211_tx_rate_control *txrc)
+{
@ -652,8 +660,6 @@
+ if (!msp->is_ht)
+ return mac80211_minstrel.get_rate(priv, sta, &msp->legacy, txrc);
+
+ minstrel_aggr_check(mp, sta, txrc->skb);
+
+ sample_idx = minstrel_get_sample_rate(mp, mi);
+ if (sample_idx >= 0) {
+ minstrel_ht_set_rate(mp, mi, &ar[0], sample_idx,
@ -880,7 +886,7 @@
+}
--- /dev/null
+++ b/net/mac80211/rc80211_minstrel_ht.h
@@ -0,0 +1,121 @@
@@ -0,0 +1,125 @@
+/*
+ * Copyright (C) 2010 Felix Fietkau <nbd@openwrt.org>
+ *
@ -951,7 +957,11 @@
+};
+
+struct minstrel_ht_sta {
+ /* ampdu length average (EWMA) */
+ /* ampdu length (average, per sampling interval) */
+ unsigned int ampdu_len;
+ unsigned int ampdu_packets;
+
+ /* ampdu length (EWMA) */
+ unsigned int avg_ampdu_len;
+
+ /* best throughput rate */

View File

@ -0,0 +1,37 @@
--- a/drivers/net/wireless/ath/ath9k/xmit.c
+++ b/drivers/net/wireless/ath/ath9k/xmit.c
@@ -1353,25 +1353,6 @@ static enum ath9k_pkt_type get_hw_packet
return htype;
}
-static bool is_pae(struct sk_buff *skb)
-{
- struct ieee80211_hdr *hdr;
- __le16 fc;
-
- hdr = (struct ieee80211_hdr *)skb->data;
- fc = hdr->frame_control;
-
- if (ieee80211_is_data(fc)) {
- if (ieee80211_is_nullfunc(fc) ||
- /* Port Access Entity (IEEE 802.1X) */
- (skb->protocol == cpu_to_be16(ETH_P_PAE))) {
- return true;
- }
- }
-
- return false;
-}
-
static int get_hw_crypto_keytype(struct sk_buff *skb)
{
struct ieee80211_tx_info *tx_info = IEEE80211_SKB_CB(skb);
@@ -1696,7 +1677,7 @@ static void ath_tx_start_dma(struct ath_
goto tx_done;
}
- if ((tx_info->flags & IEEE80211_TX_CTL_AMPDU) && !is_pae(skb)) {
+ if (tx_info->flags & IEEE80211_TX_CTL_AMPDU) {
/*
* Try aggregation if it's a unicast data frame
* and the destination is HT capable.

View File

@ -87,7 +87,7 @@ enable_atheros() {
config_get_bool antdiv "$device" diversity
config_get antrx "$device" rxantenna
config_get anttx "$device" txantenna
config_get_bool softled "$device" softled 1
config_get_bool softled "$device" softled
config_get antenna "$device" antenna
devname="$(cat /proc/sys/dev/$device/dev_name)"

View File

@ -0,0 +1,18 @@
--- a/ath/if_ath_pci.c
+++ b/ath/if_ath_pci.c
@@ -264,6 +264,7 @@ ath_pci_probe(struct pci_dev *pdev, cons
}
}
+#if 0
/*
* Auto-enable soft led processing for IBM cards and for
* 5211 minipci cards. Users can also manually enable/disable
@@ -279,6 +280,7 @@ ath_pci_probe(struct pci_dev *pdev, cons
sc->aps_sc.sc_softled = 1;
sc->aps_sc.sc_ledpin = 1;
}
+#endif
if ((i = ath_attach(vdevice, dev, NULL)) != 0) {
printk(KERN_ERR "%s: ath_attach failed: %d\n", dev_info, i);

View File

@ -1,5 +1,5 @@
#
# Copyright (C) 2006-2009 OpenWrt.org
# Copyright (C) 2006-2010 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=openssl
PKG_VERSION:=0.9.8m
PKG_RELEASE:=1
PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=http://www.openssl.org/source/ \
@ -18,8 +18,8 @@ PKG_SOURCE_URL:=http://www.openssl.org/source/ \
ftp://ftp.sunet.se/pub/security/tools/net/openssl/source/
PKG_MD5SUM:=898bf125370926d5f692a2201124f8ec
PKG_BUILD_DEPENDS := ocf-crypto-headers
PKG_CONFIG_DEPENDS := CONFIG_OPENSSL_ENGINE
PKG_BUILD_DEPENDS:=ocf-crypto-headers
PKG_CONFIG_DEPENDS:=CONFIG_OPENSSL_ENGINE
include $(INCLUDE_DIR)/package.mk
@ -33,10 +33,10 @@ source "$(SOURCE)/Config.in"
endef
define Package/openssl/Default/description
The OpenSSL Project is a collaborative effort to develop a robust,
commercial-grade, full-featured, and Open Source toolkit implementing the
Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1)
protocols as well as a full-strength general purpose cryptography library.
The OpenSSL Project is a collaborative effort to develop a robust,
commercial-grade, full-featured, and Open Source toolkit implementing the Secure
Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1) protocols as well
as a full-strength general purpose cryptography library.
endef
define Package/libopenssl
@ -50,8 +50,7 @@ endef
define Package/libopenssl/description
$(call Package/openssl/Default/description)
This package contains the OpenSSL shared libraries, needed by other
programs.
This package contains the OpenSSL shared libraries, needed by other programs.
endef
define Package/openssl-util
@ -68,7 +67,7 @@ endef
define Package/openssl-util/description
$(call Package/openssl/Default/description)
This package contains the OpenSSL command-line utility.
This package contains the OpenSSL command-line utility.
endef
@ -108,13 +107,20 @@ define Build/Compile
OPENWRT_OPTIMIZATION_FLAGS="$(TARGET_CFLAGS)" \
$(OPENSSL_MAKEFLAGS) \
depend
$(_SINGLE)$(MAKE) -C $(PKG_BUILD_DIR) \
CC="$(TARGET_CC)" \
AR="$(TARGET_CROSS)ar r" \
RANLIB="$(TARGET_CROSS)ranlib" \
OPENWRT_OPTIMIZATION_FLAGS="$(TARGET_CFLAGS)" \
$(OPENSSL_MAKEFLAGS) \
all
$(MAKE) -C $(PKG_BUILD_DIR) \
CC="$(TARGET_CC)" \
AR="$(TARGET_CROSS)ar r" \
RANLIB="$(TARGET_CROSS)ranlib" \
OPENWRT_OPTIMIZATION_FLAGS="$(TARGET_CFLAGS)" \
$(OPENSSL_MAKEFLAGS) \
all build-shared
build-shared
# Work around openssl build bug to link libssl.so with libcrypto.so.
-rm $(PKG_BUILD_DIR)/libssl.so.*.*.*
$(MAKE) -C $(PKG_BUILD_DIR) \
@ -129,11 +135,11 @@ define Build/Compile
endef
define Build/InstallDev
mkdir -p $(1)/usr/include
$(INSTALL_DIR) $(1)/usr/include
$(CP) $(PKG_INSTALL_DIR)/usr/include/openssl $(1)/usr/include/
mkdir -p $(1)/usr/lib/
$(INSTALL_DIR) $(1)/usr/lib/
$(CP) $(PKG_INSTALL_DIR)/usr/lib/lib{crypto,ssl}.{a,so*} $(1)/usr/lib/
mkdir -p $(1)/usr/lib/pkgconfig
$(INSTALL_DIR) $(1)/usr/lib/pkgconfig
$(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/{openssl,libcrypto,libssl}.pc $(1)/usr/lib/pkgconfig/
$(SED) 's#$(TARGET_LDFLAGS)##g' $(1)/usr/lib/pkgconfig/{openssl,libcrypto,libssl}.pc
endef

View File

@ -1,15 +1,44 @@
scan_ppp() {
config_get ifname "$1" ifname
pppdev="${pppdev:-0}"
config_get unit "$1" unit
[ -z "$unit" ] && {
unit="$pppdev"
if [ "${ifname%%[0-9]*}" = ppp ]; then
unit="${ifname##ppp}"
[ "$pppdev" -le "$unit" ] && pppdev="$(($unit + 1))"
else
pppdev="$(($pppdev + 1))"
fi
config_get devunit "$1" unit
{
unit=
pppif=
if [ ! -d /tmp/.ppp-counter ]; then
mkdir -p /tmp/.ppp-counter
fi
local maxunit
maxunit="$(cat /tmp/.ppp-counter/max-unit 2>/dev/null)"
if [ -z "$maxunit" ]; then
maxunit=-1
fi
local i
i=0
while [ $i -le $maxunit ]; do
local unitdev
unitdev="$(cat /tmp/.ppp-counter/ppp${i} 2>/dev/null)"
if [ "$unitdev" = "$1" ]; then
unit="$i"
pppif="ppp${i}"
break
fi
i="$(($i + 1))"
done
if [ -z "$unit" ] || [ -z "$pppif" ]; then
maxunit="$(($maxunit + 1))"
if [ -n "$devunit" ]; then
unit="$devunit"
elif [ "${ifname%%[0-9]*}" = ppp ]; then
unit="${ifname##ppp}"
else
unit="$maxunit"
fi
[ "$maxunit" -lt "$unit" ] && maxunit="$unit"
pppif="ppp${unit}"
echo "$1" >/tmp/.ppp-counter/$pppif 2>/dev/null
echo "$maxunit" >/tmp/.ppp-counter/max-unit 2>/dev/null
fi
config_set "$1" ifname "ppp$unit"
config_set "$1" unit "$unit"
}

View File

@ -0,0 +1,33 @@
#!/bin/sh /etc/rc.common
# Copyright (C) 2006 OpenWrt.org
START=41
STOP=30
updown_pptp_interface () {
config_get proto "$1" proto
if [ "$proto" = "pptp" ]; then
if$2 "$1"
fi
}
boot () {
start
}
start() {
config_load network
config_foreach updown_pptp_interface interface up
}
restart() {
config_load network
config_foreach updown_pptp_interface interface down
config_foreach updown_pptp_interface interface up
}
stop() {
config_load network
config_foreach updown_pptp_interface interface down
}

View File

@ -1,6 +1,47 @@
--- a/iwlist.c
+++ b/iwlist.c
@@ -1302,7 +1302,6 @@ print_pm_info(int skfd,
@@ -58,7 +58,6 @@ typedef struct iw_auth_descr
* Maybe this should go in iwlib.c ?
*/
-#ifndef WE_ESSENTIAL
#define IW_ARRAY_LEN(x) (sizeof(x)/sizeof((x)[0]))
//static const struct iwmask_name iw_enc_mode_name[] = {
@@ -161,11 +160,8 @@ static const char * iw_ie_key_mgmt_name[
};
#define IW_IE_KEY_MGMT_NUM IW_ARRAY_LEN(iw_ie_key_mgmt_name)
-#endif /* WE_ESSENTIAL */
-
/************************* WPA SUBROUTINES *************************/
-#ifndef WE_ESSENTIAL
/*------------------------------------------------------------------*/
/*
* Print all names corresponding to a mask.
@@ -431,7 +427,6 @@ iw_print_gen_ie(unsigned char * buffer,
offset += buffer[offset+1] + 2;
}
}
-#endif /* WE_ESSENTIAL */
/***************************** SCANNING *****************************/
/*
@@ -585,12 +580,10 @@ print_scanning_token(struct stream_descr
&event->u.qual, iw_range, has_range);
printf(" %s\n", buffer);
break;
-#ifndef WE_ESSENTIAL
case IWEVGENIE:
/* Informations Elements are complex, let's do only some of them */
iw_print_gen_ie(event->u.data.pointer, event->u.data.length);
break;
-#endif /* WE_ESSENTIAL */
case IWEVCUSTOM:
{
char custom[IW_CUSTOM_MAX+1];
@@ -1302,7 +1295,6 @@ print_pm_info(int skfd,
return(0);
}
@ -8,7 +49,7 @@
/************************** TRANSMIT POWER **************************/
/*------------------------------------------------------------------*/
@@ -1405,6 +1404,7 @@ print_txpower_info(int skfd,
@@ -1405,6 +1397,7 @@ print_txpower_info(int skfd,
return(0);
}
@ -16,7 +57,7 @@
/*********************** RETRY LIMIT/LIFETIME ***********************/
/*------------------------------------------------------------------*/
@@ -2060,8 +2060,8 @@ static const struct iwlist_entry iwlist_
@@ -2060,8 +2053,8 @@ static const struct iwlist_entry iwlist_
{ "encryption", print_keys_info, 0, NULL },
{ "keys", print_keys_info, 0, NULL },
{ "power", print_pm_info, 0, NULL },

View File

@ -44,6 +44,23 @@ else
FPIC:=-fpic
endif
ARCH_SUFFIX:=
ifneq ($(findstring -mips32r2,$(TARGET_OPTIMIZATION)),)
ARCH_SUFFIX:=_r2
endif
ifneq ($(findstring -march=armv4,$(TARGET_OPTIMIZATION)),)
ARCH_SUFFIX:=_v4
endif
ifneq ($(findstring -march=armv4t,$(TARGET_OPTIMIZATION)),)
ARCH_SUFFIX:=_v4t
endif
ifneq ($(findstring -march=armv5t,$(TARGET_OPTIMIZATION)),)
ARCH_SUFFIX:=_v5t
endif
ifneq ($(findstring -march=armv5te,$(TARGET_OPTIMIZATION)),)
ARCH_SUFFIX:=_v5te
endif
DL_DIR:=$(if $(call qstrip,$(CONFIG_DOWNLOAD_FOLDER)),$(call qstrip,$(CONFIG_DOWNLOAD_FOLDER)),$(TOPDIR)/dl)
BIN_DIR:=$(TOPDIR)/bin/$(BOARD)
INCLUDE_DIR:=$(TOPDIR)/include
@ -58,10 +75,10 @@ ifeq ($(CONFIG_EXTERNAL_TOOLCHAIN),)
REAL_GNU_TARGET_NAME=$(OPTIMIZE_FOR_CPU)-openwrt-linux$(if $(TARGET_SUFFIX),-$(TARGET_SUFFIX))
GNU_TARGET_NAME=$(OPTIMIZE_FOR_CPU)-openwrt-linux
DIR_SUFFIX:=_$(LIBC)-$(LIBCV)$(if $(CONFIG_EABI_SUPPORT),_eabi)
BUILD_DIR:=$(BUILD_DIR_BASE)/target-$(ARCH)$(DIR_SUFFIX)$(if $(BUILD_SUFFIX),_$(BUILD_SUFFIX))
STAGING_DIR:=$(TOPDIR)/staging_dir/target-$(ARCH)$(DIR_SUFFIX)
BUILD_DIR_TOOLCHAIN:=$(BUILD_DIR_BASE)/toolchain-$(ARCH)_gcc-$(GCCV)$(DIR_SUFFIX)
TOOLCHAIN_DIR:=$(TOPDIR)/staging_dir/toolchain-$(ARCH)_gcc-$(GCCV)$(DIR_SUFFIX)
BUILD_DIR:=$(BUILD_DIR_BASE)/target-$(ARCH)$(ARCH_SUFFIX)$(DIR_SUFFIX)$(if $(BUILD_SUFFIX),_$(BUILD_SUFFIX))
STAGING_DIR:=$(TOPDIR)/staging_dir/target-$(ARCH)$(ARCH_SUFFIX)$(DIR_SUFFIX)
BUILD_DIR_TOOLCHAIN:=$(BUILD_DIR_BASE)/toolchain-$(ARCH)$(ARCH_SUFFIX)_gcc-$(GCCV)$(DIR_SUFFIX)
TOOLCHAIN_DIR:=$(TOPDIR)/staging_dir/toolchain-$(ARCH)$(ARCH_SUFFIX)_gcc-$(GCCV)$(DIR_SUFFIX)
PACKAGE_DIR:=$(BIN_DIR)/packages
else
ifeq ($(CONFIG_NATIVE_TOOLCHAIN),)

View File

@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
BOARD:=adm5120
BOARDNAME:=Infineon/ADMtek ADM5120
LINUX_VERSION:=2.6.32.9
LINUX_VERSION:=2.6.32.10
SUBTARGETS:=router_le router_be
INITRAMFS_EXTRA_FILES:=

View File

@ -8,7 +8,7 @@
define Profile/CAS630
NAME:=Cellvision CAS-630 IP camera (Experimental)
# TODO: add default packages
PACKAGES:=-hostapd-mini
PACKAGES:=-wpad-mini
endef
define Profile/CAS630/Description
@ -18,7 +18,7 @@ endef
define Profile/CAS630W
NAME:=Cellvision CAS-630W IP camera (Experimental)
# TODO: add default packages
PACKAGES:=-hostapd-mini
PACKAGES:=-wpad-mini
endef
define Profile/CAS630W/Description
@ -28,7 +28,7 @@ endef
define Profile/CAS670
NAME:=Cellvision CAS-670 IP camera (Experimental)
# TODO: add default packages
PACKAGES:=-hostapd-mini
PACKAGES:=-wpad-mini
endef
define Profile/CAS670/Description
@ -38,7 +38,7 @@ endef
define Profile/CAS670W
NAME:=Cellvision CAS-670W IP camera (Experimental)
# TODO: add default packages
PACKAGES:=-hostapd-mini
PACKAGES:=-wpad-mini
endef
define Profile/CAS670W/Description
@ -48,7 +48,7 @@ endef
define Profile/CAS700
NAME:=Cellvision CAS-700 IP camera (Experimental)
# TODO: add default packages
PACKAGES:=-hostapd-mini
PACKAGES:=-wpad-mini
endef
define Profile/CAS700/Description
@ -58,7 +58,7 @@ endef
define Profile/CAS700W
NAME:=Cellvision CAS-700W IP camera (Experimental)
# TODO: add default packages
PACKAGES:=-hostapd-mini
PACKAGES:=-wpad-mini
endef
define Profile/CAS700W/Description
@ -67,7 +67,7 @@ endef
define Profile/CAS771
NAME:=Cellvision CAS-771 IP camera (Experimental)
PACKAGES:=-hostapd-mini kmod-video-cpia2 kmod-usb-ohci kmod-usb2 kmod-usb-audio
PACKAGES:=-wpad-mini kmod-video-cpia2 kmod-usb-ohci kmod-usb2 kmod-usb-audio
endef
define Profile/CAS771/Description
@ -76,7 +76,7 @@ endef
define Profile/CAS771W
NAME:=Cellvision CAS-771W IP camera (Experimental)
PACKAGES:=-hostapd-mini kmod-video-cpia2 kmod-usb-ohci kmod-usb2 kmod-usb-audio kmod-rt2500-pci
PACKAGES:=-wpad-mini kmod-video-cpia2 kmod-usb-ohci kmod-usb2 kmod-usb-audio kmod-rt2500-pci
endef
define Profile/CAS771W/Description
@ -86,7 +86,7 @@ endef
define Profile/CAS790
NAME:=Cellvision CAS-790 IP camera (Experimental)
# TODO: add default packages
PACKAGES:=-hostapd-mini
PACKAGES:=-wpad-mini
endef
define Profile/CAS790/Description
@ -96,7 +96,7 @@ endef
define Profile/CAS861
NAME:=Cellvision CAS-861 IP camera (Experimental)
# TODO: add default packages
PACKAGES:=-hostapd-mini
PACKAGES:=-wpad-mini
endef
define Profile/CAS861/Description
@ -114,7 +114,7 @@ endef
define Profile/NFS101U
NAME:=Cellvision NFS-101U Network File Server (Experimental)
PACKAGES:=-hostapd-mini kmod-usb-ohci kmod-usb2
PACKAGES:=-wpad-mini kmod-usb-ohci kmod-usb2
endef
define Profile/NFS101U/Description
@ -123,7 +123,7 @@ endef
define Profile/NFS101WU
NAME:=Cellvision NFS-101WU Network File Server (Experimental)
PACKAGES:=-hostapd-mini kmod-usb-ohci kmod-usb2
PACKAGES:=-wpad-mini kmod-usb-ohci kmod-usb2
endef
define Profile/NFS101WU/Description

View File

@ -7,7 +7,7 @@
define Profile/BR6104K
NAME:=Edimax BR-6104K (Unofficial)
PACKAGES:=-hostapd-mini
PACKAGES:=-wpad-mini
endef
define Profile/BR6104K/Description
@ -16,7 +16,7 @@ endef
define Profile/BR6104KP
NAME:=Edimax BR-6104KP (Unofficial)
PACKAGES:=-hostapd-mini kmod-usb-core kmod-usb-adm5120
PACKAGES:=-wpad-mini kmod-usb-core kmod-usb-adm5120
endef
define Profile/BR6104KP/Description
@ -25,7 +25,7 @@ endef
define Profile/BR6104WG
NAME:=Edimax BR-6104Wg (Unofficial, No WiFi)
PACKAGES:=-hostapd-mini
PACKAGES:=-wpad-mini
endef
define Profile/BR6104WG/Description
@ -34,7 +34,7 @@ endef
define Profile/BR6114WG
NAME:=Edimax BR-6114WG (Unofficial, No WiFi)
PACKAGES:=-hostapd-mini
PACKAGES:=-wpad-mini
endef
define Profile/BR6114WG/Description

View File

@ -3,11 +3,11 @@
# Copyright (C) 2009 OpenWrt.org
#
. /lib/ar71xx.sh
START=05
start() {
. /lib/ar71xx.sh
local board=$(ar71xx_board_name)
[ ! -d /etc/defconfig/$board ] && board="generic"

View File

@ -37,10 +37,6 @@ mtd_rootfs="$(find_mtd_part 'rootfs')"
exit 1
}
# first get an address for br-lan using udhcpc
killall udhcpc
/sbin/udhcpc -i br-lan
mkdir "$wget2nand_dir"
wget $url_kernel -O "$src_kernel" || {
echo "Unable to download $url_kernel"

View File

@ -27,22 +27,18 @@ EXPORT_SYMBOL(ar71xx_gpio_count);
void __ar71xx_gpio_set_value(unsigned gpio, int value)
{
unsigned long flags;
spin_lock_irqsave(&ar71xx_gpio_lock, flags);
void __iomem *base = ar71xx_gpio_base;
if (value)
ar71xx_gpio_wr(GPIO_REG_SET, (1 << gpio));
__raw_writel(1 << gpio, base + GPIO_REG_SET);
else
ar71xx_gpio_wr(GPIO_REG_CLEAR, (1 << gpio));
spin_unlock_irqrestore(&ar71xx_gpio_lock, flags);
__raw_writel(1 << gpio, base + GPIO_REG_CLEAR);
}
EXPORT_SYMBOL(__ar71xx_gpio_set_value);
int __ar71xx_gpio_get_value(unsigned gpio)
{
return (ar71xx_gpio_rr(GPIO_REG_IN) & (1 << gpio)) ? 1 : 0;
return (__raw_readl(ar71xx_gpio_base + GPIO_REG_IN) >> gpio) & 1;
}
EXPORT_SYMBOL(__ar71xx_gpio_get_value);
@ -60,12 +56,13 @@ static void ar71xx_gpio_set_value(struct gpio_chip *chip,
static int ar71xx_gpio_direction_input(struct gpio_chip *chip,
unsigned offset)
{
void __iomem *base = ar71xx_gpio_base;
unsigned long flags;
spin_lock_irqsave(&ar71xx_gpio_lock, flags);
ar71xx_gpio_wr(GPIO_REG_OE,
ar71xx_gpio_rr(GPIO_REG_OE) & ~(1 << offset));
__raw_writel(__raw_readl(base + GPIO_REG_OE) & ~(1 << offset),
base + GPIO_REG_OE);
spin_unlock_irqrestore(&ar71xx_gpio_lock, flags);
@ -75,17 +72,18 @@ static int ar71xx_gpio_direction_input(struct gpio_chip *chip,
static int ar71xx_gpio_direction_output(struct gpio_chip *chip,
unsigned offset, int value)
{
void __iomem *base = ar71xx_gpio_base;
unsigned long flags;
spin_lock_irqsave(&ar71xx_gpio_lock, flags);
if (value)
ar71xx_gpio_wr(GPIO_REG_SET, (1 << offset));
__raw_writel(1 << offset, base + GPIO_REG_SET);
else
ar71xx_gpio_wr(GPIO_REG_CLEAR, (1 << offset));
__raw_writel(1 << offset, base + GPIO_REG_CLEAR);
ar71xx_gpio_wr(GPIO_REG_OE,
ar71xx_gpio_rr(GPIO_REG_OE) | (1 << offset));
__raw_writel(__raw_readl(base + GPIO_REG_OE) | (1 << offset),
base + GPIO_REG_OE);
spin_unlock_irqrestore(&ar71xx_gpio_lock, flags);
@ -104,40 +102,45 @@ static struct gpio_chip ar71xx_gpio_chip = {
void ar71xx_gpio_function_enable(u32 mask)
{
void __iomem *base = ar71xx_gpio_base;
unsigned long flags;
spin_lock_irqsave(&ar71xx_gpio_lock, flags);
ar71xx_gpio_wr(GPIO_REG_FUNC, ar71xx_gpio_rr(GPIO_REG_FUNC) | mask);
__raw_writel(__raw_readl(base + GPIO_REG_FUNC) | mask,
base + GPIO_REG_FUNC);
/* flush write */
(void) ar71xx_gpio_rr(GPIO_REG_FUNC);
(void) __raw_readl(base + GPIO_REG_FUNC);
spin_unlock_irqrestore(&ar71xx_gpio_lock, flags);
}
void ar71xx_gpio_function_disable(u32 mask)
{
void __iomem *base = ar71xx_gpio_base;
unsigned long flags;
spin_lock_irqsave(&ar71xx_gpio_lock, flags);
ar71xx_gpio_wr(GPIO_REG_FUNC, ar71xx_gpio_rr(GPIO_REG_FUNC) & ~mask);
__raw_writel(__raw_readl(base + GPIO_REG_FUNC) & ~mask,
base + GPIO_REG_FUNC);
/* flush write */
(void) ar71xx_gpio_rr(GPIO_REG_FUNC);
(void) __raw_readl(base + GPIO_REG_FUNC);
spin_unlock_irqrestore(&ar71xx_gpio_lock, flags);
}
void ar71xx_gpio_function_setup(u32 set, u32 clear)
{
void __iomem *base = ar71xx_gpio_base;
unsigned long flags;
spin_lock_irqsave(&ar71xx_gpio_lock, flags);
ar71xx_gpio_wr(GPIO_REG_FUNC,
(ar71xx_gpio_rr(GPIO_REG_FUNC) & ~clear) | set);
__raw_writel((__raw_readl(base + GPIO_REG_FUNC) & ~clear) | set,
base + GPIO_REG_FUNC);
/* flush write */
(void) ar71xx_gpio_rr(GPIO_REG_FUNC);
(void) __raw_readl(base + GPIO_REG_FUNC);
spin_unlock_irqrestore(&ar71xx_gpio_lock, flags);
}

View File

@ -1,5 +1,5 @@
#
# Copyright (C) 2008-2009 OpenWrt.org
# Copyright (C) 2008-2010 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
@ -90,26 +90,6 @@ define Image/Build/WRT400N
fi; fi
endef
dir600a1_mtdlayout=mtdparts=spi0.0:192k(u-boot)ro,64k(nvram)ro,896k(kernel),2816k(rootfs),64k(mac)ro,64k(art)ro,3712k@0x40000(firmware)
define Image/Build/DIR600A1
$(call PatchKernelLzma,$(2),$(3) $(dir600a1_mtdlayout))
if [ `stat -c%s "$(KDIR)/vmlinux-$(2).bin.lzma"` -gt 917504 ]; then \
echo "Warning: $(KDIR)/vmlinux-$(2).bin.lzma is too big"; \
else if [ `stat -c%s $(KDIR)/root.$(1)` -gt 2818048 ]; then \
echo "Warning: $(KDIR)/root.$(1) is too big"; \
else \
mkimage -A mips -O linux -T kernel -a 0x80060000 -C lzma -e \
0x80060000 \
-n 'MIPS OpenWrt Linux-$(LINUX_VERSION)' \
-d $(KDIR)/vmlinux-$(2).bin.lzma $(KDIR)/vmlinux-$(2).uImage; \
( \
dd if=$(KDIR)/vmlinux-$(2).uImage bs=896k conv=sync; \
dd if=$(KDIR)/root.$(1) bs=2752k conv=sync; \
echo -n "AP91-AR7240-RT-090223-00"; \
) > $(call imgname,$(1),$(2))-universal.bin; \
fi; fi
endef
dir825b1_mtdlayout=mtdparts=spi0.0:256k(uboot)ro,64k(config)ro,1024k(kernel),5184k(rootfs),64k(caldata)ro,1600k(unknown)ro,6208k@0x50000(firmware)
define Image/Build/DIR825B1
$(call PatchKernelLzma,$(2),$(3) $(dir825b1_mtdlayout))
@ -161,11 +141,39 @@ define Image/Build/Cameo
0x80060000 \
-n 'MIPS OpenWrt Linux-$(LINUX_VERSION)' \
-d $(KDIR)/vmlinux-$(2).bin.lzma $(KDIR)/vmlinux-$(2).uImage; \
( \
dd if=$(KDIR)/vmlinux-$(2).uImage bs=896k conv=sync; \
dd if=$(KDIR)/root.$(1) \
) > $(call imgname,$(1),$(2))-sysupgrade.bin; \
( \
dd if=$(KDIR)/vmlinux-$(2).uImage bs=896k conv=sync; \
dd if=$(KDIR)/root.$(1) bs=2880k conv=sync; \
echo -n $(4); \
) > $(call imgname,$(1),$(2)).uni; \
) > $(call imgname,$(1),$(2))-factory.bin; \
fi; fi
endef
cameo7240_mtdlayout=mtdparts=spi0.0:192k(u-boot)ro,64k(nvram)ro,896k(kernel),2816k(rootfs),64k(mac)ro,64k(art)ro,3712k@0x40000(firmware)
define Image/Build/Cameo7240
$(call PatchKernelLzma,$(2),$(3) $(cameo7240_mtdlayout))
if [ `stat -c%s "$(KDIR)/vmlinux-$(2).bin.lzma"` -gt 917504 ]; then \
echo "Warning: $(KDIR)/vmlinux-$(2).bin.lzma is too big"; \
else if [ `stat -c%s $(KDIR)/root.$(1)` -gt 2818048 ]; then \
echo "Warning: $(KDIR)/root.$(1) is too big"; \
else \
mkimage -A mips -O linux -T kernel -a 0x80060000 -C lzma -e \
0x80060000 \
-n 'MIPS OpenWrt Linux-$(LINUX_VERSION)' \
-d $(KDIR)/vmlinux-$(2).bin.lzma $(KDIR)/vmlinux-$(2).uImage; \
( \
dd if=$(KDIR)/vmlinux-$(2).uImage bs=896k conv=sync; \
dd if=$(KDIR)/root.$(1) \
) > $(call imgname,$(1),$(2))-sysupgrade.bin; \
( \
dd if=$(KDIR)/vmlinux-$(2).uImage bs=896k conv=sync; \
dd if=$(KDIR)/root.$(1) bs=2752k conv=sync; \
echo -n $(4); \
) > $(call imgname,$(1),$(2))-factory.bin; \
fi; fi
endef
@ -404,7 +412,11 @@ define Image/Build/Profile/WP543
endef
define Image/Build/Profile/DIR600A1
$(call Image/Build/Template/$(fs_64k)/$(1),DIR600A1,dir-600-a1,board=DIR-600-A1)
$(call Image/Build/Template/$(fs_64k)/$(1),Cameo7240,dir-600-a1,board=DIR-600-A1,"AP91-AR7240-RT-090223-00")
endef
define Image/Build/Profile/FR54RTR
$(call Image/Build/Template/$(fs_64k)/$(1),Cameo7240,fr-54rtr,board=DIR-600-A1,"AP91-AR7240-RT-090223-01")
endef
define Image/Build/Profile/DIR615C1
@ -519,6 +531,7 @@ define Image/Build/Profile/Default
$(call Image/Build/Profile/DIR600A1,$(1))
$(call Image/Build/Profile/DIR615C1,$(1))
$(call Image/Build/Profile/DIR825B1,$(1))
$(call Image/Build/Profile/FR54RTR,$(1))
$(call Image/Build/Profile/MZKW04NU,$(1))
$(call Image/Build/Profile/MZKW300NH,$(1))
$(call Image/Build/Profile/PB42,$(1))

View File

@ -9,8 +9,8 @@ CONFIG_ARCH_POPULATES_NODE_MAP=y
# CONFIG_ARCH_SUPPORTS_MSI is not set
CONFIG_ARCH_SUPPORTS_OPROFILE=y
CONFIG_ARCH_SUSPEND_POSSIBLE=y
CONFIG_ATHEROS_AR2315_PCI=y
CONFIG_ATHEROS_AR2315=y
CONFIG_ATHEROS_AR2315_PCI=y
CONFIG_ATHEROS_AR231X=y
CONFIG_ATHEROS_AR5312=y
CONFIG_ATHEROS_WDT=y
@ -19,8 +19,8 @@ CONFIG_ATHEROS_WDT=y
CONFIG_BITREVERSE=y
# CONFIG_CAVIUM_OCTEON_REFERENCE_BOARD is not set
# CONFIG_CAVIUM_OCTEON_SIMULATOR is not set
CONFIG_CEVT_R4K_LIB=y
CONFIG_CEVT_R4K=y
CONFIG_CEVT_R4K_LIB=y
CONFIG_CMDLINE="console=ttyS0,9600 rootfstype=squashfs,jffs2"
# CONFIG_COMPAT_NET_DEV_OPS is not set
CONFIG_CPU_BIG_ENDIAN=y
@ -30,9 +30,9 @@ CONFIG_CPU_HAS_PREFETCH=y
CONFIG_CPU_HAS_SYNC=y
# CONFIG_CPU_LITTLE_ENDIAN is not set
# CONFIG_CPU_LOONGSON2 is not set
CONFIG_CPU_MIPS32=y
CONFIG_CPU_MIPS32_R1=y
# CONFIG_CPU_MIPS32_R2 is not set
CONFIG_CPU_MIPS32=y
# CONFIG_CPU_MIPS64_R1 is not set
# CONFIG_CPU_MIPS64_R2 is not set
CONFIG_CPU_MIPSR1=y
@ -54,15 +54,16 @@ CONFIG_CPU_SUPPORTS_HIGHMEM=y
# CONFIG_CPU_TX39XX is not set
# CONFIG_CPU_TX49XX is not set
# CONFIG_CPU_VR41XX is not set
CONFIG_CSRC_R4K_LIB=y
CONFIG_CSRC_R4K=y
CONFIG_CSRC_R4K_LIB=y
CONFIG_DECOMPRESS_LZMA=y
CONFIG_DEVPORT=y
# CONFIG_DM9000 is not set
CONFIG_DMA_NEED_PCI_MAP_STATE=y
CONFIG_DMA_NONCOHERENT=y
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
CONFIG_EARLY_PRINTK=y
CONFIG_GENERIC_CLOCKEVENTS=y
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
CONFIG_GENERIC_CMOS_UPDATE=y
CONFIG_GENERIC_FIND_LAST_BIT=y
CONFIG_GENERIC_FIND_NEXT_BIT=y
@ -92,6 +93,7 @@ CONFIG_IRQ_CPU=y
# CONFIG_MACH_TX49XX is not set
# CONFIG_MACH_VR41XX is not set
# CONFIG_MIKROTIK_RB532 is not set
CONFIG_MIPS=y
# CONFIG_MIPS_COBALT is not set
CONFIG_MIPS_L1_CACHE_SHIFT=5
# CONFIG_MIPS_MACHINE is not set
@ -100,7 +102,6 @@ CONFIG_MIPS_MT_DISABLED=y
# CONFIG_MIPS_MT_SMP is not set
# CONFIG_MIPS_MT_SMTC is not set
# CONFIG_MIPS_SIM is not set
CONFIG_MIPS=y
CONFIG_MTD_AR2315=y
CONFIG_MTD_CFI_ADV_OPTIONS=y
# CONFIG_MTD_CFI_GEOMETRY is not set
@ -143,6 +144,7 @@ CONFIG_SERIAL_8250_RUNTIME_UARTS=1
# CONFIG_SLOW_WORK is not set
CONFIG_SWCONFIG=y
CONFIG_SYS_HAS_CPU_MIPS32_R1=y
CONFIG_SYS_HAS_EARLY_PRINTK=y
CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y
CONFIG_SYS_SUPPORTS_ARBIT_HZ=y
CONFIG_SYS_SUPPORTS_BIG_ENDIAN=y

View File

@ -12,20 +12,18 @@ CONFIG_ARCH_POPULATES_NODE_MAP=y
# CONFIG_ARCH_SUPPORTS_MSI is not set
CONFIG_ARCH_SUPPORTS_OPROFILE=y
CONFIG_ARCH_SUSPEND_POSSIBLE=y
CONFIG_ATHEROS_AR2315_PCI=y
CONFIG_ATHEROS_AR2315=y
CONFIG_ATHEROS_AR2315_PCI=y
CONFIG_ATHEROS_AR231X=y
CONFIG_ATHEROS_AR5312=y
CONFIG_ATHEROS_WDT=y
# CONFIG_BCM47XX is not set
# CONFIG_BINARY_PRINTF is not set
CONFIG_BITREVERSE=y
# CONFIG_CAVIUM_OCTEON_REFERENCE_BOARD is not set
# CONFIG_CAVIUM_OCTEON_SIMULATOR is not set
CONFIG_CEVT_R4K_LIB=y
CONFIG_CEVT_R4K=y
CONFIG_CEVT_R4K_LIB=y
CONFIG_CMDLINE="console=ttyS0,9600 rootfstype=squashfs,jffs2"
CONFIG_CONSTRUCTORS=y
CONFIG_CPU_BIG_ENDIAN=y
# CONFIG_CPU_CAVIUM_OCTEON is not set
CONFIG_CPU_HAS_LLSC=y
@ -33,9 +31,9 @@ CONFIG_CPU_HAS_PREFETCH=y
CONFIG_CPU_HAS_SYNC=y
# CONFIG_CPU_LITTLE_ENDIAN is not set
# CONFIG_CPU_LOONGSON2 is not set
CONFIG_CPU_MIPS32=y
CONFIG_CPU_MIPS32_R1=y
# CONFIG_CPU_MIPS32_R2 is not set
CONFIG_CPU_MIPS32=y
# CONFIG_CPU_MIPS64_R1 is not set
# CONFIG_CPU_MIPS64_R2 is not set
CONFIG_CPU_MIPSR1=y
@ -57,16 +55,17 @@ CONFIG_CPU_SUPPORTS_HIGHMEM=y
# CONFIG_CPU_TX39XX is not set
# CONFIG_CPU_TX49XX is not set
# CONFIG_CPU_VR41XX is not set
CONFIG_CSRC_R4K_LIB=y
CONFIG_CSRC_R4K=y
CONFIG_CSRC_R4K_LIB=y
CONFIG_DECOMPRESS_LZMA=y
CONFIG_DEVPORT=y
# CONFIG_DM9000 is not set
CONFIG_DMA_NEED_PCI_MAP_STATE=y
CONFIG_DMA_NONCOHERENT=y
CONFIG_EARLY_PRINTK=y
# CONFIG_FSNOTIFY is not set
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
CONFIG_GENERIC_CLOCKEVENTS=y
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
CONFIG_GENERIC_CMOS_UPDATE=y
CONFIG_GENERIC_FIND_LAST_BIT=y
CONFIG_GENERIC_FIND_NEXT_BIT=y
@ -80,8 +79,6 @@ CONFIG_HAS_IOPORT=y
CONFIG_HAVE_ARCH_KGDB=y
# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
CONFIG_HAVE_IDE=y
CONFIG_HAVE_MLOCKED_PAGE_BIT=y
CONFIG_HAVE_MLOCK=y
CONFIG_HAVE_OPROFILE=y
CONFIG_HW_HAS_PCI=y
CONFIG_HW_RANDOM=y
@ -98,6 +95,7 @@ CONFIG_MAC80211_DEFAULT_PS_VALUE=0
# CONFIG_MACH_TX49XX is not set
# CONFIG_MACH_VR41XX is not set
# CONFIG_MIKROTIK_RB532 is not set
CONFIG_MIPS=y
# CONFIG_MIPS_COBALT is not set
CONFIG_MIPS_L1_CACHE_SHIFT=5
# CONFIG_MIPS_MACHINE is not set
@ -106,7 +104,6 @@ CONFIG_MIPS_MT_DISABLED=y
# CONFIG_MIPS_MT_SMP is not set
# CONFIG_MIPS_MT_SMTC is not set
# CONFIG_MIPS_SIM is not set
CONFIG_MIPS=y
CONFIG_MTD_AR2315=y
CONFIG_MTD_CFI_ADV_OPTIONS=y
# CONFIG_MTD_CFI_GEOMETRY is not set
@ -146,13 +143,12 @@ CONFIG_SERIAL_8250_RUNTIME_UARTS=1
# CONFIG_SIBYTE_RHONE is not set
# CONFIG_SIBYTE_SENTOSA is not set
# CONFIG_SIBYTE_SWARM is not set
# CONFIG_SLOW_WORK is not set
CONFIG_SWCONFIG=y
CONFIG_SYS_HAS_CPU_MIPS32_R1=y
CONFIG_SYS_HAS_EARLY_PRINTK=y
CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y
CONFIG_SYS_SUPPORTS_ARBIT_HZ=y
CONFIG_SYS_SUPPORTS_BIG_ENDIAN=y
CONFIG_TRACING_SUPPORT=y
CONFIG_TRAD_SIGNALS=y
CONFIG_USB_SUPPORT=y
CONFIG_ZONE_DMA_FLAG=0

View File

@ -12,8 +12,8 @@ CONFIG_ARCH_POPULATES_NODE_MAP=y
# CONFIG_ARCH_SUPPORTS_MSI is not set
CONFIG_ARCH_SUPPORTS_OPROFILE=y
CONFIG_ARCH_SUSPEND_POSSIBLE=y
CONFIG_ATHEROS_AR2315_PCI=y
CONFIG_ATHEROS_AR2315=y
CONFIG_ATHEROS_AR2315_PCI=y
CONFIG_ATHEROS_AR231X=y
CONFIG_ATHEROS_AR5312=y
CONFIG_ATHEROS_WDT=y
@ -22,8 +22,8 @@ CONFIG_ATHEROS_WDT=y
CONFIG_BITREVERSE=y
# CONFIG_CAVIUM_OCTEON_REFERENCE_BOARD is not set
# CONFIG_CAVIUM_OCTEON_SIMULATOR is not set
CONFIG_CEVT_R4K_LIB=y
CONFIG_CEVT_R4K=y
CONFIG_CEVT_R4K_LIB=y
CONFIG_CFG80211_DEFAULT_PS_VALUE=0
CONFIG_CMDLINE="console=ttyS0,9600 rootfstype=squashfs,jffs2"
CONFIG_CPU_BIG_ENDIAN=y
@ -32,9 +32,9 @@ CONFIG_CPU_HAS_PREFETCH=y
CONFIG_CPU_HAS_SYNC=y
# CONFIG_CPU_LITTLE_ENDIAN is not set
# CONFIG_CPU_LOONGSON2E is not set
CONFIG_CPU_MIPS32=y
CONFIG_CPU_MIPS32_R1=y
# CONFIG_CPU_MIPS32_R2 is not set
CONFIG_CPU_MIPS32=y
# CONFIG_CPU_MIPS64_R1 is not set
# CONFIG_CPU_MIPS64_R2 is not set
CONFIG_CPU_MIPSR1=y
@ -56,16 +56,17 @@ CONFIG_CPU_SUPPORTS_HIGHMEM=y
# CONFIG_CPU_TX39XX is not set
# CONFIG_CPU_TX49XX is not set
# CONFIG_CPU_VR41XX is not set
CONFIG_CSRC_R4K_LIB=y
CONFIG_CSRC_R4K=y
CONFIG_CSRC_R4K_LIB=y
CONFIG_DECOMPRESS_LZMA=y
CONFIG_DEVPORT=y
# CONFIG_DM9000 is not set
CONFIG_DMA_NEED_PCI_MAP_STATE=y
CONFIG_DMA_NONCOHERENT=y
CONFIG_EARLY_PRINTK=y
# CONFIG_FSNOTIFY is not set
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
CONFIG_GENERIC_CLOCKEVENTS=y
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
CONFIG_GENERIC_CMOS_UPDATE=y
CONFIG_GENERIC_FIND_LAST_BIT=y
CONFIG_GENERIC_FIND_NEXT_BIT=y
@ -94,6 +95,7 @@ CONFIG_IRQ_CPU=y
# CONFIG_MACH_TX49XX is not set
# CONFIG_MACH_VR41XX is not set
# CONFIG_MIKROTIK_RB532 is not set
CONFIG_MIPS=y
# CONFIG_MIPS_COBALT is not set
CONFIG_MIPS_L1_CACHE_SHIFT=5
# CONFIG_MIPS_MACHINE is not set
@ -102,7 +104,6 @@ CONFIG_MIPS_MT_DISABLED=y
# CONFIG_MIPS_MT_SMP is not set
# CONFIG_MIPS_MT_SMTC is not set
# CONFIG_MIPS_SIM is not set
CONFIG_MIPS=y
CONFIG_MTD_AR2315=y
CONFIG_MTD_CFI_ADV_OPTIONS=y
# CONFIG_MTD_CFI_GEOMETRY is not set
@ -144,6 +145,7 @@ CONFIG_SERIAL_8250_RUNTIME_UARTS=1
# CONFIG_SIBYTE_SWARM is not set
CONFIG_SWCONFIG=y
CONFIG_SYS_HAS_CPU_MIPS32_R1=y
CONFIG_SYS_HAS_EARLY_PRINTK=y
CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y
CONFIG_SYS_SUPPORTS_ARBIT_HZ=y
CONFIG_SYS_SUPPORTS_BIG_ENDIAN=y

View File

@ -17,7 +17,6 @@ CONFIG_ATHEROS_AR2315_PCI=y
CONFIG_ATHEROS_AR231X=y
CONFIG_ATHEROS_AR5312=y
CONFIG_ATHEROS_WDT=y
# CONFIG_BATMAN_ADV is not set
# CONFIG_BCM47XX is not set
# CONFIG_BCM63XX is not set
CONFIG_BITREVERSE=y
@ -60,8 +59,6 @@ CONFIG_CPU_SUPPORTS_HIGHMEM=y
CONFIG_CSRC_R4K=y
CONFIG_CSRC_R4K_LIB=y
CONFIG_DECOMPRESS_LZMA=y
CONFIG_DEFAULT_SECURITY=""
CONFIG_DEFAULT_SECURITY_DAC=y
# CONFIG_DEFAULT_SECURITY_SELINUX is not set
# CONFIG_DEFAULT_SECURITY_SMACK is not set
# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
@ -69,6 +66,7 @@ CONFIG_DEVPORT=y
# CONFIG_DM9000 is not set
CONFIG_DMA_NEED_PCI_MAP_STATE=y
CONFIG_DMA_NONCOHERENT=y
CONFIG_EARLY_PRINTK=y
# CONFIG_FSNOTIFY is not set
CONFIG_GENERIC_CLOCKEVENTS=y
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
@ -125,7 +123,6 @@ CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
CONFIG_IP175C_PHY=y
CONFIG_IRQ_CPU=y
# CONFIG_LEDS_GPIO is not set
# CONFIG_LEDS_LT3593 is not set
CONFIG_LOONGSON_UART_BASE=y
# CONFIG_MACH_ALCHEMY is not set
# CONFIG_MACH_DECSTATION is not set
@ -167,8 +164,6 @@ CONFIG_PHYLIB=y
# CONFIG_PNX8550_JBS is not set
# CONFIG_PNX8550_STB810 is not set
# CONFIG_POWERTV is not set
# CONFIG_R8187SE is not set
# CONFIG_RAMZSWAP is not set
CONFIG_SCHED_OMIT_FRAME_POINTER=y
# CONFIG_SCSI_DMA is not set
# CONFIG_SERIAL_8250_EXTENDED is not set
@ -188,6 +183,7 @@ CONFIG_SERIAL_8250_RUNTIME_UARTS=1
# CONFIG_SIBYTE_SWARM is not set
CONFIG_SWCONFIG=y
CONFIG_SYS_HAS_CPU_MIPS32_R1=y
CONFIG_SYS_HAS_EARLY_PRINTK=y
CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y
CONFIG_SYS_SUPPORTS_ARBIT_HZ=y
CONFIG_SYS_SUPPORTS_BIG_ENDIAN=y

View File

@ -0,0 +1,68 @@
--- /dev/null
+++ b/arch/mips/ar231x/early_printk.c
@@ -0,0 +1,44 @@
+/*
+ * 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.
+ *
+ * Copyright (C) 2010 Gabor Juhos <juhosg@openwrt.org>
+ */
+
+#include <linux/mm.h>
+#include <linux/io.h>
+#include <linux/serial_reg.h>
+#include <asm/addrspace.h>
+
+#include <asm/mach-ar231x/ar2315_regs.h>
+#include <asm/mach-ar231x/ar5312_regs.h>
+#include "devices.h"
+
+static inline void prom_uart_wr(void __iomem *base, unsigned reg,
+ unsigned char ch)
+{
+ __raw_writeb(ch, base + 4 * reg);
+}
+
+static inline unsigned char prom_uart_rr(void __iomem *base, unsigned reg)
+{
+ return __raw_readb(base + 4 * reg);
+}
+
+void prom_putchar(unsigned char ch)
+{
+ static void __iomem *base;
+
+ if (unlikely(base == NULL)) {
+ if (is_2315())
+ base = (void __iomem *)(KSEG1ADDR(AR2315_UART0));
+ else
+ base = (void __iomem *)(KSEG1ADDR(AR531X_UART0));
+ }
+
+ while ((prom_uart_rr(base, UART_LSR) & UART_LSR_THRE) == 0);
+ prom_uart_wr(base, UART_TX, ch);
+ while ((prom_uart_rr(base, UART_LSR) & UART_LSR_THRE) == 0);
+}
+
--- a/arch/mips/ar231x/Makefile
+++ b/arch/mips/ar231x/Makefile
@@ -9,5 +9,8 @@
#
obj-y += board.o prom.o devices.o
+
+obj-$(CONFIG_EARLY_PRINTK) += early_printk.o
+
obj-$(CONFIG_ATHEROS_AR5312) += ar5312.o
obj-$(CONFIG_ATHEROS_AR2315) += ar2315.o
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -70,6 +70,7 @@ config ATHEROS_AR231X
select SYS_SUPPORTS_BIG_ENDIAN
select SYS_SUPPORTS_32BIT_KERNEL
select GENERIC_GPIO
+ select SYS_HAS_EARLY_PRINTK
help
Support for AR231x and AR531x based boards

View File

@ -1,7 +1,7 @@
--- a/arch/mips/ar231x/Makefile
+++ b/arch/mips/ar231x/Makefile
@@ -11,3 +11,4 @@
obj-y += board.o prom.o devices.o
@@ -14,3 +14,4 @@ obj-$(CONFIG_EARLY_PRINTK) += early_prin
obj-$(CONFIG_ATHEROS_AR5312) += ar5312.o
obj-$(CONFIG_ATHEROS_AR2315) += ar2315.o
+obj-$(CONFIG_ATHEROS_AR2315_PCI) += pci.o

View File

@ -0,0 +1,72 @@
--- a/drivers/mtd/redboot.c
+++ b/drivers/mtd/redboot.c
@@ -39,6 +39,22 @@ static inline int redboot_checksum(struc
return 1;
}
+static uint32_t mtd_get_offset_erasesize(struct mtd_info *mtd, uint64_t offset)
+{
+ struct mtd_erase_region_info *regions = mtd->eraseregions;
+ int i;
+
+ for (i = 0; i < mtd->numeraseregions; i++) {
+ if (regions[i].offset +
+ regions[i].numblocks * regions[i].erasesize <= offset)
+ continue;
+
+ return regions[i].erasesize;
+ }
+
+ return mtd->erasesize;
+}
+
static int parse_redboot_partitions(struct mtd_info *master,
struct mtd_partition **pparts,
unsigned long fis_origin)
@@ -55,6 +71,7 @@ static int parse_redboot_partitions(stru
int namelen = 0;
int nulllen = 0;
int numslots;
+ int first_slot;
unsigned long offset;
#ifdef CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED
static char nullstring[] = "unallocated";
@@ -168,7 +185,10 @@ static int parse_redboot_partitions(stru
goto out;
}
- for (i = 0; i < numslots; i++) {
+ first_slot = (buf[i].flash_base & (master->erasesize - 1)) /
+ sizeof(struct fis_image_desc);
+
+ for (i = first_slot; i < first_slot + numslots; i++) {
struct fis_list *new_fl, **prev;
if (buf[i].name[0] == 0xff) {
@@ -244,12 +264,13 @@ static int parse_redboot_partitions(stru
}
#endif
for ( ; i<nrparts; i++) {
- if(max_offset < buf[i].flash_base + buf[i].size)
- max_offset = buf[i].flash_base + buf[i].size;
parts[i].size = fl->img->size;
parts[i].offset = fl->img->flash_base;
parts[i].name = names;
+ if (max_offset < parts[i].offset + parts[i].size)
+ max_offset = parts[i].offset + parts[i].size;
+
strcpy(names, fl->img->name);
#ifdef CONFIG_MTD_REDBOOT_PARTS_READONLY
if (!memcmp(names, "RedBoot", 8) ||
@@ -279,7 +300,9 @@ static int parse_redboot_partitions(stru
fl = fl->next;
kfree(tmp_fl);
}
- if(master->size - max_offset >= master->erasesize)
+
+ if (master->size - max_offset >=
+ mtd_get_offset_erasesize(master, max_offset))
{
parts[nrparts].size = master->size - max_offset;
parts[nrparts].offset = max_offset;

View File

@ -6,9 +6,9 @@
-obj-y += board.o prom.o devices.o
+obj-y += board.o prom.o devices.o reset.o
obj-$(CONFIG_ATHEROS_AR5312) += ar5312.o
obj-$(CONFIG_ATHEROS_AR2315) += ar2315.o
obj-$(CONFIG_ATHEROS_AR2315_PCI) += pci.o
obj-$(CONFIG_EARLY_PRINTK) += early_printk.o
--- /dev/null
+++ b/arch/mips/ar231x/reset.c
@@ -0,0 +1,160 @@

View File

@ -0,0 +1,68 @@
--- /dev/null
+++ b/arch/mips/ar231x/early_printk.c
@@ -0,0 +1,44 @@
+/*
+ * 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.
+ *
+ * Copyright (C) 2010 Gabor Juhos <juhosg@openwrt.org>
+ */
+
+#include <linux/mm.h>
+#include <linux/io.h>
+#include <linux/serial_reg.h>
+#include <asm/addrspace.h>
+
+#include <asm/mach-ar231x/ar2315_regs.h>
+#include <asm/mach-ar231x/ar5312_regs.h>
+#include "devices.h"
+
+static inline void prom_uart_wr(void __iomem *base, unsigned reg,
+ unsigned char ch)
+{
+ __raw_writeb(ch, base + 4 * reg);
+}
+
+static inline unsigned char prom_uart_rr(void __iomem *base, unsigned reg)
+{
+ return __raw_readb(base + 4 * reg);
+}
+
+void prom_putchar(unsigned char ch)
+{
+ static void __iomem *base;
+
+ if (unlikely(base == NULL)) {
+ if (is_2315())
+ base = (void __iomem *)(KSEG1ADDR(AR2315_UART0));
+ else
+ base = (void __iomem *)(KSEG1ADDR(AR531X_UART0));
+ }
+
+ while ((prom_uart_rr(base, UART_LSR) & UART_LSR_THRE) == 0);
+ prom_uart_wr(base, UART_TX, ch);
+ while ((prom_uart_rr(base, UART_LSR) & UART_LSR_THRE) == 0);
+}
+
--- a/arch/mips/ar231x/Makefile
+++ b/arch/mips/ar231x/Makefile
@@ -9,5 +9,8 @@
#
obj-y += board.o prom.o devices.o
+
+obj-$(CONFIG_EARLY_PRINTK) += early_printk.o
+
obj-$(CONFIG_ATHEROS_AR5312) += ar5312.o
obj-$(CONFIG_ATHEROS_AR2315) += ar2315.o
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -90,6 +90,7 @@ config ATHEROS_AR231X
select SYS_SUPPORTS_BIG_ENDIAN
select SYS_SUPPORTS_32BIT_KERNEL
select GENERIC_GPIO
+ select SYS_HAS_EARLY_PRINTK
help
Support for AR231x and AR531x based boards

View File

@ -1,7 +1,7 @@
--- a/arch/mips/ar231x/Makefile
+++ b/arch/mips/ar231x/Makefile
@@ -11,3 +11,4 @@
obj-y += board.o prom.o devices.o
@@ -14,3 +14,4 @@ obj-$(CONFIG_EARLY_PRINTK) += early_prin
obj-$(CONFIG_ATHEROS_AR5312) += ar5312.o
obj-$(CONFIG_ATHEROS_AR2315) += ar2315.o
+obj-$(CONFIG_ATHEROS_AR2315_PCI) += pci.o

View File

@ -0,0 +1,72 @@
--- a/drivers/mtd/redboot.c
+++ b/drivers/mtd/redboot.c
@@ -39,6 +39,22 @@ static inline int redboot_checksum(struc
return 1;
}
+static uint32_t mtd_get_offset_erasesize(struct mtd_info *mtd, uint64_t offset)
+{
+ struct mtd_erase_region_info *regions = mtd->eraseregions;
+ int i;
+
+ for (i = 0; i < mtd->numeraseregions; i++) {
+ if (regions[i].offset +
+ regions[i].numblocks * regions[i].erasesize <= offset)
+ continue;
+
+ return regions[i].erasesize;
+ }
+
+ return mtd->erasesize;
+}
+
static int parse_redboot_partitions(struct mtd_info *master,
struct mtd_partition **pparts,
unsigned long fis_origin)
@@ -55,6 +71,7 @@ static int parse_redboot_partitions(stru
int namelen = 0;
int nulllen = 0;
int numslots;
+ int first_slot;
unsigned long offset;
#ifdef CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED
static char nullstring[] = "unallocated";
@@ -168,7 +185,10 @@ static int parse_redboot_partitions(stru
goto out;
}
- for (i = 0; i < numslots; i++) {
+ first_slot = (buf[i].flash_base & (master->erasesize - 1)) /
+ sizeof(struct fis_image_desc);
+
+ for (i = first_slot; i < first_slot + numslots; i++) {
struct fis_list *new_fl, **prev;
if (buf[i].name[0] == 0xff) {
@@ -244,12 +264,13 @@ static int parse_redboot_partitions(stru
}
#endif
for ( ; i<nrparts; i++) {
- if(max_offset < buf[i].flash_base + buf[i].size)
- max_offset = buf[i].flash_base + buf[i].size;
parts[i].size = fl->img->size;
parts[i].offset = fl->img->flash_base;
parts[i].name = names;
+ if (max_offset < parts[i].offset + parts[i].size)
+ max_offset = parts[i].offset + parts[i].size;
+
strcpy(names, fl->img->name);
#ifdef CONFIG_MTD_REDBOOT_PARTS_READONLY
if (!memcmp(names, "RedBoot", 8) ||
@@ -279,7 +300,9 @@ static int parse_redboot_partitions(stru
fl = fl->next;
kfree(tmp_fl);
}
- if(master->size - max_offset >= master->erasesize)
+
+ if (master->size - max_offset >=
+ mtd_get_offset_erasesize(master, max_offset))
{
parts[nrparts].size = master->size - max_offset;
parts[nrparts].offset = max_offset;

View File

@ -6,9 +6,9 @@
-obj-y += board.o prom.o devices.o
+obj-y += board.o prom.o devices.o reset.o
obj-$(CONFIG_ATHEROS_AR5312) += ar5312.o
obj-$(CONFIG_ATHEROS_AR2315) += ar2315.o
obj-$(CONFIG_ATHEROS_AR2315_PCI) += pci.o
obj-$(CONFIG_EARLY_PRINTK) += early_printk.o
--- /dev/null
+++ b/arch/mips/ar231x/reset.c
@@ -0,0 +1,160 @@

View File

@ -4,11 +4,9 @@ still works.
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Index: linux-2.6.32.7/arch/mips/kernel/cevt-r4k.c
===================================================================
--- linux-2.6.32.7.orig/arch/mips/kernel/cevt-r4k.c 2010-01-29 00:06:20.000000000 +0100
+++ linux-2.6.32.7/arch/mips/kernel/cevt-r4k.c 2010-02-03 16:59:28.310430064 +0100
@@ -168,20 +168,23 @@
--- a/arch/mips/kernel/cevt-r4k.c
+++ b/arch/mips/kernel/cevt-r4k.c
@@ -168,20 +168,23 @@ int __cpuinit r4k_clockevent_init(void)
struct clock_event_device *cd;
unsigned int irq;

View File

@ -1,7 +1,5 @@
Index: linux-2.6.32.7/arch/mips/kernel/cevt-r4k.c
===================================================================
--- linux-2.6.32.7.orig/arch/mips/kernel/cevt-r4k.c 2010-02-03 16:59:28.310430064 +0100
+++ linux-2.6.32.7/arch/mips/kernel/cevt-r4k.c 2010-02-03 16:59:54.578430015 +0100
--- a/arch/mips/kernel/cevt-r4k.c
+++ b/arch/mips/kernel/cevt-r4k.c
@@ -16,6 +16,22 @@
#include <asm/cevt-r4k.h>
@ -25,7 +23,7 @@ Index: linux-2.6.32.7/arch/mips/kernel/cevt-r4k.c
* The SMTC Kernel for the 34K, 1004K, et. al. replaces several
* of these routines with SMTC-specific variants.
*/
@@ -31,6 +47,7 @@
@@ -31,6 +47,7 @@ static int mips_next_event(unsigned long
cnt = read_c0_count();
cnt += delta;
write_c0_compare(cnt);
@ -33,7 +31,7 @@ Index: linux-2.6.32.7/arch/mips/kernel/cevt-r4k.c
res = ((int)(read_c0_count() - cnt) > 0) ? -ETIME : 0;
return res;
}
@@ -100,22 +117,6 @@
@@ -100,22 +117,6 @@ static int c0_compare_int_pending(void)
return (read_c0_cause() >> cp0_compare_irq) & 0x100;
}

View File

@ -1,8 +1,6 @@
Index: linux-2.6.32.7/arch/mips/Kconfig
===================================================================
--- linux-2.6.32.7.orig/arch/mips/Kconfig 2010-02-03 16:57:31.290430165 +0100
+++ linux-2.6.32.7/arch/mips/Kconfig 2010-02-03 17:00:08.814429898 +0100
@@ -96,6 +96,19 @@
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -96,6 +96,19 @@ config BCM63XX
help
Support for BCM63XX based boards
@ -22,7 +20,7 @@ Index: linux-2.6.32.7/arch/mips/Kconfig
config MIPS_COBALT
bool "Cobalt Server"
select CEVT_R4K
@@ -673,6 +686,7 @@
@@ -673,6 +686,7 @@ config CAVIUM_OCTEON_REFERENCE_BOARD
endchoice
@ -30,11 +28,9 @@ Index: linux-2.6.32.7/arch/mips/Kconfig
source "arch/mips/alchemy/Kconfig"
source "arch/mips/basler/excite/Kconfig"
source "arch/mips/bcm63xx/Kconfig"
Index: linux-2.6.32.7/arch/mips/Makefile
===================================================================
--- linux-2.6.32.7.orig/arch/mips/Makefile 2010-02-03 16:57:31.851429682 +0100
+++ linux-2.6.32.7/arch/mips/Makefile 2010-02-03 17:00:08.814429898 +0100
@@ -296,6 +296,13 @@
--- a/arch/mips/Makefile
+++ b/arch/mips/Makefile
@@ -298,6 +298,13 @@ cflags-$(CONFIG_SOC_AU1X00) += -I$(srctr
#
@ -48,10 +44,8 @@ Index: linux-2.6.32.7/arch/mips/Makefile
# Cobalt Server
#
core-$(CONFIG_MIPS_COBALT) += arch/mips/cobalt/
Index: linux-2.6.32.7/arch/mips/ar231x/Kconfig
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.32.7/arch/mips/ar231x/Kconfig 2010-02-03 17:00:08.814429898 +0100
--- /dev/null
+++ b/arch/mips/ar231x/Kconfig
@@ -0,0 +1,17 @@
+config ATHEROS_AR5312
+ bool "Atheros 5312/2312+ support"
@ -70,10 +64,8 @@ Index: linux-2.6.32.7/arch/mips/ar231x/Kconfig
+ select SYS_SUPPORTS_BIG_ENDIAN
+ select GENERIC_GPIO
+ default y
Index: linux-2.6.32.7/arch/mips/ar231x/Makefile
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.32.7/arch/mips/ar231x/Makefile 2010-02-03 17:00:08.814429898 +0100
--- /dev/null
+++ b/arch/mips/ar231x/Makefile
@@ -0,0 +1,13 @@
+#
+# This file is subject to the terms and conditions of the GNU General Public
@ -88,10 +80,8 @@ Index: linux-2.6.32.7/arch/mips/ar231x/Makefile
+obj-y += board.o prom.o devices.o
+obj-$(CONFIG_ATHEROS_AR5312) += ar5312.o
+obj-$(CONFIG_ATHEROS_AR2315) += ar2315.o
Index: linux-2.6.32.7/arch/mips/ar231x/board.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.32.7/arch/mips/ar231x/board.c 2010-02-03 17:00:08.814429898 +0100
--- /dev/null
+++ b/arch/mips/ar231x/board.c
@@ -0,0 +1,251 @@
+/*
+ * This file is subject to the terms and conditions of the GNU General Public
@ -344,10 +334,8 @@ Index: linux-2.6.32.7/arch/mips/ar231x/board.c
+}
+
+
Index: linux-2.6.32.7/arch/mips/ar231x/prom.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.32.7/arch/mips/ar231x/prom.c 2010-02-03 17:00:08.814429898 +0100
--- /dev/null
+++ b/arch/mips/ar231x/prom.c
@@ -0,0 +1,37 @@
+/*
+ * This file is subject to the terms and conditions of the GNU General Public
@ -386,10 +374,8 @@ Index: linux-2.6.32.7/arch/mips/ar231x/prom.c
+void __init prom_free_prom_memory(void)
+{
+}
Index: linux-2.6.32.7/arch/mips/include/asm/mach-ar231x/ar231x_platform.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.32.7/arch/mips/include/asm/mach-ar231x/ar231x_platform.h 2010-02-03 17:00:08.814429898 +0100
--- /dev/null
+++ b/arch/mips/include/asm/mach-ar231x/ar231x_platform.h
@@ -0,0 +1,83 @@
+#ifndef __AR531X_PLATFORM_H
+#define __AR531X_PLATFORM_H
@ -474,10 +460,8 @@ Index: linux-2.6.32.7/arch/mips/include/asm/mach-ar231x/ar231x_platform.h
+};
+
+#endif /* __AR531X_PLATFORM_H */
Index: linux-2.6.32.7/arch/mips/include/asm/mach-ar231x/cpu-feature-overrides.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.32.7/arch/mips/include/asm/mach-ar231x/cpu-feature-overrides.h 2010-02-03 17:00:08.814429898 +0100
--- /dev/null
+++ b/arch/mips/include/asm/mach-ar231x/cpu-feature-overrides.h
@@ -0,0 +1,84 @@
+/*
+ * Atheros SoC specific CPU feature overrides
@ -563,10 +547,8 @@ Index: linux-2.6.32.7/arch/mips/include/asm/mach-ar231x/cpu-feature-overrides.h
+/* #define cpu_icache_line_size() ? */
+
+#endif /* __ASM_MACH_ATHEROS_CPU_FEATURE_OVERRIDES_H */
Index: linux-2.6.32.7/arch/mips/include/asm/mach-ar231x/dma-coherence.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.32.7/arch/mips/include/asm/mach-ar231x/dma-coherence.h 2010-02-03 17:00:08.814429898 +0100
--- /dev/null
+++ b/arch/mips/include/asm/mach-ar231x/dma-coherence.h
@@ -0,0 +1,64 @@
+/*
+ * This file is subject to the terms and conditions of the GNU General Public
@ -632,10 +614,8 @@ Index: linux-2.6.32.7/arch/mips/include/asm/mach-ar231x/dma-coherence.h
+}
+
+#endif /* __ASM_MACH_GENERIC_DMA_COHERENCE_H */
Index: linux-2.6.32.7/arch/mips/include/asm/mach-ar231x/gpio.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.32.7/arch/mips/include/asm/mach-ar231x/gpio.h 2010-02-03 17:00:08.814429898 +0100
--- /dev/null
+++ b/arch/mips/include/asm/mach-ar231x/gpio.h
@@ -0,0 +1,79 @@
+#ifndef _ATHEROS_GPIO_H_
+#define _ATHEROS_GPIO_H_
@ -716,10 +696,8 @@ Index: linux-2.6.32.7/arch/mips/include/asm/mach-ar231x/gpio.h
+#include <asm-generic/gpio.h> /* cansleep wrappers */
+
+#endif
Index: linux-2.6.32.7/arch/mips/include/asm/mach-ar231x/reset.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.32.7/arch/mips/include/asm/mach-ar231x/reset.h 2010-02-03 17:00:08.814429898 +0100
--- /dev/null
+++ b/arch/mips/include/asm/mach-ar231x/reset.h
@@ -0,0 +1,6 @@
+#ifndef __AR531X_RESET_H
+#define __AR531X_RESET_H
@ -727,10 +705,8 @@ Index: linux-2.6.32.7/arch/mips/include/asm/mach-ar231x/reset.h
+void ar531x_disable_reset_button(void);
+
+#endif /* __AR531X_RESET_H */
Index: linux-2.6.32.7/arch/mips/include/asm/mach-ar231x/war.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.32.7/arch/mips/include/asm/mach-ar231x/war.h 2010-02-03 17:00:08.814429898 +0100
--- /dev/null
+++ b/arch/mips/include/asm/mach-ar231x/war.h
@@ -0,0 +1,25 @@
+/*
+ * This file is subject to the terms and conditions of the GNU General Public
@ -757,10 +733,8 @@ Index: linux-2.6.32.7/arch/mips/include/asm/mach-ar231x/war.h
+#define MIPS34K_MISSED_ITLB_WAR 0
+
+#endif /* __ASM_MIPS_MACH_ATHEROS_WAR_H */
Index: linux-2.6.32.7/arch/mips/include/asm/mach-ar231x/ar2315_regs.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.32.7/arch/mips/include/asm/mach-ar231x/ar2315_regs.h 2010-02-03 17:00:08.814429898 +0100
--- /dev/null
+++ b/arch/mips/include/asm/mach-ar231x/ar2315_regs.h
@@ -0,0 +1,580 @@
+/*
+ * Register definitions for AR2315+
@ -1342,10 +1316,8 @@ Index: linux-2.6.32.7/arch/mips/include/asm/mach-ar231x/ar2315_regs.h
+#define PCI_DEVICE_MEM_SPACE 0x800000
+
+#endif /* __AR2315_REG_H */
Index: linux-2.6.32.7/arch/mips/include/asm/mach-ar231x/ar5312_regs.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.32.7/arch/mips/include/asm/mach-ar231x/ar5312_regs.h 2010-02-03 17:00:08.818431986 +0100
--- /dev/null
+++ b/arch/mips/include/asm/mach-ar231x/ar5312_regs.h
@@ -0,0 +1,236 @@
+/*
+ * This file is subject to the terms and conditions of the GNU General Public
@ -1583,10 +1555,8 @@ Index: linux-2.6.32.7/arch/mips/include/asm/mach-ar231x/ar5312_regs.h
+
+#endif
+
Index: linux-2.6.32.7/arch/mips/ar231x/ar5312.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.32.7/arch/mips/ar231x/ar5312.c 2010-02-03 17:00:08.818431986 +0100
--- /dev/null
+++ b/arch/mips/ar231x/ar5312.c
@@ -0,0 +1,547 @@
+/*
+ * This file is subject to the terms and conditions of the GNU General Public
@ -2135,10 +2105,8 @@ Index: linux-2.6.32.7/arch/mips/ar231x/ar5312.c
+ ar231x_serial_setup(KSEG1ADDR(AR531X_UART0), ar5312_sys_frequency());
+}
+
Index: linux-2.6.32.7/arch/mips/ar231x/ar2315.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.32.7/arch/mips/ar231x/ar2315.c 2010-02-03 17:00:08.818431986 +0100
--- /dev/null
+++ b/arch/mips/ar231x/ar2315.c
@@ -0,0 +1,658 @@
+/*
+ * This file is subject to the terms and conditions of the GNU General Public
@ -2798,10 +2766,8 @@ Index: linux-2.6.32.7/arch/mips/ar231x/ar2315.c
+ _machine_restart = ar2315_restart;
+ ar231x_serial_setup(KSEG1ADDR(AR2315_UART0), ar2315_apb_frequency());
+}
Index: linux-2.6.32.7/arch/mips/ar231x/ar2315.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.32.7/arch/mips/ar231x/ar2315.h 2010-02-03 17:00:08.818431986 +0100
--- /dev/null
+++ b/arch/mips/ar231x/ar2315.h
@@ -0,0 +1,37 @@
+#ifndef __AR2315_H
+#define __AR2315_H
@ -2840,10 +2806,8 @@ Index: linux-2.6.32.7/arch/mips/ar231x/ar2315.h
+#endif
+
+#endif
Index: linux-2.6.32.7/arch/mips/ar231x/ar5312.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.32.7/arch/mips/ar231x/ar5312.h 2010-02-03 17:00:08.818431986 +0100
--- /dev/null
+++ b/arch/mips/ar231x/ar5312.h
@@ -0,0 +1,38 @@
+#ifndef __AR5312_H
+#define __AR5312_H
@ -2883,10 +2847,8 @@ Index: linux-2.6.32.7/arch/mips/ar231x/ar5312.h
+#endif
+
+#endif
Index: linux-2.6.32.7/arch/mips/include/asm/mach-ar231x/ar231x.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.32.7/arch/mips/include/asm/mach-ar231x/ar231x.h 2010-02-03 17:00:08.818431986 +0100
--- /dev/null
+++ b/arch/mips/include/asm/mach-ar231x/ar231x.h
@@ -0,0 +1,54 @@
+#ifndef __AR531X_H
+#define __AR531X_H
@ -2942,10 +2904,8 @@ Index: linux-2.6.32.7/arch/mips/include/asm/mach-ar231x/ar231x.h
+}
+
+#endif
Index: linux-2.6.32.7/arch/mips/ar231x/devices.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.32.7/arch/mips/ar231x/devices.h 2010-02-03 17:00:08.818431986 +0100
--- /dev/null
+++ b/arch/mips/ar231x/devices.h
@@ -0,0 +1,37 @@
+#ifndef __AR231X_DEVICES_H
+#define __AR231X_DEVICES_H
@ -2984,10 +2944,8 @@ Index: linux-2.6.32.7/arch/mips/ar231x/devices.h
+}
+
+#endif
Index: linux-2.6.32.7/arch/mips/ar231x/devices.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.32.7/arch/mips/ar231x/devices.c 2010-02-03 17:00:08.818431986 +0100
--- /dev/null
+++ b/arch/mips/ar231x/devices.c
@@ -0,0 +1,175 @@
+#include <linux/kernel.h>
+#include <linux/init.h>

View File

@ -0,0 +1,68 @@
--- /dev/null
+++ b/arch/mips/ar231x/early_printk.c
@@ -0,0 +1,44 @@
+/*
+ * 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.
+ *
+ * Copyright (C) 2010 Gabor Juhos <juhosg@openwrt.org>
+ */
+
+#include <linux/mm.h>
+#include <linux/io.h>
+#include <linux/serial_reg.h>
+#include <asm/addrspace.h>
+
+#include <asm/mach-ar231x/ar2315_regs.h>
+#include <asm/mach-ar231x/ar5312_regs.h>
+#include "devices.h"
+
+static inline void prom_uart_wr(void __iomem *base, unsigned reg,
+ unsigned char ch)
+{
+ __raw_writeb(ch, base + 4 * reg);
+}
+
+static inline unsigned char prom_uart_rr(void __iomem *base, unsigned reg)
+{
+ return __raw_readb(base + 4 * reg);
+}
+
+void prom_putchar(unsigned char ch)
+{
+ static void __iomem *base;
+
+ if (unlikely(base == NULL)) {
+ if (is_2315())
+ base = (void __iomem *)(KSEG1ADDR(AR2315_UART0));
+ else
+ base = (void __iomem *)(KSEG1ADDR(AR531X_UART0));
+ }
+
+ while ((prom_uart_rr(base, UART_LSR) & UART_LSR_THRE) == 0);
+ prom_uart_wr(base, UART_TX, ch);
+ while ((prom_uart_rr(base, UART_LSR) & UART_LSR_THRE) == 0);
+}
+
--- a/arch/mips/ar231x/Makefile
+++ b/arch/mips/ar231x/Makefile
@@ -9,5 +9,8 @@
#
obj-y += board.o prom.o devices.o
+
+obj-$(CONFIG_EARLY_PRINTK) += early_printk.o
+
obj-$(CONFIG_ATHEROS_AR5312) += ar5312.o
obj-$(CONFIG_ATHEROS_AR2315) += ar2315.o
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -106,6 +106,7 @@ config ATHEROS_AR231X
select SYS_SUPPORTS_BIG_ENDIAN
select SYS_SUPPORTS_32BIT_KERNEL
select GENERIC_GPIO
+ select SYS_HAS_EARLY_PRINTK
help
Support for AR231x and AR531x based boards

View File

@ -1,16 +1,12 @@
Index: linux-2.6.32.7/arch/mips/ar231x/Makefile
===================================================================
--- linux-2.6.32.7.orig/arch/mips/ar231x/Makefile 2010-02-03 17:00:08.814429898 +0100
+++ linux-2.6.32.7/arch/mips/ar231x/Makefile 2010-02-03 17:00:21.031428952 +0100
@@ -11,3 +11,4 @@
obj-y += board.o prom.o devices.o
--- a/arch/mips/ar231x/Makefile
+++ b/arch/mips/ar231x/Makefile
@@ -14,3 +14,4 @@ obj-$(CONFIG_EARLY_PRINTK) += early_prin
obj-$(CONFIG_ATHEROS_AR5312) += ar5312.o
obj-$(CONFIG_ATHEROS_AR2315) += ar2315.o
+obj-$(CONFIG_ATHEROS_AR2315_PCI) += pci.o
Index: linux-2.6.32.7/arch/mips/ar231x/pci.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.32.7/arch/mips/ar231x/pci.c 2010-02-03 17:00:21.031428952 +0100
--- /dev/null
+++ b/arch/mips/ar231x/pci.c
@@ -0,0 +1,230 @@
+/*
+ * This program is free software; you can redistribute it and/or
@ -242,11 +238,9 @@ Index: linux-2.6.32.7/arch/mips/ar231x/pci.c
+}
+
+arch_initcall(ar2315_pci_init);
Index: linux-2.6.32.7/arch/mips/ar231x/Kconfig
===================================================================
--- linux-2.6.32.7.orig/arch/mips/ar231x/Kconfig 2010-02-03 17:00:08.814429898 +0100
+++ linux-2.6.32.7/arch/mips/ar231x/Kconfig 2010-02-03 17:00:21.031428952 +0100
@@ -15,3 +15,13 @@
--- a/arch/mips/ar231x/Kconfig
+++ b/arch/mips/ar231x/Kconfig
@@ -15,3 +15,13 @@ config ATHEROS_AR2315
select SYS_SUPPORTS_BIG_ENDIAN
select GENERIC_GPIO
default y
@ -260,11 +254,9 @@ Index: linux-2.6.32.7/arch/mips/ar231x/Kconfig
+ select USB_ARCH_HAS_OHCI
+ select USB_ARCH_HAS_EHCI
+ default y
Index: linux-2.6.32.7/arch/mips/ar231x/ar2315.c
===================================================================
--- linux-2.6.32.7.orig/arch/mips/ar231x/ar2315.c 2010-02-03 17:00:08.818431986 +0100
+++ linux-2.6.32.7/arch/mips/ar231x/ar2315.c 2010-02-03 17:00:21.031428952 +0100
@@ -63,6 +63,27 @@
--- a/arch/mips/ar231x/ar2315.c
+++ b/arch/mips/ar231x/ar2315.c
@@ -63,6 +63,27 @@ static inline void ar2315_gpio_irq(void)
do_IRQ(AR531X_GPIO_IRQ_BASE + bit);
}
@ -292,7 +284,7 @@ Index: linux-2.6.32.7/arch/mips/ar231x/ar2315.c
/*
* Called when an interrupt is received, this function
@@ -81,6 +102,10 @@
@@ -81,6 +102,10 @@ ar2315_irq_dispatch(void)
do_IRQ(AR2315_IRQ_WLAN0_INTRS);
else if (pending & CAUSEF_IP4)
do_IRQ(AR2315_IRQ_ENET0_INTRS);

View File

@ -1,8 +1,6 @@
Index: linux-2.6.32.7/drivers/net/Kconfig
===================================================================
--- linux-2.6.32.7.orig/drivers/net/Kconfig 2010-02-03 16:57:31.714431054 +0100
+++ linux-2.6.32.7/drivers/net/Kconfig 2010-02-03 17:00:35.870429264 +0100
@@ -359,6 +359,12 @@
--- a/drivers/net/Kconfig
+++ b/drivers/net/Kconfig
@@ -359,6 +359,12 @@ config AX88796_93CX6
help
Select this if your platform comes with an external 93CX6 eeprom.
@ -15,11 +13,9 @@ Index: linux-2.6.32.7/drivers/net/Kconfig
config MACE
tristate "MACE (Power Mac ethernet) support"
depends on PPC_PMAC && PPC32
Index: linux-2.6.32.7/drivers/net/Makefile
===================================================================
--- linux-2.6.32.7.orig/drivers/net/Makefile 2010-02-03 16:57:31.714431054 +0100
+++ linux-2.6.32.7/drivers/net/Makefile 2010-02-03 17:00:35.870429264 +0100
@@ -216,6 +216,7 @@
--- a/drivers/net/Makefile
+++ b/drivers/net/Makefile
@@ -216,6 +216,7 @@ obj-$(CONFIG_EQUALIZER) += eql.o
obj-$(CONFIG_KORINA) += korina.o
obj-$(CONFIG_MIPS_JAZZ_SONIC) += jazzsonic.o
obj-$(CONFIG_MIPS_AU1X00_ENET) += au1000_eth.o
@ -27,10 +23,8 @@ Index: linux-2.6.32.7/drivers/net/Makefile
obj-$(CONFIG_MIPS_SIM_NET) += mipsnet.o
obj-$(CONFIG_SGI_IOC3_ETH) += ioc3-eth.o
obj-$(CONFIG_DECLANCE) += declance.o
Index: linux-2.6.32.7/drivers/net/ar231x.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.32.7/drivers/net/ar231x.c 2010-02-03 17:00:35.874430230 +0100
--- /dev/null
+++ b/drivers/net/ar231x.c
@@ -0,0 +1,1263 @@
+/*
+ * ar231x.c: Linux driver for the Atheros AR231x Ethernet device.
@ -1295,10 +1289,8 @@ Index: linux-2.6.32.7/drivers/net/ar231x.c
+ return 0;
+}
+
Index: linux-2.6.32.7/drivers/net/ar231x.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.32.7/drivers/net/ar231x.h 2010-02-03 17:00:35.874430230 +0100
--- /dev/null
+++ b/drivers/net/ar231x.h
@@ -0,0 +1,302 @@
+/*
+ * ar231x.h: Linux driver for the Atheros AR231x Ethernet device.

View File

@ -1,8 +1,6 @@
Index: linux-2.6.32.7/drivers/mtd/devices/Kconfig
===================================================================
--- linux-2.6.32.7.orig/drivers/mtd/devices/Kconfig 2010-01-29 00:06:20.000000000 +0100
+++ linux-2.6.32.7/drivers/mtd/devices/Kconfig 2010-02-03 17:01:08.858429535 +0100
@@ -114,6 +114,10 @@
--- a/drivers/mtd/devices/Kconfig
+++ b/drivers/mtd/devices/Kconfig
@@ -114,6 +114,10 @@ config MTD_SST25L
Set up your spi devices with the right board-specific platform data,
if you want to specify device partitioning.
@ -13,19 +11,15 @@ Index: linux-2.6.32.7/drivers/mtd/devices/Kconfig
config MTD_SLRAM
tristate "Uncached system RAM"
help
Index: linux-2.6.32.7/drivers/mtd/devices/Makefile
===================================================================
--- linux-2.6.32.7.orig/drivers/mtd/devices/Makefile 2010-01-29 00:06:20.000000000 +0100
+++ linux-2.6.32.7/drivers/mtd/devices/Makefile 2010-02-03 17:01:30.282430590 +0100
@@ -17,3 +17,4 @@
--- a/drivers/mtd/devices/Makefile
+++ b/drivers/mtd/devices/Makefile
@@ -17,3 +17,4 @@ obj-$(CONFIG_MTD_BLOCK2MTD) += block2mtd
obj-$(CONFIG_MTD_DATAFLASH) += mtd_dataflash.o
obj-$(CONFIG_MTD_M25P80) += m25p80.o
obj-$(CONFIG_MTD_SST25L) += sst25l.o
+obj-$(CONFIG_MTD_AR2315) += ar2315.o
Index: linux-2.6.32.7/drivers/mtd/devices/ar2315.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.32.7/drivers/mtd/devices/ar2315.c 2010-02-03 17:01:08.858429535 +0100
--- /dev/null
+++ b/drivers/mtd/devices/ar2315.c
@@ -0,0 +1,517 @@
+
+/*
@ -544,10 +538,8 @@ Index: linux-2.6.32.7/drivers/mtd/devices/ar2315.c
+MODULE_AUTHOR("OpenWrt.org, Atheros Communications Inc");
+MODULE_DESCRIPTION("MTD driver for SPI Flash on Atheros SOC");
+
Index: linux-2.6.32.7/arch/mips/include/asm/mach-ar231x/ar2315_spiflash.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.32.7/arch/mips/include/asm/mach-ar231x/ar2315_spiflash.h 2010-02-03 17:01:08.858429535 +0100
--- /dev/null
+++ b/arch/mips/include/asm/mach-ar231x/ar2315_spiflash.h
@@ -0,0 +1,116 @@
+/*
+ * SPI Flash Memory support header file.

View File

@ -1,7 +1,5 @@
Index: linux-2.6.32.7/drivers/watchdog/ar2315-wtd.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.32.7/drivers/watchdog/ar2315-wtd.c 2010-02-03 17:01:46.074429108 +0100
--- /dev/null
+++ b/drivers/watchdog/ar2315-wtd.c
@@ -0,0 +1,200 @@
+/*
+ * This program is free software; you can redistribute it and/or modify
@ -203,11 +201,9 @@ Index: linux-2.6.32.7/drivers/watchdog/ar2315-wtd.c
+
+module_init(init_ar2315_wdt);
+module_exit(exit_ar2315_wdt);
Index: linux-2.6.32.7/drivers/watchdog/Kconfig
===================================================================
--- linux-2.6.32.7.orig/drivers/watchdog/Kconfig 2010-01-29 00:06:20.000000000 +0100
+++ linux-2.6.32.7/drivers/watchdog/Kconfig 2010-02-03 17:01:46.078429135 +0100
@@ -850,6 +850,12 @@
--- a/drivers/watchdog/Kconfig
+++ b/drivers/watchdog/Kconfig
@@ -850,6 +850,12 @@ config TXX9_WDT
help
Hardware driver for the built-in watchdog timer on TXx9 MIPS SoCs.
@ -220,11 +216,9 @@ Index: linux-2.6.32.7/drivers/watchdog/Kconfig
# PARISC Architecture
# POWERPC Architecture
Index: linux-2.6.32.7/drivers/watchdog/Makefile
===================================================================
--- linux-2.6.32.7.orig/drivers/watchdog/Makefile 2010-01-29 00:06:20.000000000 +0100
+++ linux-2.6.32.7/drivers/watchdog/Makefile 2010-02-03 17:01:46.078429135 +0100
@@ -113,6 +113,7 @@
--- a/drivers/watchdog/Makefile
+++ b/drivers/watchdog/Makefile
@@ -113,6 +113,7 @@ obj-$(CONFIG_WDT_RM9K_GPI) += rm9k_wdt.o
obj-$(CONFIG_SIBYTE_WDOG) += sb_wdog.o
obj-$(CONFIG_AR7_WDT) += ar7_wdt.o
obj-$(CONFIG_TXX9_WDT) += txx9wdt.o

View File

@ -1,8 +1,6 @@
Index: linux-2.6.32.7/drivers/mtd/redboot.c
===================================================================
--- linux-2.6.32.7.orig/drivers/mtd/redboot.c 2010-02-03 16:57:31.582429139 +0100
+++ linux-2.6.32.7/drivers/mtd/redboot.c 2010-02-03 17:01:57.067429178 +0100
@@ -60,31 +60,32 @@
--- a/drivers/mtd/redboot.c
+++ b/drivers/mtd/redboot.c
@@ -60,31 +60,32 @@ static int parse_redboot_partitions(stru
static char nullstring[] = "unallocated";
#endif
@ -42,7 +40,7 @@ Index: linux-2.6.32.7/drivers/mtd/redboot.c
printk(KERN_NOTICE "Searching for RedBoot partition table in %s at offset 0x%lx\n",
master->name, offset);
@@ -156,6 +157,11 @@
@@ -156,6 +157,11 @@ static int parse_redboot_partitions(stru
}
if (i == numslots) {
/* Didn't find it */

View File

@ -0,0 +1,72 @@
--- a/drivers/mtd/redboot.c
+++ b/drivers/mtd/redboot.c
@@ -39,6 +39,22 @@ static inline int redboot_checksum(struc
return 1;
}
+static uint32_t mtd_get_offset_erasesize(struct mtd_info *mtd, uint64_t offset)
+{
+ struct mtd_erase_region_info *regions = mtd->eraseregions;
+ int i;
+
+ for (i = 0; i < mtd->numeraseregions; i++) {
+ if (regions[i].offset +
+ regions[i].numblocks * regions[i].erasesize <= offset)
+ continue;
+
+ return regions[i].erasesize;
+ }
+
+ return mtd->erasesize;
+}
+
static int parse_redboot_partitions(struct mtd_info *master,
struct mtd_partition **pparts,
unsigned long fis_origin)
@@ -55,6 +71,7 @@ static int parse_redboot_partitions(stru
int namelen = 0;
int nulllen = 0;
int numslots;
+ int first_slot;
unsigned long offset;
#ifdef CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED
static char nullstring[] = "unallocated";
@@ -168,7 +185,10 @@ static int parse_redboot_partitions(stru
goto out;
}
- for (i = 0; i < numslots; i++) {
+ first_slot = (buf[i].flash_base & (master->erasesize - 1)) /
+ sizeof(struct fis_image_desc);
+
+ for (i = first_slot; i < first_slot + numslots; i++) {
struct fis_list *new_fl, **prev;
if (buf[i].name[0] == 0xff) {
@@ -244,12 +264,13 @@ static int parse_redboot_partitions(stru
}
#endif
for ( ; i<nrparts; i++) {
- if(max_offset < buf[i].flash_base + buf[i].size)
- max_offset = buf[i].flash_base + buf[i].size;
parts[i].size = fl->img->size;
parts[i].offset = fl->img->flash_base;
parts[i].name = names;
+ if (max_offset < parts[i].offset + parts[i].size)
+ max_offset = parts[i].offset + parts[i].size;
+
strcpy(names, fl->img->name);
#ifdef CONFIG_MTD_REDBOOT_PARTS_READONLY
if (!memcmp(names, "RedBoot", 8) ||
@@ -279,7 +300,9 @@ static int parse_redboot_partitions(stru
fl = fl->next;
kfree(tmp_fl);
}
- if(master->size - max_offset >= master->erasesize)
+
+ if (master->size - max_offset >=
+ mtd_get_offset_erasesize(master, max_offset))
{
parts[nrparts].size = master->size - max_offset;
parts[nrparts].offset = max_offset;

View File

@ -1,8 +1,6 @@
Index: linux-2.6.32.7/drivers/net/ar231x.c
===================================================================
--- linux-2.6.32.7.orig/drivers/net/ar231x.c 2010-02-03 17:00:35.874430230 +0100
+++ linux-2.6.32.7/drivers/net/ar231x.c 2010-02-03 17:02:28.998430523 +0100
@@ -735,6 +735,7 @@
--- a/drivers/net/ar231x.c
+++ b/drivers/net/ar231x.c
@@ -735,6 +735,7 @@ static void ar231x_load_rx_ring(struct n
for (i = 0; i < nr_bufs; i++) {
struct sk_buff *skb;
ar231x_descr_t *rd;
@ -10,7 +8,7 @@ Index: linux-2.6.32.7/drivers/net/ar231x.c
if (sp->rx_skb[idx])
break;
@@ -750,7 +751,9 @@
@@ -750,7 +751,9 @@ static void ar231x_load_rx_ring(struct n
* Make sure IP header starts on a fresh cache line.
*/
skb->dev = dev;
@ -21,7 +19,7 @@ Index: linux-2.6.32.7/drivers/net/ar231x.c
sp->rx_skb[idx] = skb;
rd = (ar231x_descr_t *) & sp->rx_ring[idx];
@@ -824,20 +827,23 @@
@@ -824,20 +827,23 @@ static int ar231x_rx_int(struct net_devi
/* alloc new buffer. */
skb_new = netdev_alloc_skb(dev, AR2313_BUFSIZE + RX_OFFSET);
if (skb_new != NULL) {
@ -50,7 +48,7 @@ Index: linux-2.6.32.7/drivers/net/ar231x.c
/* reset descriptor's curr_addr */
rxdesc->addr = virt_to_phys(skb_new->data);
@@ -1239,6 +1245,8 @@
@@ -1239,6 +1245,8 @@ static int ar231x_mdiobus_probe (struct
return PTR_ERR(phydev);
}
@ -59,11 +57,9 @@ Index: linux-2.6.32.7/drivers/net/ar231x.c
/* mask with MAC supported features */
phydev->supported &= (SUPPORTED_10baseT_Half
| SUPPORTED_10baseT_Full
Index: linux-2.6.32.7/drivers/net/ar231x.h
===================================================================
--- linux-2.6.32.7.orig/drivers/net/ar231x.h 2010-02-03 17:00:35.874430230 +0100
+++ linux-2.6.32.7/drivers/net/ar231x.h 2010-02-03 17:02:28.998430523 +0100
@@ -221,6 +221,8 @@
--- a/drivers/net/ar231x.h
+++ b/drivers/net/ar231x.h
@@ -221,6 +221,8 @@ typedef struct {
*/
struct ar231x_private {
struct net_device *dev;

View File

@ -1,20 +1,16 @@
Index: linux-2.6.32.7/arch/mips/ar231x/Makefile
===================================================================
--- linux-2.6.32.7.orig/arch/mips/ar231x/Makefile 2010-02-03 17:00:21.031428952 +0100
+++ linux-2.6.32.7/arch/mips/ar231x/Makefile 2010-02-03 17:02:36.795429223 +0100
--- a/arch/mips/ar231x/Makefile
+++ b/arch/mips/ar231x/Makefile
@@ -8,7 +8,7 @@
# Copyright (C) 2006-2009 Felix Fietkau <nbd@openwrt.org>
#
-obj-y += board.o prom.o devices.o
+obj-y += board.o prom.o devices.o reset.o
obj-$(CONFIG_ATHEROS_AR5312) += ar5312.o
obj-$(CONFIG_ATHEROS_AR2315) += ar2315.o
obj-$(CONFIG_ATHEROS_AR2315_PCI) += pci.o
Index: linux-2.6.32.7/arch/mips/ar231x/reset.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.32.7/arch/mips/ar231x/reset.c 2010-02-03 17:02:36.795429223 +0100
obj-$(CONFIG_EARLY_PRINTK) += early_printk.o
--- /dev/null
+++ b/arch/mips/ar231x/reset.c
@@ -0,0 +1,160 @@
+#include <linux/init.h>
+#include <linux/module.h>

View File

@ -1,8 +1,6 @@
Index: linux-2.6.32.7/drivers/net/ar231x.c
===================================================================
--- linux-2.6.32.7.orig/drivers/net/ar231x.c 2010-02-03 17:02:28.998430523 +0100
+++ linux-2.6.32.7/drivers/net/ar231x.c 2010-02-03 17:03:01.346429245 +0100
@@ -148,6 +148,7 @@
--- a/drivers/net/ar231x.c
+++ b/drivers/net/ar231x.c
@@ -148,6 +148,7 @@ static int ar231x_mdiobus_write(struct m
static int ar231x_mdiobus_reset(struct mii_bus *bus);
static int ar231x_mdiobus_probe (struct net_device *dev);
static void ar231x_adjust_link(struct net_device *dev);
@ -10,7 +8,7 @@ Index: linux-2.6.32.7/drivers/net/ar231x.c
#ifndef ERR
#define ERR(fmt, args...) printk("%s: " fmt, __func__, ##args)
@@ -278,6 +279,21 @@
@@ -278,6 +279,21 @@ int __init ar231x_probe(struct platform_
mdiobus_register(sp->mii_bus);
@ -32,7 +30,7 @@ Index: linux-2.6.32.7/drivers/net/ar231x.c
if (ar231x_mdiobus_probe(dev) != 0) {
printk(KERN_ERR "%s: mdiobus_probe failed\n", dev->name);
rx_tasklet_cleanup(dev);
@@ -334,8 +350,10 @@
@@ -334,8 +350,10 @@ static int __exit ar231x_remove(struct p
rx_tasklet_cleanup(dev);
ar231x_init_cleanup(dev);
unregister_netdev(dev);
@ -45,7 +43,7 @@ Index: linux-2.6.32.7/drivers/net/ar231x.c
kfree(dev);
return 0;
}
@@ -836,7 +854,12 @@
@@ -836,7 +854,12 @@ static int ar231x_rx_int(struct net_devi
dev->stats.rx_bytes += skb->len;
/* pass the packet to upper layers */
@ -59,7 +57,7 @@ Index: linux-2.6.32.7/drivers/net/ar231x.c
skb_new->dev = dev;
/* 16 bit align */
@@ -1123,6 +1146,9 @@
@@ -1123,6 +1146,9 @@ static int ar231x_ioctl(struct net_devic
struct ar231x_private *sp = netdev_priv(dev);
int ret;

View File

@ -1,8 +1,6 @@
Index: linux-2.6.33/arch/mips/Kconfig
===================================================================
--- linux-2.6.33.orig/arch/mips/Kconfig 2010-03-03 12:20:01.790293217 +0100
+++ linux-2.6.33/arch/mips/Kconfig 2010-03-03 12:20:05.554288074 +0100
@@ -84,6 +84,19 @@
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -84,6 +84,19 @@ config BCM63XX
help
Support for BCM63XX based boards
@ -22,7 +20,7 @@ Index: linux-2.6.33/arch/mips/Kconfig
config MIPS_COBALT
bool "Cobalt Server"
select CEVT_R4K
@@ -681,6 +694,7 @@
@@ -681,6 +694,7 @@ config CAVIUM_OCTEON_REFERENCE_BOARD
endchoice
@ -30,11 +28,9 @@ Index: linux-2.6.33/arch/mips/Kconfig
source "arch/mips/alchemy/Kconfig"
source "arch/mips/bcm63xx/Kconfig"
source "arch/mips/jazz/Kconfig"
Index: linux-2.6.33/arch/mips/Makefile
===================================================================
--- linux-2.6.33.orig/arch/mips/Makefile 2010-03-03 12:20:01.742287339 +0100
+++ linux-2.6.33/arch/mips/Makefile 2010-03-03 12:20:05.554288074 +0100
@@ -308,6 +308,13 @@
--- a/arch/mips/Makefile
+++ b/arch/mips/Makefile
@@ -310,6 +310,13 @@ cflags-$(CONFIG_SOC_AU1X00) += -I$(srctr
#
@ -48,10 +44,8 @@ Index: linux-2.6.33/arch/mips/Makefile
# Cobalt Server
#
core-$(CONFIG_MIPS_COBALT) += arch/mips/cobalt/
Index: linux-2.6.33/arch/mips/ar231x/Kconfig
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.33/arch/mips/ar231x/Kconfig 2010-03-03 12:20:05.554288074 +0100
--- /dev/null
+++ b/arch/mips/ar231x/Kconfig
@@ -0,0 +1,17 @@
+config ATHEROS_AR5312
+ bool "Atheros 5312/2312+ support"
@ -70,10 +64,8 @@ Index: linux-2.6.33/arch/mips/ar231x/Kconfig
+ select SYS_SUPPORTS_BIG_ENDIAN
+ select GENERIC_GPIO
+ default y
Index: linux-2.6.33/arch/mips/ar231x/Makefile
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.33/arch/mips/ar231x/Makefile 2010-03-03 12:20:05.554288074 +0100
--- /dev/null
+++ b/arch/mips/ar231x/Makefile
@@ -0,0 +1,13 @@
+#
+# This file is subject to the terms and conditions of the GNU General Public
@ -88,10 +80,8 @@ Index: linux-2.6.33/arch/mips/ar231x/Makefile
+obj-y += board.o prom.o devices.o
+obj-$(CONFIG_ATHEROS_AR5312) += ar5312.o
+obj-$(CONFIG_ATHEROS_AR2315) += ar2315.o
Index: linux-2.6.33/arch/mips/ar231x/board.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.33/arch/mips/ar231x/board.c 2010-03-03 12:20:22.306286892 +0100
--- /dev/null
+++ b/arch/mips/ar231x/board.c
@@ -0,0 +1,251 @@
+/*
+ * This file is subject to the terms and conditions of the GNU General Public
@ -344,10 +334,8 @@ Index: linux-2.6.33/arch/mips/ar231x/board.c
+}
+
+
Index: linux-2.6.33/arch/mips/ar231x/prom.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.33/arch/mips/ar231x/prom.c 2010-03-03 12:20:05.554288074 +0100
--- /dev/null
+++ b/arch/mips/ar231x/prom.c
@@ -0,0 +1,37 @@
+/*
+ * This file is subject to the terms and conditions of the GNU General Public
@ -386,10 +374,8 @@ Index: linux-2.6.33/arch/mips/ar231x/prom.c
+void __init prom_free_prom_memory(void)
+{
+}
Index: linux-2.6.33/arch/mips/include/asm/mach-ar231x/ar231x_platform.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.33/arch/mips/include/asm/mach-ar231x/ar231x_platform.h 2010-03-03 12:20:05.554288074 +0100
--- /dev/null
+++ b/arch/mips/include/asm/mach-ar231x/ar231x_platform.h
@@ -0,0 +1,83 @@
+#ifndef __AR531X_PLATFORM_H
+#define __AR531X_PLATFORM_H
@ -474,10 +460,8 @@ Index: linux-2.6.33/arch/mips/include/asm/mach-ar231x/ar231x_platform.h
+};
+
+#endif /* __AR531X_PLATFORM_H */
Index: linux-2.6.33/arch/mips/include/asm/mach-ar231x/cpu-feature-overrides.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.33/arch/mips/include/asm/mach-ar231x/cpu-feature-overrides.h 2010-03-03 12:20:05.554288074 +0100
--- /dev/null
+++ b/arch/mips/include/asm/mach-ar231x/cpu-feature-overrides.h
@@ -0,0 +1,84 @@
+/*
+ * Atheros SoC specific CPU feature overrides
@ -563,10 +547,8 @@ Index: linux-2.6.33/arch/mips/include/asm/mach-ar231x/cpu-feature-overrides.h
+/* #define cpu_icache_line_size() ? */
+
+#endif /* __ASM_MACH_ATHEROS_CPU_FEATURE_OVERRIDES_H */
Index: linux-2.6.33/arch/mips/include/asm/mach-ar231x/dma-coherence.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.33/arch/mips/include/asm/mach-ar231x/dma-coherence.h 2010-03-03 12:20:05.554288074 +0100
--- /dev/null
+++ b/arch/mips/include/asm/mach-ar231x/dma-coherence.h
@@ -0,0 +1,64 @@
+/*
+ * This file is subject to the terms and conditions of the GNU General Public
@ -632,10 +614,8 @@ Index: linux-2.6.33/arch/mips/include/asm/mach-ar231x/dma-coherence.h
+}
+
+#endif /* __ASM_MACH_GENERIC_DMA_COHERENCE_H */
Index: linux-2.6.33/arch/mips/include/asm/mach-ar231x/gpio.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.33/arch/mips/include/asm/mach-ar231x/gpio.h 2010-03-03 12:20:05.554288074 +0100
--- /dev/null
+++ b/arch/mips/include/asm/mach-ar231x/gpio.h
@@ -0,0 +1,79 @@
+#ifndef _ATHEROS_GPIO_H_
+#define _ATHEROS_GPIO_H_
@ -716,10 +696,8 @@ Index: linux-2.6.33/arch/mips/include/asm/mach-ar231x/gpio.h
+#include <asm-generic/gpio.h> /* cansleep wrappers */
+
+#endif
Index: linux-2.6.33/arch/mips/include/asm/mach-ar231x/reset.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.33/arch/mips/include/asm/mach-ar231x/reset.h 2010-03-03 12:20:05.554288074 +0100
--- /dev/null
+++ b/arch/mips/include/asm/mach-ar231x/reset.h
@@ -0,0 +1,6 @@
+#ifndef __AR531X_RESET_H
+#define __AR531X_RESET_H
@ -727,10 +705,8 @@ Index: linux-2.6.33/arch/mips/include/asm/mach-ar231x/reset.h
+void ar531x_disable_reset_button(void);
+
+#endif /* __AR531X_RESET_H */
Index: linux-2.6.33/arch/mips/include/asm/mach-ar231x/war.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.33/arch/mips/include/asm/mach-ar231x/war.h 2010-03-03 12:20:05.558287696 +0100
--- /dev/null
+++ b/arch/mips/include/asm/mach-ar231x/war.h
@@ -0,0 +1,25 @@
+/*
+ * This file is subject to the terms and conditions of the GNU General Public
@ -757,10 +733,8 @@ Index: linux-2.6.33/arch/mips/include/asm/mach-ar231x/war.h
+#define MIPS34K_MISSED_ITLB_WAR 0
+
+#endif /* __ASM_MIPS_MACH_ATHEROS_WAR_H */
Index: linux-2.6.33/arch/mips/include/asm/mach-ar231x/ar2315_regs.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.33/arch/mips/include/asm/mach-ar231x/ar2315_regs.h 2010-03-03 12:20:05.558287696 +0100
--- /dev/null
+++ b/arch/mips/include/asm/mach-ar231x/ar2315_regs.h
@@ -0,0 +1,580 @@
+/*
+ * Register definitions for AR2315+
@ -1342,10 +1316,8 @@ Index: linux-2.6.33/arch/mips/include/asm/mach-ar231x/ar2315_regs.h
+#define PCI_DEVICE_MEM_SPACE 0x800000
+
+#endif /* __AR2315_REG_H */
Index: linux-2.6.33/arch/mips/include/asm/mach-ar231x/ar5312_regs.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.33/arch/mips/include/asm/mach-ar231x/ar5312_regs.h 2010-03-03 12:20:05.558287696 +0100
--- /dev/null
+++ b/arch/mips/include/asm/mach-ar231x/ar5312_regs.h
@@ -0,0 +1,236 @@
+/*
+ * This file is subject to the terms and conditions of the GNU General Public
@ -1583,10 +1555,8 @@ Index: linux-2.6.33/arch/mips/include/asm/mach-ar231x/ar5312_regs.h
+
+#endif
+
Index: linux-2.6.33/arch/mips/ar231x/ar5312.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.33/arch/mips/ar231x/ar5312.c 2010-03-03 12:20:05.558287696 +0100
--- /dev/null
+++ b/arch/mips/ar231x/ar5312.c
@@ -0,0 +1,547 @@
+/*
+ * This file is subject to the terms and conditions of the GNU General Public
@ -2135,10 +2105,8 @@ Index: linux-2.6.33/arch/mips/ar231x/ar5312.c
+ ar231x_serial_setup(KSEG1ADDR(AR531X_UART0), ar5312_sys_frequency());
+}
+
Index: linux-2.6.33/arch/mips/ar231x/ar2315.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.33/arch/mips/ar231x/ar2315.c 2010-03-03 12:20:05.558287696 +0100
--- /dev/null
+++ b/arch/mips/ar231x/ar2315.c
@@ -0,0 +1,658 @@
+/*
+ * This file is subject to the terms and conditions of the GNU General Public
@ -2798,10 +2766,8 @@ Index: linux-2.6.33/arch/mips/ar231x/ar2315.c
+ _machine_restart = ar2315_restart;
+ ar231x_serial_setup(KSEG1ADDR(AR2315_UART0), ar2315_apb_frequency());
+}
Index: linux-2.6.33/arch/mips/ar231x/ar2315.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.33/arch/mips/ar231x/ar2315.h 2010-03-03 12:20:05.558287696 +0100
--- /dev/null
+++ b/arch/mips/ar231x/ar2315.h
@@ -0,0 +1,37 @@
+#ifndef __AR2315_H
+#define __AR2315_H
@ -2840,10 +2806,8 @@ Index: linux-2.6.33/arch/mips/ar231x/ar2315.h
+#endif
+
+#endif
Index: linux-2.6.33/arch/mips/ar231x/ar5312.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.33/arch/mips/ar231x/ar5312.h 2010-03-03 12:20:05.558287696 +0100
--- /dev/null
+++ b/arch/mips/ar231x/ar5312.h
@@ -0,0 +1,38 @@
+#ifndef __AR5312_H
+#define __AR5312_H
@ -2883,10 +2847,8 @@ Index: linux-2.6.33/arch/mips/ar231x/ar5312.h
+#endif
+
+#endif
Index: linux-2.6.33/arch/mips/include/asm/mach-ar231x/ar231x.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.33/arch/mips/include/asm/mach-ar231x/ar231x.h 2010-03-03 12:20:05.558287696 +0100
--- /dev/null
+++ b/arch/mips/include/asm/mach-ar231x/ar231x.h
@@ -0,0 +1,54 @@
+#ifndef __AR531X_H
+#define __AR531X_H
@ -2942,10 +2904,8 @@ Index: linux-2.6.33/arch/mips/include/asm/mach-ar231x/ar231x.h
+}
+
+#endif
Index: linux-2.6.33/arch/mips/ar231x/devices.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.33/arch/mips/ar231x/devices.h 2010-03-03 12:20:05.558287696 +0100
--- /dev/null
+++ b/arch/mips/ar231x/devices.h
@@ -0,0 +1,37 @@
+#ifndef __AR231X_DEVICES_H
+#define __AR231X_DEVICES_H
@ -2984,10 +2944,8 @@ Index: linux-2.6.33/arch/mips/ar231x/devices.h
+}
+
+#endif
Index: linux-2.6.33/arch/mips/ar231x/devices.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.33/arch/mips/ar231x/devices.c 2010-03-03 12:20:05.558287696 +0100
--- /dev/null
+++ b/arch/mips/ar231x/devices.c
@@ -0,0 +1,175 @@
+#include <linux/kernel.h>
+#include <linux/init.h>

View File

@ -0,0 +1,68 @@
--- /dev/null
+++ b/arch/mips/ar231x/early_printk.c
@@ -0,0 +1,44 @@
+/*
+ * 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.
+ *
+ * Copyright (C) 2010 Gabor Juhos <juhosg@openwrt.org>
+ */
+
+#include <linux/mm.h>
+#include <linux/io.h>
+#include <linux/serial_reg.h>
+#include <asm/addrspace.h>
+
+#include <asm/mach-ar231x/ar2315_regs.h>
+#include <asm/mach-ar231x/ar5312_regs.h>
+#include "devices.h"
+
+static inline void prom_uart_wr(void __iomem *base, unsigned reg,
+ unsigned char ch)
+{
+ __raw_writeb(ch, base + 4 * reg);
+}
+
+static inline unsigned char prom_uart_rr(void __iomem *base, unsigned reg)
+{
+ return __raw_readb(base + 4 * reg);
+}
+
+void prom_putchar(unsigned char ch)
+{
+ static void __iomem *base;
+
+ if (unlikely(base == NULL)) {
+ if (is_2315())
+ base = (void __iomem *)(KSEG1ADDR(AR2315_UART0));
+ else
+ base = (void __iomem *)(KSEG1ADDR(AR531X_UART0));
+ }
+
+ while ((prom_uart_rr(base, UART_LSR) & UART_LSR_THRE) == 0);
+ prom_uart_wr(base, UART_TX, ch);
+ while ((prom_uart_rr(base, UART_LSR) & UART_LSR_THRE) == 0);
+}
+
--- a/arch/mips/ar231x/Makefile
+++ b/arch/mips/ar231x/Makefile
@@ -9,5 +9,8 @@
#
obj-y += board.o prom.o devices.o
+
+obj-$(CONFIG_EARLY_PRINTK) += early_printk.o
+
obj-$(CONFIG_ATHEROS_AR5312) += ar5312.o
obj-$(CONFIG_ATHEROS_AR2315) += ar2315.o
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -94,6 +94,7 @@ config ATHEROS_AR231X
select SYS_SUPPORTS_BIG_ENDIAN
select SYS_SUPPORTS_32BIT_KERNEL
select GENERIC_GPIO
+ select SYS_HAS_EARLY_PRINTK
help
Support for AR231x and AR531x based boards

View File

@ -1,7 +1,7 @@
--- a/arch/mips/ar231x/Makefile
+++ b/arch/mips/ar231x/Makefile
@@ -11,3 +11,4 @@
obj-y += board.o prom.o devices.o
@@ -14,3 +14,4 @@ obj-$(CONFIG_EARLY_PRINTK) += early_prin
obj-$(CONFIG_ATHEROS_AR5312) += ar5312.o
obj-$(CONFIG_ATHEROS_AR2315) += ar2315.o
+obj-$(CONFIG_ATHEROS_AR2315_PCI) += pci.o

View File

@ -0,0 +1,72 @@
--- a/drivers/mtd/redboot.c
+++ b/drivers/mtd/redboot.c
@@ -39,6 +39,22 @@ static inline int redboot_checksum(struc
return 1;
}
+static uint32_t mtd_get_offset_erasesize(struct mtd_info *mtd, uint64_t offset)
+{
+ struct mtd_erase_region_info *regions = mtd->eraseregions;
+ int i;
+
+ for (i = 0; i < mtd->numeraseregions; i++) {
+ if (regions[i].offset +
+ regions[i].numblocks * regions[i].erasesize <= offset)
+ continue;
+
+ return regions[i].erasesize;
+ }
+
+ return mtd->erasesize;
+}
+
static int parse_redboot_partitions(struct mtd_info *master,
struct mtd_partition **pparts,
unsigned long fis_origin)
@@ -55,6 +71,7 @@ static int parse_redboot_partitions(stru
int namelen = 0;
int nulllen = 0;
int numslots;
+ int first_slot;
unsigned long offset;
#ifdef CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED
static char nullstring[] = "unallocated";
@@ -168,7 +185,10 @@ static int parse_redboot_partitions(stru
goto out;
}
- for (i = 0; i < numslots; i++) {
+ first_slot = (buf[i].flash_base & (master->erasesize - 1)) /
+ sizeof(struct fis_image_desc);
+
+ for (i = first_slot; i < first_slot + numslots; i++) {
struct fis_list *new_fl, **prev;
if (buf[i].name[0] == 0xff) {
@@ -244,12 +264,13 @@ static int parse_redboot_partitions(stru
}
#endif
for ( ; i<nrparts; i++) {
- if(max_offset < buf[i].flash_base + buf[i].size)
- max_offset = buf[i].flash_base + buf[i].size;
parts[i].size = fl->img->size;
parts[i].offset = fl->img->flash_base;
parts[i].name = names;
+ if (max_offset < parts[i].offset + parts[i].size)
+ max_offset = parts[i].offset + parts[i].size;
+
strcpy(names, fl->img->name);
#ifdef CONFIG_MTD_REDBOOT_PARTS_READONLY
if (!memcmp(names, "RedBoot", 8) ||
@@ -279,7 +300,9 @@ static int parse_redboot_partitions(stru
fl = fl->next;
kfree(tmp_fl);
}
- if(master->size - max_offset >= master->erasesize)
+
+ if (master->size - max_offset >=
+ mtd_get_offset_erasesize(master, max_offset))
{
parts[nrparts].size = master->size - max_offset;
parts[nrparts].offset = max_offset;

View File

@ -6,9 +6,9 @@
-obj-y += board.o prom.o devices.o
+obj-y += board.o prom.o devices.o reset.o
obj-$(CONFIG_ATHEROS_AR5312) += ar5312.o
obj-$(CONFIG_ATHEROS_AR2315) += ar2315.o
obj-$(CONFIG_ATHEROS_AR2315_PCI) += pci.o
obj-$(CONFIG_EARLY_PRINTK) += early_printk.o
--- /dev/null
+++ b/arch/mips/ar231x/reset.c
@@ -0,0 +1,160 @@

View File

@ -1,6 +1,6 @@
BOARDNAME:=Au1500
DEFAULT_PACKAGES+= hostapd-mini
DEFAULT_PACKAGES+= wpad-mini
define Target/Description
Build firmware images for Au1500 based boards

View File

@ -1,6 +1,6 @@
BOARDNAME:=Au1550
DEFAULT_PACKAGES+= hostapd-mini
DEFAULT_PACKAGES+= wpad-mini
define Target/Description
Build firmware images for Au1550 based boards

View File

@ -0,0 +1,53 @@
Index: linux-2.6.33/drivers/ssb/driver_pcicore.c
===================================================================
--- linux-2.6.33.orig/drivers/ssb/driver_pcicore.c 2010-03-15 14:52:55.000000000 +0100
+++ linux-2.6.33/drivers/ssb/driver_pcicore.c 2010-03-15 15:57:38.000000000 +0100
@@ -246,20 +246,12 @@
.pci_ops = &ssb_pcicore_pciops,
.io_resource = &ssb_pcicore_io_resource,
.mem_resource = &ssb_pcicore_mem_resource,
- .mem_offset = 0x24000000,
};
-static u32 ssb_pcicore_pcibus_iobase = 0x100;
-static u32 ssb_pcicore_pcibus_membase = SSB_PCI_DMA;
-
/* This function is called when doing a pci_enable_device().
* We must first check if the device is a device on the PCI-core bridge. */
int ssb_pcicore_plat_dev_init(struct pci_dev *d)
{
- struct resource *res;
- int pos, size;
- u32 *base;
-
if (d->bus->ops != &ssb_pcicore_pciops) {
/* This is not a device on the PCI-core bridge. */
return -ENODEV;
@@ -268,27 +260,6 @@
ssb_printk(KERN_INFO "PCI: Fixing up device %s\n",
pci_name(d));
- /* Fix up resource bases */
- for (pos = 0; pos < 6; pos++) {
- res = &d->resource[pos];
- if (res->flags & IORESOURCE_IO)
- base = &ssb_pcicore_pcibus_iobase;
- else
- base = &ssb_pcicore_pcibus_membase;
- res->flags |= IORESOURCE_PCI_FIXED;
- if (res->end) {
- size = res->end - res->start + 1;
- if (*base & (size - 1))
- *base = (*base + size) & ~(size - 1);
- res->start = *base;
- res->end = res->start + size - 1;
- *base += size;
- pci_write_config_dword(d, PCI_BASE_ADDRESS_0 + (pos << 2), res->start);
- }
- /* Fix up PCI bridge BAR0 only */
- if (d->bus->number == 0 && PCI_SLOT(d->devfn) == 0)
- break;
- }
/* Fix up interrupt lines */
d->irq = ssb_mips_irq(extpci_core->dev) + 2;
pci_write_config_byte(d, PCI_INTERRUPT_LINE, d->irq);

View File

@ -0,0 +1,48 @@
Index: linux-2.6.32.9/drivers/pcmcia/yenta_socket.c
===================================================================
--- linux-2.6.32.9.orig/drivers/pcmcia/yenta_socket.c 2010-03-12 09:43:45.000000000 +0100
+++ linux-2.6.32.9/drivers/pcmcia/yenta_socket.c 2010-03-12 10:05:33.000000000 +0100
@@ -866,6 +866,8 @@
* Probe for usable interrupts using the force
* register to generate bogus card status events.
*/
+#ifndef CONFIG_BCM47XX
+ /* WRT54G3G does not like this */
cb_writel(socket, CB_SOCKET_EVENT, -1);
cb_writel(socket, CB_SOCKET_MASK, CB_CSTSMASK);
exca_writeb(socket, I365_CSCINT, 0);
@@ -880,6 +882,7 @@
}
cb_writel(socket, CB_SOCKET_MASK, 0);
exca_writeb(socket, I365_CSCINT, 0);
+#endif
mask = probe_irq_mask(val) & 0xffff;
@@ -960,6 +963,10 @@
else
socket->socket.irq_mask = 0;
+ /* irq mask probing is broken for the WRT54G3G */
+ if (socket->socket.irq_mask == 0)
+ socket->socket.irq_mask = 0x6f8;
+
dev_printk(KERN_INFO, &socket->dev->dev,
"ISA IRQ mask 0x%04x, PCI irq %d\n",
socket->socket.irq_mask, socket->cb_irq);
@@ -1198,6 +1205,15 @@
dev_printk(KERN_INFO, &dev->dev,
"Socket status: %08x\n", cb_readl(socket, CB_SOCKET_STATE));
+ /* Generate an interrupt on card insert/remove */
+ config_writew(socket, CB_SOCKET_MASK, CB_CSTSMASK | CB_CDMASK);
+
+ /* Set up Multifunction Routing Status Register */
+ config_writew(socket, 0x8C, 0x1000 /* MFUNC3 to GPIO3 */ | 0x2 /* MFUNC0 to INTA */);
+
+ /* Switch interrupts to parallelized */
+ config_writeb(socket, 0x92, 0x64);
+
yenta_fixup_parent_bridge(dev->subordinate);
/* Register it with the pcmcia layer.. */

View File

@ -0,0 +1,53 @@
Index: linux-2.6.33/drivers/ssb/driver_pcicore.c
===================================================================
--- linux-2.6.33.orig/drivers/ssb/driver_pcicore.c 2010-03-15 14:52:55.000000000 +0100
+++ linux-2.6.33/drivers/ssb/driver_pcicore.c 2010-03-15 15:57:38.000000000 +0100
@@ -246,20 +246,12 @@
.pci_ops = &ssb_pcicore_pciops,
.io_resource = &ssb_pcicore_io_resource,
.mem_resource = &ssb_pcicore_mem_resource,
- .mem_offset = 0x24000000,
};
-static u32 ssb_pcicore_pcibus_iobase = 0x100;
-static u32 ssb_pcicore_pcibus_membase = SSB_PCI_DMA;
-
/* This function is called when doing a pci_enable_device().
* We must first check if the device is a device on the PCI-core bridge. */
int ssb_pcicore_plat_dev_init(struct pci_dev *d)
{
- struct resource *res;
- int pos, size;
- u32 *base;
-
if (d->bus->ops != &ssb_pcicore_pciops) {
/* This is not a device on the PCI-core bridge. */
return -ENODEV;
@@ -268,27 +260,6 @@
ssb_printk(KERN_INFO "PCI: Fixing up device %s\n",
pci_name(d));
- /* Fix up resource bases */
- for (pos = 0; pos < 6; pos++) {
- res = &d->resource[pos];
- if (res->flags & IORESOURCE_IO)
- base = &ssb_pcicore_pcibus_iobase;
- else
- base = &ssb_pcicore_pcibus_membase;
- res->flags |= IORESOURCE_PCI_FIXED;
- if (res->end) {
- size = res->end - res->start + 1;
- if (*base & (size - 1))
- *base = (*base + size) & ~(size - 1);
- res->start = *base;
- res->end = res->start + size - 1;
- *base += size;
- pci_write_config_dword(d, PCI_BASE_ADDRESS_0 + (pos << 2), res->start);
- }
- /* Fix up PCI bridge BAR0 only */
- if (d->bus->number == 0 && PCI_SLOT(d->devfn) == 0)
- break;
- }
/* Fix up interrupt lines */
d->irq = ssb_mips_irq(extpci_core->dev) + 2;
pci_write_config_byte(d, PCI_INTERRUPT_LINE, d->irq);

View File

@ -0,0 +1,48 @@
Index: linux-2.6.32.9/drivers/pcmcia/yenta_socket.c
===================================================================
--- linux-2.6.32.9.orig/drivers/pcmcia/yenta_socket.c 2010-03-12 09:43:45.000000000 +0100
+++ linux-2.6.32.9/drivers/pcmcia/yenta_socket.c 2010-03-12 10:05:33.000000000 +0100
@@ -866,6 +866,8 @@
* Probe for usable interrupts using the force
* register to generate bogus card status events.
*/
+#ifndef CONFIG_BCM47XX
+ /* WRT54G3G does not like this */
cb_writel(socket, CB_SOCKET_EVENT, -1);
cb_writel(socket, CB_SOCKET_MASK, CB_CSTSMASK);
exca_writeb(socket, I365_CSCINT, 0);
@@ -880,6 +882,7 @@
}
cb_writel(socket, CB_SOCKET_MASK, 0);
exca_writeb(socket, I365_CSCINT, 0);
+#endif
mask = probe_irq_mask(val) & 0xffff;
@@ -960,6 +963,10 @@
else
socket->socket.irq_mask = 0;
+ /* irq mask probing is broken for the WRT54G3G */
+ if (socket->socket.irq_mask == 0)
+ socket->socket.irq_mask = 0x6f8;
+
dev_printk(KERN_INFO, &socket->dev->dev,
"ISA IRQ mask 0x%04x, PCI irq %d\n",
socket->socket.irq_mask, socket->cb_irq);
@@ -1198,6 +1205,15 @@
dev_printk(KERN_INFO, &dev->dev,
"Socket status: %08x\n", cb_readl(socket, CB_SOCKET_STATE));
+ /* Generate an interrupt on card insert/remove */
+ config_writew(socket, CB_SOCKET_MASK, CB_CSTSMASK | CB_CDMASK);
+
+ /* Set up Multifunction Routing Status Register */
+ config_writew(socket, 0x8C, 0x1000 /* MFUNC3 to GPIO3 */ | 0x2 /* MFUNC0 to INTA */);
+
+ /* Switch interrupts to parallelized */
+ config_writeb(socket, 0x92, 0x64);
+
yenta_fixup_parent_bridge(dev->subordinate);
/* Register it with the pcmcia layer.. */

View File

@ -13,8 +13,6 @@ Signed-off-by: Maxime Bizon <mbizon@freebox.fr>
create mode 100644 arch/mips/bcm63xx/dev-usb-ohci.c
create mode 100644 arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_usb_ohci.h
diff --git a/arch/mips/bcm63xx/Kconfig b/arch/mips/bcm63xx/Kconfig
index fb177d6..76fbbf7 100644
--- a/arch/mips/bcm63xx/Kconfig
+++ b/arch/mips/bcm63xx/Kconfig
@@ -16,10 +16,16 @@ config BCM63XX_CPU_6345
@ -34,8 +32,6 @@ index fb177d6..76fbbf7 100644
endmenu
source "arch/mips/bcm63xx/boards/Kconfig"
diff --git a/arch/mips/bcm63xx/Makefile b/arch/mips/bcm63xx/Makefile
index 00064b6..be5d7ad 100644
--- a/arch/mips/bcm63xx/Makefile
+++ b/arch/mips/bcm63xx/Makefile
@@ -1,5 +1,6 @@
@ -46,8 +42,6 @@ index 00064b6..be5d7ad 100644
obj-$(CONFIG_EARLY_PRINTK) += early_printk.o
obj-y += boards/
diff --git a/arch/mips/bcm63xx/boards/board_bcm963xx.c b/arch/mips/bcm63xx/boards/board_bcm963xx.c
index ea17941..e2c0c36 100644
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
@@ -24,6 +24,7 @@
@ -58,7 +52,7 @@ index ea17941..e2c0c36 100644
#include <board_bcm963xx.h>
#define PFX "board_bcm963xx: "
@@ -803,6 +804,9 @@ int __init board_register_devices(void)
@@ -804,6 +805,9 @@ int __init board_register_devices(void)
!board_get_mac_address(board.enet1.mac_addr))
bcm63xx_enet_register(1, &board.enet1);
@ -68,9 +62,6 @@ index ea17941..e2c0c36 100644
if (board.has_dsp)
bcm63xx_dsp_register(&board.dsp);
diff --git a/arch/mips/bcm63xx/dev-usb-ohci.c b/arch/mips/bcm63xx/dev-usb-ohci.c
new file mode 100644
index 0000000..f1fb442
--- /dev/null
+++ b/arch/mips/bcm63xx/dev-usb-ohci.c
@@ -0,0 +1,49 @@
@ -123,9 +114,6 @@ index 0000000..f1fb442
+ ohci_resources[1].start = bcm63xx_get_irq_number(IRQ_OHCI0);
+ return platform_device_register(&bcm63xx_ohci_device);
+}
diff --git a/arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_usb_ohci.h b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_usb_ohci.h
new file mode 100644
index 0000000..518a04d
--- /dev/null
+++ b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_usb_ohci.h
@@ -0,0 +1,6 @@
@ -135,7 +123,3 @@ index 0000000..518a04d
+int bcm63xx_ohci_register(void);
+
+#endif /* BCM63XX_DEV_USB_OHCI_H_ */
--
1.6.3.3

View File

@ -13,8 +13,6 @@ Signed-off-by: Maxime Bizon <mbizon@freebox.fr>
create mode 100644 arch/mips/bcm63xx/dev-usb-ehci.c
create mode 100644 arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_usb_ehci.h
diff --git a/arch/mips/bcm63xx/Kconfig b/arch/mips/bcm63xx/Kconfig
index 76fbbf7..4aa21e8 100644
--- a/arch/mips/bcm63xx/Kconfig
+++ b/arch/mips/bcm63xx/Kconfig
@@ -26,6 +26,8 @@ config BCM63XX_CPU_6358
@ -26,8 +24,6 @@ index 76fbbf7..4aa21e8 100644
endmenu
source "arch/mips/bcm63xx/boards/Kconfig"
diff --git a/arch/mips/bcm63xx/Makefile b/arch/mips/bcm63xx/Makefile
index be5d7ad..6e229c2 100644
--- a/arch/mips/bcm63xx/Makefile
+++ b/arch/mips/bcm63xx/Makefile
@@ -1,6 +1,6 @@
@ -38,8 +34,6 @@ index be5d7ad..6e229c2 100644
obj-$(CONFIG_EARLY_PRINTK) += early_printk.o
obj-y += boards/
diff --git a/arch/mips/bcm63xx/boards/board_bcm963xx.c b/arch/mips/bcm63xx/boards/board_bcm963xx.c
index e2c0c36..b0d3db3 100644
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
@@ -25,6 +25,7 @@
@ -50,7 +44,7 @@ index e2c0c36..b0d3db3 100644
#include <board_bcm963xx.h>
#define PFX "board_bcm963xx: "
@@ -804,6 +805,9 @@ int __init board_register_devices(void)
@@ -805,6 +806,9 @@ int __init board_register_devices(void)
!board_get_mac_address(board.enet1.mac_addr))
bcm63xx_enet_register(1, &board.enet1);
@ -60,9 +54,6 @@ index e2c0c36..b0d3db3 100644
if (board.has_ohci0)
bcm63xx_ohci_register();
diff --git a/arch/mips/bcm63xx/dev-usb-ehci.c b/arch/mips/bcm63xx/dev-usb-ehci.c
new file mode 100644
index 0000000..4bdd675
--- /dev/null
+++ b/arch/mips/bcm63xx/dev-usb-ehci.c
@@ -0,0 +1,49 @@
@ -115,9 +106,6 @@ index 0000000..4bdd675
+ ehci_resources[1].start = bcm63xx_get_irq_number(IRQ_EHCI0);
+ return platform_device_register(&bcm63xx_ehci_device);
+}
diff --git a/arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_usb_ehci.h b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_usb_ehci.h
new file mode 100644
index 0000000..17fb519
--- /dev/null
+++ b/arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_usb_ehci.h
@@ -0,0 +1,6 @@
@ -127,7 +115,3 @@ index 0000000..17fb519
+int bcm63xx_ehci_register(void);
+
+#endif /* BCM63XX_DEV_USB_EHCI_H_ */
--
1.6.3.3

View File

@ -6,8 +6,6 @@ Signed-off-by: Maxime Bizon <mbizon@freebox.fr>
arch/mips/bcm63xx/gpio.c | 2 --
1 files changed, 0 insertions(+), 2 deletions(-)
diff --git a/arch/mips/bcm63xx/gpio.c b/arch/mips/bcm63xx/gpio.c
index 87ca390..3725345 100644
--- a/arch/mips/bcm63xx/gpio.c
+++ b/arch/mips/bcm63xx/gpio.c
@@ -130,5 +130,3 @@ int __init bcm63xx_gpio_init(void)
@ -16,7 +14,3 @@ index 87ca390..3725345 100644
}
-
-arch_initcall(bcm63xx_gpio_init);
--
1.6.3.3

View File

@ -6,9 +6,6 @@ Signed-off-by: Maxime Bizon <mbizon@freebox.fr>
3 files changed, 172 insertions(+), 1 deletions(-)
create mode 100644 drivers/usb/host/ohci-bcm63xx.c
diff --git a/drivers/usb/host/ohci-bcm63xx.c b/drivers/usb/host/ohci-bcm63xx.c
new file mode 100644
index 0000000..c9bccec
--- /dev/null
+++ b/drivers/usb/host/ohci-bcm63xx.c
@@ -0,0 +1,166 @@
@ -178,8 +175,6 @@ index 0000000..c9bccec
+};
+
+MODULE_ALIAS("platform:bcm63xx_ohci");
diff --git a/drivers/usb/host/ohci-hcd.c b/drivers/usb/host/ohci-hcd.c
index 24eb747..1c82a60 100644
--- a/drivers/usb/host/ohci-hcd.c
+++ b/drivers/usb/host/ohci-hcd.c
@@ -1051,6 +1051,11 @@ MODULE_LICENSE ("GPL");
@ -194,11 +189,9 @@ index 24eb747..1c82a60 100644
#if defined(CONFIG_CPU_SUBTYPE_SH7720) || \
defined(CONFIG_CPU_SUBTYPE_SH7721) || \
defined(CONFIG_CPU_SUBTYPE_SH7763) || \
diff --git a/drivers/usb/host/ohci.h b/drivers/usb/host/ohci.h
index 5bf15fe..3c54d3e 100644
--- a/drivers/usb/host/ohci.h
+++ b/drivers/usb/host/ohci.h
@@ -655,7 +655,7 @@ static inline u32 hc32_to_cpup (const struct ohci_hcd *ohci, const __hc32 *x)
@@ -655,7 +655,7 @@ static inline u32 hc32_to_cpup (const st
* some big-endian SOC implementations. Same thing happens with PSW access.
*/
@ -207,7 +200,3 @@ index 5bf15fe..3c54d3e 100644
#define big_endian_frame_no_quirk(ohci) (ohci->flags & OHCI_QUIRK_FRAME_NO)
#else
#define big_endian_frame_no_quirk(ohci) 0
--
1.6.3.3

View File

@ -5,9 +5,6 @@ Signed-off-by: Maxime Bizon <mbizon@freebox.fr>
2 files changed, 159 insertions(+), 0 deletions(-)
create mode 100644 drivers/usb/host/ehci-bcm63xx.c
diff --git a/drivers/usb/host/ehci-bcm63xx.c b/drivers/usb/host/ehci-bcm63xx.c
new file mode 100644
index 0000000..50638f7
--- /dev/null
+++ b/drivers/usb/host/ehci-bcm63xx.c
@@ -0,0 +1,154 @@
@ -165,11 +162,9 @@ index 0000000..50638f7
+};
+
+MODULE_ALIAS("platform:bcm63xx_ehci");
diff --git a/drivers/usb/host/ehci-hcd.c b/drivers/usb/host/ehci-hcd.c
index 1ec3857..8e7c61e 100644
--- a/drivers/usb/host/ehci-hcd.c
+++ b/drivers/usb/host/ehci-hcd.c
@@ -1158,6 +1158,11 @@ MODULE_LICENSE ("GPL");
@@ -1141,6 +1141,11 @@ MODULE_LICENSE ("GPL");
#define PLATFORM_DRIVER ehci_atmel_driver
#endif
@ -181,7 +176,3 @@ index 1ec3857..8e7c61e 100644
#if !defined(PCI_DRIVER) && !defined(PLATFORM_DRIVER) && \
!defined(PS3_SYSTEM_BUS_DRIVER) && !defined(OF_PLATFORM_DRIVER)
#error "missing bus glue for ehci-hcd"
--
1.6.3.3

View File

@ -5,8 +5,6 @@ compilation of the bcm63xx defconfig against USB.
Signed-off-by: Florian Fainelli <ffainelli@freebox.fr>
---
diff --git a/arch/mips/include/asm/io.h b/arch/mips/include/asm/io.h
index 436878e..65d7843 100644
--- a/arch/mips/include/asm/io.h
+++ b/arch/mips/include/asm/io.h
@@ -447,6 +447,9 @@ __BUILDIO(q, u64)
@ -19,6 +17,3 @@ index 436878e..65d7843 100644
/*
* Some code tests for these symbols
*/
--

View File

@ -1,8 +1,6 @@
Index: linux-2.6.32.9/drivers/watchdog/Makefile
===================================================================
--- linux-2.6.32.9.orig/drivers/watchdog/Makefile 2010-02-23 16:38:51.000000000 +0100
+++ linux-2.6.32.9/drivers/watchdog/Makefile 2010-02-28 18:13:51.000000000 +0100
@@ -113,6 +113,7 @@
--- a/drivers/watchdog/Makefile
+++ b/drivers/watchdog/Makefile
@@ -113,6 +113,7 @@ obj-$(CONFIG_WDT_RM9K_GPI) += rm9k_wdt.o
obj-$(CONFIG_SIBYTE_WDOG) += sb_wdog.o
obj-$(CONFIG_AR7_WDT) += ar7_wdt.o
obj-$(CONFIG_TXX9_WDT) += txx9wdt.o
@ -10,11 +8,9 @@ Index: linux-2.6.32.9/drivers/watchdog/Makefile
# PARISC Architecture
Index: linux-2.6.32.9/drivers/watchdog/Kconfig
===================================================================
--- linux-2.6.32.9.orig/drivers/watchdog/Kconfig 2010-02-23 16:38:51.000000000 +0100
+++ linux-2.6.32.9/drivers/watchdog/Kconfig 2010-02-28 18:13:51.000000000 +0100
@@ -850,6 +850,16 @@
--- a/drivers/watchdog/Kconfig
+++ b/drivers/watchdog/Kconfig
@@ -850,6 +850,16 @@ config TXX9_WDT
help
Hardware driver for the built-in watchdog timer on TXx9 MIPS SoCs.
@ -31,10 +27,8 @@ Index: linux-2.6.32.9/drivers/watchdog/Kconfig
# PARISC Architecture
# POWERPC Architecture
Index: linux-2.6.32.9/drivers/watchdog/bcm63xx_wdt.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.32.9/drivers/watchdog/bcm63xx_wdt.c 2010-02-28 18:17:15.000000000 +0100
--- /dev/null
+++ b/drivers/watchdog/bcm63xx_wdt.c
@@ -0,0 +1,334 @@
+/*
+ * Broadcom BCM63xx SoC watchdog driver

View File

@ -11,11 +11,9 @@ Signed-off-by: Axel Gembe <ago@bastart.eu.org>
drivers/mtd/redboot.c | 13 ++++++++++---
3 files changed, 18 insertions(+), 3 deletions(-)
Index: linux-2.6.32.9/drivers/mtd/maps/Kconfig
===================================================================
--- linux-2.6.32.9.orig/drivers/mtd/maps/Kconfig 2010-02-28 18:16:50.000000000 +0100
+++ linux-2.6.32.9/drivers/mtd/maps/Kconfig 2010-02-28 18:18:20.000000000 +0100
@@ -259,6 +259,13 @@
--- a/drivers/mtd/maps/Kconfig
+++ b/drivers/mtd/maps/Kconfig
@@ -259,6 +259,13 @@ config MTD_ALCHEMY
help
Flash memory access on AMD Alchemy Pb/Db/RDK Reference Boards
@ -29,11 +27,9 @@ Index: linux-2.6.32.9/drivers/mtd/maps/Kconfig
config MTD_DILNETPC
tristate "CFI Flash device mapped on DIL/Net PC"
depends on X86 && MTD_CONCAT && MTD_PARTITIONS && MTD_CFI_INTELEXT && BROKEN
Index: linux-2.6.32.9/drivers/mtd/redboot.c
===================================================================
--- linux-2.6.32.9.orig/drivers/mtd/redboot.c 2010-02-28 18:16:50.000000000 +0100
+++ linux-2.6.32.9/drivers/mtd/redboot.c 2010-02-28 18:18:20.000000000 +0100
@@ -39,7 +39,7 @@
--- a/drivers/mtd/redboot.c
+++ b/drivers/mtd/redboot.c
@@ -39,7 +39,7 @@ static inline int redboot_checksum(struc
return 1;
}
@ -42,7 +38,7 @@ Index: linux-2.6.32.9/drivers/mtd/redboot.c
struct mtd_partition **pparts,
unsigned long fis_origin)
{
@@ -162,6 +162,14 @@
@@ -162,6 +162,14 @@ static int parse_redboot_partitions(stru
goto out;
}
@ -57,7 +53,7 @@ Index: linux-2.6.32.9/drivers/mtd/redboot.c
for (i = 0; i < numslots; i++) {
struct fis_list *new_fl, **prev;
@@ -184,9 +192,8 @@
@@ -184,9 +192,8 @@ static int parse_redboot_partitions(stru
new_fl->img = &buf[i];
if (fis_origin) {
buf[i].flash_base -= fis_origin;
@ -68,19 +64,15 @@ Index: linux-2.6.32.9/drivers/mtd/redboot.c
/* I'm sure the JFFS2 code has done me permanent damage.
* I now think the following is _normal_
Index: linux-2.6.32.9/drivers/mtd/maps/Makefile
===================================================================
--- linux-2.6.32.9.orig/drivers/mtd/maps/Makefile 2010-02-28 18:16:50.000000000 +0100
+++ linux-2.6.32.9/drivers/mtd/maps/Makefile 2010-02-28 18:18:20.000000000 +0100
@@ -61,3 +61,4 @@
--- a/drivers/mtd/maps/Makefile
+++ b/drivers/mtd/maps/Makefile
@@ -61,3 +61,4 @@ obj-$(CONFIG_MTD_BFIN_ASYNC) += bfin-asy
obj-$(CONFIG_MTD_RBTX4939) += rbtx4939-flash.o
obj-$(CONFIG_MTD_VMU) += vmu-flash.o
obj-$(CONFIG_MTD_GPIO_ADDR) += gpio-addr-flash.o
+obj-$(CONFIG_MTD_BCM963XX) += bcm963xx-flash.o
Index: linux-2.6.32.9/drivers/mtd/maps/bcm963xx-flash.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.32.9/drivers/mtd/maps/bcm963xx-flash.c 2010-02-28 18:18:20.000000000 +0100
--- /dev/null
+++ b/drivers/mtd/maps/bcm963xx-flash.c
@@ -0,0 +1,399 @@
+/*
+ * Copyright (C) 2006-2008 Florian Fainelli <florian@openwrt.org>
@ -481,10 +473,8 @@ Index: linux-2.6.32.9/drivers/mtd/maps/bcm963xx-flash.c
+MODULE_DESCRIPTION("Broadcom BCM63xx MTD partition parser/mapping for CFE and RedBoot");
+MODULE_AUTHOR("Florian Fainelli <florian@openwrt.org>");
+MODULE_AUTHOR("Mike Albon <malbon@openwrt.org>");
Index: linux-2.6.32.9/arch/mips/include/asm/mach-bcm63xx/bcm_tag.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.32.9/arch/mips/include/asm/mach-bcm63xx/bcm_tag.h 2010-02-28 18:18:20.000000000 +0100
--- /dev/null
+++ b/arch/mips/include/asm/mach-bcm63xx/bcm_tag.h
@@ -0,0 +1,178 @@
+#ifndef __BCM63XX_TAG_H
+#define __BCM63XX_TAG_H
@ -664,11 +654,9 @@ Index: linux-2.6.32.9/arch/mips/include/asm/mach-bcm63xx/bcm_tag.h
+};
+
+#endif /* __BCM63XX_TAG_H */
Index: linux-2.6.32.9/arch/mips/bcm63xx/boards/board_bcm963xx.c
===================================================================
--- linux-2.6.32.9.orig/arch/mips/bcm63xx/boards/board_bcm963xx.c 2010-02-28 18:23:48.000000000 +0100
+++ linux-2.6.32.9/arch/mips/bcm63xx/boards/board_bcm963xx.c 2010-02-28 18:24:06.000000000 +0100
@@ -722,20 +722,6 @@
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
@@ -722,20 +722,6 @@ static int board_get_mac_address(u8 *mac
return 0;
}
@ -689,7 +677,7 @@ Index: linux-2.6.32.9/arch/mips/bcm63xx/boards/board_bcm963xx.c
static struct resource mtd_resources[] = {
{
.start = 0, /* filled at runtime */
@@ -745,12 +731,9 @@
@@ -745,12 +731,9 @@ static struct resource mtd_resources[] =
};
static struct platform_device mtd_dev = {

View File

@ -1,8 +1,6 @@
Index: linux-2.6.32.9/drivers/net/bcm63xx_enet.c
===================================================================
--- linux-2.6.32.9.orig/drivers/net/bcm63xx_enet.c 2010-02-28 18:18:37.000000000 +0100
+++ linux-2.6.32.9/drivers/net/bcm63xx_enet.c 2010-02-28 18:20:03.000000000 +0100
@@ -1526,7 +1526,7 @@
--- a/drivers/net/bcm63xx_enet.c
+++ b/drivers/net/bcm63xx_enet.c
@@ -1526,7 +1526,7 @@ static int compute_hw_mtu(struct bcm_ene
actual_mtu = mtu;
/* add ethernet header + vlan tag size */

View File

@ -1,7 +1,5 @@
Index: linux-2.6.32.9/arch/mips/bcm63xx/boards/board_bcm963xx.c
===================================================================
--- linux-2.6.32.9.orig/arch/mips/bcm63xx/boards/board_bcm963xx.c 2010-02-28 18:37:27.000000000 +0100
+++ linux-2.6.32.9/arch/mips/bcm63xx/boards/board_bcm963xx.c 2010-02-28 18:41:36.000000000 +0100
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
@@ -15,6 +15,8 @@
#include <linux/mtd/partitions.h>
#include <linux/mtd/physmap.h>
@ -11,7 +9,7 @@ Index: linux-2.6.32.9/arch/mips/bcm63xx/boards/board_bcm963xx.c
#include <asm/addrspace.h>
#include <bcm63xx_board.h>
#include <bcm63xx_cpu.h>
@@ -288,6 +290,16 @@
@@ -288,6 +290,16 @@ static struct board_info __initdata boar
.active_low = 1,
},
},
@ -28,7 +26,7 @@ Index: linux-2.6.32.9/arch/mips/bcm63xx/boards/board_bcm963xx.c
};
static struct board_info __initdata board_96348gw = {
@@ -345,6 +357,16 @@
@@ -345,6 +357,16 @@ static struct board_info __initdata boar
.active_low = 1,
},
},
@ -45,7 +43,7 @@ Index: linux-2.6.32.9/arch/mips/bcm63xx/boards/board_bcm963xx.c
};
static struct board_info __initdata board_FAST2404 = {
@@ -771,6 +793,16 @@
@@ -771,6 +793,16 @@ static struct platform_device bcm63xx_gp
.dev.platform_data = &bcm63xx_led_data,
};
@ -62,7 +60,7 @@ Index: linux-2.6.32.9/arch/mips/bcm63xx/boards/board_bcm963xx.c
/*
* third stage init callback, register all board devices.
*/
@@ -826,6 +858,13 @@
@@ -826,6 +858,13 @@ int __init board_register_devices(void)
platform_device_register(&bcm63xx_gpio_leds);
@ -76,11 +74,9 @@ Index: linux-2.6.32.9/arch/mips/bcm63xx/boards/board_bcm963xx.c
return 0;
}
Index: linux-2.6.32.9/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h
===================================================================
--- linux-2.6.32.9.orig/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h 2010-02-28 18:36:33.000000000 +0100
+++ linux-2.6.32.9/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h 2010-02-28 18:36:58.000000000 +0100
@@ -55,6 +55,9 @@
--- a/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h
+++ b/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h
@@ -55,6 +55,9 @@ struct board_info {
/* GPIO LEDs */
struct gpio_led leds[5];

View File

@ -1,8 +1,6 @@
Index: linux-2.6.32.9/arch/mips/bcm63xx/boards/board_bcm963xx.c
===================================================================
--- linux-2.6.32.9.orig/arch/mips/bcm63xx/boards/board_bcm963xx.c 2010-02-28 18:42:13.000000000 +0100
+++ linux-2.6.32.9/arch/mips/bcm63xx/boards/board_bcm963xx.c 2010-02-28 18:43:29.000000000 +0100
@@ -785,6 +785,10 @@
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
@@ -785,6 +785,10 @@ static struct ssb_sprom bcm63xx_sprom =
};
#endif
@ -13,7 +11,7 @@ Index: linux-2.6.32.9/arch/mips/bcm63xx/boards/board_bcm963xx.c
static struct gpio_led_platform_data bcm63xx_led_data;
static struct platform_device bcm63xx_gpio_leds = {
@@ -853,6 +857,8 @@
@@ -853,6 +857,8 @@ int __init board_register_devices(void)
platform_device_register(&mtd_dev);

View File

@ -1,8 +1,6 @@
Index: linux-2.6.32.9/arch/mips/bcm63xx/boards/board_bcm963xx.c
===================================================================
--- linux-2.6.32.9.orig/arch/mips/bcm63xx/boards/board_bcm963xx.c 2010-02-28 18:45:23.000000000 +0100
+++ linux-2.6.32.9/arch/mips/bcm63xx/boards/board_bcm963xx.c 2010-02-28 18:47:09.000000000 +0100
@@ -393,6 +393,25 @@
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
@@ -393,6 +393,25 @@ static struct board_info __initdata boar
.has_ehci0 = 1,
};
@ -28,7 +26,7 @@ Index: linux-2.6.32.9/arch/mips/bcm63xx/boards/board_bcm963xx.c
static struct board_info __initdata board_DV201AMR = {
.name = "DV201AMR",
.expected_cpu_id = 0x6348,
@@ -577,6 +596,7 @@
@@ -577,6 +596,7 @@ static const struct board_info __initdat
&board_FAST2404,
&board_DV201AMR,
&board_96348gw_a,

Some files were not shown because too many files have changed in this diff Show More