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

View File

@ -17,23 +17,23 @@ KDIR=$(KERNEL_BUILD_DIR)
IMG_PREFIX:=openwrt-$(BOARD)$(if $(SUBTARGET),-$(SUBTARGET)) IMG_PREFIX:=openwrt-$(BOARD)$(if $(SUBTARGET),-$(SUBTARGET))
ifneq ($(CONFIG_BIG_ENDIAN),y) ifneq ($(CONFIG_BIG_ENDIAN),)
JFFS2OPTS := --pad --little-endian --squash JFFS2OPTS := --pad --big-endian --squash -v
SQUASHFS_OPTS := -le SQUASHFS_OPTS := -be
else else
JFFS2OPTS := --pad --big-endian --squash JFFS2OPTS := --pad --little-endian --squash -v
SQUASHFS_OPTS := -be SQUASHFS_OPTS := -le
endif endif
ifneq ($(CONFIG_LINUX_2_4)$(CONFIG_LINUX_2_6_25),) ifneq ($(CONFIG_LINUX_2_4)$(CONFIG_LINUX_2_6_25),)
USE_SQUASHFS3 := y USE_SQUASHFS3 := y
endif endif
ifneq ($(USE_SQUASHFS3),) ifneq ($(USE_SQUASHFS3),)
MKSQUASHFS_CMD := $(STAGING_DIR_HOST)/bin/mksquashfs-lzma MKSQUASHFS_CMD := $(STAGING_DIR_HOST)/bin/mksquashfs-lzma
else else
MKSQUASHFS_CMD := $(STAGING_DIR_HOST)/bin/mksquashfs4 MKSQUASHFS_CMD := $(STAGING_DIR_HOST)/bin/mksquashfs4
SQUASHFS_OPTS := -comp lzma -processors 1 SQUASHFS_OPTS := -comp lzma -processors 1
endif endif
JFFS2_BLOCKSIZE ?= 64k 128k JFFS2_BLOCKSIZE ?= 64k 128k
@ -55,8 +55,17 @@ define prepare_generic_squashfs
rm -f $(KDIR)/tmpfile.* rm -f $(KDIR)/tmpfile.*
endef 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 define Image/mkfs/jffs2/sub
# FIXME: removing this line will cause strange behaviour in the foreach loop below # 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) $(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 endef
endif endif
ifeq ($(CONFIG_TARGET_ROOTFS_SQUASHFS),y) ifneq ($(CONFIG_TARGET_ROOTFS_SQUASHFS),)
define Image/mkfs/squashfs define Image/mkfs/squashfs
@mkdir -p $(TARGET_DIR)/overlay @mkdir -p $(TARGET_DIR)/overlay
$(MKSQUASHFS_CMD) $(TARGET_DIR) $(KDIR)/root.squashfs -nopad -noappend -root-owned $(SQUASHFS_OPTS) $(MKSQUASHFS_CMD) $(TARGET_DIR) $(KDIR)/root.squashfs -nopad -noappend -root-owned $(SQUASHFS_OPTS)
@ -76,18 +85,7 @@ ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),y)
endef endef
endif endif
ifeq ($(CONFIG_TARGET_ROOTFS_TGZ),y) ifneq ($(CONFIG_TARGET_ROOTFS_UBIFS),)
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)
define Image/mkfs/ubifs define Image/mkfs/ubifs
$(CP) ./ubinize.cfg $(KDIR) $(CP) ./ubinize.cfg $(KDIR)
$(STAGING_DIR_HOST)/bin/mkfs.ubifs $(UBIFS_OPTS) -o $(KDIR)/root.ubifs -d $(TARGET_DIR) $(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) $(call Image/Build,ubi)
endef endef
endif endif
else
define Image/BuildKernel endif
cp $(KDIR)/vmlinux.elf $(BIN_DIR)/$(IMG_PREFIX)-vmlinux.elf
$(call Image/Build/Initramfs) 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 endef
endif endif
define Image/Checksum ifneq ($(CONFIG_TARGET_ROOTFS_TARGZ),)
( cd ${BIN_DIR} ; \ define Image/mkfs/targz
$(FIND) -maxdepth 1 -type f \! -name 'md5sums' -printf "%P\n" | sort | xargs \ $(TAR) -zcf $(BIN_DIR)/$(IMG_PREFIX)-rootfs.tar.gz --numeric-owner --owner=0 --group=0 -C $(TARGET_DIR)/ .
md5sum --binary > md5sums \ endef
) endif
endef
ifneq ($(CONFIG_TARGET_ROOTFS_EXT2FS),)
ifeq ($(CONFIG_TARGET_ROOTFS_EXT2FS),y)
E2SIZE=$(shell echo $$(($(CONFIG_TARGET_ROOTFS_FSPART)*1024))) E2SIZE=$(shell echo $$(($(CONFIG_TARGET_ROOTFS_FSPART)*1024)))
define Image/mkfs/ext2 define Image/mkfs/ext2
@ -120,7 +118,7 @@ ifeq ($(CONFIG_TARGET_ROOTFS_EXT2FS),y)
endef endef
endif endif
ifeq ($(CONFIG_TARGET_ROOTFS_ISO),y) ifneq ($(CONFIG_TARGET_ROOTFS_ISO),)
define Image/mkfs/iso define Image/mkfs/iso
$(call Image/Build,iso) $(call Image/Build,iso)
endef endef
@ -139,52 +137,62 @@ define Image/mkfs/prepare
$(call Image/mkfs/prepare/default) $(call Image/mkfs/prepare/default)
endef endef
define BuildImage
download:
prepare:
ifneq ($(IB),1)
compile: compile-targets FORCE
$(call Build/Compile)
else
compile:
endif
ifneq ($(IB),1) define Image/Checksum
install: compile install-targets FORCE ( cd ${BIN_DIR} ; \
$(call Image/Prepare) $(FIND) -maxdepth 1 -type f \! -name 'md5sums' -printf "%P\n" | sort | xargs \
$(call Image/mkfs/prepare) md5sum --binary > md5sums \
$(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:
endef 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 # in case that another version is provided, overwrite the original
ifeq ($(CONFIG_$(PKG_NAME)_USE_CUSTOM_VERSION),y) 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_SOURCE:=$(subst $(PKG_VERSION_ORGINAL),$(PKG_VERSION),$(PKG_SOURCE))
PKG_MD5SUM:= PKG_MD5SUM:=
endif endif
@ -26,7 +26,7 @@ endef
# in case that an customer source path is provided, set the acc. default variable # in case that an customer source path is provided, set the acc. default variable
ifeq ($(CONFIG_$(PKG_NAME)_USE_CUSTOM_SOURCE_DIR),y) 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 endif
# package specific configuration # package specific configuration

View File

@ -25,7 +25,7 @@ include $(INCLUDE_DIR)/package.mk
define KernelPackage/acx define KernelPackage/acx
TITLE:=Driver for TI ACX1xx chipset 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/ URL:=http://acx100.sourceforge.net/
SUBMENU:=Wireless Drivers SUBMENU:=Wireless Drivers
FILES:= $(PKG_BUILD_DIR)/acx.$(LINUX_KMOD_SUFFIX) FILES:= $(PKG_BUILD_DIR)/acx.$(LINUX_KMOD_SUFFIX)

View File

@ -1,10 +1,12 @@
--- a/pci.c Index: acx-20080210/pci.c
+++ b/pci.c ===================================================================
@@ -4135,6 +4135,18 @@ static struct vlynq_device_id acx_vlynq_ --- acx-20080210.orig/pci.c 2010-05-02 21:37:00.000000000 +0200
{ 0, 0, 0 }, +++ 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 = { +static const struct net_device_ops acx_netdev_ops = {
+ .ndo_open = &acxpci_e_open, + .ndo_open = &acxpci_e_open,
+ .ndo_stop = &acxpci_e_close, + .ndo_stop = &acxpci_e_close,
@ -16,14 +18,39 @@
+}; +};
+#endif +#endif
+ +
static __devinit int vlynq_probe(struct vlynq_device *vdev, #ifdef CONFIG_PCI
struct vlynq_device_id *id) 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; goto fail_alloc_netdev;
} }
ether_setup(ndev); 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->open = &acxpci_e_open;
ndev->stop = &acxpci_e_close; ndev->stop = &acxpci_e_close;
ndev->hard_start_xmit = &acx_i_start_xmit; 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 \ $(TOOLCHAIN_DIR)/lib/libuClibc-$(LIBC_SO_VERSION).so \
$(1)/lib/ $(1)/lib/
for file in libcrypt libdl libm libnsl libresolv libutil; do \ for file in libcrypt libdl libm libnsl libresolv libutil; do \
$(CP) $(TOOLCHAIN_DIR)/lib/$$$$file.so.* $(1)/lib/; \ $(CP) \
$(CP) $(TOOLCHAIN_DIR)/lib/$$$$file-$(LIBC_SO_VERSION).so $(1)/lib/; \ $(TOOLCHAIN_DIR)/lib/$$$$file.so.* \
$(TOOLCHAIN_DIR)/lib/$$$$file-$(LIBC_SO_VERSION).so \
$(1)/lib/; \
done done
endef endef

View File

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

View File

@ -26,7 +26,7 @@ endef
define Package/block-extroot define Package/block-extroot
$(call Package/block-extroot/Default) $(call Package/block-extroot/Default)
MENU:=1 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 endef
define Package/block-extroot/config 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. # This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information. # See /LICENSE for more information.
@ -10,71 +10,62 @@ include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=grub PKG_NAME:=grub
PKG_VERSION:=0.97 PKG_VERSION:=0.97
PKG_RELEASE:=2 PKG_RELEASE:=3
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=ftp://alpha.gnu.org/gnu/grub PKG_SOURCE_URL:=ftp://alpha.gnu.org/gnu/grub
PKG_MD5SUM:=cd3f3eb54446be6003156158d51f4884 PKG_MD5SUM:=cd3f3eb54446be6003156158d51f4884
PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/grub-$(PKG_VERSION) PKG_BUILD_DEPENDS:= grub/host
PKG_TARGETS:=bin PKG_INSTALL:=1
include $(INCLUDE_DIR)/host-build.mk
include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/package.mk
export grub_cv_prog_objcopy_absolute=yes
define Package/grub define Package/grub
SECTION:=boot SUBMENU:=Boot Loaders
DEPENDS:=@TARGET_x86 CATEGORY:=Utilities
CATEGORY:=Boot Loaders SECTION:=utils
TITLE:=GRand Unified Bootloader TITLE:=GRand Unified Bootloader
URL:=http://www.gnu.org/software/grub/ URL:=http://www.gnu.org/software/grub/
DEPENDS:=@TARGET_x86
endef endef
CONFIGURE_FLAGS:= \
--target=$(GNU_TARGET_NAME) \
--host=$(GNU_TARGET_NAME) \
--build=$(GNU_HOST_NAME)
ifneq ($(HOST_OS),Darwin) MY_CONFIGURE_ARGS += \
define Build/Configure --disable-auto-linux-mem-opt \
(cd $(PKG_BUILD_DIR); \ --disable-hercules \
LDFLAGS="-static" \ --without-curses \
./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_VARS += \
# ./configure detects whether the host compiler supports grub_cv_prog_objcopy_absolute=yes \
# -fno-stack-protector but only sets STAGE2_CFLAGS accordingly
# CONFIGURE_ARGS += $(MY_CONFIGURE_ARGS)
define Build/Compile
$(MAKE) -C $(PKG_BUILD_DIR) \ CONFIGURE_VARS += $(MY_CONFIGURE_VARS)
GRUB_CFLAGS="\$$$$(STAGE2_CFLAGS)" \
STAGE1_CFLAGS="\$$$$(STAGE2_CFLAGS)" HOST_CFLAGS += $(call host-cc-option,-fno-stack-protector)
endef 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 define Build/InstallDev
$(MAKE) -C $(PKG_BUILD_DIR) \ $(INSTALL_DIR) $(1)/usr/lib
DESTDIR="$(STAGING_DIR_HOST)" \ $(CP) $(PKG_INSTALL_DIR)/usr/lib/grub $(1)/usr/lib/
install
mv $(STAGING_DIR_HOST)/usr/sbin/grub $(STAGING_DIR_HOST)/bin
endef 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)) $(eval $(call BuildPackage,grub))

View File

@ -8,9 +8,9 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=hostapd PKG_NAME:=hostapd
PKG_VERSION:=20100309 PKG_VERSION:=20100418
PKG_RELEASE:=1 PKG_RELEASE:=1
PKG_REV:=7b90c16aa9ca377b1a6d160c1ba0f2bd304f7e2f PKG_REV:=0b86f67a2970403d1b1b6d34ce49f5485ef5dbb3
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=git://w1.fi/srv/git/hostap.git 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 enc "$vif" encryption
config_get wpa_group_rekey "$vif" wpa_group_rekey 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: # Examples:
# psk-mixed/tkip => WPA1+2 PSK, TKIP # 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 --- a/src/ap/hostapd.c
+++ b/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'; country[3] = '\0';
if (hostapd_set_country(hapd, country) < 0) { if (hostapd_set_country(hapd, country) < 0) {
wpa_printf(MSG_ERROR, "Failed to set country code"); wpa_printf(MSG_ERROR, "Failed to set country code");

View File

@ -1,6 +1,6 @@
--- a/src/ap/hostapd.h --- a/src/ap/hostapd.h
+++ b/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 (*for_each_interface)(struct hapd_interfaces *interfaces,
int (*cb)(struct hostapd_iface *iface, int (*cb)(struct hostapd_iface *iface,
void *ctx), void *ctx); void *ctx), void *ctx);
@ -10,7 +10,7 @@
/* hostapd.c */ /* hostapd.c */
--- a/src/ap/hostapd.c --- a/src/ap/hostapd.c
+++ b/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.", wpa_printf(MSG_DEBUG, "%s: Setup of interface done.",
iface->bss[0]->conf->iface); iface->bss[0]->conf->iface);
@ -55,7 +55,7 @@
hapd_iface->reload_config = hostapd_reload_config; hapd_iface->reload_config = hostapd_reload_config;
hapd_iface->config_read_cb = hostapd_config_read; hapd_iface->config_read_cb = hostapd_config_read;
hapd_iface->config_fname = os_strdup(config_file); 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 #ifdef EAP_SERVER_TNC
tncs_global_deinit(); 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 #ifdef EAP_SERVER_TNC
int tnc = 0; 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 */ #endif /* EAP_SERVER_TNC */
@ -86,7 +86,7 @@
eloop_run(); eloop_run();
return 0; 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; struct hapd_interfaces interfaces;
int ret = 1; int ret = 1;
size_t i; size_t i;
@ -96,7 +96,7 @@
if (os_program_init()) if (os_program_init())
return -1; return -1;
@@ -544,7 +549,7 @@ int main(int argc, char *argv[]) @@ -545,7 +550,7 @@ int main(int argc, char *argv[])
goto out; goto out;
} }
@ -105,7 +105,7 @@
goto out; goto out;
ret = 0; 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]); hostapd_interface_deinit_free(interfaces.iface[i]);
os_free(interfaces.iface); os_free(interfaces.iface);
@ -116,7 +116,7 @@
os_program_deinit(); os_program_deinit();
--- a/hostapd/config_file.c --- a/hostapd/config_file.c
+++ b/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 */ #endif /* CONFIG_IEEE80211W */
#ifdef CONFIG_IEEE80211N #ifdef CONFIG_IEEE80211N
@ -127,7 +127,7 @@
} else if (os_strcmp(buf, "ht_capab") == 0) { } else if (os_strcmp(buf, "ht_capab") == 0) {
--- a/src/ap/ap_config.h --- a/src/ap/ap_config.h
+++ b/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; int ht_op_mode_fixed;
u16 ht_capab; u16 ht_capab;

View File

@ -26,7 +26,7 @@
LIBS += $(DRV_AP_LIBS) LIBS += $(DRV_AP_LIBS)
ifdef CONFIG_L2_PACKET ifdef CONFIG_L2_PACKET
@@ -738,6 +743,12 @@ install: all @@ -739,6 +744,12 @@ install: all
BCHECK=../src/drivers/build.hostapd BCHECK=../src/drivers/build.hostapd
@ -39,7 +39,7 @@
hostapd: $(BCHECK) $(OBJS) hostapd: $(BCHECK) $(OBJS)
$(CC) $(LDFLAGS) -o hostapd $(OBJS) $(LIBS) $(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 HOBJS += ../src/crypto/aes-internal-enc.o
endif endif
@ -86,7 +86,7 @@
endif endif
ifdef NEED_RSN_AUTHENTICATOR 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) wpa_priv: $(BCHECK) $(OBJS_priv)
$(LDO) $(LDFLAGS) -o wpa_priv $(OBJS_priv) $(LIBS) $(LDO) $(LDFLAGS) -o wpa_priv $(OBJS_priv) $(LIBS)
@ -99,7 +99,7 @@
wpa_supplicant: .config $(BCHECK) $(OBJS) $(EXTRA_progs) wpa_supplicant: .config $(BCHECK) $(OBJS) $(EXTRA_progs)
$(LDO) $(LDFLAGS) -o wpa_supplicant $(OBJS) $(LIBS) $(EXTRALIBS) $(LDO) $(LDFLAGS) -o wpa_supplicant $(OBJS) $(LIBS) $(EXTRALIBS)
@@ -1320,6 +1337,12 @@ endif @@ -1321,6 +1338,12 @@ endif
$(Q)$(CC) -c -o $@ $(CFLAGS) $< $(Q)$(CC) -c -o $@ $(CFLAGS) $<
@$(E) " CC " $< @$(E) " CC " $<
@ -114,7 +114,7 @@
wpa_cli.exe: wpa_cli wpa_cli.exe: wpa_cli
--- a/src/drivers/driver.h --- a/src/drivers/driver.h
+++ b/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 * Driver wrapper code should call this function whenever an event is received
* from the driver. * from the driver.
*/ */
@ -127,7 +127,7 @@
/* /*
--- a/src/ap/drv_callbacks.c --- a/src/ap/drv_callbacks.c
+++ b/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; 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; break;
} }
} }
@ -169,8 +169,8 @@
for (;;) { for (;;) {
--- a/wpa_supplicant/events.c --- a/wpa_supplicant/events.c
+++ b/wpa_supplicant/events.c +++ b/wpa_supplicant/events.c
@@ -1506,8 +1506,8 @@ static void wpa_supplicant_event_ibss_rs @@ -1577,8 +1577,8 @@ static void ft_rx_action(struct wpa_supp
#endif /* CONFIG_IBSS_RSN */ #endif /* CONFIG_IEEE80211R */
-void wpa_supplicant_event(void *ctx, enum wpa_event_type event, -void wpa_supplicant_event(void *ctx, enum wpa_event_type event,
@ -179,10 +179,10 @@
+ union wpa_event_data *data) + union wpa_event_data *data)
{ {
struct wpa_supplicant *wpa_s = ctx; struct wpa_supplicant *wpa_s = ctx;
u16 reason_code = 0;
--- a/wpa_supplicant/wpa_supplicant.c --- a/wpa_supplicant/wpa_supplicant.c
+++ b/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; return NULL;
} }
@ -192,7 +192,7 @@
/** /**
* wpa_supplicant_init - Initialize %wpa_supplicant * 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) if (params == NULL)
return NULL; return NULL;
@ -202,7 +202,7 @@
wpa_debug_open_syslog(); wpa_debug_open_syslog();
--- a/hostapd/main.c --- a/hostapd/main.c
+++ b/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); exit(1);
} }
@ -212,7 +212,7 @@
int main(int argc, char *argv[]) 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()) if (os_program_init())
return -1; return -1;

View File

@ -8,7 +8,7 @@
size_t max_ssids; size_t max_ssids;
enum wpa_states prev_state; 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_s->wpa_state == WPA_INACTIVE)
wpa_supplicant_set_state(wpa_s, WPA_SCANNING); wpa_supplicant_set_state(wpa_s, WPA_SCANNING);
@ -25,7 +25,7 @@
/* Find the starting point from which to continue scanning */ /* Find the starting point from which to continue scanning */
ssid = wpa_s->conf->ssid; ssid = wpa_s->conf->ssid;
if (wpa_s->prev_scan_ssid != WILDCARD_SSID_SCAN) { 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); int_array_sort_unique(params.freqs);
} }

View File

@ -1,11 +1,11 @@
--- a/wpa_supplicant/events.c --- a/wpa_supplicant/events.c
+++ b/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_printf(MSG_DEBUG, "Setup a new network");
wpa_supplicant_associate(wpa_s, NULL, ssid); wpa_supplicant_associate(wpa_s, NULL, ssid);
} else } else {
- wpa_supplicant_req_new_scan(wpa_s, 5); - int timeout_sec = 5;
+ wpa_supplicant_req_new_scan(wpa_s, 0); + int timeout_sec = 0;
} int timeout_usec = 0;
} wpa_supplicant_req_new_scan(wpa_s, timeout_sec,
#endif /* CONFIG_NO_SCAN_PROCESSING */ timeout_usec);

View File

@ -1,6 +1,6 @@
--- a/src/drivers/driver_nl80211.c --- a/src/drivers/driver_nl80211.c
+++ b/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 wpa_printf(MSG_DEBUG, "nl80211: Set WDS STA addr=" MACSTR
" aid=%d val=%d name=%s", MAC2STR(addr), aid, val, name); " aid=%d val=%d name=%s", MAC2STR(addr), aid, val, name);
if (val) { if (val) {
@ -16,7 +16,7 @@
} else { } else {
--- a/src/ap/ieee802_11.c --- a/src/ap/ieee802_11.c
+++ b/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"); "Could not add STA to kernel driver");
} }

View File

@ -21,7 +21,7 @@
/* clear to get error below if setting is invalid */ /* clear to get error below if setting is invalid */
--- a/src/drivers/driver_nl80211.c --- a/src/drivers/driver_nl80211.c
+++ b/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 i802_bss *bss = priv;
struct wpa_driver_nl80211_data *drv = bss->drv; 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, if (nl80211_create_iface(drv, name, NL80211_IFTYPE_AP_VLAN,
NULL, 1) < 0) NULL, 1) < 0)
return -1; return -1;
@ -44,7 +44,7 @@
return i802_set_sta_vlan(priv, addr, name, 0); return i802_set_sta_vlan(priv, addr, name, 0);
--- a/src/ap/ap_drv_ops.c --- a/src/ap/ap_drv_ops.c
+++ b/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, static int hostapd_set_wds_sta(struct hostapd_data *hapd, const u8 *addr,
int aid, int val) int aid, int val)
{ {
@ -63,7 +63,7 @@
--- a/src/drivers/driver.h --- a/src/drivers/driver.h
+++ b/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 * @val: 1 = bind to 4-address WDS; 0 = unbind
* Returns: 0 on success, -1 on failure * Returns: 0 on success, -1 on failure
*/ */

View File

@ -1,6 +1,6 @@
--- a/src/ap/hostapd.c --- a/src/ap/hostapd.c
+++ b/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_NAME:=hotplug2
PKG_REV:=201 PKG_REV:=201
PKG_VERSION:=$(PKG_REV) PKG_VERSION:=$(PKG_REV)
PKG_RELEASE:=1 PKG_RELEASE:=2
PKG_SOURCE_PROTO:=svn PKG_SOURCE_PROTO:=svn
PKG_SOURCE_VERSION:=$(PKG_REV) PKG_SOURCE_VERSION:=$(PKG_REV)

View File

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

View File

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

View File

@ -10,12 +10,12 @@ include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=mac80211 PKG_NAME:=mac80211
PKG_VERSION:=2010-03-24 PKG_VERSION:=2010-04-28
PKG_RELEASE:=5 PKG_RELEASE:=1
PKG_SOURCE_URL:=http://mirror2.openwrt.org/sources PKG_SOURCE_URL:=http://mirror2.openwrt.org/sources
# http://www.orbit-lab.org/kernel/compat-wireless-2.6/2010/11 \ # http://www.orbit-lab.org/kernel/compat-wireless-2.6/2010/11 \
# http://wireless.kernel.org/download/compat-wireless-2.6 # http://wireless.kernel.org/download/compat-wireless-2.6
PKG_MD5SUM:=73357c52b5d6888ea3228b2ca8aa5eca PKG_MD5SUM:=4b8c23ac7f33af7556034635af744c67
PKG_SOURCE:=compat-wireless-$(PKG_VERSION).tar.bz2 PKG_SOURCE:=compat-wireless-$(PKG_VERSION).tar.bz2
PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/compat-wireless-$(PKG_VERSION) PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/compat-wireless-$(PKG_VERSION)
@ -425,6 +425,7 @@ define KernelPackage/ath9k/config
config PACKAGE_ATH9K_USE_MINSTREL config PACKAGE_ATH9K_USE_MINSTREL
bool "use the new minstrel_ht rate control for ath9k" bool "use the new minstrel_ht rate control for ath9k"
default y
endmenu endmenu
endef endef
@ -531,6 +532,20 @@ define KernelPackage/net-ipw2200/description
- ipw2200 - ipw2200
endef 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 #Broadcom firmware
ifneq ($(CONFIG_B43_EXPERIMENTAL),) ifneq ($(CONFIG_B43_EXPERIMENTAL),)
PKG_B43_FWV4_NAME:=broadcom-wl PKG_B43_FWV4_NAME:=broadcom-wl
@ -852,7 +867,7 @@ MAKE_OPTS:= \
CONFIG_LIB80211_CRYPT_TKIP= \ CONFIG_LIB80211_CRYPT_TKIP= \
CONFIG_IWLWIFI= \ CONFIG_IWLWIFI= \
CONFIG_IWLAGN= \ CONFIG_IWLAGN= \
CONFIG_MWL8K= \ CONFIG_MWL8K=$(if $(CONFIG_PACKAGE_kmod-mwl8k),m) \
CONFIG_ATMEL= \ CONFIG_ATMEL= \
CONFIG_PCMCIA_ATMEL= \ CONFIG_PCMCIA_ATMEL= \
CONFIG_ADM8211= \ CONFIG_ADM8211= \
@ -1051,3 +1066,4 @@ $(eval $(call KernelPackage,b43legacy))
$(eval $(call KernelPackage,net-libipw)) $(eval $(call KernelPackage,net-libipw))
$(eval $(call KernelPackage,net-ipw2100)) $(eval $(call KernelPackage,net-ipw2100))
$(eval $(call KernelPackage,net-ipw2200)) $(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 & 1))" -eq 1 ] && append ht_capab "$list LDPC" "$N"
[ "$(($ht_cap & 32))" -eq 32 ] && append ht_capab "$list SHORT-GI-20" "$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 & 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" [ "$(($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"; } iw phy "$dev" info | grep -q '2412 MHz' || { mode_band="a"; channel="36"; }

View File

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

View File

@ -9,7 +9,7 @@
ifeq ($(CONFIG_MAC80211),y) 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") $(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. # We need the backported rfkill module on kernel < 2.6.31.
# In more recent kernel versions use the in kernel rfkill module. # In more recent kernel versions use the in kernel rfkill module.
ifdef CONFIG_COMPAT_KERNEL_31 ifdef CONFIG_COMPAT_KERNEL_31

View File

@ -1,6 +1,6 @@
--- a/config.mk --- a/config.mk
+++ b/config.mk +++ b/config.mk
@@ -299,10 +299,10 @@ endif @@ -286,10 +286,10 @@ endif
CONFIG_MWL8K=m CONFIG_MWL8K=m
# Ethernet drivers go here # Ethernet drivers go here
@ -15,7 +15,7 @@
CONFIG_HERMES=m CONFIG_HERMES=m
CONFIG_HERMES_CACHE_FW_ON_INIT=y 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_RNDIS_WLAN=n
CONFIG_USB_NET_COMPAT_CDCETHER=n CONFIG_USB_NET_COMPAT_CDCETHER=n
else else

View File

@ -9,7 +9,7 @@
CONFIG_SSB=m CONFIG_SSB=m
else else
include $(KLIB_BUILD)/.config include $(KLIB_BUILD)/.config
@@ -194,7 +194,7 @@ CONFIG_B43=m @@ -181,7 +181,7 @@ CONFIG_B43=m
CONFIG_B43_HWRNG=y CONFIG_B43_HWRNG=y
CONFIG_B43_PCI_AUTOSELECT=y CONFIG_B43_PCI_AUTOSELECT=y
ifneq ($(CONFIG_PCMCIA),) ifneq ($(CONFIG_PCMCIA),)
@ -18,7 +18,7 @@
endif endif
CONFIG_B43_LEDS=y CONFIG_B43_LEDS=y
CONFIG_B43_PHY_LP=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_PCIHOST=y
CONFIG_SSB_B43_PCI_BRIDGE=y CONFIG_SSB_B43_PCI_BRIDGE=y
ifneq ($(CONFIG_PCMCIA),) ifneq ($(CONFIG_PCMCIA),)

View File

@ -1,6 +1,6 @@
--- a/config.mk --- a/config.mk
+++ b/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),) ifneq ($(CONFIG_MMC),)

View File

@ -1,6 +1,6 @@
--- a/config.mk --- a/config.mk
+++ b/config.mk +++ b/config.mk
@@ -198,7 +198,7 @@ ifneq ($(CONFIG_PCMCIA),) @@ -185,7 +185,7 @@ ifneq ($(CONFIG_PCMCIA),)
endif endif
CONFIG_B43_LEDS=y CONFIG_B43_LEDS=y
CONFIG_B43_PHY_LP=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 --- a/config.mk
+++ b/config.mk +++ b/config.mk
@@ -276,12 +276,12 @@ CONFIG_RTL8180=m @@ -248,12 +248,12 @@ CONFIG_RTL8180=m
CONFIG_ADM8211=m CONFIG_ADM8211=m
@ -15,7 +15,7 @@
# CONFIG_RT2800PCI_RT30XX=y # CONFIG_RT2800PCI_RT30XX=y
# CONFIG_RT2800PCI_RT35XX=y # CONFIG_RT2800PCI_RT35XX=y
# CONFIG_RT2800PCI_SOC=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_RT35XX=y
# CONFIG_RT2800USB_UNKNOWN=y # CONFIG_RT2800USB_UNKNOWN=y
endif endif

View File

@ -1,8 +1,8 @@
--- a/include/linux/compat-2.6.34.h --- a/include/linux/compat-2.6.34.h
+++ b/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 @@ -197,6 +197,8 @@ do { \
*/
#define rcu_dereference_check(p, c) rcu_dereference(p) #define sysfs_bin_attr_init(bin_attr) sysfs_attr_init(&(bin_attr)->attr)
+#define rcu_dereference_check(p, c) rcu_dereference(p) +#define rcu_dereference_check(p, c) rcu_dereference(p)
+ +

View File

@ -1,8 +1,8 @@
--- a/include/linux/tracepoint.h --- a/include/linux/tracepoint.h
+++ b/include/linux/tracepoint.h +++ b/include/linux/tracepoint.h
@@ -1,6 +1,8 @@ @@ -3,6 +3,8 @@
#ifndef _COMPAT_LINUX_TRACEPOINT_H
#define _COMPAT_LINUX_TRACEPOINT_H 1 #include <linux/version.h>
+#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 --- a/drivers/net/wireless/ath/ath9k/hw.c
+++ b/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/io.h>
#include <linux/slab.h>
+#include <linux/etherdevice.h> +#include <linux/etherdevice.h>
#include <asm/unaligned.h> #include <asm/unaligned.h>
#include "hw.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] = eeval >> 8;
common->macaddr[2 * i + 1] = eeval & 0xff; common->macaddr[2 * i + 1] = eeval & 0xff;
} }

View File

@ -1,6 +1,6 @@
--- a/drivers/net/wireless/ath/regd.c --- a/drivers/net/wireless/ath/regd.c
+++ b/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/cfg80211.h>
#include <net/mac80211.h> #include <net/mac80211.h>
#include "regd.h" #include "regd.h"

View File

@ -8,7 +8,7 @@
#include "ath9k.h" #include "ath9k.h"
static DEFINE_PCI_DEVICE_TABLE(ath_pci_id_table) = { 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) 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 --- a/drivers/net/wireless/ath/ath9k/main.c
+++ b/drivers/net/wireless/ath/ath9k/main.c +++ b/drivers/net/wireless/ath/ath9k/main.c
@@ -15,6 +15,7 @@ @@ -15,6 +15,7 @@
@ -24,7 +10,7 @@
--- a/drivers/net/wireless/ath/ath9k/init.c --- a/drivers/net/wireless/ath/ath9k/init.c
+++ b/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_hw *ah = NULL;
struct ath_common *common; struct ath_common *common;
@ -32,7 +18,7 @@
int ret = 0, i; int ret = 0, i;
int csz = 0; 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; ah->hw_version.subsysid = subsysid;
sc->sc_ah = ah; sc->sc_ah = ah;
@ -43,3 +29,16 @@
common = ath9k_hw_common(ah); common = ath9k_hw_common(ah);
common->ops = &ath9k_common_ops; common->ops = &ath9k_common_ops;
common->bus_ops = bus_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 --- a/drivers/net/wireless/ath/ath9k/hw.c
+++ b/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/io.h>
#include <linux/slab.h>
#include <linux/etherdevice.h> #include <linux/etherdevice.h>
+#include <linux/ath9k_platform.h> +#include <linux/ath9k_platform.h>
#include <asm/unaligned.h> #include <asm/unaligned.h>
+#include "ath9k.h" +#include "ath9k.h"
#include "hw.h" #include "hw.h"
#include "hw-ops.h"
#include "rc.h" #include "rc.h"
#include "initvals.h" @@ -441,18 +443,23 @@ static void ath9k_hw_init_defaults(struc
@@ -428,17 +430,23 @@ static int ath9k_hw_rf_claim(struct ath_
static int ath9k_hw_init_macaddr(struct ath_hw *ah) static int ath9k_hw_init_macaddr(struct ath_hw *ah)
{ {
struct ath_common *common = ath9k_hw_common(ah); struct ath_common *common = ath9k_hw_common(ah);
@ -20,10 +20,11 @@
u32 sum; u32 sum;
int i; int i;
u16 eeval; u16 eeval;
u32 EEP_MAC[] = { EEP_MAC_LSW, EEP_MAC_MID, EEP_MAC_MSW };
sum = 0; sum = 0;
- for (i = 0; i < 3; i++) { - 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; - sum += eeval;
- common->macaddr[2 * i] = eeval >> 8; - common->macaddr[2 * i] = eeval >> 8;
- common->macaddr[2 * i + 1] = eeval & 0xff; - common->macaddr[2 * i + 1] = eeval & 0xff;
@ -32,12 +33,11 @@
+ memcpy(common->macaddr, pdata->macaddr, ETH_ALEN); + memcpy(common->macaddr, pdata->macaddr, ETH_ALEN);
+ else + else
+ for (i = 0; i < 3; i++) { + 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; + sum += eeval;
+ common->macaddr[2 * i] = eeval >> 8; + common->macaddr[2 * i] = eeval >> 8;
+ common->macaddr[2 * i + 1] = eeval & 0xff; + common->macaddr[2 * i + 1] = eeval & 0xff;
+ } + }
+
if (!is_valid_ether_addr(common->macaddr)) { if (!is_valid_ether_addr(common->macaddr)) {
ath_print(common, ATH_DBG_EEPROM, ath_print(common, ATH_DBG_EEPROM,
"eeprom contains invalid mac address: %pM\n", "eeprom contains invalid mac address: %pM\n",

View File

@ -1,6 +1,6 @@
--- a/drivers/net/wireless/ath/ath9k/hw.c --- a/drivers/net/wireless/ath/ath9k/hw.c
+++ b/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) { if (ah->config.rx_intr_mitigation) {
REG_RMW_FIELD(ah, AR_RIMT, AR_RIMT_LAST, 500); REG_RMW_FIELD(ah, AR_RIMT, AR_RIMT_LAST, 500);
@ -8,4 +8,4 @@
+ REG_RMW_FIELD(ah, AR_RIMT, AR_RIMT_FIRST, 500); + 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 --- a/drivers/net/wireless/ath/ath9k/init.c
+++ b/drivers/net/wireless/ath/ath9k/init.c +++ b/drivers/net/wireless/ath/ath9k/init.c
@@ -14,6 +14,7 @@ @@ -16,6 +16,7 @@
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/ #include <linux/slab.h>
+#include "linux/ath9k_platform.h" +#include "linux/ath9k_platform.h"
#include "ath9k.h" #include "ath9k.h"
static char *dev_info = "ath9k"; 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; pdata = (struct ath9k_platform_data *) sc->dev->platform_data;
if (!pdata) if (!pdata)
ah->ah_flags |= AH_USE_EEPROM; ah->ah_flags |= AH_USE_EEPROM;
@ -17,7 +17,7 @@
common = ath9k_hw_common(ah); common = ath9k_hw_common(ah);
common->ops = &ath9k_common_ops; 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); SET_IEEE80211_PERM_ADDR(hw, common->macaddr);
} }
@ -42,7 +42,7 @@
int ath9k_init_device(u16 devid, struct ath_softc *sc, u16 subsysid, int ath9k_init_device(u16 devid, struct ath_softc *sc, u16 subsysid,
const struct ath_bus_ops *bus_ops) 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); common = ath9k_hw_common(ah);
ath9k_set_hw_capab(sc, hw); ath9k_set_hw_capab(sc, hw);
@ -54,15 +54,15 @@
ath9k_reg_notifier); ath9k_reg_notifier);
--- a/drivers/net/wireless/ath/ath9k/ath9k.h --- a/drivers/net/wireless/ath/ath9k/ath9k.h
+++ b/drivers/net/wireless/ath/ath9k/ath9k.h +++ b/drivers/net/wireless/ath/ath9k/ath9k.h
@@ -511,6 +511,8 @@ struct ath_softc { @@ -517,6 +517,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;
};
struct ath_wiphy { int beacon_interval;
+ bool quirk_wndr3700;
+
#ifdef CONFIG_ATH9K_DEBUGFS
struct ath9k_debug debug;
#endif
--- a/include/linux/ath9k_platform.h --- a/include/linux/ath9k_platform.h
+++ b/include/linux/ath9k_platform.h +++ b/include/linux/ath9k_platform.h
@@ -24,6 +24,8 @@ @@ -24,6 +24,8 @@
@ -70,7 +70,7 @@
u16 eeprom_data[ATH9K_PLAT_EEP_MAX_WORDS]; u16 eeprom_data[ATH9K_PLAT_EEP_MAX_WORDS];
u8 *macaddr; u8 *macaddr;
+ +
+ unsigned long quirk_wndr3700:1; + bool quirk_wndr3700;
}; };
#endif /* _LINUX_ATH9K_PLATFORM_H */ #endif /* _LINUX_ATH9K_PLATFORM_H */

View File

@ -13,7 +13,7 @@
sc->sc_ah->led_pin = ATH_LED_PIN_DEF; sc->sc_ah->led_pin = ATH_LED_PIN_DEF;
--- a/drivers/net/wireless/ath/ath9k/ath9k.h --- a/drivers/net/wireless/ath/ath9k/ath9k.h
+++ b/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_DEF 1
#define ATH_LED_PIN_9287 8 #define ATH_LED_PIN_9287 8

View File

@ -1,6 +1,6 @@
--- a/drivers/net/wireless/ath/ath9k/debug.c --- a/drivers/net/wireless/ath/ath9k/debug.c
+++ b/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 #define DMA_BUF_LEN 1024
@ -91,7 +91,7 @@
static ssize_t read_file_dma(struct file *file, char __user *user_buf, static ssize_t read_file_dma(struct file *file, char __user *user_buf,
size_t count, loff_t *ppos) 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; goto err;
#endif #endif
@ -108,7 +108,7 @@
sc->debug.debugfs_dma = debugfs_create_file("dma", S_IRUSR, sc->debug.debugfs_dma = debugfs_create_file("dma", S_IRUSR,
sc->debug.debugfs_phy, sc, &fops_dma); sc->debug.debugfs_phy, sc, &fops_dma);
if (!sc->debug.debugfs_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_common *common = ath9k_hw_common(ah);
struct ath_softc *sc = (struct ath_softc *) common->priv; struct ath_softc *sc = (struct ath_softc *) common->priv;
@ -119,7 +119,7 @@
debugfs_remove(sc->debug.debugfs_wiphy); debugfs_remove(sc->debug.debugfs_wiphy);
--- a/drivers/net/wireless/ath/ath9k/debug.h --- a/drivers/net/wireless/ath/ath9k/debug.h
+++ b/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 { struct ath9k_debug {

View File

@ -1,6 +1,6 @@
--- a/drivers/net/wireless/ath/ath9k/debug.c --- a/drivers/net/wireless/ath/ath9k/debug.c
+++ b/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 .owner = THIS_MODULE
}; };
@ -87,7 +87,7 @@
int ath9k_init_debug(struct ath_hw *ah) int ath9k_init_debug(struct ath_hw *ah)
{ {
struct ath_common *common = ath9k_hw_common(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) if (!sc->debug.debugfs_recv)
goto err; goto err;
@ -105,7 +105,7 @@
return 0; return 0;
err: err:
ath9k_exit_debug(ah); 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_tx_chainmask);
debugfs_remove(sc->debug.debugfs_rx_chainmask); debugfs_remove(sc->debug.debugfs_rx_chainmask);
@ -116,7 +116,7 @@
debugfs_remove(sc->debug.debugfs_wiphy); debugfs_remove(sc->debug.debugfs_wiphy);
--- a/drivers/net/wireless/ath/ath9k/debug.h --- a/drivers/net/wireless/ath/ath9k/debug.h
+++ b/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_wiphy;
struct dentry *debugfs_xmit; struct dentry *debugfs_xmit;
struct dentry *debugfs_recv; struct dentry *debugfs_recv;

View File

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

View File

@ -1,6 +1,6 @@
--- a/drivers/net/wireless/ath/ath9k/init.c --- a/drivers/net/wireless/ath/ath9k/init.c
+++ b/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->sta_data_size = sizeof(struct ath_node);
hw->vif_data_size = sizeof(struct ath_vif); 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 --- a/drivers/net/wireless/rt2x00/rt2x00pci.c
+++ b/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); EXPORT_SYMBOL_GPL(rt2x00pci_uninitialize);
@ -8,7 +8,7 @@
/* /*
* PCI driver handlers. * 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); EXPORT_SYMBOL_GPL(rt2x00pci_resume);
#endif /* CONFIG_PM */ #endif /* CONFIG_PM */

View File

@ -1,6 +1,6 @@
--- a/drivers/net/wireless/rt2x00/rt2x00pci.c --- a/drivers/net/wireless/rt2x00/rt2x00pci.c
+++ b/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. * 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. The ralink SoC platforms do not have an MCU.
Signed-off-by: Luis Correia <luis.f.correia@gmail.com> 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 --- a/drivers/net/wireless/rt2x00/rt2800pci.c
+++ b/drivers/net/wireless/rt2x00/rt2800pci.c +++ b/drivers/net/wireless/rt2x00/rt2800pci.c
@@ -60,6 +60,12 @@ static void rt2800pci_mcu_status(struct @@ -66,6 +66,12 @@ static void rt2800pci_mcu_status(struct
unsigned int i; if (rt2x00_is_soc(rt2x00dev))
u32 reg; 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; + return;
+ +
for (i = 0; i < 200; i++) { for (i = 0; i < 200; i++) {
rt2800_register_read(rt2x00dev, H2M_MAILBOX_CID, &reg); 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 define Package/mountd/install
$(INSTALL_DIR) $(1)/sbin/ $(1)/etc/config/ $(1)/etc/init.d/ $(INSTALL_DIR) $(1)/sbin/ $(1)/etc/config/ $(1)/etc/init.d/
$(INSTALL_BIN) $(PKG_BUILD_DIR)/mountd $(1)/sbin/ $(INSTALL_BIN) $(PKG_BUILD_DIR)/mountd $(1)/sbin/
$(INSTALL_BIN) ./files/mountd.config $(1)/etc/config/mountd $(INSTALL_DATA) ./files/mountd.config $(1)/etc/config/mountd
$(INSTALL_DATA) ./files/mountd.init $(1)/etc/init.d/mountd $(INSTALL_BIN) ./files/mountd.init $(1)/etc/init.d/mountd
endef endef
$(eval $(call BuildPackage,mountd)) $(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"; /squashfs/ and $ret .= "\tselect USES_SQUASHFS\n";
/jffs2/ and $ret .= "\tselect USES_JFFS2\n"; /jffs2/ and $ret .= "\tselect USES_JFFS2\n";
/ext2/ and $ret .= "\tselect USES_EXT2\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"; /cpiogz/ and $ret .= "\tselect USES_CPIOGZ\n";
/ubifs/ and $ret .= "\tselect USES_UBIFS\n"; /ubifs/ and $ret .= "\tselect USES_UBIFS\n";
/fpu/ and $ret .= "\tselect HAS_FPU\n"; /fpu/ and $ret .= "\tselect HAS_FPU\n";

View File

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

View File

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

View File

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

View File

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

View File

@ -20,7 +20,7 @@ PKG_CAT:=bzcat
include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/package.mk
UBOOT_CONFIG=$(strip $(subst ",, $(CONFIG_AVR32_UBOOT_TARGET))) UBOOT_CONFIG=$(call qstrip,$(CONFIG_AVR32_UBOOT_TARGET))
define Build/Compile define Build/Compile
$(MAKE) -C $(PKG_BUILD_DIR) $(UBOOT_CONFIG)_config $(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 echo "$port ${cpu_port:-5u*}" > /proc/switch/eth0/vlan/0/ports
port_net_echo $1 port_net_echo $1
}; done }; done
echo "0 ${cpu_port:-5u*}" > /proc/switch/eth0/vlan/0/ports
} || port_net_echo $1 } || 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 ARCH:=mipsel
BOARD:=cobalt BOARD:=cobalt
BOARDNAME:=Cobalt Microservers BOARDNAME:=Cobalt Microservers
FEATURES:=tgz pci ext2 FEATURES:=targz pci ext2
CFLAGS:=-O2 -pipe -mtune=r5000 -funit-at-a-time CFLAGS:=-O2 -pipe -mtune=r5000 -funit-at-a-time
LINUX_VERSION:=2.6.32.10 LINUX_VERSION:=2.6.32.10

View File

@ -176,12 +176,17 @@ CONFIG_HOTPLUG=y
CONFIG_IMQ=m CONFIG_IMQ=m
# CONFIG_INET_ECN is not set # CONFIG_INET_ECN is not set
CONFIG_INET=y CONFIG_INET=y
# CONFIG_INPUT_EVDEV is not set
# CONFIG_INPUT_GAMEPORT is not set
# CONFIG_INPUT 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_JOYDEV is not set
# CONFIG_INPUT_KEYBDEV is not set # CONFIG_INPUT_KEYBDEV is not set
# CONFIG_INPUT_MOUSEDEV 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_INPUT_UINPUT is not set
# CONFIG_INTERMEZZO_FS is not set # CONFIG_INTERMEZZO_FS is not set
CONFIG_IP6_NF_FILTER=m 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 ARCH:=arm
BOARD:=kirkwood BOARD:=kirkwood
BOARDNAME:=Marvell Kirkwood BOARDNAME:=Marvell Kirkwood
FEATURES:=tgz usb FEATURES:=targz usb
LINUX_VERSION:=2.6.30.10 LINUX_VERSION:=2.6.30.10

View File

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

View File

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

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