1
0
mirror of git://projects.qi-hardware.com/openwrt-xburst.git synced 2024-11-23 22:05:20 +02:00

Merge commit 'openwrt-backfire/master' into xburst

Conflicts:

	package/mac80211/patches/120-compat_rcu_dereference.patch
	package/mac80211/patches/130-tracepoint_include_linux_version_h.patch
	target/linux/x86/Makefile
This commit is contained in:
Mirko Vogt 2010-05-12 19:47:13 +02:00
commit e65b1bfafb
107 changed files with 1184 additions and 1610 deletions

490
Config.in
View File

@ -13,66 +13,55 @@ config HAVE_DOT_CONFIG
source "target/Config.in"
menu "Target Images"
config TARGET_ROOTFS_INITRAMFS
menuconfig TARGET_ROOTFS_INITRAMFS
bool "ramdisk"
default y if USES_INITRAMFS
depends LINUX_2_6
help
Embed the rootfs into the kernel (initramfs)
choice
prompt "ramdisk compression"
depends TARGET_ROOTFS_INITRAMFS
depends !LINUX_2_6_25
default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_ar71xx
default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_ramips
default TARGET_INITRAMFS_COMPRESSION_NONE
choice
prompt "Compression"
default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_ar71xx
default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_ramips
default TARGET_INITRAMFS_COMPRESSION_NONE
depends TARGET_ROOTFS_INITRAMFS
depends !LINUX_2_6_25
help
Select ramdisk compression.
config TARGET_INITRAMFS_COMPRESSION_NONE
bool "none"
config TARGET_INITRAMFS_COMPRESSION_GZIP
bool "gzip"
config TARGET_INITRAMFS_COMPRESSION_BZIP2
bool "bzip2"
config TARGET_INITRAMFS_COMPRESSION_LZMA
bool "lzma"
config TARGET_INITRAMFS_COMPRESSION_LZO
bool "lzo"
endchoice
comment "Root filesystem archives"
config TARGET_ROOTFS_CPIOGZ
bool "cpio.gz"
default y if USES_CPIOGZ
help
Select ramdisk compression.
Build a compressed cpio archive of the the root filesystem
config TARGET_INITRAMFS_COMPRESSION_NONE
bool "NONE"
config TARGET_INITRAMFS_COMPRESSION_GZIP
bool "GZIP"
config TARGET_INITRAMFS_COMPRESSION_BZIP2
bool "BZIP2"
config TARGET_INITRAMFS_COMPRESSION_LZMA
bool "LZMA"
config TARGET_INITRAMFS_COMPRESSION_LZO
bool "LZO"
endchoice
config TARGET_ROOTFS_JFFS2
bool "jffs2"
default y if USES_JFFS2
depends !TARGET_ROOTFS_INITRAMFS
help
Build a jffs2 root filesystem
config TARGET_ROOTFS_SQUASHFS
bool "squashfs"
default y if USES_SQUASHFS
depends !TARGET_ROOTFS_INITRAMFS
help
Build a squashfs-lzma root filesystem
config TARGET_ROOTFS_TGZ
bool "tgz"
default y if USES_TGZ
depends !TARGET_ROOTFS_INITRAMFS
config TARGET_ROOTFS_TARGZ
bool "tar.gz"
default y if USES_TARGZ
help
Build a compressed tar archive of the the root filesystem
config TARGET_ROOTFS_CPIOGZ
bool "cpiogz"
default y if USES_CPIOGZ
depends !TARGET_ROOTFS_INITRAMFS
help
Build a compressed cpio archive of the the root filesystem
comment "Root filesystem images"
config TARGET_ROOTFS_EXT2FS
bool "ext2"
@ -88,6 +77,20 @@ menu "Target Images"
help
Create some bootable ISO image
config TARGET_ROOTFS_JFFS2
bool "jffs2"
default y if USES_JFFS2
depends !TARGET_ROOTFS_INITRAMFS
help
Build a jffs2 root filesystem
config TARGET_ROOTFS_SQUASHFS
bool "squashfs"
default y if USES_SQUASHFS
depends !TARGET_ROOTFS_INITRAMFS
help
Build a squashfs-lzma root filesystem
config TARGET_ROOTFS_UBIFS
bool "ubifs"
default y if USES_UBIFS
@ -95,155 +98,157 @@ menu "Target Images"
help
Build a ubifs root filesystem
comment "Image Options"
comment "Image Options"
source "target/linux/*/image/Config.in"
source "target/linux/*/image/Config.in"
config TARGET_ROOTFS_FSPART
int "Filesystem part size (in MB)"
depends X86_GRUB_IMAGES || TARGET_ROOTFS_EXT2FS || TARGET_rb532 || TARGET_olpc
default 48
help
Allows you to change the filesystem partition size
config TARGET_ROOTFS_FSPART
int "Root filesystem partition size (in MB)"
depends X86_GRUB_IMAGES || TARGET_ROOTFS_EXT2FS || TARGET_rb532
default 48
help
Allows you to change the root filesystem partition size
config TARGET_ROOTFS_MAXINODE
int "Maximum number of inodes in filesystem"
depends TARGET_ROOTFS_EXT2FS
default 6000
help
Allows you to change the maximum number of inodes in the filesystem
config TARGET_ROOTFS_MAXINODE
int "Maximum number of inodes in root filesystem"
depends TARGET_ROOTFS_EXT2FS
default 6000
help
Allows you to change the maximum number of inodes in the root filesystem
endmenu
menu "Global build settings"
config ALL
bool "Select all packages by default"
default n
config ALL
bool "Select all packages by default"
default n
comment "General build options"
comment "General build options"
config CLEAN_IPKG
bool
prompt "Disable ipkg/opkg installation on the target"
default n
help
This removes all ipkg data from the target directory before building the root fs
config LARGEFILE
bool
prompt "Enable large file (files > 2 GB) support"
default y
help
Enable large file (files > 2 GB) support.
config SHADOW_PASSWORDS
bool
prompt "Enable shadow password support"
default y
help
Enable shadow password support.
choice
prompt "Binary stripping method"
default USE_STRIP if EXTERNAL_TOOLCHAIN
default USE_STRIP if USE_GLIBC || USE_EGLIBC
default USE_SSTRIP
help
Select the binary stripping method you wish to use.
config NO_STRIP
bool "none"
config BUILD_PATENTED
default y
bool "Compile with support for patented functionality"
help
This will install unstripped binaries (useful for native compiling/debugging)
When this option is disabled, software which provides patented functionality will not be built.
In case software provides optional support for patented functionality,
this optional support will get disabled for this package.
config USE_STRIP
bool "strip"
config LARGEFILE
bool
prompt "Enable large file (files > 2 GB) support"
default y
help
This will install binaries stripped using strip from binutils
Enable large file (files > 2 GB) support.
config USE_SSTRIP
bool "sstrip"
depends !DEBUG
depends !USE_GLIBC
depends !USE_EGLIBC
config SHADOW_PASSWORDS
bool
prompt "Enable shadow password support"
default y
help
This will install binaries stripped using sstrip
endchoice
Enable shadow password support.
config BUILD_PATENTED
default y
bool "Compile with support for patented functionality"
help
When this option is disabled, software which provides patented functionality will not be built.
In case software provides optional support for patented functionality,
this optional support will get disabled for this package.
config CLEAN_IPKG
bool
prompt "Remove ipkg/opkg status data files in final images"
default n
help
This removes all ipkg/opkg status data files from the target directory before building the root fs
config STRIP_ARGS
string
prompt "Strip arguments"
depends USE_STRIP
default "--strip-unneeded --remove-section=.comment --remove-section=.note" if DEBUG
default "--strip-all"
help
Specifies arguments passed to the strip command when stripping binaries
comment "Kernel build options"
config USE_MKLIBS
bool "Strip unnecessary functions from libraries"
help
Reduces libraries to only those functions that are necessary for using all
selected packages (including those selected as <M>)
Note that this will make the system libraries incompatible with most of the packages
that are not selected during the build process
config KERNEL_DEBUG_FS
bool "Compile the kernel with Debug FileSystem enabled"
default y
depends LINUX_2_6
help
debugfs is a virtual file system that kernel developers use to put
debugging files into. Enable this option to be able to read and
write to these files.
config STRIP_KERNEL_EXPORTS
depends LINUX_2_6
bool "Strip unnecessary exports from the kernel image"
help
Reduces kernel size by stripping unused kernel exports from the kernel image
Note that this might make the kernel incompatible with any kernel modules that
were not selected at the time the kernel image was created
config KERNEL_PROFILING
bool "Compile the kernel with profiling enabled"
default n
help
Enable the extended profiling support mechanisms used by profilers such
as OProfile.
comment "Package build options"
config KERNEL_KALLSYMS
bool "Compile the kernel with symbol table information"
default n
help
This will give you more information in stack traces from kernel oopses
config DEBUG
bool
prompt "Compile packages with debugging info"
default n
help
Adds -g3 to the CFLAGS
comment "Package build options"
config IPV6
bool
prompt "Enable IPv6 support in packages"
default n
help
Enable IPV6 support in packages (passes --enable-ipv6 to configure scripts).
config DEBUG
bool
prompt "Compile packages with debugging info"
default n
help
Adds -g3 to the CFLAGS
comment "Kernel build options"
config IPV6
bool
prompt "Enable IPv6 support in packages"
default n
help
Enable IPV6 support in packages (passes --enable-ipv6 to configure scripts).
config KERNEL_KALLSYMS
bool "Compile the kernel with symbol table information"
default n
help
This will give you more information in stack traces from kernel oopses
comment "Stripping options"
config KERNEL_PROFILING
bool "Compile the kernel with profiling enabled"
default n
help
Enable the extended profiling support mechanisms used by profilers such
as OProfile.
choice
prompt "Binary stripping method"
default USE_STRIP if EXTERNAL_TOOLCHAIN
default USE_STRIP if USE_GLIBC || USE_EGLIBC
default USE_SSTRIP
help
Select the binary stripping method you wish to use.
config KERNEL_DEBUG_FS
bool "Compile the kernel with Debug Filesystem enabled"
depends LINUX_2_6
default y
help
debugfs is a virtual file system that kernel developers use to put
debugging files into. Enable this option to be able to read and
write to these files.
config NO_STRIP
bool "none"
help
This will install unstripped binaries (useful for native compiling/debugging)
config USE_STRIP
bool "strip"
help
This will install binaries stripped using strip from binutils
config USE_SSTRIP
bool "sstrip"
depends !DEBUG
depends !USE_GLIBC
depends !USE_EGLIBC
help
This will install binaries stripped using sstrip
endchoice
config STRIP_ARGS
string
prompt "Strip arguments"
depends USE_STRIP
default "--strip-unneeded --remove-section=.comment --remove-section=.note" if DEBUG
default "--strip-all"
help
Specifies arguments passed to the strip command when stripping binaries
config STRIP_KERNEL_EXPORTS
depends LINUX_2_6
bool "Strip unnecessary exports from the kernel image"
help
Reduces kernel size by stripping unused kernel exports from the kernel image
Note that this might make the kernel incompatible with any kernel modules that
were not selected at the time the kernel image was created
config USE_MKLIBS
bool "Strip unnecessary functions from libraries"
help
Reduces libraries to only those functions that are necessary for using all
selected packages (including those selected as <M>)
Note that this will make the system libraries incompatible with most of the packages
that are not selected during the build process
endmenu
@ -251,97 +256,84 @@ menuconfig DEVEL
bool "Advanced configuration options (for developers)"
default n
config BROKEN
bool
prompt "Show broken platforms / packages" if DEVEL
default n
config BROKEN
bool "Show broken platforms / packages" if DEVEL
default n
config DOWNLOAD_FOLDER
string
prompt "Download folder" if DEVEL
default ""
config DOWNLOAD_FOLDER
string "Download folder" if DEVEL
default ""
config LOCALMIRROR
string
prompt "Local mirror for source packages" if DEVEL
config LOCALMIRROR
string "Local mirror for source packages" if DEVEL
default ""
config AUTOREBUILD
bool
prompt "Automatic rebuild of packages" if DEVEL
default y
help
Automatically rebuild packages when their files change
config AUTOREBUILD
bool "Automatic rebuild of packages" if DEVEL
default y
help
Automatically rebuild packages when their files change
config BUILD_SUFFIX
string
prompt "Build suffix to append to the BUILD_DIR variable" if DEVEL
default ""
help
Build suffix to append to the BUILD_DIR variable, i.e: build_dir_suffix
config BUILD_SUFFIX
string "Build suffix to append to the BUILD_DIR variable" if DEVEL
default ""
help
Build suffix to append to the BUILD_DIR variable, i.e: build_dir_suffix
config TARGET_ROOTFS_DIR
string
prompt "Override the default TARGET_ROOTFS_DIR variable" if DEVEL
default ""
help
Override the default TARGET_ROOTFS_DIR variable content $(BUILD_DIR) with custom path.
Use this option to re-define the location of the target root file system directory.
config TARGET_ROOTFS_DIR
string "Override the default TARGET_ROOTFS_DIR variable" if DEVEL
default ""
help
Override the default TARGET_ROOTFS_DIR variable content $(BUILD_DIR) with custom path.
Use this option to re-define the location of the target root file system directory.
config CCACHE
bool
prompt "Use ccache" if DEVEL
default n
help
Compiler cache; see http://ccache.samba.org/
config CCACHE
bool "Use ccache" if DEVEL
default n
help
Compiler cache; see http://ccache.samba.org/
config EXTERNAL_KERNEL_TREE
string
prompt "Use external kernel tree" if DEVEL
default ""
config EXTERNAL_KERNEL_TREE
string "Use external kernel tree" if DEVEL
default ""
config KERNEL_GIT_CLONE_URI
string
prompt "Enter git repository to clone" if DEVEL
default ""
help
Enter the full git repository path i.e.:
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
This will create a git clone of the kernel in your build
directory.
config KERNEL_GIT_LOCAL_REPOSITORY
string
prompt "Enter path to local reference repository" if DEVEL
default ""
help
Enter a full pathname to a local reference git repository.
In this instance, the --refererence option of git clone will
be used thus creating a quick local clone of your repo.
config KERNEL_GIT_CLONE_URI
string "Enter git repository to clone" if DEVEL
default ""
help
Enter the full git repository path i.e.:
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
This will create a git clone of the kernel in your build
directory.
config KERNEL_GIT_LOCAL_REPOSITORY
string "Enter path to local reference repository" if DEVEL
default ""
help
Enter a full pathname to a local reference git repository.
In this instance, the --refererence option of git clone will
be used thus creating a quick local clone of your repo.
menuconfig TARGET_OPTIONS
bool "Target Options" if DEVEL
config TARGET_OPTIMIZATION
string
prompt "Target Optimizations" if TARGET_OPTIONS
default DEFAULT_TARGET_OPTIMIZATION
help
Optimizations to use when building for the target host.
config TARGET_OPTIMIZATION
string "Target Optimizations" if TARGET_OPTIONS
default DEFAULT_TARGET_OPTIMIZATION
help
Optimizations to use when building for the target host.
config SOFT_FLOAT
bool
prompt "Use software floating point by default" if TARGET_OPTIONS
default y
depends on (arm || armeb || powerpc || mipsel || mips) && !HAS_FPU
help
If your target CPU does not have a Floating Point Unit (FPU) or a
kernel FPU emulator, but you still wish to support floating point
functions, then everything will need to be compiled with soft floating
point support (-msoft-float).
Most people will answer N.
config SOFT_FLOAT
bool "Use software floating point by default" if TARGET_OPTIONS
default y
depends on (arm || armeb || powerpc || mipsel || mips) && !HAS_FPU
help
If your target CPU does not have a Floating Point Unit (FPU) or a
kernel FPU emulator, but you still wish to support floating point
functions, then everything will need to be compiled with soft floating
point support (-msoft-float).
Most people will answer N.
source "toolchain/Config.in"
@ -350,5 +342,3 @@ source "target/sdk/Config.in"
source "target/toolchain/Config.in"
source "tmp/.config-package.in"

View File

@ -1,5 +1,5 @@
#
# Copyright (C) 2007 OpenWrt.org
# Copyright (C) 2007-2010 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
@ -14,6 +14,17 @@ export TAR FIND
ifneq ($(__host_inc),1)
__host_inc:=1
try-run = $(shell set -e; \
TMP_F="$(TMP_DIR)/try-run.$$$$.tmp"; \
if ($(1)) >/dev/null 2>&1; then echo "$(2)"; else echo "$(3)"; fi; \
rm -f "$$TMP_F"; \
)
host-cc-option = $(call try-run, \
$(HOSTCC) $(HOST_CFLAGS) $(1) -c -xc /dev/null -o "$$TMP_F",$(1),$(2) \
)
.PRECIOUS: $(TMP_DIR)/.host.mk
$(TMP_DIR)/.host.mk: $(TOPDIR)/include/host.mk
@mkdir -p $(TMP_DIR)

View File

@ -17,23 +17,23 @@ KDIR=$(KERNEL_BUILD_DIR)
IMG_PREFIX:=openwrt-$(BOARD)$(if $(SUBTARGET),-$(SUBTARGET))
ifneq ($(CONFIG_BIG_ENDIAN),y)
JFFS2OPTS := --pad --little-endian --squash
SQUASHFS_OPTS := -le
ifneq ($(CONFIG_BIG_ENDIAN),)
JFFS2OPTS := --pad --big-endian --squash -v
SQUASHFS_OPTS := -be
else
JFFS2OPTS := --pad --big-endian --squash
SQUASHFS_OPTS := -be
JFFS2OPTS := --pad --little-endian --squash -v
SQUASHFS_OPTS := -le
endif
ifneq ($(CONFIG_LINUX_2_4)$(CONFIG_LINUX_2_6_25),)
USE_SQUASHFS3 := y
USE_SQUASHFS3 := y
endif
ifneq ($(USE_SQUASHFS3),)
MKSQUASHFS_CMD := $(STAGING_DIR_HOST)/bin/mksquashfs-lzma
MKSQUASHFS_CMD := $(STAGING_DIR_HOST)/bin/mksquashfs-lzma
else
MKSQUASHFS_CMD := $(STAGING_DIR_HOST)/bin/mksquashfs4
SQUASHFS_OPTS := -comp lzma -processors 1
MKSQUASHFS_CMD := $(STAGING_DIR_HOST)/bin/mksquashfs4
SQUASHFS_OPTS := -comp lzma -processors 1
endif
JFFS2_BLOCKSIZE ?= 64k 128k
@ -55,8 +55,17 @@ define prepare_generic_squashfs
rm -f $(KDIR)/tmpfile.*
endef
ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),y)
ifeq ($(CONFIG_TARGET_ROOTFS_JFFS2),y)
ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),)
define Image/BuildKernel
cp $(KDIR)/vmlinux.elf $(BIN_DIR)/$(IMG_PREFIX)-vmlinux.elf
$(call Image/Build/Initramfs)
endef
else
ifneq ($(CONFIG_TARGET_ROOTFS_JFFS2),)
define Image/mkfs/jffs2/sub
# FIXME: removing this line will cause strange behaviour in the foreach loop below
$(STAGING_DIR_HOST)/bin/mkfs.jffs2 $(JFFS2OPTS) -e $(patsubst %k,%KiB,$(1)) -o $(KDIR)/root.jffs2-$(1) -d $(TARGET_DIR)
@ -68,7 +77,7 @@ ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),y)
endef
endif
ifeq ($(CONFIG_TARGET_ROOTFS_SQUASHFS),y)
ifneq ($(CONFIG_TARGET_ROOTFS_SQUASHFS),)
define Image/mkfs/squashfs
@mkdir -p $(TARGET_DIR)/overlay
$(MKSQUASHFS_CMD) $(TARGET_DIR) $(KDIR)/root.squashfs -nopad -noappend -root-owned $(SQUASHFS_OPTS)
@ -76,18 +85,7 @@ ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),y)
endef
endif
ifeq ($(CONFIG_TARGET_ROOTFS_TGZ),y)
define Image/mkfs/tgz
$(TAR) -zcf $(BIN_DIR)/$(IMG_PREFIX)-rootfs.tgz --numeric-owner --owner=0 --group=0 -C $(TARGET_DIR)/ .
endef
endif
ifeq ($(CONFIG_TARGET_ROOTFS_CPIOGZ),y)
define Image/mkfs/cpiogz
( cd $(TARGET_DIR); find . | cpio -o -H newc | gzip -9 >$(BIN_DIR)/$(IMG_PREFIX)-rootfs.cpio.gz )
endef
endif
ifeq ($(CONFIG_TARGET_ROOTFS_UBIFS),y)
ifneq ($(CONFIG_TARGET_ROOTFS_UBIFS),)
define Image/mkfs/ubifs
$(CP) ./ubinize.cfg $(KDIR)
$(STAGING_DIR_HOST)/bin/mkfs.ubifs $(UBIFS_OPTS) -o $(KDIR)/root.ubifs -d $(TARGET_DIR)
@ -96,22 +94,22 @@ ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),y)
$(call Image/Build,ubi)
endef
endif
else
define Image/BuildKernel
cp $(KDIR)/vmlinux.elf $(BIN_DIR)/$(IMG_PREFIX)-vmlinux.elf
$(call Image/Build/Initramfs)
endif
ifneq ($(CONFIG_TARGET_ROOTFS_CPIOGZ),)
define Image/mkfs/cpiogz
( cd $(TARGET_DIR); find . | cpio -o -H newc | gzip -9 >$(BIN_DIR)/$(IMG_PREFIX)-rootfs.cpio.gz )
endef
endif
define Image/Checksum
( cd ${BIN_DIR} ; \
$(FIND) -maxdepth 1 -type f \! -name 'md5sums' -printf "%P\n" | sort | xargs \
md5sum --binary > md5sums \
)
endef
ifneq ($(CONFIG_TARGET_ROOTFS_TARGZ),)
define Image/mkfs/targz
$(TAR) -zcf $(BIN_DIR)/$(IMG_PREFIX)-rootfs.tar.gz --numeric-owner --owner=0 --group=0 -C $(TARGET_DIR)/ .
endef
endif
ifeq ($(CONFIG_TARGET_ROOTFS_EXT2FS),y)
ifneq ($(CONFIG_TARGET_ROOTFS_EXT2FS),)
E2SIZE=$(shell echo $$(($(CONFIG_TARGET_ROOTFS_FSPART)*1024)))
define Image/mkfs/ext2
@ -120,7 +118,7 @@ ifeq ($(CONFIG_TARGET_ROOTFS_EXT2FS),y)
endef
endif
ifeq ($(CONFIG_TARGET_ROOTFS_ISO),y)
ifneq ($(CONFIG_TARGET_ROOTFS_ISO),)
define Image/mkfs/iso
$(call Image/Build,iso)
endef
@ -139,52 +137,62 @@ define Image/mkfs/prepare
$(call Image/mkfs/prepare/default)
endef
define BuildImage
download:
prepare:
ifneq ($(IB),1)
compile: compile-targets FORCE
$(call Build/Compile)
else
compile:
endif
ifneq ($(IB),1)
install: compile install-targets FORCE
$(call Image/Prepare)
$(call Image/mkfs/prepare)
$(call Image/BuildKernel)
$(call Image/mkfs/jffs2)
$(call Image/mkfs/squashfs)
$(call Image/mkfs/tgz)
$(call Image/mkfs/cpiogz)
$(call Image/mkfs/ext2)
$(call Image/mkfs/iso)
$(call Image/mkfs/ubifs)
$(call Image/Checksum)
else
install: compile install-targets
$(call Image/BuildKernel)
$(call Image/mkfs/jffs2)
$(call Image/mkfs/squashfs)
$(call Image/mkfs/tgz)
$(call Image/mkfs/cpiogz)
$(call Image/mkfs/ext2)
$(call Image/mkfs/iso)
$(call Image/mkfs/ubifs)
$(call Image/Checksum)
endif
ifneq ($(IB),1)
clean: clean-targets
$(call Build/Clean)
else
clean:
endif
compile-targets:
install-targets:
clean-targets:
define Image/Checksum
( cd ${BIN_DIR} ; \
$(FIND) -maxdepth 1 -type f \! -name 'md5sums' -printf "%P\n" | sort | xargs \
md5sum --binary > md5sums \
)
endef
define BuildImage
download:
prepare:
ifeq ($(IB),)
compile: compile-targets FORCE
$(call Build/Compile)
else
compile:
endif
ifeq ($(IB),)
install: compile install-targets FORCE
$(call Image/Prepare)
$(call Image/mkfs/prepare)
$(call Image/BuildKernel)
$(call Image/mkfs/cpiogz)
$(call Image/mkfs/targz)
$(call Image/mkfs/ext2)
$(call Image/mkfs/iso)
$(call Image/mkfs/jffs2)
$(call Image/mkfs/squashfs)
$(call Image/mkfs/ubifs)
$(call Image/Checksum)
else
install: compile install-targets
$(call Image/BuildKernel)
$(call Image/mkfs/cpiogz)
$(call Image/mkfs/targz)
$(call Image/mkfs/ext2)
$(call Image/mkfs/iso)
$(call Image/mkfs/jffs2)
$(call Image/mkfs/squashfs)
$(call Image/mkfs/ubifs)
$(call Image/Checksum)
endif
ifeq ($(IB),)
clean: clean-targets
$(call Build/Clean)
else
clean:
endif
compile-targets:
install-targets:
clean-targets:
endef

View File

@ -3,7 +3,7 @@ PKG_VERSION_ORGINAL:=$(PKG_VERSION)
# in case that another version is provided, overwrite the original
ifeq ($(CONFIG_$(PKG_NAME)_USE_CUSTOM_VERSION),y)
PKG_VERSION:= $(strip $(subst ",, $(CONFIG_$(PKG_NAME)_CUSTOM_VERSION)))
PKG_VERSION:=$(call qstrip,$(CONFIG_$(PKG_NAME)_CUSTOM_VERSION))
PKG_SOURCE:=$(subst $(PKG_VERSION_ORGINAL),$(PKG_VERSION),$(PKG_SOURCE))
PKG_MD5SUM:=
endif
@ -26,7 +26,7 @@ endef
# in case that an customer source path is provided, set the acc. default variable
ifeq ($(CONFIG_$(PKG_NAME)_USE_CUSTOM_SOURCE_DIR),y)
PKG_DEFAULT_CUSTOM_SOURCE_DIR:= $(strip $(subst ",, $(CONFIG_$(PKG_NAME)_CUSTOM_SOURCE_DIR)))
PKG_DEFAULT_CUSTOM_SOURCE_DIR:= $(call qstrip,$(CONFIG_$(PKG_NAME)_CUSTOM_SOURCE_DIR))
endif
# package specific configuration

View File

@ -25,7 +25,7 @@ include $(INCLUDE_DIR)/package.mk
define KernelPackage/acx
TITLE:=Driver for TI ACX1xx chipset
DEPENDS:=@LINUX_2_6 @TARGET_ar7 +wireless-tools
DEPENDS:=@LINUX_2_6 @PCI_SUPPORT||TARGET_ar7 +wireless-tools
URL:=http://acx100.sourceforge.net/
SUBMENU:=Wireless Drivers
FILES:= $(PKG_BUILD_DIR)/acx.$(LINUX_KMOD_SUFFIX)

View File

@ -1,10 +1,12 @@
--- a/pci.c
+++ b/pci.c
@@ -4135,6 +4135,18 @@ static struct vlynq_device_id acx_vlynq_
{ 0, 0, 0 },
};
Index: acx-20080210/pci.c
===================================================================
--- acx-20080210.orig/pci.c 2010-05-02 21:37:00.000000000 +0200
+++ acx-20080210/pci.c 2010-05-02 21:48:22.000000000 +0200
@@ -1437,6 +1437,18 @@
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,31)
static void dummy_netdev_init(struct net_device *ndev) {}
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,30)
+static const struct net_device_ops acx_netdev_ops = {
+ .ndo_open = &acxpci_e_open,
+ .ndo_stop = &acxpci_e_close,
@ -16,14 +18,39 @@
+};
+#endif
+
static __devinit int vlynq_probe(struct vlynq_device *vdev,
struct vlynq_device_id *id)
#ifdef CONFIG_PCI
static int __devinit acxpci_e_probe(struct pci_dev *pdev, const struct pci_device_id *id)
{
@@ -4191,17 +4203,24 @@ static __devinit int vlynq_probe(struct
@@ -1547,17 +1559,21 @@
}
ether_setup(ndev);
+#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30))
ndev->open = &acxpci_e_open;
ndev->stop = &acxpci_e_close;
ndev->hard_start_xmit = &acx_i_start_xmit;
ndev->get_stats = &acx_e_get_stats;
+ ndev->set_multicast_list = &acxpci_i_set_multicast_list;
+ ndev->tx_timeout = &acxpci_i_tx_timeout;
+ ndev->change_mtu = &acx_e_change_mtu;
+#else
+ ndev->netdev_ops = &acx_netdev_ops;
+#endif
#if IW_HANDLER_VERSION <= 5
ndev->get_wireless_stats = &acx_e_get_wireless_stats;
#endif
ndev->wireless_handlers = (struct iw_handler_def *)&acx_ioctl_handler_def;
- ndev->set_multicast_list = &acxpci_i_set_multicast_list;
- ndev->tx_timeout = &acxpci_i_tx_timeout;
- ndev->change_mtu = &acx_e_change_mtu;
ndev->watchdog_timeo = 4 * HZ;
ndev->irq = pdev->irq;
ndev->base_addr = pci_resource_start(pdev, 0);
@@ -4191,17 +4207,24 @@
goto fail_alloc_netdev;
}
ether_setup(ndev);
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,31)
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30)
ndev->open = &acxpci_e_open;
ndev->stop = &acxpci_e_close;
ndev->hard_start_xmit = &acx_i_start_xmit;

View File

@ -434,8 +434,10 @@ ifeq ($(CONFIG_EXTERNAL_TOOLCHAIN),)
$(TOOLCHAIN_DIR)/lib/libuClibc-$(LIBC_SO_VERSION).so \
$(1)/lib/
for file in libcrypt libdl libm libnsl libresolv libutil; do \
$(CP) $(TOOLCHAIN_DIR)/lib/$$$$file.so.* $(1)/lib/; \
$(CP) $(TOOLCHAIN_DIR)/lib/$$$$file-$(LIBC_SO_VERSION).so $(1)/lib/; \
$(CP) \
$(TOOLCHAIN_DIR)/lib/$$$$file.so.* \
$(TOOLCHAIN_DIR)/lib/$$$$file-$(LIBC_SO_VERSION).so \
$(1)/lib/; \
done
endef

View File

@ -12,6 +12,8 @@ addif() {
# PPP devices are configured by pppd, no need to run setup_interface here
case "$INTERFACE" in
ppp*) return 0;;
ath*) return 0;;
wlan*) return 0;;
esac
scan_interfaces

View File

@ -26,7 +26,7 @@ endef
define Package/block-extroot
$(call Package/block-extroot/Default)
MENU:=1
DEPENDS:=+block-mount @PACKAGE_kmod-ide-core||PACKAGE_kmod-usb-storage||PACKAGE_kmod-mmc||PACKAGE_kmod-broadcom-sdhc
DEPENDS:=+block-mount @PACKAGE_kmod-ide-core||PACKAGE_kmod-ata-core||PACKAGE_kmod-usb-storage||PACKAGE_kmod-mmc||PACKAGE_kmod-broadcom-sdhc
endef
define Package/block-extroot/config

View File

@ -1,69 +0,0 @@
#
# Copyright (C) 2006 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=goldfish-qemu
PKG_VERSION:=20090429
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=git://android.git.kernel.org/platform/external/qemu
PKG_SOURCE_PROTO:=git
PKG_SOURCE_VERSION:=2b8ea29e2bd12f876a4d06647e6077bf72de567e
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
PKG_TARGETS:=bin
include $(INCLUDE_DIR)/package.mk
define Package/goldfish-qemu
SECTION:=emulator
CATEGORY:=Emulators
DEPENDS:=@TARGET_goldfish
TITLE:=A modified version of the Google Android Emulator
URL:=http://www.android.com/
endef
LIBSDL_PATCHED:=sdl-1.2.12-android-20080919
define Download/libsdl-patched
FILE:=$(LIBSDL_PATCHED).tar.gz
URL:=http://android.git.kernel.org/pub
MD5SUM:=22df8cbb2ecb811938eba8410e861650
endef
$(eval $(call Download,libsdl-patched))
Build/Exports=
define Build/Prepare
$(call Build/Prepare/Default)
zcat $(DL_DIR)/$(LIBSDL_PATCHED).tar.gz | tar x -C $(PKG_BUILD_DIR)
endef
define Build/Configure
[ -x $(PKG_BUILD_DIR)/libsdl/bin/sdl-config ] || ( \
cd $(PKG_BUILD_DIR)/$(LIBSDL_PATCHED); \
./android-configure --prefix=$(PKG_BUILD_DIR)/libsdl; \
make all install; \
)
endef
define Build/Compile
(cd $(PKG_BUILD_DIR); \
[ -f $(PKG_BUILD_DIR)/objs/config.make ] || \
./android-configure.sh --sdl-config=$(PKG_BUILD_DIR)/libsdl/bin/sdl-config \
)
$(MAKE) -C $(PKG_BUILD_DIR)
endef
define Package/goldfish-qemu/install
$(INSTALL_DIR) $(1)
$(CP) $(PKG_BUILD_DIR)/objs/emulator $(1)/
$(CP) ./skins $(1)/
endef
$(eval $(call BuildPackage,goldfish-qemu))

View File

@ -1,30 +0,0 @@
--- a/android-configure.sh
+++ b/android-configure.sh
@@ -656,6 +656,9 @@ case "$CPU" in
*) HOST_CPU=$CPU
;;
esac
+case "$OS" in
+ darwin*) echo "#define _BSD 1" >> $config_h;;
+esac
echo "#define HOST_$HOST_CPU 1" >> $config_h
log "Generate : $config_h"
--- a/android/utils/display-quartz.m
+++ b/android/utils/display-quartz.m
@@ -34,6 +34,7 @@ get_monitor_resolution( int *px_dpi, in
int
get_nearest_monitor_rect( int *x, int *y, int *width, int *height )
{
+#if 0
SDL_SysWMinfo info;
NSWindow* window;
@@ -108,4 +109,7 @@ get_nearest_monitor_rect( int *x, int
}
return 0;
}
+#else
+ return -1;
+#endif
};

View File

@ -1,233 +0,0 @@
--- a/android/cmdline-option.c
+++ b/android/cmdline-option.c
@@ -50,16 +50,6 @@ android_parse_options( int *pargc, char
char arg2_tab[64], *arg2 = arg2_tab;
int nn;
- /* process @<name> as a special exception meaning
- * '-avd <name>'
- */
- if (aread[0][0] == '@') {
- opt->avd = aread[0]+1;
- nargs--;
- aread++;
- continue;
- }
-
/* anything that isn't an option past this points
* exits the loop
*/
--- a/android/cmdline-options.h
+++ b/android/cmdline-options.h
@@ -60,21 +60,16 @@
*/
CFG_PARAM( sysdir, "<dir>", "search for system disk images in <dir>" )
-CFG_PARAM( system, "<file>", "read initial system image from <file>" )
-CFG_PARAM( datadir, "<dir>", "write user data into <dir>" )
-CFG_PARAM( kernel, "<file>", "use specific emulated kernel" )
-CFG_PARAM( ramdisk, "<file>", "ramdisk image (default <system>/ramdisk.img" )
-CFG_PARAM( image, "<file>", "obsolete, use -system <file> instead" )
-CFG_PARAM( init_data, "<file>", "initial data image (default <system>/userdata.img" )
-CFG_PARAM( initdata, "<file>", "same as '-init-data <file>'" )
-CFG_PARAM( data, "<file>", "data image (default <datadir>/userdata-qemu.img" )
+CFG_PARAM( system, "<file>", "read system image from <file>, default: <system>/system.img" )
+CFG_PARAM( data, "<file>", "data image, default: <system>/data.img" )
+CFG_PARAM( kernel, "<file>", "use specific emulated kernel, default: kernel.bin" )
+CFG_PARAM( ramdisk, "<file>", "ramdisk image (default <system>/ramdisk.bin" )
CFG_PARAM( partition_size, "<size>", "system/data partition size in MBs" )
CFG_PARAM( cache, "<file>", "cache partition image (default is temporary file)" )
CFG_FLAG ( no_cache, "disable the cache partition" )
CFG_FLAG ( nocache, "same as -no-cache" )
OPT_PARAM( sdcard, "<file>", "SD card image (default <system>/sdcard.img")
OPT_FLAG ( wipe_data, "reset the use data image (copy it from initdata)" )
-CFG_PARAM( avd, "<name>", "use a specific android virtual device" )
CFG_PARAM( skindir, "<dir>", "search skins in <dir> (default <system>/skins)" )
CFG_PARAM( skin, "<name>", "select a given skin" )
CFG_FLAG ( no_skin, "don't use any emulator skin" )
--- a/android/main.c
+++ b/android/main.c
@@ -1606,6 +1606,7 @@ report_console( const char* proto_port,
* containing 'fileName'. this is *not* the full
* path to 'fileName'.
*/
+
static char*
_getSdkImagePath( const char* fileName )
{
@@ -1617,8 +1618,6 @@ _getSdkImagePath( const char* fileName
static const char* const searchPaths[] = {
"", /* program's directory */
- "/lib/images", /* this is for SDK 1.0 */
- "/../platforms/android-1.1/images", /* this is for SDK 1.1 */
NULL
};
@@ -1841,25 +1840,7 @@ int main(int argc, char **argv)
}
}
- /* legacy support: we used to use -system <dir> and -image <file>
- * instead of -sysdir <dir> and -system <file>, so handle this by checking
- * whether the options point to directories or files.
- */
- if (opts->image != NULL) {
- if (opts->system != NULL) {
- if (opts->sysdir != NULL) {
- derror( "You can't use -sysdir, -system and -image at the same time.\n"
- "You should probably use '-sysdir <path> -system <file>'.\n" );
- exit(2);
- }
- }
- dwarning( "Please note that -image is obsolete and that -system is now used to point\n"
- "to the system image. Next time, try using '-sysdir <path> -system <file>' instead.\n" );
- opts->sysdir = opts->system;
- opts->system = opts->image;
- opts->image = NULL;
- }
- else if (opts->system != NULL && path_is_dir(opts->system)) {
+ if (opts->system != NULL && path_is_dir(opts->system)) {
if (opts->sysdir != NULL) {
derror( "Option -system should now be followed by a file path, not a directory one.\n"
"Please use '-sysdir <path>' to point to the system directory.\n" );
@@ -1885,49 +1866,11 @@ int main(int argc, char **argv)
if (opts->noskin)
opts->no_skin = opts->noskin;
- if (opts->initdata) {
- opts->init_data = opts->initdata;
- opts->initdata = NULL;
- }
-
- /* If no AVD name was given, try to find the top of the
- * Android build tree
- */
- if (opts->avd == NULL) {
- do {
- char* out = getenv("ANDROID_PRODUCT_OUT");
-
- if (out == NULL || out[0] == 0)
- break;
-
- if (!path_exists(out)) {
- derror("Can't access ANDROID_PRODUCT_OUT as '%s'\n"
- "You need to build the Android system before launching the emulator",
- out);
- exit(2);
- }
-
- android_build_root = path_parent( out, 4 );
- if (android_build_root == NULL || !path_exists(android_build_root)) {
- derror("Can't find the Android build root from '%s'\n"
- "Please check the definition of the ANDROID_PRODUCT_OUT variable.\n"
- "It should point to your product-specific build output directory.\n",
- out );
- exit(2);
- }
- android_build_out = out;
- D( "found Android build root: %s", android_build_root );
- D( "found Android build out: %s", android_build_out );
- } while (0);
- }
/* if no virtual device name is given, and we're not in the
* Android build system, we'll need to perform some auto-detection
* magic :-)
*/
- if (opts->avd == NULL && !android_build_out)
{
- char dataDirIsSystem = 0;
-
if (!opts->sysdir) {
opts->sysdir = _getSdkImagePath("system.img");
if (!opts->sysdir) {
@@ -1945,47 +1888,30 @@ int main(int argc, char **argv)
}
if (!opts->system) {
- opts->system = _getSdkSystemImage(opts->sysdir, "-image", "system.img");
- D("autoconfig: -image %s", opts->image);
+ opts->system = _getSdkSystemImage(opts->sysdir, "-system", "system.img");
+ D("autoconfig: -system %s", opts->system);
}
if (!opts->kernel) {
- opts->kernel = _getSdkSystemImage(opts->sysdir, "-kernel", "kernel-qemu");
+ opts->kernel = _getSdkSystemImage(opts->sysdir, "-kernel", "kernel.bin");
D("autoconfig: -kernel %s", opts->kernel);
}
if (!opts->ramdisk) {
- opts->ramdisk = _getSdkSystemImage(opts->sysdir, "-ramdisk", "ramdisk.img");
+ opts->ramdisk = _getSdkSystemImage(opts->sysdir, "-ramdisk", "ramdisk.bin");
D("autoconfig: -ramdisk %s", opts->ramdisk);
}
- /* if no data directory is specified, use the system directory */
- if (!opts->datadir) {
- opts->datadir = qemu_strdup(opts->sysdir);
- dataDirIsSystem = 1;
- D("autoconfig: -datadir %s", opts->sysdir);
- }
-
if (!opts->data) {
/* check for userdata-qemu.img in the data directory */
- bufprint(tmp, tmpend, "%s/userdata-qemu.img", opts->datadir);
- if (!path_exists(tmp)) {
- derror(
- "You did not provide the name of an Android Virtual Device\n"
- "with the '-avd <name>' option. Read -help-avd for more information.\n\n"
-
- "If you *really* want to *NOT* run an AVD, consider using '-data <file>'\n"
- "to specify a data partition image file (I hope you know what you're doing).\n"
- );
- exit(2);
- }
+ bufprint(tmp, tmpend, "%s/data.img", opts->sysdir);
opts->data = qemu_strdup(tmp);
D("autoconfig: -data %s", opts->data);
}
- if (!opts->sdcard && opts->datadir) {
- bufprint(tmp, tmpend, "%s/sdcard.img", opts->datadir);
+ if (!opts->sdcard && opts->sysdir) {
+ bufprint(tmp, tmpend, "%s/sdcard.img", opts->sysdir);
if (path_exists(tmp)) {
opts->sdcard = qemu_strdup(tmp);
D("autoconfig: -sdcard %s", opts->sdcard);
@@ -2029,19 +1955,6 @@ int main(int argc, char **argv)
android_avdParams->skinName = opts->skin;
android_avdParams->skinRootPath = opts->skindir;
- /* setup the virtual device differently depending on whether
- * we are in the Android build system or not
- */
- if (opts->avd != NULL)
- {
- android_avdInfo = avdInfo_new( opts->avd, android_avdParams );
- if (android_avdInfo == NULL) {
- /* an error message has already been printed */
- dprint("could not find virtual device named '%s'", opts->avd);
- exit(1);
- }
- }
- else
{
if (!android_build_out) {
android_build_out = android_build_root = opts->sysdir;
--- a/android/avd/info.c
+++ b/android/avd/info.c
@@ -1233,10 +1233,8 @@ _getBuildImagePaths( AvdInfo* i, AvdInf
** take care of checking the state
**/
imageLoader_set ( l, AVD_IMAGE_INITSYSTEM );
- imageLoader_load( l, IMAGE_REQUIRED | IMAGE_DONT_LOCK );
-
- /* force the system image to read-only status */
- l->pState[0] = IMAGE_STATE_READONLY;
+ l->pState[0] = IMAGE_STATE_MUSTLOCK;
+ imageLoader_load( l, IMAGE_REQUIRED );
/** cache partition handling
**/

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

View File

@ -1,380 +0,0 @@
parts {
device {
background {
image device.png
}
display {
width 320
height 480
x 31
y 72
}
buttons {
soft-left {
image menu.png
x 147
y 555
}
home {
image home.png
x 48
y 590
}
back {
image back.png
x 286
y 590
}
dpad-up {
image arrow_up.png
x 140
y 595
}
dpad-down {
image arrow_down.png
x 140
y 656
}
dpad-left {
image arrow_left.png
x 111
y 598
}
dpad-right {
image arrow_right.png
x 222
y 598
}
dpad-center {
image select.png
x 142
y 626
}
phone-dial {
image send.png
x 48
y 646
}
phone-hangup {
image end.png
x 286
y 646
}
power {
image power.png
x -38
y 52
}
volume-up {
image volume_up.png
x 362
y 260
}
volume-down {
image volume_down.png
x 362
y 310
}
}
}
keyboard {
background {
image keyboard.png
}
buttons {
1 {
image key.png
x 0
y 0
}
2 {
image key.png
x 37
y 0
}
3 {
image key.png
x 74
y 0
}
4 {
image key.png
x 111
y 0
}
5 {
image key.png
x 148
y 0
}
6 {
image key.png
x 185
y 0
}
7 {
image key.png
x 222
y 0
}
8 {
image key.png
x 259
y 0
}
9 {
image key.png
x 296
y 0
}
0 {
image key.png
x 333
y 0
}
q {
image key.png
x 0
y 36
}
w {
image key.png
x 37
y 36
}
e {
image key.png
x 74
y 36
}
r {
image key.png
x 111
y 36
}
t {
image key.png
x 148
y 36
}
y {
image key.png
x 185
y 36
}
u {
image key.png
x 222
y 36
}
i {
image key.png
x 259
y 36
}
o {
image key.png
x 296
y 36
}
p {
image key.png
x 333
y 36
}
a {
image key.png
x 0
y 72
}
s {
image key.png
x 37
y 72
}
d {
image key.png
x 74
y 72
}
f {
image key.png
x 111
y 72
}
g {
image key.png
x 148
y 72
}
h {
image key.png
x 185
y 72
}
j {
image key.png
x 222
y 72
}
k {
image key.png
x 259
y 72
}
l {
image key.png
x 296
y 72
}
DEL {
image key.png
x 333
y 72
}
CAP {
image key.png
x 0
y 108
}
z {
image key.png
x 37
y 108
}
x {
image key.png
x 74
y 108
}
c {
image key.png
x 111
y 108
}
v {
image key.png
x 148
y 108
}
b {
image key.png
x 185
y 108
}
n {
image key.png
x 222
y 108
}
m {
image key.png
x 259
y 108
}
PERIOD {
image key.png
x 296
y 108
}
ENTER {
image key.png
x 333
y 108
}
ALT {
image key.png
x 0
y 144
}
SYM {
image key.png
x 37
y 144
}
AT {
image key.png
x 74
y 144
}
SPACE {
image spacebar.png
x 111
y 144
}
SLASH {
image key.png
x 259
y 144
}
COMMA {
image key.png
x 296
y 144
}
ALT2 {
image key.png
x 333
y 144
}
}
}
}
layouts {
portrait {
width 900
height 730
color 0xe0e0e0
event EV_SW:0:1
part1 {
name device
x 40
y -18
}
part2 {
name keyboard
x 480
y 200
}
}
landscape {
width 900
height 670
color 0xe0e0e0
event EV_SW:0:0
part1 {
name device
x 50
y 440
rotation 3
}
part2 {
name keyboard
x 250
y 470
}
}
}
keyboard {
charmap qwerty2
}
network {
speed full
delay none
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.8 KiB

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,71 +10,62 @@ include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=grub
PKG_VERSION:=0.97
PKG_RELEASE:=2
PKG_RELEASE:=3
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=ftp://alpha.gnu.org/gnu/grub
PKG_MD5SUM:=cd3f3eb54446be6003156158d51f4884
PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/grub-$(PKG_VERSION)
PKG_TARGETS:=bin
PKG_BUILD_DEPENDS:= grub/host
PKG_INSTALL:=1
include $(INCLUDE_DIR)/host-build.mk
include $(INCLUDE_DIR)/package.mk
export grub_cv_prog_objcopy_absolute=yes
define Package/grub
SECTION:=boot
DEPENDS:=@TARGET_x86
CATEGORY:=Boot Loaders
SUBMENU:=Boot Loaders
CATEGORY:=Utilities
SECTION:=utils
TITLE:=GRand Unified Bootloader
URL:=http://www.gnu.org/software/grub/
DEPENDS:=@TARGET_x86
endef
CONFIGURE_FLAGS:= \
--target=$(GNU_TARGET_NAME) \
--host=$(GNU_TARGET_NAME) \
--build=$(GNU_HOST_NAME)
ifneq ($(HOST_OS),Darwin)
define Build/Configure
(cd $(PKG_BUILD_DIR); \
LDFLAGS="-static" \
./configure \
$(CONFIGURE_FLAGS) \
--program-prefix="" \
--program-suffix="" \
--prefix=/usr \
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--datadir=/usr/share \
--localstatedir=/var \
--mandir=/usr/man \
--infodir=/usr/info \
$(DISABLE_NLS) \
--disable-auto-linux-mem-opt \
)
endef
MY_CONFIGURE_ARGS += \
--disable-auto-linux-mem-opt \
--disable-hercules \
--without-curses \
#
# ./configure detects whether the host compiler supports
# -fno-stack-protector but only sets STAGE2_CFLAGS accordingly
#
define Build/Compile
$(MAKE) -C $(PKG_BUILD_DIR) \
GRUB_CFLAGS="\$$$$(STAGE2_CFLAGS)" \
STAGE1_CFLAGS="\$$$$(STAGE2_CFLAGS)"
endef
MY_CONFIGURE_VARS += \
grub_cv_prog_objcopy_absolute=yes \
CONFIGURE_ARGS += $(MY_CONFIGURE_ARGS)
CONFIGURE_VARS += $(MY_CONFIGURE_VARS)
HOST_CFLAGS += $(call host-cc-option,-fno-stack-protector)
HOST_CFLAGS += $(call host-cc-option,-U_FORTIFY_SOURCE)
HOST_CONFIGURE_ARGS += $(MY_CONFIGURE_ARGS) \
--sbindir="$(STAGING_DIR_HOST)/bin" \
--disable-graphics \
HOST_CONFIGURE_VARS += $(MY_CONFIGURE_VARS)
define Build/InstallDev
$(MAKE) -C $(PKG_BUILD_DIR) \
DESTDIR="$(STAGING_DIR_HOST)" \
install
mv $(STAGING_DIR_HOST)/usr/sbin/grub $(STAGING_DIR_HOST)/bin
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/grub $(1)/usr/lib/
endef
endif
define Package/grub/install
$(INSTALL_DIR) $(1)/usr/bin
$(CP) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/usr/bin/
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/* $(1)/usr/lib/
$(INSTALL_DIR) $(1)/usr/sbin
$(CP) $(PKG_INSTALL_DIR)/usr/sbin/* $(1)/usr/sbin/
endef
$(eval $(call HostBuild))
$(eval $(call BuildPackage,grub))

View File

@ -8,9 +8,9 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=hostapd
PKG_VERSION:=20100309
PKG_VERSION:=20100418
PKG_RELEASE:=1
PKG_REV:=7b90c16aa9ca377b1a6d160c1ba0f2bd304f7e2f
PKG_REV:=0b86f67a2970403d1b1b6d34ce49f5485ef5dbb3
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=git://w1.fi/srv/git/hostap.git

View File

@ -5,6 +5,11 @@ hostapd_set_bss_options() {
config_get enc "$vif" encryption
config_get wpa_group_rekey "$vif" wpa_group_rekey
config_get_bool ap_isolate "$vif" isolate 0
if [ "$ap_isolate" -gt 0 ]; then
append "$var" "ap_isolate=$ap_isolate" "$N"
fi
# Examples:
# psk-mixed/tkip => WPA1+2 PSK, TKIP

View File

@ -0,0 +1,21 @@
--- a/src/drivers/nl80211_copy.h
+++ b/src/drivers/nl80211_copy.h
@@ -709,6 +709,9 @@ enum nl80211_commands {
* NL80211_CMD_AUTHENTICATE, NL80211_CMD_DEAUTHENTICATE,
* NL80211_CMD_DISASSOCIATE.
*
+ * @NL80211_ATTR_AP_ISOLATE: (AP mode) Do not forward traffic between stations
+ * connected to this BSS.
+ *
* @NL80211_ATTR_MAX: highest attribute number currently defined
* @__NL80211_ATTR_AFTER_LAST: internal use
*/
@@ -864,6 +867,8 @@ enum nl80211_attrs {
NL80211_ATTR_LOCAL_STATE_CHANGE,
+ NL80211_ATTR_AP_ISOLATE,
+
/* add attributes here, update the policy in nl80211.c */
__NL80211_ATTR_AFTER_LAST,

View File

@ -1,6 +1,6 @@
--- a/src/ap/hostapd.c
+++ b/src/ap/hostapd.c
@@ -650,7 +650,6 @@ static int setup_interface(struct hostap
@@ -659,7 +659,6 @@ static int setup_interface(struct hostap
country[3] = '\0';
if (hostapd_set_country(hapd, country) < 0) {
wpa_printf(MSG_ERROR, "Failed to set country code");

View File

@ -1,6 +1,6 @@
--- a/src/ap/hostapd.h
+++ b/src/ap/hostapd.h
@@ -238,6 +238,7 @@ struct hostapd_iface {
@@ -245,6 +245,7 @@ struct hostapd_iface {
int (*for_each_interface)(struct hapd_interfaces *interfaces,
int (*cb)(struct hostapd_iface *iface,
void *ctx), void *ctx);
@ -10,7 +10,7 @@
/* hostapd.c */
--- a/src/ap/hostapd.c
+++ b/src/ap/hostapd.c
@@ -746,6 +746,9 @@ int hostapd_setup_interface_complete(str
@@ -754,6 +754,9 @@ int hostapd_setup_interface_complete(str
wpa_printf(MSG_DEBUG, "%s: Setup of interface done.",
iface->bss[0]->conf->iface);
@ -55,7 +55,7 @@
hapd_iface->reload_config = hostapd_reload_config;
hapd_iface->config_read_cb = hostapd_config_read;
hapd_iface->config_fname = os_strdup(config_file);
@@ -390,7 +402,7 @@ static int hostapd_global_init(struct ha
@@ -391,7 +403,7 @@ static int hostapd_global_init(struct ha
}
@ -64,7 +64,7 @@
{
#ifdef EAP_SERVER_TNC
tncs_global_deinit();
@@ -408,8 +420,7 @@ static void hostapd_global_deinit(const
@@ -409,8 +421,7 @@ static void hostapd_global_deinit(const
}
@ -74,7 +74,7 @@
{
#ifdef EAP_SERVER_TNC
int tnc = 0;
@@ -430,11 +441,6 @@ static int hostapd_global_run(struct hap
@@ -431,11 +442,6 @@ static int hostapd_global_run(struct hap
}
#endif /* EAP_SERVER_TNC */
@ -86,7 +86,7 @@
eloop_run();
return 0;
@@ -478,8 +484,7 @@ int main(int argc, char *argv[])
@@ -479,8 +485,7 @@ int main(int argc, char *argv[])
struct hapd_interfaces interfaces;
int ret = 1;
size_t i;
@ -96,7 +96,7 @@
if (os_program_init())
return -1;
@@ -544,7 +549,7 @@ int main(int argc, char *argv[])
@@ -545,7 +550,7 @@ int main(int argc, char *argv[])
goto out;
}
@ -105,7 +105,7 @@
goto out;
ret = 0;
@@ -555,7 +560,7 @@ int main(int argc, char *argv[])
@@ -556,7 +561,7 @@ int main(int argc, char *argv[])
hostapd_interface_deinit_free(interfaces.iface[i]);
os_free(interfaces.iface);
@ -116,7 +116,7 @@
os_program_deinit();
--- a/hostapd/config_file.c
+++ b/hostapd/config_file.c
@@ -1855,6 +1855,8 @@ struct hostapd_config * hostapd_config_r
@@ -1857,6 +1857,8 @@ struct hostapd_config * hostapd_config_r
}
#endif /* CONFIG_IEEE80211W */
#ifdef CONFIG_IEEE80211N
@ -127,7 +127,7 @@
} else if (os_strcmp(buf, "ht_capab") == 0) {
--- a/src/ap/ap_config.h
+++ b/src/ap/ap_config.h
@@ -366,6 +366,7 @@ struct hostapd_config {
@@ -369,6 +369,7 @@ struct hostapd_config {
int ht_op_mode_fixed;
u16 ht_capab;

View File

@ -26,7 +26,7 @@
LIBS += $(DRV_AP_LIBS)
ifdef CONFIG_L2_PACKET
@@ -738,6 +743,12 @@ install: all
@@ -739,6 +744,12 @@ install: all
BCHECK=../src/drivers/build.hostapd
@ -39,7 +39,7 @@
hostapd: $(BCHECK) $(OBJS)
$(CC) $(LDFLAGS) -o hostapd $(OBJS) $(LIBS)
@@ -776,6 +787,12 @@ HOBJS += ../src/crypto/aes-internal.o
@@ -777,6 +788,12 @@ HOBJS += ../src/crypto/aes-internal.o
HOBJS += ../src/crypto/aes-internal-enc.o
endif
@ -86,7 +86,7 @@
endif
ifdef NEED_RSN_AUTHENTICATOR
@@ -1261,6 +1272,12 @@ BCHECK=../src/drivers/build.wpa_supplica
@@ -1262,6 +1273,12 @@ BCHECK=../src/drivers/build.wpa_supplica
wpa_priv: $(BCHECK) $(OBJS_priv)
$(LDO) $(LDFLAGS) -o wpa_priv $(OBJS_priv) $(LIBS)
@ -99,7 +99,7 @@
wpa_supplicant: .config $(BCHECK) $(OBJS) $(EXTRA_progs)
$(LDO) $(LDFLAGS) -o wpa_supplicant $(OBJS) $(LIBS) $(EXTRALIBS)
@@ -1320,6 +1337,12 @@ endif
@@ -1321,6 +1338,12 @@ endif
$(Q)$(CC) -c -o $@ $(CFLAGS) $<
@$(E) " CC " $<
@ -114,7 +114,7 @@
wpa_cli.exe: wpa_cli
--- a/src/drivers/driver.h
+++ b/src/drivers/driver.h
@@ -2413,8 +2413,8 @@ union wpa_event_data {
@@ -2449,8 +2449,8 @@ union wpa_event_data {
* Driver wrapper code should call this function whenever an event is received
* from the driver.
*/
@ -127,7 +127,7 @@
/*
--- a/src/ap/drv_callbacks.c
+++ b/src/ap/drv_callbacks.c
@@ -337,8 +337,8 @@ static void hostapd_event_eapol_rx(struc
@@ -375,8 +375,8 @@ static void hostapd_event_eapol_rx(struc
}
@ -138,7 +138,7 @@
{
struct hostapd_data *hapd = ctx;
@@ -415,5 +415,6 @@ void wpa_supplicant_event(void *ctx, enu
@@ -453,5 +453,6 @@ void wpa_supplicant_event(void *ctx, enu
break;
}
}
@ -169,8 +169,8 @@
for (;;) {
--- a/wpa_supplicant/events.c
+++ b/wpa_supplicant/events.c
@@ -1506,8 +1506,8 @@ static void wpa_supplicant_event_ibss_rs
#endif /* CONFIG_IBSS_RSN */
@@ -1577,8 +1577,8 @@ static void ft_rx_action(struct wpa_supp
#endif /* CONFIG_IEEE80211R */
-void wpa_supplicant_event(void *ctx, enum wpa_event_type event,
@ -179,10 +179,10 @@
+ union wpa_event_data *data)
{
struct wpa_supplicant *wpa_s = ctx;
u16 reason_code = 0;
--- a/wpa_supplicant/wpa_supplicant.c
+++ b/wpa_supplicant/wpa_supplicant.c
@@ -2215,6 +2215,9 @@ struct wpa_supplicant * wpa_supplicant_g
@@ -2223,6 +2223,9 @@ struct wpa_supplicant * wpa_supplicant_g
return NULL;
}
@ -192,7 +192,7 @@
/**
* wpa_supplicant_init - Initialize %wpa_supplicant
@@ -2233,6 +2236,7 @@ struct wpa_global * wpa_supplicant_init(
@@ -2241,6 +2244,7 @@ struct wpa_global * wpa_supplicant_init(
if (params == NULL)
return NULL;
@ -202,7 +202,7 @@
wpa_debug_open_syslog();
--- a/hostapd/main.c
+++ b/hostapd/main.c
@@ -478,6 +478,9 @@ static void usage(void)
@@ -479,6 +479,9 @@ static void usage(void)
exit(1);
}
@ -212,7 +212,7 @@
int main(int argc, char *argv[])
{
@@ -489,6 +492,7 @@ int main(int argc, char *argv[])
@@ -490,6 +493,7 @@ int main(int argc, char *argv[])
if (os_program_init())
return -1;

View File

@ -8,7 +8,7 @@
size_t max_ssids;
enum wpa_states prev_state;
@@ -310,6 +311,16 @@ static void wpa_supplicant_scan(void *el
@@ -311,6 +312,16 @@ static void wpa_supplicant_scan(void *el
wpa_s->wpa_state == WPA_INACTIVE)
wpa_supplicant_set_state(wpa_s, WPA_SCANNING);
@ -25,7 +25,7 @@
/* Find the starting point from which to continue scanning */
ssid = wpa_s->conf->ssid;
if (wpa_s->prev_scan_ssid != WILDCARD_SSID_SCAN) {
@@ -371,6 +382,9 @@ static void wpa_supplicant_scan(void *el
@@ -374,6 +385,9 @@ static void wpa_supplicant_scan(void *el
int_array_sort_unique(params.freqs);
}

View File

@ -1,11 +1,11 @@
--- a/wpa_supplicant/events.c
+++ b/wpa_supplicant/events.c
@@ -924,7 +924,7 @@ static void wpa_supplicant_event_scan_re
@@ -958,7 +958,7 @@ static void wpa_supplicant_event_scan_re
wpa_printf(MSG_DEBUG, "Setup a new network");
wpa_supplicant_associate(wpa_s, NULL, ssid);
} else
- wpa_supplicant_req_new_scan(wpa_s, 5);
+ wpa_supplicant_req_new_scan(wpa_s, 0);
}
}
#endif /* CONFIG_NO_SCAN_PROCESSING */
} else {
- int timeout_sec = 5;
+ int timeout_sec = 0;
int timeout_usec = 0;
wpa_supplicant_req_new_scan(wpa_s, timeout_sec,
timeout_usec);

View File

@ -1,6 +1,6 @@
--- a/src/drivers/driver_nl80211.c
+++ b/src/drivers/driver_nl80211.c
@@ -4435,9 +4435,11 @@ static int i802_set_wds_sta(void *priv,
@@ -4576,9 +4576,11 @@ static int i802_set_wds_sta(void *priv,
wpa_printf(MSG_DEBUG, "nl80211: Set WDS STA addr=" MACSTR
" aid=%d val=%d name=%s", MAC2STR(addr), aid, val, name);
if (val) {
@ -16,7 +16,7 @@
} else {
--- a/src/ap/ieee802_11.c
+++ b/src/ap/ieee802_11.c
@@ -1559,6 +1559,9 @@ static void handle_assoc_cb(struct hosta
@@ -1614,6 +1614,9 @@ static void handle_assoc_cb(struct hosta
"Could not add STA to kernel driver");
}

View File

@ -21,7 +21,7 @@
/* clear to get error below if setting is invalid */
--- a/src/drivers/driver_nl80211.c
+++ b/src/drivers/driver_nl80211.c
@@ -4425,7 +4425,8 @@ static int i802_set_sta_vlan(void *priv,
@@ -4566,7 +4566,8 @@ static int i802_set_sta_vlan(void *priv,
}
@ -31,7 +31,7 @@
{
struct i802_bss *bss = priv;
struct wpa_driver_nl80211_data *drv = bss->drv;
@@ -4439,6 +4440,10 @@ static int i802_set_wds_sta(void *priv,
@@ -4580,6 +4581,10 @@ static int i802_set_wds_sta(void *priv,
if (nl80211_create_iface(drv, name, NL80211_IFTYPE_AP_VLAN,
NULL, 1) < 0)
return -1;
@ -44,7 +44,7 @@
return i802_set_sta_vlan(priv, addr, name, 0);
--- a/src/ap/ap_drv_ops.c
+++ b/src/ap/ap_drv_ops.c
@@ -253,9 +253,15 @@ static int hostapd_vlan_if_remove(struct
@@ -265,9 +265,15 @@ static int hostapd_vlan_if_remove(struct
static int hostapd_set_wds_sta(struct hostapd_data *hapd, const u8 *addr,
int aid, int val)
{
@ -63,7 +63,7 @@
--- a/src/drivers/driver.h
+++ b/src/drivers/driver.h
@@ -1610,7 +1610,8 @@ struct wpa_driver_ops {
@@ -1622,7 +1622,8 @@ struct wpa_driver_ops {
* @val: 1 = bind to 4-address WDS; 0 = unbind
* Returns: 0 on success, -1 on failure
*/

View File

@ -1,6 +1,6 @@
--- a/src/ap/hostapd.c
+++ b/src/ap/hostapd.c
@@ -707,6 +707,16 @@ int hostapd_setup_interface_complete(str
@@ -715,6 +715,16 @@ int hostapd_setup_interface_complete(str
}
}

View File

@ -0,0 +1,108 @@
--- a/hostapd/config_file.c
+++ b/hostapd/config_file.c
@@ -1266,6 +1266,8 @@ struct hostapd_config * hostapd_config_r
}
} else if (os_strcmp(buf, "wds_sta") == 0) {
bss->wds_sta = atoi(pos);
+ } else if (os_strcmp(buf, "ap_isolate") == 0) {
+ bss->isolate = atoi(pos);
} else if (os_strcmp(buf, "ap_max_inactivity") == 0) {
bss->ap_max_inactivity = atoi(pos);
} else if (os_strcmp(buf, "country_code") == 0) {
--- a/src/ap/ap_config.h
+++ b/src/ap/ap_config.h
@@ -199,6 +199,7 @@ struct hostapd_bss_config {
struct mac_acl_entry *deny_mac;
int num_deny_mac;
int wds_sta;
+ int isolate;
int auth_algs; /* bitfield of allowed IEEE 802.11 authentication
* algorithms, WPA_AUTH_ALG_{OPEN,SHARED,LEAP} */
--- a/src/drivers/driver.h
+++ b/src/drivers/driver.h
@@ -1626,6 +1626,14 @@ struct wpa_driver_ops {
const char *bridge_ifname);
/**
+ * set_ap_isolate - Enable/disable AP isolation
+ * @priv: private driver interface data
+ * @val: 1 = enabled; 0 = disabled
+ * Returns: 0 on success, -1 on failure
+ */
+ int (*set_ap_isolate)(void *priv, int val);
+
+ /**
* send_action - Transmit an Action frame
* @priv: Private driver interface data
* @freq: Frequency (in MHz) of the channel
--- a/src/drivers/driver_nl80211.c
+++ b/src/drivers/driver_nl80211.c
@@ -4263,6 +4263,29 @@ static int i802_set_rate_sets(void *priv
return -ENOBUFS;
}
+static int i802_set_ap_isolate(void *priv, int val)
+{
+ struct i802_bss *bss = priv;
+ struct wpa_driver_nl80211_data *drv = bss->drv;
+ struct nl_msg *msg;
+ int i;
+
+ msg = nlmsg_alloc();
+ if (!msg)
+ return -ENOMEM;
+
+ genlmsg_put(msg, 0, 0, genl_family_get_id(drv->nl80211), 0, 0,
+ NL80211_CMD_SET_BSS, 0);
+
+ NLA_PUT_U8(msg, NL80211_ATTR_AP_ISOLATE, !!val);
+
+ NLA_PUT_U32(msg, NL80211_ATTR_IFINDEX, if_nametoindex(bss->ifname));
+
+ return send_and_recv_msgs(drv, msg, NULL, NULL);
+ nla_put_failure:
+ return -ENOBUFS;
+}
+
#endif /* HOSTAPD */
@@ -5372,6 +5395,7 @@ const struct wpa_driver_ops wpa_driver_n
.set_tx_queue_params = i802_set_tx_queue_params,
.set_sta_vlan = i802_set_sta_vlan,
.set_wds_sta = i802_set_wds_sta,
+ .set_ap_isolate = i802_set_ap_isolate,
#endif /* HOSTAPD */
.set_freq = i802_set_freq,
.send_action = wpa_driver_nl80211_send_action,
--- a/src/ap/ap_drv_ops.c
+++ b/src/ap/ap_drv_ops.c
@@ -180,6 +180,14 @@ static int hostapd_set_radius_acl_expire
}
+static int hostapd_set_ap_isolate(struct hostapd_data *hapd, int value)
+{
+ if (hapd->driver == NULL || hapd->driver->set_ap_isolate == NULL)
+ return 0;
+ hapd->driver->set_ap_isolate(hapd->drv_priv, value);
+}
+
+
static int hostapd_set_bss_params(struct hostapd_data *hapd,
int use_protection)
{
@@ -229,6 +237,12 @@ static int hostapd_set_bss_params(struct
"driver");
ret = -1;
}
+ if (hostapd_set_ap_isolate(hapd, hapd->conf->isolate) &&
+ !hapd->conf->isolate) {
+ wpa_printf(MSG_ERROR, "Could not enable AP isolation in "
+ "kernel driver");
+ ret = -1;
+ }
return ret;
}

View File

@ -0,0 +1,109 @@
--- a/src/drivers/driver_nl80211.c
+++ b/src/drivers/driver_nl80211.c
@@ -1119,7 +1119,6 @@ nla_put_failure:
}
-#ifndef HOSTAPD
struct wiphy_info_data {
int max_scan_ssids;
int ap_supported;
@@ -1231,7 +1230,6 @@ static int wpa_driver_nl80211_capa(struc
return 0;
}
-#endif /* HOSTAPD */
static int wpa_driver_nl80211_init_nl(struct wpa_driver_nl80211_data *drv,
@@ -1371,6 +1369,7 @@ static void * wpa_driver_nl80211_init(vo
drv->monitor_ifidx = -1;
drv->monitor_sock = -1;
drv->ioctl_sock = -1;
+ drv->nlmode = NL80211_IFTYPE_STATION;
if (wpa_driver_nl80211_init_nl(drv, ctx)) {
os_free(drv);
@@ -1468,24 +1467,23 @@ wpa_driver_nl80211_finish_drv_init(struc
drv->ifindex = if_nametoindex(bss->ifname);
drv->first_bss.ifindex = drv->ifindex;
-#ifndef HOSTAPD
- if (wpa_driver_nl80211_set_mode(bss, IEEE80211_MODE_INFRA) < 0) {
- wpa_printf(MSG_DEBUG, "nl80211: Could not configure driver to "
- "use managed mode");
- }
-
- if (linux_set_iface_flags(drv->ioctl_sock, bss->ifname, 1)) {
- wpa_printf(MSG_ERROR, "Could not set interface '%s' UP",
- bss->ifname);
- return -1;
- }
+ if (drv->nlmode == NL80211_IFTYPE_STATION) {
+ if (wpa_driver_nl80211_set_mode(bss, IEEE80211_MODE_INFRA) < 0)
+ wpa_printf(MSG_DEBUG, "nl80211: Could not configure "
+ "driver to use managed mode");
+
+ if (linux_set_iface_flags(drv->ioctl_sock, bss->ifname, 1)) {
+ wpa_printf(MSG_ERROR, "Could not set interface '%s' UP",
+ bss->ifname);
+ return -1;
+ }
- if (wpa_driver_nl80211_capa(drv))
- return -1;
+ if (wpa_driver_nl80211_capa(drv))
+ return -1;
- netlink_send_oper_ifla(drv->netlink, drv->ifindex,
- 1, IF_OPER_DORMANT);
-#endif /* HOSTAPD */
+ netlink_send_oper_ifla(drv->netlink, drv->ifindex,
+ 1, IF_OPER_DORMANT);
+ }
if (nl80211_register_action_frames(drv) < 0) {
wpa_printf(MSG_DEBUG, "nl80211: Failed to register Action "
@@ -2143,13 +2141,9 @@ static int wpa_driver_nl80211_set_key(co
*/
if (ret || !set_tx || alg == WPA_ALG_NONE)
return ret;
-#ifdef HOSTAPD
- if (addr)
- return ret;
-#else /* HOSTAPD */
+
if (drv->nlmode == NL80211_IFTYPE_AP && addr)
return ret;
-#endif /* HOSTAPD */
msg = nlmsg_alloc();
if (!msg)
@@ -2990,7 +2984,8 @@ static void nl80211_remove_iface(struct
#ifdef HOSTAPD
/* stop listening for EAPOL on this interface */
- del_ifidx(drv, ifidx);
+ if (drv->nlmode == NL80211_IFTYPE_AP)
+ del_ifidx(drv, ifidx);
#endif /* HOSTAPD */
msg = nlmsg_alloc();
@@ -3063,7 +3058,8 @@ static int nl80211_create_iface_once(str
#ifdef HOSTAPD
/* start listening for EAPOL on this interface */
- add_ifidx(drv, ifidx);
+ if (drv->nlmode == NL80211_IFTYPE_AP)
+ add_ifidx(drv, ifidx);
#endif /* HOSTAPD */
if (addr && iftype != NL80211_IFTYPE_MONITOR &&
@@ -4766,6 +4762,7 @@ static void *i802_init(struct hostapd_da
return NULL;
drv = bss->drv;
+ drv->nlmode = NL80211_IFTYPE_AP;
if (linux_br_get(brname, params->ifname) == 0) {
wpa_printf(MSG_DEBUG, "nl80211: Interface %s is in bridge %s",
params->ifname, brname);

View File

@ -0,0 +1,19 @@
--- a/wpa_supplicant/wpa_supplicant.c
+++ b/wpa_supplicant/wpa_supplicant.c
@@ -543,10 +543,16 @@ void wpa_supplicant_set_state(struct wpa
wpa_s->reassociated_connection = 1;
wpa_drv_set_operstate(wpa_s, 1);
wpa_s->after_wps = 0;
+#ifndef IEEE8021X_EAPOL
+ wpa_drv_set_supp_port(wpa_s, 1);
+#endif
} else if (state == WPA_DISCONNECTED || state == WPA_ASSOCIATING ||
state == WPA_ASSOCIATED) {
wpa_s->new_connection = 1;
wpa_drv_set_operstate(wpa_s, 0);
+#ifndef IEEE8021X_EAPOL
+ wpa_drv_set_supp_port(wpa_s, 0);
+#endif
}
wpa_s->wpa_state = state;

View File

@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=hotplug2
PKG_REV:=201
PKG_VERSION:=$(PKG_REV)
PKG_RELEASE:=1
PKG_RELEASE:=2
PKG_SOURCE_PROTO:=svn
PKG_SOURCE_VERSION:=$(PKG_REV)

View File

@ -601,7 +601,7 @@ $(eval $(call KernelPackage,sched))
define KernelPackage/ax25
SUBMENU:=$(NETWORK_SUPPORT_MENU)
TITLE:=AX25 support
DEPENDS:= +kmod-crc16
DEPENDS:= +!(LINUX_2_4||TARGET_xburst):kmod-crc16
KCONFIG:= \
CONFIG_AX25 \
CONFIG_MKISS

View File

@ -62,6 +62,7 @@ $(eval $(call KernelPackage,crc7))
define KernelPackage/crc16
SUBMENU:=$(OTHER_MENU)
TITLE:=CRC16 support
DEPENDS:=@!(LINUX_2_4||TARGET_xburst)
KCONFIG:=CONFIG_CRC16
FILES:=$(LINUX_DIR)/lib/crc16.$(LINUX_KMOD_SUFFIX)
AUTOLOAD:=$(call AutoLoad,20,crc16,1)
@ -105,8 +106,22 @@ define KernelPackage/lp
AUTOLOAD:=$(call AutoLoad,50,parport lp)
endef
define KernelPackage/lp/2.4
FILES:= \
$(LINUX_DIR)/drivers/parport/parport.$(LINUX_KMOD_SUFFIX) \
$(LINUX_DIR)/drivers/parport/parport_*.$(LINUX_KMOD_SUFFIX) \
$(LINUX_DIR)/drivers/char/lp.$(LINUX_KMOD_SUFFIX) \
$(LINUX_DIR)/drivers/char/ppdev.$(LINUX_KMOD_SUFFIX)
AUTOLOAD:=$(call AutoLoad,50, \
parport \
parport_splink \
lp \
)
endef
$(eval $(call KernelPackage,lp))
define KernelPackage/pcspkr
SUBMENU:=$(OTHER_MENU)
TITLE:=PC speaker support
@ -261,7 +276,7 @@ $(eval $(call KernelPackage,ssb))
define KernelPackage/bluetooth
SUBMENU:=$(OTHER_MENU)
TITLE:=Bluetooth support
DEPENDS:=@USB_SUPPORT +kmod-crc16 +kmod-usb-core +!TARGET_x86:kmod-hid \
DEPENDS:=@USB_SUPPORT +!(LINUX_2_4||TARGET_xburst):kmod-crc16 +kmod-usb-core +!TARGET_x86:kmod-hid \
+(TARGET_x86||TARGET_s3c24xx||TARGET_brcm47xx||TARGET_ar71xx):kmod-rfkill
KCONFIG:= \
CONFIG_BLUEZ \
@ -652,8 +667,16 @@ $(eval $(call KernelPackage,sc520-wdt))
define KernelPackage/input-core
SUBMENU:=$(OTHER_MENU)
TITLE:=Input device core
DEPENDS:=@LINUX_2_6 @!TARGET_x86
DEPENDS:=@!TARGET_x86
KCONFIG:=CONFIG_INPUT
endef
define KernelPackage/input-core/2.4
FILES:=$(LINUX_DIR)/drivers/input/input.$(LINUX_KMOD_SUFFIX)
AUTOLOAD:=$(call AutoLoad,19,input)
endef
define KernelPackage/input-core/2.6
FILES:=$(LINUX_DIR)/drivers/input/input-core.$(LINUX_KMOD_SUFFIX)
AUTOLOAD:=$(call AutoLoad,19,input-core)
endef

View File

@ -10,12 +10,12 @@ include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=mac80211
PKG_VERSION:=2010-03-24
PKG_RELEASE:=5
PKG_VERSION:=2010-04-28
PKG_RELEASE:=1
PKG_SOURCE_URL:=http://mirror2.openwrt.org/sources
# http://www.orbit-lab.org/kernel/compat-wireless-2.6/2010/11 \
# http://wireless.kernel.org/download/compat-wireless-2.6
PKG_MD5SUM:=73357c52b5d6888ea3228b2ca8aa5eca
PKG_MD5SUM:=4b8c23ac7f33af7556034635af744c67
PKG_SOURCE:=compat-wireless-$(PKG_VERSION).tar.bz2
PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/compat-wireless-$(PKG_VERSION)
@ -425,6 +425,7 @@ define KernelPackage/ath9k/config
config PACKAGE_ATH9K_USE_MINSTREL
bool "use the new minstrel_ht rate control for ath9k"
default y
endmenu
endef
@ -531,6 +532,20 @@ define KernelPackage/net-ipw2200/description
- ipw2200
endef
define KernelPackage/mwl8k
$(call KernelPackage/mac80211/Default)
TITLE:=Driver for Marvell TOPDOG 802.11 Wireless cards
URL:=http://wireless.kernel.org/en/users/Drivers/mwl8k
DEPENDS+= @PCI_SUPPORT +kmod-mac80211
FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/mwl8k.$(LINUX_KMOD_SUFFIX)
AUTOLOAD:=$(call AutoLoad,27,mwl8k)
endef
define KernelPackage/mwl8k/description
Kernel modules for Marvell TOPDOG 802.11 Wireless cards
endef
#Broadcom firmware
ifneq ($(CONFIG_B43_EXPERIMENTAL),)
PKG_B43_FWV4_NAME:=broadcom-wl
@ -852,7 +867,7 @@ MAKE_OPTS:= \
CONFIG_LIB80211_CRYPT_TKIP= \
CONFIG_IWLWIFI= \
CONFIG_IWLAGN= \
CONFIG_MWL8K= \
CONFIG_MWL8K=$(if $(CONFIG_PACKAGE_kmod-mwl8k),m) \
CONFIG_ATMEL= \
CONFIG_PCMCIA_ATMEL= \
CONFIG_ADM8211= \
@ -1051,3 +1066,4 @@ $(eval $(call KernelPackage,b43legacy))
$(eval $(call KernelPackage,net-libipw))
$(eval $(call KernelPackage,net-ipw2100))
$(eval $(call KernelPackage,net-ipw2200))
$(eval $(call KernelPackage,mwl8k))

View File

@ -416,6 +416,10 @@ detect_mac80211() {
[ "$(($ht_cap & 1))" -eq 1 ] && append ht_capab "$list LDPC" "$N"
[ "$(($ht_cap & 32))" -eq 32 ] && append ht_capab "$list SHORT-GI-20" "$N"
[ "$(($ht_cap & 64))" -eq 64 ] && append ht_capab "$list SHORT-GI-40" "$N"
[ "$(($ht_cap & 128))" -eq 128 ] && append ht_capab "$list TX-STBC" "$N"
[ "$(($ht_cap & 768))" -eq 256 ] && append ht_capab "$list RX-STBC1" "$N"
[ "$(($ht_cap & 768))" -eq 512 ] && append ht_capab "$list RX-STBC12" "$N"
[ "$(($ht_cap & 768))" -eq 768 ] && append ht_capab "$list RX-STBC123" "$N"
[ "$(($ht_cap & 4096))" -eq 4096 ] && append ht_capab "$list DSSS_CCK-40" "$N"
}
iw phy "$dev" info | grep -q '2412 MHz' || { mode_band="a"; channel="36"; }

View File

@ -1,6 +1,6 @@
--- a/config.mk
+++ b/config.mk
@@ -269,8 +269,8 @@ endif
@@ -256,8 +256,8 @@ endif
CONFIG_P54_PCI=m

View File

@ -9,7 +9,7 @@
ifeq ($(CONFIG_MAC80211),y)
$(error "ERROR: you have MAC80211 compiled into the kernel, CONFIG_MAC80211=y, as such you cannot replace its mac80211 driver. You need this set to CONFIG_MAC80211=m. If you are using Fedora upgrade your kernel as later version should this set as modular. For further information on Fedora see https://bugzilla.redhat.com/show_bug.cgi?id=470143. If you are using your own kernel recompile it and make mac80211 modular")
@@ -492,8 +492,8 @@ endif
@@ -481,8 +481,8 @@ endif
# We need the backported rfkill module on kernel < 2.6.31.
# In more recent kernel versions use the in kernel rfkill module.
ifdef CONFIG_COMPAT_KERNEL_31

View File

@ -1,6 +1,6 @@
--- a/config.mk
+++ b/config.mk
@@ -299,10 +299,10 @@ endif
@@ -286,10 +286,10 @@ endif
CONFIG_MWL8K=m
# Ethernet drivers go here
@ -15,7 +15,7 @@
CONFIG_HERMES=m
CONFIG_HERMES_CACHE_FW_ON_INIT=y
@@ -355,10 +355,10 @@ CONFIG_USB_NET_COMPAT_RNDIS_HOST=n
@@ -342,10 +342,10 @@ CONFIG_USB_NET_COMPAT_RNDIS_HOST=n
CONFIG_USB_NET_COMPAT_RNDIS_WLAN=n
CONFIG_USB_NET_COMPAT_CDCETHER=n
else

View File

@ -9,7 +9,7 @@
CONFIG_SSB=m
else
include $(KLIB_BUILD)/.config
@@ -194,7 +194,7 @@ CONFIG_B43=m
@@ -181,7 +181,7 @@ CONFIG_B43=m
CONFIG_B43_HWRNG=y
CONFIG_B43_PCI_AUTOSELECT=y
ifneq ($(CONFIG_PCMCIA),)
@ -18,7 +18,7 @@
endif
CONFIG_B43_LEDS=y
CONFIG_B43_PHY_LP=y
@@ -246,7 +246,7 @@ CONFIG_SSB_BLOCKIO=y
@@ -233,7 +233,7 @@ CONFIG_SSB_BLOCKIO=y
CONFIG_SSB_PCIHOST=y
CONFIG_SSB_B43_PCI_BRIDGE=y
ifneq ($(CONFIG_PCMCIA),)

View File

@ -1,6 +1,6 @@
--- a/config.mk
+++ b/config.mk
@@ -407,8 +407,8 @@ endif # end of SPI driver list
@@ -396,8 +396,8 @@ endif # end of SPI driver list
ifneq ($(CONFIG_MMC),)

View File

@ -1,6 +1,6 @@
--- a/config.mk
+++ b/config.mk
@@ -198,7 +198,7 @@ ifneq ($(CONFIG_PCMCIA),)
@@ -185,7 +185,7 @@ ifneq ($(CONFIG_PCMCIA),)
endif
CONFIG_B43_LEDS=y
CONFIG_B43_PHY_LP=y

View File

@ -1,33 +0,0 @@
commit b7d48ccc687c44213121b1b565dccdc4488f5d9a
Author: Pavel Roskin <proski@gnu.org>
Date: Wed Mar 24 17:23:37 2010 -0400
compat: add compat-2.6.35.h and IW_HANDLER
Signed-off-by: Pavel Roskin <proski@gnu.org>
--- /dev/null
+++ b/include/linux/compat-2.6.35.h
@@ -0,0 +1,13 @@
+#ifndef LINUX_26_35_COMPAT_H
+#define LINUX_26_35_COMPAT_H
+
+#include <linux/version.h>
+
+#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,35))
+
+#define IW_HANDLER(id, func) \
+ [IW_IOCTL_IDX(id)] = func
+
+#endif /* (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,35)) */
+
+#endif /* LINUX_26_35_COMPAT_H */
--- a/include/linux/compat-2.6.h
+++ b/include/linux/compat-2.6.h
@@ -27,5 +27,6 @@
#include <linux/compat-2.6.32.h>
#include <linux/compat-2.6.33.h>
#include <linux/compat-2.6.34.h>
+#include <linux/compat-2.6.35.h>
#endif /* LINUX_26_COMPAT_H */

View File

@ -1,6 +1,6 @@
--- a/config.mk
+++ b/config.mk
@@ -276,12 +276,12 @@ CONFIG_RTL8180=m
@@ -248,12 +248,12 @@ CONFIG_RTL8180=m
CONFIG_ADM8211=m
@ -15,7 +15,7 @@
# CONFIG_RT2800PCI_RT30XX=y
# CONFIG_RT2800PCI_RT35XX=y
# CONFIG_RT2800PCI_SOC=y
@@ -381,7 +381,7 @@ CONFIG_RT2800USB=m
@@ -355,7 +355,7 @@ CONFIG_RT2800USB=m
# CONFIG_RT2800USB_RT35XX=y
# CONFIG_RT2800USB_UNKNOWN=y
endif

View File

@ -1,8 +1,8 @@
--- a/include/linux/compat-2.6.34.h
+++ b/include/linux/compat-2.6.34.h
@@ -164,6 +164,8 @@ static inline void device_unlock(struct
#define rcu_dereference_check(p, c) rcu_dereference(p)
@@ -197,6 +197,8 @@ do { \
*/
#define sysfs_bin_attr_init(bin_attr) sysfs_attr_init(&(bin_attr)->attr)
+#define rcu_dereference_check(p, c) rcu_dereference(p)
+

View File

@ -1,8 +1,8 @@
--- a/include/linux/tracepoint.h
+++ b/include/linux/tracepoint.h
@@ -1,6 +1,8 @@
#ifndef _COMPAT_LINUX_TRACEPOINT_H
#define _COMPAT_LINUX_TRACEPOINT_H 1
@@ -3,6 +3,8 @@
#include <linux/version.h>
+#include <linux/version.h>
+

View File

@ -1,45 +0,0 @@
From 181ce6f71d907f42ab73376ce154015a835a6d8a Mon Sep 17 00:00:00 2001
From: Javier Cardona <javier@cozybit.com>
Date: Mon, 29 Mar 2010 11:00:20 -0700
Subject: [PATCH] mac80211: Handle mesh action frames in ieee80211_rx_h_action
This fixes the problem introduced in commit
8404080568613d93ad7cf0a16dfb68 which broke mesh peer link establishment.
changes:
v2 Added missing break (Johannes)
v3 Broke original patch into two (Johannes)
Signed-off-by: Javier Cardona <javier@cozybit.com>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
---
net/mac80211/mesh.c | 3 ---
net/mac80211/rx.c | 5 +++++
2 files changed, 5 insertions(+), 3 deletions(-)
--- a/net/mac80211/mesh.c
+++ b/net/mac80211/mesh.c
@@ -749,9 +749,6 @@ ieee80211_mesh_rx_mgmt(struct ieee80211_
switch (fc & IEEE80211_FCTL_STYPE) {
case IEEE80211_STYPE_ACTION:
- if (skb->len < IEEE80211_MIN_ACTION_SIZE)
- return RX_DROP_MONITOR;
- /* fall through */
case IEEE80211_STYPE_PROBE_RESP:
case IEEE80211_STYPE_BEACON:
skb_queue_tail(&ifmsh->skb_queue, skb);
--- a/net/mac80211/rx.c
+++ b/net/mac80211/rx.c
@@ -1964,6 +1964,11 @@ ieee80211_rx_h_action(struct ieee80211_r
goto handled;
}
break;
+ case MESH_PLINK_CATEGORY:
+ case MESH_PATH_SEL_CATEGORY:
+ if (ieee80211_vif_is_mesh(&sdata->vif))
+ return ieee80211_mesh_rx_mgmt(sdata, rx->skb);
+ break;
}
/*

View File

@ -1,14 +1,14 @@
--- a/drivers/net/wireless/ath/ath9k/hw.c
+++ b/drivers/net/wireless/ath/ath9k/hw.c
@@ -15,6 +15,7 @@
*/
@@ -16,6 +16,7 @@
#include <linux/io.h>
#include <linux/slab.h>
+#include <linux/etherdevice.h>
#include <asm/unaligned.h>
#include "hw.h"
@@ -441,8 +442,16 @@ static int ath9k_hw_init_macaddr(struct
@@ -456,8 +457,16 @@ static int ath9k_hw_init_macaddr(struct
common->macaddr[2 * i] = eeval >> 8;
common->macaddr[2 * i + 1] = eeval & 0xff;
}

View File

@ -1,6 +1,6 @@
--- a/drivers/net/wireless/ath/regd.c
+++ b/drivers/net/wireless/ath/regd.c
@@ -19,6 +19,9 @@
@@ -18,6 +18,9 @@
#include <net/cfg80211.h>
#include <net/mac80211.h>
#include "regd.h"

View File

@ -8,7 +8,7 @@
#include "ath9k.h"
static DEFINE_PCI_DEVICE_TABLE(ath_pci_id_table) = {
@@ -52,21 +53,36 @@ static void ath_pci_read_cachesize(struc
@@ -53,21 +54,36 @@ static void ath_pci_read_cachesize(struc
static bool ath_pci_eeprom_read(struct ath_common *common, u32 off, u16 *data)
{

View File

@ -1,17 +1,3 @@
--- a/drivers/net/wireless/ath/ath9k/hw.c
+++ b/drivers/net/wireless/ath/ath9k/hw.c
@@ -385,11 +385,8 @@ static void ath9k_hw_init_defaults(struc
ah->hw_version.magic = AR5416_MAGIC;
ah->hw_version.subvendorid = 0;
- ah->ah_flags = 0;
if (ah->hw_version.devid == AR5416_AR9100_DEVID)
ah->hw_version.macVersion = AR_SREV_VERSION_9100;
- if (!AR_SREV_9100(ah))
- ah->ah_flags = AH_USE_EEPROM;
ah->atim_window = 0;
ah->sta_id1_defaults = AR_STA_ID1_CRPT_MIC_ENABLE;
--- a/drivers/net/wireless/ath/ath9k/main.c
+++ b/drivers/net/wireless/ath/ath9k/main.c
@@ -15,6 +15,7 @@
@ -24,7 +10,7 @@
--- a/drivers/net/wireless/ath/ath9k/init.c
+++ b/drivers/net/wireless/ath/ath9k/init.c
@@ -531,6 +531,7 @@ static int ath9k_init_softc(u16 devid, s
@@ -565,6 +565,7 @@ static int ath9k_init_softc(u16 devid, s
{
struct ath_hw *ah = NULL;
struct ath_common *common;
@ -32,7 +18,7 @@
int ret = 0, i;
int csz = 0;
@@ -542,6 +543,10 @@ static int ath9k_init_softc(u16 devid, s
@@ -576,6 +577,10 @@ static int ath9k_init_softc(u16 devid, s
ah->hw_version.subsysid = subsysid;
sc->sc_ah = ah;
@ -43,3 +29,16 @@
common = ath9k_hw_common(ah);
common->ops = &ath9k_common_ops;
common->bus_ops = bus_ops;
--- a/drivers/net/wireless/ath/ath9k/hw.c
+++ b/drivers/net/wireless/ath/ath9k/hw.c
@@ -429,10 +429,6 @@ static void ath9k_hw_init_defaults(struc
ah->hw_version.magic = AR5416_MAGIC;
ah->hw_version.subvendorid = 0;
- ah->ah_flags = 0;
- if (!AR_SREV_9100(ah))
- ah->ah_flags = AH_USE_EEPROM;
-
ah->atim_window = 0;
ah->sta_id1_defaults = AR_STA_ID1_CRPT_MIC_ENABLE;
ah->beacon_interval = 100;

View File

@ -1,17 +1,17 @@
--- a/drivers/net/wireless/ath/ath9k/hw.c
+++ b/drivers/net/wireless/ath/ath9k/hw.c
@@ -16,8 +16,10 @@
@@ -17,8 +17,10 @@
#include <linux/io.h>
#include <linux/slab.h>
#include <linux/etherdevice.h>
+#include <linux/ath9k_platform.h>
#include <asm/unaligned.h>
+#include "ath9k.h"
#include "hw.h"
#include "hw-ops.h"
#include "rc.h"
#include "initvals.h"
@@ -428,17 +430,23 @@ static int ath9k_hw_rf_claim(struct ath_
@@ -441,18 +443,23 @@ static void ath9k_hw_init_defaults(struc
static int ath9k_hw_init_macaddr(struct ath_hw *ah)
{
struct ath_common *common = ath9k_hw_common(ah);
@ -20,10 +20,11 @@
u32 sum;
int i;
u16 eeval;
u32 EEP_MAC[] = { EEP_MAC_LSW, EEP_MAC_MID, EEP_MAC_MSW };
sum = 0;
- for (i = 0; i < 3; i++) {
- eeval = ah->eep_ops->get_eeprom(ah, AR_EEPROM_MAC(i));
- eeval = ah->eep_ops->get_eeprom(ah, EEP_MAC[i]);
- sum += eeval;
- common->macaddr[2 * i] = eeval >> 8;
- common->macaddr[2 * i + 1] = eeval & 0xff;
@ -32,12 +33,11 @@
+ memcpy(common->macaddr, pdata->macaddr, ETH_ALEN);
+ else
+ for (i = 0; i < 3; i++) {
+ eeval = ah->eep_ops->get_eeprom(ah, AR_EEPROM_MAC(i));
+ eeval = ah->eep_ops->get_eeprom(ah, EEP_MAC[i]);
+ sum += eeval;
+ common->macaddr[2 * i] = eeval >> 8;
+ common->macaddr[2 * i + 1] = eeval & 0xff;
+ }
+
if (!is_valid_ether_addr(common->macaddr)) {
ath_print(common, ATH_DBG_EEPROM,
"eeprom contains invalid mac address: %pM\n",

View File

@ -1,6 +1,6 @@
--- a/drivers/net/wireless/ath/ath9k/hw.c
+++ b/drivers/net/wireless/ath/ath9k/hw.c
@@ -2097,7 +2097,7 @@ int ath9k_hw_reset(struct ath_hw *ah, st
@@ -1380,7 +1380,7 @@ int ath9k_hw_reset(struct ath_hw *ah, st
if (ah->config.rx_intr_mitigation) {
REG_RMW_FIELD(ah, AR_RIMT, AR_RIMT_LAST, 500);
@ -8,4 +8,4 @@
+ REG_RMW_FIELD(ah, AR_RIMT, AR_RIMT_FIRST, 500);
}
ath9k_hw_init_bb(ah, chan);
if (ah->config.tx_intr_mitigation) {

View File

@ -1,14 +1,14 @@
--- a/drivers/net/wireless/ath/ath9k/init.c
+++ b/drivers/net/wireless/ath/ath9k/init.c
@@ -14,6 +14,7 @@
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
@@ -16,6 +16,7 @@
#include <linux/slab.h>
+#include "linux/ath9k_platform.h"
#include "ath9k.h"
static char *dev_info = "ath9k";
@@ -546,6 +547,8 @@ static int ath9k_init_softc(u16 devid, s
@@ -580,6 +581,8 @@ static int ath9k_init_softc(u16 devid, s
pdata = (struct ath9k_platform_data *) sc->dev->platform_data;
if (!pdata)
ah->ah_flags |= AH_USE_EEPROM;
@ -17,7 +17,7 @@
common = ath9k_hw_common(ah);
common->ops = &ath9k_common_ops;
@@ -671,6 +674,24 @@ void ath9k_set_hw_capab(struct ath_softc
@@ -702,6 +705,24 @@ void ath9k_set_hw_capab(struct ath_softc
SET_IEEE80211_PERM_ADDR(hw, common->macaddr);
}
@ -42,7 +42,7 @@
int ath9k_init_device(u16 devid, struct ath_softc *sc, u16 subsysid,
const struct ath_bus_ops *bus_ops)
{
@@ -689,6 +710,9 @@ int ath9k_init_device(u16 devid, struct
@@ -720,6 +741,9 @@ int ath9k_init_device(u16 devid, struct
common = ath9k_hw_common(ah);
ath9k_set_hw_capab(sc, hw);
@ -54,15 +54,15 @@
ath9k_reg_notifier);
--- a/drivers/net/wireless/ath/ath9k/ath9k.h
+++ b/drivers/net/wireless/ath/ath9k/ath9k.h
@@ -511,6 +511,8 @@ struct ath_softc {
struct ath_beacon_config cur_beacon_conf;
struct delayed_work tx_complete_work;
struct ath_btcoex btcoex;
+
+ unsigned long quirk_wndr3700:1;
};
@@ -517,6 +517,8 @@ struct ath_softc {
struct ath_wiphy {
int beacon_interval;
+ bool quirk_wndr3700;
+
#ifdef CONFIG_ATH9K_DEBUGFS
struct ath9k_debug debug;
#endif
--- a/include/linux/ath9k_platform.h
+++ b/include/linux/ath9k_platform.h
@@ -24,6 +24,8 @@
@ -70,7 +70,7 @@
u16 eeprom_data[ATH9K_PLAT_EEP_MAX_WORDS];
u8 *macaddr;
+
+ unsigned long quirk_wndr3700:1;
+ bool quirk_wndr3700;
};
#endif /* _LINUX_ATH9K_PLATFORM_H */

View File

@ -13,7 +13,7 @@
sc->sc_ah->led_pin = ATH_LED_PIN_DEF;
--- a/drivers/net/wireless/ath/ath9k/ath9k.h
+++ b/drivers/net/wireless/ath/ath9k/ath9k.h
@@ -379,6 +379,7 @@ void ath9k_btcoex_timer_pause(struct ath
@@ -392,6 +392,7 @@ void ath9k_btcoex_timer_pause(struct ath
#define ATH_LED_PIN_DEF 1
#define ATH_LED_PIN_9287 8

View File

@ -1,6 +1,6 @@
--- a/drivers/net/wireless/ath/ath9k/debug.c
+++ b/drivers/net/wireless/ath/ath9k/debug.c
@@ -77,6 +77,90 @@ static const struct file_operations fops
@@ -78,6 +78,90 @@ static const struct file_operations fops
#define DMA_BUF_LEN 1024
@ -91,7 +91,7 @@
static ssize_t read_file_dma(struct file *file, char __user *user_buf,
size_t count, loff_t *ppos)
{
@@ -719,6 +803,16 @@ int ath9k_init_debug(struct ath_hw *ah)
@@ -731,6 +815,16 @@ int ath9k_init_debug(struct ath_hw *ah)
goto err;
#endif
@ -108,7 +108,7 @@
sc->debug.debugfs_dma = debugfs_create_file("dma", S_IRUSR,
sc->debug.debugfs_phy, sc, &fops_dma);
if (!sc->debug.debugfs_dma)
@@ -769,6 +863,8 @@ void ath9k_exit_debug(struct ath_hw *ah)
@@ -781,6 +875,8 @@ void ath9k_exit_debug(struct ath_hw *ah)
struct ath_common *common = ath9k_hw_common(ah);
struct ath_softc *sc = (struct ath_softc *) common->priv;
@ -119,7 +119,7 @@
debugfs_remove(sc->debug.debugfs_wiphy);
--- a/drivers/net/wireless/ath/ath9k/debug.h
+++ b/drivers/net/wireless/ath/ath9k/debug.h
@@ -148,6 +148,8 @@ struct ath_stats {
@@ -152,6 +152,8 @@ struct ath_stats {
};
struct ath9k_debug {

View File

@ -1,6 +1,6 @@
--- a/drivers/net/wireless/ath/ath9k/debug.c
+++ b/drivers/net/wireless/ath/ath9k/debug.c
@@ -783,6 +783,86 @@ static const struct file_operations fops
@@ -795,6 +795,86 @@ static const struct file_operations fops
.owner = THIS_MODULE
};
@ -87,7 +87,7 @@
int ath9k_init_debug(struct ath_hw *ah)
{
struct ath_common *common = ath9k_hw_common(ah);
@@ -852,6 +932,17 @@ int ath9k_init_debug(struct ath_hw *ah)
@@ -864,6 +944,17 @@ int ath9k_init_debug(struct ath_hw *ah)
if (!sc->debug.debugfs_recv)
goto err;
@ -105,7 +105,7 @@
return 0;
err:
ath9k_exit_debug(ah);
@@ -865,6 +956,8 @@ void ath9k_exit_debug(struct ath_hw *ah)
@@ -877,6 +968,8 @@ void ath9k_exit_debug(struct ath_hw *ah)
debugfs_remove(sc->debug.debugfs_tx_chainmask);
debugfs_remove(sc->debug.debugfs_rx_chainmask);
@ -116,7 +116,7 @@
debugfs_remove(sc->debug.debugfs_wiphy);
--- a/drivers/net/wireless/ath/ath9k/debug.h
+++ b/drivers/net/wireless/ath/ath9k/debug.h
@@ -158,6 +158,9 @@ struct ath9k_debug {
@@ -162,6 +162,9 @@ struct ath9k_debug {
struct dentry *debugfs_wiphy;
struct dentry *debugfs_xmit;
struct dentry *debugfs_recv;

View File

@ -20,7 +20,7 @@
}
--- a/net/wireless/nl80211.c
+++ b/net/wireless/nl80211.c
@@ -886,6 +886,11 @@ static int nl80211_send_iface(struct sk_
@@ -887,6 +887,11 @@ static int nl80211_send_iface(struct sk_
NLA_PUT_U32(msg, NL80211_ATTR_WIPHY, rdev->wiphy_idx);
NLA_PUT_STRING(msg, NL80211_ATTR_IFNAME, dev->name);
NLA_PUT_U32(msg, NL80211_ATTR_IFTYPE, dev->ieee80211_ptr->iftype);

View File

@ -13,7 +13,7 @@
mac80211-$(CONFIG_MAC80211_RC_MINSTREL) += $(rc80211_minstrel-y)
--- a/net/mac80211/main.c
+++ b/net/mac80211/main.c
@@ -714,6 +714,10 @@ static int __init ieee80211_init(void)
@@ -716,6 +716,10 @@ static int __init ieee80211_init(void)
if (ret)
return ret;
@ -24,7 +24,7 @@
ret = rc80211_pid_init();
if (ret)
goto err_pid;
@@ -726,6 +730,8 @@ static int __init ieee80211_init(void)
@@ -728,6 +732,8 @@ static int __init ieee80211_init(void)
err_netdev:
rc80211_pid_exit();
err_pid:
@ -33,7 +33,7 @@
rc80211_minstrel_exit();
return ret;
@@ -734,6 +740,7 @@ static int __init ieee80211_init(void)
@@ -736,6 +742,7 @@ static int __init ieee80211_init(void)
static void __exit ieee80211_exit(void)
{
rc80211_pid_exit();
@ -68,7 +68,7 @@
--- /dev/null
+++ b/net/mac80211/rc80211_minstrel_ht.c
@@ -0,0 +1,815 @@
@@ -0,0 +1,822 @@
+/*
+ * Copyright (C) 2010 Felix Fietkau <nbd@openwrt.org>
+ *
@ -389,9 +389,9 @@
+ if (!mg->supported)
+ continue;
+
+ if (++mg->index > MCS_GROUP_RATES) {
+ if (++mg->index >= MCS_GROUP_RATES) {
+ mg->index = 0;
+ if (++mg->column > ARRAY_SIZE(sample_table))
+ if (++mg->column >= ARRAY_SIZE(sample_table))
+ mg->column = 0;
+ }
+ break;
@ -474,7 +474,7 @@
+ 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);
+ mi->sample_wait = 4 + 2 * MINSTREL_TRUNC(mi->avg_ampdu_len);
+ mi->sample_tries = 3;
+ mi->sample_count--;
+ }
@ -660,6 +660,7 @@
+ if (!msp->is_ht)
+ return mac80211_minstrel.get_rate(priv, sta, &msp->legacy, txrc);
+
+ info->flags |= mi->tx_flags;
+ sample_idx = minstrel_get_sample_rate(mp, mi);
+ if (sample_idx >= 0) {
+ minstrel_ht_set_rate(mp, mi, &ar[0], sample_idx,
@ -733,6 +734,12 @@
+ }
+ mi->sample_tries = 4;
+
+ if (sta_cap & IEEE80211_HT_CAP_TX_STBC)
+ mi->tx_flags |= IEEE80211_TX_CTL_STBC;
+
+ if (sta_cap & IEEE80211_HT_CAP_LDPC_CODING)
+ mi->tx_flags |= IEEE80211_TX_CTL_LDPC;
+
+ if (oper_chan_type != NL80211_CHAN_HT40MINUS &&
+ oper_chan_type != NL80211_CHAN_HT40PLUS)
+ sta_cap &= ~IEEE80211_HT_CAP_SUP_WIDTH_20_40;
@ -886,7 +893,7 @@
+}
--- /dev/null
+++ b/net/mac80211/rc80211_minstrel_ht.h
@@ -0,0 +1,125 @@
@@ -0,0 +1,128 @@
+/*
+ * Copyright (C) 2010 Felix Fietkau <nbd@openwrt.org>
+ *
@ -899,10 +906,10 @@
+#define __RC_MINSTREL_HT_H
+
+/*
+ * maximum number of spatial streams to make use of
+ * set this value to 3 once we have drivers that support it
+ * The number of streams can be changed to 2 to reduce code
+ * size and memory footprint.
+ */
+#define MINSTREL_MAX_STREAMS 2
+#define MINSTREL_MAX_STREAMS 3
+#define MINSTREL_STREAM_GROUPS 4
+
+/* scaled fraction values */
@ -983,6 +990,9 @@
+ unsigned int total_packets;
+ unsigned int sample_packets;
+
+ /* tx flags to add for frames for this sta */
+ u32 tx_flags;
+
+ u8 sample_wait;
+ u8 sample_tries;
+ u8 sample_count;

View File

@ -1,6 +1,6 @@
--- a/drivers/net/wireless/ath/ath9k/init.c
+++ b/drivers/net/wireless/ath/ath9k/init.c
@@ -655,7 +655,11 @@ void ath9k_set_hw_capab(struct ath_softc
@@ -686,7 +686,11 @@ void ath9k_set_hw_capab(struct ath_softc
hw->sta_data_size = sizeof(struct ath_node);
hw->vif_data_size = sizeof(struct ath_vif);

View File

@ -1,59 +0,0 @@
--- a/drivers/net/wireless/ath/ath9k/hw.c
+++ b/drivers/net/wireless/ath/ath9k/hw.c
@@ -1911,6 +1911,34 @@ static void ath9k_enable_rfkill(struct a
REG_SET_BIT(ah, AR_PHY_TEST, RFSILENT_BB);
}
+bool ath9k_hw_check_alive(struct ath_hw *ah)
+{
+ int count = 50;
+ u32 reg;
+
+ if (AR_SREV_9285_10_OR_LATER(ah))
+ return true;
+
+ do {
+ reg = REG_READ(ah, AR_OBS_BUS_1);
+
+ if ((reg & 0x7E7FFFEF) == 0x00702400)
+ continue;
+
+ switch (reg & 0x7E000B00) {
+ case 0x1E000000:
+ case 0x52000B00:
+ case 0x18000B00:
+ continue;
+ default:
+ return true;
+ }
+ } while (count-- > 0);
+
+ return false;
+}
+EXPORT_SYMBOL(ath9k_hw_check_alive);
+
int ath9k_hw_reset(struct ath_hw *ah, struct ath9k_channel *chan,
bool bChannelChange)
{
--- a/drivers/net/wireless/ath/ath9k/hw.h
+++ b/drivers/net/wireless/ath/ath9k/hw.h
@@ -679,6 +679,7 @@ void ath9k_hw_set11nmac2040(struct ath_h
void ath9k_hw_beaconinit(struct ath_hw *ah, u32 next_beacon, u32 beacon_period);
void ath9k_hw_set_sta_beacon_timers(struct ath_hw *ah,
const struct ath9k_beacon_state *bs);
+bool ath9k_hw_check_alive(struct ath_hw *ah);
bool ath9k_hw_setpower(struct ath_hw *ah, enum ath9k_power_mode mode);
--- a/drivers/net/wireless/ath/ath9k/main.c
+++ b/drivers/net/wireless/ath/ath9k/main.c
@@ -405,7 +405,8 @@ void ath9k_tasklet(unsigned long data)
ath9k_ps_wakeup(sc);
- if (status & ATH9K_INT_FATAL) {
+ if ((status & ATH9K_INT_FATAL) ||
+ !ath9k_hw_check_alive(ah)) {
ath_reset(sc, false);
ath9k_ps_restore(sc);
return;

View File

@ -0,0 +1,24 @@
--- a/drivers/net/wireless/ath/ath9k/common.c
+++ b/drivers/net/wireless/ath/ath9k/common.c
@@ -57,13 +57,19 @@ static bool ath9k_rx_accept(struct ath_c
* rs_more indicates chained descriptors which can be used
* to link buffers together for a sort of scatter-gather
* operation.
- *
+ * reject the frame, we don't support scatter-gather yet and
+ * the frame is probably corrupt anyway
+ */
+ if (rx_stats->rs_more)
+ return false;
+
+ /*
* The rx_stats->rs_status will not be set until the end of the
* chained descriptors so it can be ignored if rs_more is set. The
* rs_more will be false at the last element of the chained
* descriptors.
*/
- if (!rx_stats->rs_more && rx_stats->rs_status != 0) {
+ if (rx_stats->rs_status != 0) {
if (rx_stats->rs_status & ATH9K_RXERR_CRC)
rxs->flag |= RX_FLAG_FAILED_FCS_CRC;
if (rx_stats->rs_status & ATH9K_RXERR_PHY)

View File

@ -1,6 +1,6 @@
--- a/drivers/net/wireless/rt2x00/rt2x00pci.c
+++ b/drivers/net/wireless/rt2x00/rt2x00pci.c
@@ -223,6 +223,7 @@ void rt2x00pci_uninitialize(struct rt2x0
@@ -225,6 +225,7 @@ void rt2x00pci_uninitialize(struct rt2x0
}
EXPORT_SYMBOL_GPL(rt2x00pci_uninitialize);
@ -8,7 +8,7 @@
/*
* PCI driver handlers.
*/
@@ -397,6 +398,7 @@ int rt2x00pci_resume(struct pci_dev *pci
@@ -399,6 +400,7 @@ int rt2x00pci_resume(struct pci_dev *pci
}
EXPORT_SYMBOL_GPL(rt2x00pci_resume);
#endif /* CONFIG_PM */

View File

@ -1,6 +1,6 @@
--- a/drivers/net/wireless/rt2x00/rt2x00pci.c
+++ b/drivers/net/wireless/rt2x00/rt2x00pci.c
@@ -213,7 +213,7 @@ void rt2x00pci_uninitialize(struct rt2x0
@@ -215,7 +215,7 @@ void rt2x00pci_uninitialize(struct rt2x0
/*
* Free irq line.
*/

View File

@ -1,59 +1,29 @@
From f18d4463d092162f34a8bd226505627ceeac3e8a Mon Sep 17 00:00:00 2001
From: Luis Correia <luis.f.correia@gmail.com>
Date: Sat, 3 Apr 2010 12:49:53 +0100
Subject: [PATCH] rt2x00: remove MCU requests for SoC platforms
The ralink SoC platforms do not have an MCU.
Signed-off-by: Luis Correia <luis.f.correia@gmail.com>
Acked-by: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: Gertjan van Wingerde <gwingerde@gmail.com>
---
drivers/net/wireless/rt2x00/rt2800pci.c | 6 ++++++
1 files changed, 6 insertions(+), 0 deletions(-)
--- a/drivers/net/wireless/rt2x00/rt2800lib.c
+++ b/drivers/net/wireless/rt2x00/rt2800lib.c
@@ -221,9 +221,9 @@ void rt2800_mcu_request(struct rt2x00_de
u32 reg;
/*
- * SOC devices don't support MCU requests.
+ * some devices don't support MCU requests.
*/
- if (rt2x00_is_soc(rt2x00dev))
+ if (!test_bit(DRIVER_REQUIRE_MCU, &rt2x00dev->flags))
return;
mutex_lock(&rt2x00dev->csr_mutex);
--- a/drivers/net/wireless/rt2x00/rt2800pci.c
+++ b/drivers/net/wireless/rt2x00/rt2800pci.c
@@ -60,6 +60,12 @@ static void rt2800pci_mcu_status(struct
unsigned int i;
u32 reg;
@@ -66,6 +66,12 @@ static void rt2800pci_mcu_status(struct
if (rt2x00_is_soc(rt2x00dev))
return;
+ /*
+ * some devices don't support MCU requests.
+ * SOC devices don't support MCU requests.
+ */
+ if (!test_bit(DRIVER_REQUIRE_MCU, &rt2x00dev->flags))
+ if (rt2x00_is_soc(rt2x00dev))
+ return;
+
for (i = 0; i < 200; i++) {
rt2800_register_read(rt2x00dev, H2M_MAILBOX_CID, &reg);
@@ -1098,10 +1104,12 @@ static int rt2800pci_probe_hw(struct rt2
__set_bit(DRIVER_SUPPORT_CONTROL_FILTER_PSPOLL, &rt2x00dev->flags);
/*
- * This device requires firmware.
+ * This device requires firmware and MCU access.
*/
- if (!rt2x00_is_soc(rt2x00dev))
+ if (!rt2x00_is_soc(rt2x00dev)){
__set_bit(DRIVER_REQUIRE_FIRMWARE, &rt2x00dev->flags);
+ __set_bit(DRIVER_REQUIRE_MCU, &rt2x00dev->flags);
+ }
__set_bit(DRIVER_REQUIRE_DMA, &rt2x00dev->flags);
__set_bit(DRIVER_REQUIRE_L2PAD, &rt2x00dev->flags);
if (!modparam_nohwcrypt)
--- a/drivers/net/wireless/rt2x00/rt2x00.h
+++ b/drivers/net/wireless/rt2x00/rt2x00.h
@@ -631,6 +631,7 @@ enum rt2x00_flags {
* Driver requirements
*/
DRIVER_REQUIRE_FIRMWARE,
+ DRIVER_REQUIRE_MCU,
DRIVER_REQUIRE_BEACON_GUARD,
DRIVER_REQUIRE_ATIM_QUEUE,
DRIVER_REQUIRE_DMA,

View File

@ -0,0 +1,10 @@
--- a/drivers/net/wireless/mwl8k.c
+++ b/drivers/net/wireless/mwl8k.c
@@ -3850,6 +3850,7 @@ MODULE_FIRMWARE("mwl8k/helper_8366.fw");
MODULE_FIRMWARE("mwl8k/fmimage_8366.fw");
static DEFINE_PCI_DEVICE_TABLE(mwl8k_pci_id_table) = {
+ { PCI_VDEVICE(MARVELL, 0x2a02), .driver_data = MWL8363, },
{ PCI_VDEVICE(MARVELL, 0x2a0a), .driver_data = MWL8363, },
{ PCI_VDEVICE(MARVELL, 0x2a0c), .driver_data = MWL8363, },
{ PCI_VDEVICE(MARVELL, 0x2a24), .driver_data = MWL8363, },

View File

@ -35,8 +35,8 @@ endef
define Package/mountd/install
$(INSTALL_DIR) $(1)/sbin/ $(1)/etc/config/ $(1)/etc/init.d/
$(INSTALL_BIN) $(PKG_BUILD_DIR)/mountd $(1)/sbin/
$(INSTALL_BIN) ./files/mountd.config $(1)/etc/config/mountd
$(INSTALL_DATA) ./files/mountd.init $(1)/etc/init.d/mountd
$(INSTALL_DATA) ./files/mountd.config $(1)/etc/config/mountd
$(INSTALL_BIN) ./files/mountd.init $(1)/etc/init.d/mountd
endef
$(eval $(call BuildPackage,mountd))

View File

@ -1,69 +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
PKG_NAME:=ps3-utils
PKG_VERSION:=6488134e48cf2d6f2d6471ced8346ac8cb1b855a
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=http://www.kernel.org/pub/scm/linux/kernel/git/geoff/ps3-utils.git
PKG_SOURCE_PROTO:=git
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
PKG_SOURCE_VERSION:=$(PKG_VERSION)
PKG_FIXUP:=libtool
PKG_INSTALL=1
include $(INCLUDE_DIR)/package.mk
define Package/ps3-utils
SECTION:=utils
CATEGORY:=Utilities
TITLE:=PS3 Linux Utilities
URL:=http://kernel.org/pub/linux/kernel/people/geoff/cell/ps3-utils/
MAINTAINER:=Geoff Levand <geoffrey.levand@am.sony.com>
DEPENDS:=@TARGET_ps3||TARGET_ps3chk||TARGET_powerpc
endef
define Package/ps3-utils/description
The ps3-utils package is a set of system administration utilites for the
PS3 game console.
endef
define Build/Configure
(cd $(PKG_BUILD_DIR) && $(BASH) -x ./bootstrap)
$(call Build/Configure/Default)
endef
define Build/InstallDev
$(INSTALL_DIR) $(1)/usr/include
$(INSTALL_DATA) \
$(PKG_INSTALL_DIR)/usr/include/ps3*.h \
$(1)/usr/include
$(INSTALL_DIR) $(1)/usr/lib
$(INSTALL_BIN) \
$(PKG_INSTALL_DIR)/usr/lib/libps3-utils.{la,a,so*} \
$(1)/usr/lib/
endef
define Package/ps3-utils/install
$(INSTALL_DIR) $(1)/usr/sbin
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_DIR) $(1)/usr/lib
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/ps3-boot-game-os $(1)/usr/sbin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/ps3-dump-bootloader $(1)/usr/sbin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/ps3-flash-util $(1)/usr/sbin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/ps3-video-mode $(1)/usr/bin
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libps3-utils.so.* $(1)/usr/lib
endef
$(eval $(call BuildPackage,ps3-utils))

View File

@ -162,7 +162,7 @@ sub target_config_features(@) {
/squashfs/ and $ret .= "\tselect USES_SQUASHFS\n";
/jffs2/ and $ret .= "\tselect USES_JFFS2\n";
/ext2/ and $ret .= "\tselect USES_EXT2\n";
/tgz/ and $ret .= "\tselect USES_TGZ\n";
/targz/ and $ret .= "\tselect USES_TARGZ\n";
/cpiogz/ and $ret .= "\tselect USES_CPIOGZ\n";
/ubifs/ and $ret .= "\tselect USES_UBIFS\n";
/fpu/ and $ret .= "\tselect HAS_FPU\n";

View File

@ -49,7 +49,7 @@ config USES_JFFS2
config USES_EXT2
bool
config USES_TGZ
config USES_TARGZ
bool
config USES_UBIFS

View File

@ -250,7 +250,6 @@ CONFIG_USB_EHCI_HCD=m
CONFIG_USB_OHCI_HCD=m
CONFIG_USB_SUPPORT=y
# CONFIG_USB_UHCI_HCD is not set
CONFIG_VLAN_8021Q=m
CONFIG_VM_EVENT_COUNTERS=y
CONFIG_YAFFS_9BYTE_TAGS=y
# CONFIG_YAFFS_ALWAYS_CHECK_CHUNK_ERASED is not set

View File

@ -8,7 +8,7 @@ config interface loopback
config interface lan
option type bridge
option ifname eth0
option ifname "eth0 eth1"
option proto static
option ipaddr 192.168.1.1
option netmask 255.255.255.0

View File

@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
ARCH:=mips
BOARD:=ar71xx
BOARDNAME:=Atheros AR71xx/AR7240/AR913x
FEATURES:=squashfs jffs2 tgz
FEATURES:=squashfs jffs2 targz
CFLAGS:=-Os -pipe -mips32r2 -mtune=mips32r2 -funit-at-a-time
LINUX_VERSION:=2.6.32.10

View File

@ -20,7 +20,7 @@ PKG_CAT:=bzcat
include $(INCLUDE_DIR)/package.mk
UBOOT_CONFIG=$(strip $(subst ",, $(CONFIG_AVR32_UBOOT_TARGET)))
UBOOT_CONFIG=$(call qstrip,$(CONFIG_AVR32_UBOOT_TARGET))
define Build/Compile
$(MAKE) -C $(PKG_BUILD_DIR) $(UBOOT_CONFIG)_config

View File

@ -0,0 +1,10 @@
#!/bin/sh
failsafe_config_switch() {
[ -d /proc/switch/eth0 ] && [ "$ifname" = "eth0" ] && {
echo "0 1 2 3 4 ${cpu_port:-5u*}" > /proc/switch/eth0/vlan/0/ports
}
}
boot_hook_add failsafe failsafe_config_switch

View File

@ -30,9 +30,10 @@ preinit_net_echo() {
echo "$port ${cpu_port:-5u*}" > /proc/switch/eth0/vlan/0/ports
port_net_echo $1
}; done
echo "0 ${cpu_port:-5u*}" > /proc/switch/eth0/vlan/0/ports
} || port_net_echo $1
preinit_ip_deconfig
}

View File

@ -0,0 +1,12 @@
#!/bin/sh
indicate_failsafe() {
preinit_net_echo() {
port_net_echo $1
}
echo "- failsafe -"
preinit_net_echo "Entering Failsafe!\n"
indicate_failsafe_led
}

View File

@ -1,13 +0,0 @@
define KernelPackage/lp/brcm-2.4
FILES:= \
$(LINUX_DIR)/drivers/parport/parport.$(LINUX_KMOD_SUFFIX) \
$(LINUX_DIR)/drivers/parport/parport_*.$(LINUX_KMOD_SUFFIX) \
$(LINUX_DIR)/drivers/char/lp.$(LINUX_KMOD_SUFFIX) \
$(LINUX_DIR)/drivers/char/ppdev.$(LINUX_KMOD_SUFFIX)
AUTOLOAD:=$(call AutoLoad,50, \
parport \
parport_splink \
lp \
)
endef

View File

@ -0,0 +1,18 @@
Index: linux-2.6.32.12/drivers/usb/host/ehci-hub.c
===================================================================
--- linux-2.6.32.12.orig/drivers/usb/host/ehci-hub.c 2010-05-02 21:06:45.000000000 +0200
+++ linux-2.6.32.12/drivers/usb/host/ehci-hub.c 2010-05-02 21:07:08.000000000 +0200
@@ -741,11 +741,13 @@
* power switching; they're allowed to just limit the
* current. khubd will turn the power back on.
*/
+#ifndef CONFIG_BCM63XX
if (HCS_PPC (ehci->hcs_params)){
ehci_writel(ehci,
temp & ~(PORT_RWC_BITS | PORT_POWER),
status_reg);
}
+#endif
}
/* whoever resumes must GetPortStatus to complete it!! */

View File

@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
ARCH:=mipsel
BOARD:=cobalt
BOARDNAME:=Cobalt Microservers
FEATURES:=tgz pci ext2
FEATURES:=targz pci ext2
CFLAGS:=-O2 -pipe -mtune=r5000 -funit-at-a-time
LINUX_VERSION:=2.6.32.10

View File

@ -176,12 +176,17 @@ CONFIG_HOTPLUG=y
CONFIG_IMQ=m
# CONFIG_INET_ECN is not set
CONFIG_INET=y
# CONFIG_INPUT_EVDEV is not set
# CONFIG_INPUT_GAMEPORT is not set
# CONFIG_INPUT is not set
# CONFIG_INPUT_DB9 is not set
# CONFIG_INPUT_EVDEV is not set
# CONFIG_INPUT_GAMECON is not set
# CONFIG_INPUT_GAMEPORT is not set
# CONFIG_INPUT_IFORCE_USB is not set
# CONFIG_INPUT_JOYDEV is not set
# CONFIG_INPUT_KEYBDEV is not set
# CONFIG_INPUT_MOUSEDEV is not set
# CONFIG_INPUT_SERIO is not set
# CONFIG_INPUT_TURBOGRAFX is not set
# CONFIG_INPUT_UINPUT is not set
# CONFIG_INTERMEZZO_FS is not set
CONFIG_IP6_NF_FILTER=m

View File

@ -0,0 +1,17 @@
--- a/drivers/crypto/hifn_795x.c
+++ b/drivers/crypto/hifn_795x.c
@@ -682,12 +682,12 @@ static inline u32 hifn_read_1(struct hif
static inline void hifn_write_0(struct hifn_device *dev, u32 reg, u32 val)
{
- writel((__force u32)cpu_to_le32(val), dev->bar[0] + reg);
+ writel(val, dev->bar[0] + reg);
}
static inline void hifn_write_1(struct hifn_device *dev, u32 reg, u32 val)
{
- writel((__force u32)cpu_to_le32(val), dev->bar[1] + reg);
+ writel(val, dev->bar[1] + reg);
}
static void hifn_wait_puc(struct hifn_device *dev)

View File

@ -0,0 +1,17 @@
--- a/drivers/crypto/hifn_795x.c
+++ b/drivers/crypto/hifn_795x.c
@@ -682,12 +682,12 @@ static inline u32 hifn_read_1(struct hif
static inline void hifn_write_0(struct hifn_device *dev, u32 reg, u32 val)
{
- writel((__force u32)cpu_to_le32(val), dev->bar[0] + reg);
+ writel(val, dev->bar[0] + reg);
}
static inline void hifn_write_1(struct hifn_device *dev, u32 reg, u32 val)
{
- writel((__force u32)cpu_to_le32(val), dev->bar[1] + reg);
+ writel(val, dev->bar[1] + reg);
}
static void hifn_wait_puc(struct hifn_device *dev)

View File

@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
ARCH:=arm
BOARD:=kirkwood
BOARDNAME:=Marvell Kirkwood
FEATURES:=tgz usb
FEATURES:=targz usb
LINUX_VERSION:=2.6.30.10

View File

@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
ARCH:=mipsel
BOARD:=rb532
BOARDNAME:=Mikrotik RouterBoard 532
FEATURES:=jffs2 pci tgz
FEATURES:=jffs2 pci targz
LINUX_VERSION:=2.6.32.10

View File

@ -54,8 +54,9 @@ CONFIG_LEGACY_PTYS=y
CONFIG_LEGACY_PTY_COUNT=256
# CONFIG_MAC_PARTITION is not set
CONFIG_MAGIC_SYSRQ=y
# CONFIG_MATOM is not set
CONFIG_MCONSOLE=y
CONFIG_MCORE2=y
# CONFIG_MCORE2 is not set
# CONFIG_MINI_FO is not set
# CONFIG_MMAPPER is not set
CONFIG_MK8=y

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