mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2025-04-21 12:27:27 +03:00
[kernel] update to 2.6.25.19, and refresh patches
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@13137 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
--- a/fs/Kconfig
|
||||
+++ b/fs/Kconfig
|
||||
@@ -1367,6 +1367,71 @@
|
||||
@@ -1367,6 +1367,71 @@ config CRAMFS
|
||||
|
||||
If unsure, say N.
|
||||
|
||||
@@ -74,7 +74,7 @@
|
||||
depends on BLOCK
|
||||
--- a/fs/Makefile
|
||||
+++ b/fs/Makefile
|
||||
@@ -73,6 +73,7 @@
|
||||
@@ -73,6 +73,7 @@ obj-$(CONFIG_JBD) += jbd/
|
||||
obj-$(CONFIG_JBD2) += jbd2/
|
||||
obj-$(CONFIG_EXT2_FS) += ext2/
|
||||
obj-$(CONFIG_CRAMFS) += cramfs/
|
||||
@@ -4128,7 +4128,7 @@
|
||||
#include <linux/initrd.h>
|
||||
#include <linux/string.h>
|
||||
|
||||
@@ -39,6 +40,7 @@
|
||||
@@ -39,6 +40,7 @@ static int __init crd_load(int in_fd, in
|
||||
* numbers could not be found.
|
||||
*
|
||||
* We currently check for the following magic numbers:
|
||||
@@ -4136,7 +4136,7 @@
|
||||
* minix
|
||||
* ext2
|
||||
* romfs
|
||||
@@ -53,6 +55,7 @@
|
||||
@@ -53,6 +55,7 @@ identify_ramdisk_image(int fd, int start
|
||||
struct ext2_super_block *ext2sb;
|
||||
struct romfs_super_block *romfsb;
|
||||
struct cramfs_super *cramfsb;
|
||||
@@ -4144,7 +4144,7 @@
|
||||
int nblocks = -1;
|
||||
unsigned char *buf;
|
||||
|
||||
@@ -64,6 +67,7 @@
|
||||
@@ -64,6 +67,7 @@ identify_ramdisk_image(int fd, int start
|
||||
ext2sb = (struct ext2_super_block *) buf;
|
||||
romfsb = (struct romfs_super_block *) buf;
|
||||
cramfsb = (struct cramfs_super *) buf;
|
||||
@@ -4152,7 +4152,7 @@
|
||||
memset(buf, 0xe5, size);
|
||||
|
||||
/*
|
||||
@@ -101,6 +105,15 @@
|
||||
@@ -101,6 +105,15 @@ identify_ramdisk_image(int fd, int start
|
||||
goto done;
|
||||
}
|
||||
|
||||
|
||||
@@ -769,7 +769,7 @@
|
||||
+}
|
||||
--- a/lib/Makefile
|
||||
+++ b/lib/Makefile
|
||||
@@ -14,7 +14,7 @@
|
||||
@@ -14,7 +14,7 @@ lib-$(CONFIG_SMP) += cpumask.o
|
||||
lib-y += kobject.o kref.o klist.o
|
||||
|
||||
obj-y += div64.o sort.o parser.o halfmd4.o debug_locks.o random32.o \
|
||||
|
||||
@@ -38,7 +38,7 @@
|
||||
static void squashfs_put_super(struct super_block *);
|
||||
static int squashfs_statfs(struct dentry *, struct kstatfs *);
|
||||
static int squashfs_symlink_readpage(struct file *file, struct page *page);
|
||||
@@ -64,7 +81,11 @@
|
||||
@@ -64,7 +81,11 @@ static int squashfs_get_sb(struct file_s
|
||||
const char *, void *, struct vfsmount *);
|
||||
|
||||
|
||||
@@ -50,7 +50,7 @@
|
||||
|
||||
static struct file_system_type squashfs_fs_type = {
|
||||
.owner = THIS_MODULE,
|
||||
@@ -249,6 +270,15 @@
|
||||
@@ -249,6 +270,15 @@ SQSH_EXTERN unsigned int squashfs_read_d
|
||||
if (compressed) {
|
||||
int zlib_err;
|
||||
|
||||
@@ -66,7 +66,7 @@
|
||||
stream.next_in = c_buffer;
|
||||
stream.avail_in = c_byte;
|
||||
stream.next_out = buffer;
|
||||
@@ -263,7 +293,7 @@
|
||||
@@ -263,7 +293,7 @@ SQSH_EXTERN unsigned int squashfs_read_d
|
||||
bytes = 0;
|
||||
} else
|
||||
bytes = stream.total_out;
|
||||
@@ -75,7 +75,7 @@
|
||||
up(&msblk->read_data_mutex);
|
||||
}
|
||||
|
||||
@@ -2045,15 +2075,19 @@
|
||||
@@ -2045,15 +2075,19 @@ static int __init init_squashfs_fs(void)
|
||||
printk(KERN_INFO "squashfs: version 3.0 (2006/03/15) "
|
||||
"Phillip Lougher\n");
|
||||
|
||||
@@ -95,7 +95,7 @@
|
||||
destroy_inodecache();
|
||||
}
|
||||
|
||||
@@ -2064,7 +2098,9 @@
|
||||
@@ -2064,7 +2098,9 @@ out:
|
||||
|
||||
static void __exit exit_squashfs_fs(void)
|
||||
{
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -533,6 +533,9 @@
|
||||
@@ -533,6 +533,9 @@ endif
|
||||
NOSTDINC_FLAGS += -nostdinc -isystem $(shell $(CC) -print-file-name=include)
|
||||
CHECKFLAGS += $(NOSTDINC_FLAGS)
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
#include <linux/squashfs_fs_sb.h>
|
||||
#include <linux/squashfs_fs_i.h>
|
||||
#include <linux/buffer_head.h>
|
||||
@@ -2125,7 +2126,7 @@
|
||||
@@ -2125,7 +2126,7 @@ static void squashfs_destroy_inode(struc
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/include/asm-mips/system.h
|
||||
+++ b/include/asm-mips/system.h
|
||||
@@ -185,7 +185,7 @@
|
||||
@@ -185,7 +185,7 @@ extern __u64 __xchg_u64_unsupported_on_3
|
||||
if something tries to do an invalid xchg(). */
|
||||
extern void __xchg_called_with_bad_pointer(void);
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
|
||||
static int cfi_amdstd_read (struct mtd_info *, loff_t, size_t, size_t *, u_char *);
|
||||
static int cfi_amdstd_write_words(struct mtd_info *, loff_t, size_t, size_t *, const u_char *);
|
||||
@@ -298,12 +299,19 @@
|
||||
@@ -298,12 +299,19 @@ struct mtd_info *cfi_cmdset_0002(struct
|
||||
|
||||
if (extp->MajorVersion != '1' ||
|
||||
(extp->MinorVersion < '0' || extp->MinorVersion > '4')) {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/drivers/mtd/chips/cfi_cmdset_0001.c
|
||||
+++ b/drivers/mtd/chips/cfi_cmdset_0001.c
|
||||
@@ -1008,7 +1008,7 @@
|
||||
@@ -1008,7 +1008,7 @@ static void __xipram xip_enable(struct m
|
||||
|
||||
static int __xipram xip_wait_for_operation(
|
||||
struct map_info *map, struct flchip *chip,
|
||||
@@ -9,7 +9,7 @@
|
||||
{
|
||||
struct cfi_private *cfi = map->fldrv_priv;
|
||||
struct cfi_pri_intelext *cfip = cfi->cmdset_priv;
|
||||
@@ -1017,7 +1017,7 @@
|
||||
@@ -1017,7 +1017,7 @@ static int __xipram xip_wait_for_operati
|
||||
flstate_t oldstate, newstate;
|
||||
|
||||
start = xip_currtime();
|
||||
@@ -18,7 +18,7 @@
|
||||
if (usec == 0)
|
||||
usec = 500000;
|
||||
done = 0;
|
||||
@@ -1127,8 +1127,8 @@
|
||||
@@ -1127,8 +1127,8 @@ static int __xipram xip_wait_for_operati
|
||||
#define XIP_INVAL_CACHED_RANGE(map, from, size) \
|
||||
INVALIDATE_CACHED_RANGE(map, from, size)
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
|
||||
#else
|
||||
|
||||
@@ -1140,65 +1140,65 @@
|
||||
@@ -1140,65 +1140,65 @@ static int __xipram xip_wait_for_operati
|
||||
static int inval_cache_and_wait_for_operation(
|
||||
struct map_info *map, struct flchip *chip,
|
||||
unsigned long cmd_adr, unsigned long inval_adr, int inval_len,
|
||||
@@ -130,7 +130,7 @@
|
||||
/* Done and happy. */
|
||||
chip->state = FL_STATUS;
|
||||
return 0;
|
||||
@@ -1207,7 +1207,8 @@
|
||||
@@ -1207,7 +1207,8 @@ static int inval_cache_and_wait_for_oper
|
||||
#endif
|
||||
|
||||
#define WAIT_TIMEOUT(map, chip, adr, udelay) \
|
||||
@@ -140,7 +140,7 @@
|
||||
|
||||
|
||||
static int do_point_onechip (struct map_info *map, struct flchip *chip, loff_t adr, size_t len)
|
||||
@@ -1438,7 +1439,7 @@
|
||||
@@ -1438,7 +1439,7 @@ static int __xipram do_write_oneword(str
|
||||
|
||||
ret = INVAL_CACHE_AND_WAIT(map, chip, adr,
|
||||
adr, map_bankwidth(map),
|
||||
@@ -149,7 +149,7 @@
|
||||
if (ret) {
|
||||
xip_enable(map, chip, adr);
|
||||
printk(KERN_ERR "%s: word write error (status timeout)\n", map->name);
|
||||
@@ -1678,7 +1679,7 @@
|
||||
@@ -1678,7 +1679,7 @@ static int __xipram do_write_buffer(stru
|
||||
|
||||
ret = INVAL_CACHE_AND_WAIT(map, chip, cmd_adr,
|
||||
initial_adr, initial_len,
|
||||
@@ -158,7 +158,7 @@
|
||||
if (ret) {
|
||||
map_write(map, CMD(0x70), cmd_adr);
|
||||
chip->state = FL_STATUS;
|
||||
@@ -1813,7 +1814,7 @@
|
||||
@@ -1813,7 +1814,7 @@ static int __xipram do_erase_oneblock(st
|
||||
|
||||
ret = INVAL_CACHE_AND_WAIT(map, chip, adr,
|
||||
adr, len,
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
#include <linux/buffer_head.h>
|
||||
#include <linux/mutex.h>
|
||||
#include <linux/mount.h>
|
||||
@@ -237,10 +238,11 @@
|
||||
@@ -237,10 +238,11 @@ static void block2mtd_free_device(struct
|
||||
|
||||
|
||||
/* FIXME: ensure that mtd->size % erase_size == 0 */
|
||||
@@ -21,7 +21,7 @@
|
||||
|
||||
if (!devname)
|
||||
return NULL;
|
||||
@@ -279,14 +281,18 @@
|
||||
@@ -279,14 +281,18 @@ static struct block2mtd_dev *add_device(
|
||||
|
||||
/* Setup the MTD structure */
|
||||
/* make the name contain the block device in */
|
||||
@@ -45,7 +45,7 @@
|
||||
dev->mtd.erasesize = erase_size;
|
||||
dev->mtd.writesize = 1;
|
||||
dev->mtd.type = MTD_RAM;
|
||||
@@ -298,15 +304,18 @@
|
||||
@@ -298,15 +304,18 @@ static struct block2mtd_dev *add_device(
|
||||
dev->mtd.read = block2mtd_read;
|
||||
dev->mtd.priv = dev;
|
||||
dev->mtd.owner = THIS_MODULE;
|
||||
@@ -68,7 +68,7 @@
|
||||
return dev;
|
||||
|
||||
devinit_err:
|
||||
@@ -379,9 +388,9 @@
|
||||
@@ -379,9 +388,9 @@ static char block2mtd_paramline[80 + 12]
|
||||
|
||||
static int block2mtd_setup2(const char *val)
|
||||
{
|
||||
@@ -80,7 +80,7 @@
|
||||
char *name;
|
||||
size_t erase_size = PAGE_SIZE;
|
||||
int i, ret;
|
||||
@@ -392,7 +401,7 @@
|
||||
@@ -392,7 +401,7 @@ static int block2mtd_setup2(const char *
|
||||
strcpy(str, val);
|
||||
kill_final_newline(str);
|
||||
|
||||
@@ -89,7 +89,7 @@
|
||||
token[i] = strsep(&str, ",");
|
||||
|
||||
if (str)
|
||||
@@ -411,8 +420,10 @@
|
||||
@@ -411,8 +420,10 @@ static int block2mtd_setup2(const char *
|
||||
parse_err("illegal erase size");
|
||||
}
|
||||
}
|
||||
@@ -101,7 +101,7 @@
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -446,7 +457,7 @@
|
||||
@@ -446,7 +457,7 @@ static int block2mtd_setup(const char *v
|
||||
|
||||
|
||||
module_param_call(block2mtd, block2mtd_setup, NULL, NULL, 0200);
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/drivers/mtd/Kconfig
|
||||
+++ b/drivers/mtd/Kconfig
|
||||
@@ -47,6 +47,16 @@
|
||||
@@ -47,6 +47,16 @@ config MTD_PARTITIONS
|
||||
devices. Partitioning on NFTL 'devices' is a different - that's the
|
||||
'normal' form of partitioning used on a block device.
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
|
||||
/* Our partition linked list */
|
||||
static LIST_HEAD(mtd_partitions);
|
||||
@@ -39,7 +41,7 @@
|
||||
@@ -39,7 +41,7 @@ struct mtd_part {
|
||||
* the pointer to that structure with this macro.
|
||||
*/
|
||||
#define PART(x) ((struct mtd_part *)(x))
|
||||
@@ -37,7 +37,7 @@
|
||||
|
||||
/*
|
||||
* MTD methods which simply translate the effective address and pass through
|
||||
@@ -322,6 +324,316 @@
|
||||
@@ -322,6 +324,316 @@ int del_mtd_partitions(struct mtd_info *
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -354,7 +354,7 @@
|
||||
/*
|
||||
* This function, given a master MTD object and a partition table, creates
|
||||
* and registers slave MTD objects which are bound to the master according to
|
||||
@@ -334,171 +646,31 @@
|
||||
@@ -334,171 +646,31 @@ int add_mtd_partitions(struct mtd_info *
|
||||
int nbparts)
|
||||
{
|
||||
struct mtd_part *slave;
|
||||
@@ -547,7 +547,7 @@
|
||||
}
|
||||
}
|
||||
|
||||
@@ -574,6 +746,32 @@
|
||||
@@ -574,6 +746,32 @@ int parse_mtd_partitions(struct mtd_info
|
||||
return ret;
|
||||
}
|
||||
|
||||
@@ -582,7 +582,7 @@
|
||||
EXPORT_SYMBOL_GPL(deregister_mtd_parser);
|
||||
--- a/drivers/mtd/devices/block2mtd.c
|
||||
+++ b/drivers/mtd/devices/block2mtd.c
|
||||
@@ -34,6 +34,8 @@
|
||||
@@ -34,6 +34,8 @@ struct block2mtd_dev {
|
||||
struct block_device *blkdev;
|
||||
struct mtd_info mtd;
|
||||
struct mutex write_mutex;
|
||||
@@ -591,7 +591,7 @@
|
||||
};
|
||||
|
||||
|
||||
@@ -86,6 +88,12 @@
|
||||
@@ -86,6 +88,12 @@ static int block2mtd_erase(struct mtd_in
|
||||
size_t len = instr->len;
|
||||
int err;
|
||||
|
||||
@@ -604,7 +604,7 @@
|
||||
instr->state = MTD_ERASING;
|
||||
mutex_lock(&dev->write_mutex);
|
||||
err = _block2mtd_erase(dev, from, len);
|
||||
@@ -98,6 +106,10 @@
|
||||
@@ -98,6 +106,10 @@ static int block2mtd_erase(struct mtd_in
|
||||
|
||||
instr->state = MTD_ERASE_DONE;
|
||||
mtd_erase_callback(instr);
|
||||
@@ -615,7 +615,7 @@
|
||||
return err;
|
||||
}
|
||||
|
||||
@@ -109,10 +121,14 @@
|
||||
@@ -109,10 +121,14 @@ static int block2mtd_read(struct mtd_inf
|
||||
struct page *page;
|
||||
int index = from >> PAGE_SHIFT;
|
||||
int offset = from & (PAGE_SIZE-1);
|
||||
@@ -633,7 +633,7 @@
|
||||
if (from + len > mtd->size)
|
||||
len = mtd->size - from;
|
||||
|
||||
@@ -127,10 +143,14 @@
|
||||
@@ -127,10 +143,14 @@ static int block2mtd_read(struct mtd_inf
|
||||
len = len - cpylen;
|
||||
|
||||
page = page_read(dev->blkdev->bd_inode->i_mapping, index);
|
||||
@@ -652,7 +652,7 @@
|
||||
|
||||
memcpy(buf, page_address(page) + offset, cpylen);
|
||||
page_cache_release(page);
|
||||
@@ -141,7 +161,10 @@
|
||||
@@ -141,7 +161,10 @@ static int block2mtd_read(struct mtd_inf
|
||||
offset = 0;
|
||||
index++;
|
||||
}
|
||||
@@ -664,7 +664,7 @@
|
||||
}
|
||||
|
||||
|
||||
@@ -193,12 +216,22 @@
|
||||
@@ -193,12 +216,22 @@ static int block2mtd_write(struct mtd_in
|
||||
size_t *retlen, const u_char *buf)
|
||||
{
|
||||
struct block2mtd_dev *dev = mtd->priv;
|
||||
@@ -691,7 +691,7 @@
|
||||
if (to + len > mtd->size)
|
||||
len = mtd->size - to;
|
||||
|
||||
@@ -207,6 +240,9 @@
|
||||
@@ -207,6 +240,9 @@ static int block2mtd_write(struct mtd_in
|
||||
mutex_unlock(&dev->write_mutex);
|
||||
if (err > 0)
|
||||
err = 0;
|
||||
@@ -701,7 +701,7 @@
|
||||
return err;
|
||||
}
|
||||
|
||||
@@ -215,51 +251,29 @@
|
||||
@@ -215,51 +251,29 @@ static int block2mtd_write(struct mtd_in
|
||||
static void block2mtd_sync(struct mtd_info *mtd)
|
||||
{
|
||||
struct block2mtd_dev *dev = mtd->priv;
|
||||
@@ -761,7 +761,7 @@
|
||||
if (devt) {
|
||||
bdev = open_by_devnum(devt, FMODE_WRITE | FMODE_READ);
|
||||
}
|
||||
@@ -267,17 +281,96 @@
|
||||
@@ -267,17 +281,96 @@ static struct block2mtd_dev *add_device(
|
||||
#endif
|
||||
|
||||
if (IS_ERR(bdev)) {
|
||||
@@ -861,7 +861,7 @@
|
||||
|
||||
/* Setup the MTD structure */
|
||||
/* make the name contain the block device in */
|
||||
@@ -304,6 +397,7 @@
|
||||
@@ -304,6 +397,7 @@ static struct block2mtd_dev *add_device(
|
||||
dev->mtd.read = block2mtd_read;
|
||||
dev->mtd.priv = dev;
|
||||
dev->mtd.owner = THIS_MODULE;
|
||||
@@ -879,7 +879,7 @@
|
||||
|
||||
#include <asm/uaccess.h>
|
||||
|
||||
@@ -756,6 +757,13 @@
|
||||
@@ -756,6 +757,13 @@ static int mtd_ioctl(struct inode *inode
|
||||
file->f_pos = 0;
|
||||
break;
|
||||
}
|
||||
@@ -895,7 +895,7 @@
|
||||
ret = -ENOTTY;
|
||||
--- a/include/linux/mtd/mtd.h
|
||||
+++ b/include/linux/mtd/mtd.h
|
||||
@@ -98,6 +98,7 @@
|
||||
@@ -98,6 +98,7 @@ struct mtd_oob_ops {
|
||||
uint8_t *oobbuf;
|
||||
};
|
||||
|
||||
@@ -903,7 +903,7 @@
|
||||
struct mtd_info {
|
||||
u_char type;
|
||||
u_int32_t flags;
|
||||
@@ -211,6 +212,9 @@
|
||||
@@ -211,6 +212,9 @@ struct mtd_info {
|
||||
struct module *owner;
|
||||
int usecount;
|
||||
|
||||
@@ -923,7 +923,7 @@
|
||||
struct mtd_partition {
|
||||
char *name; /* identifier string */
|
||||
u_int32_t size; /* partition size */
|
||||
@@ -43,6 +44,7 @@
|
||||
@@ -43,6 +44,7 @@ struct mtd_partition {
|
||||
u_int32_t mask_flags; /* master MTD flags to mask out for this partition */
|
||||
struct nand_ecclayout *ecclayout; /* out of band layout for this partition (NAND only)*/
|
||||
struct mtd_info **mtdp; /* pointer to store the MTD object */
|
||||
@@ -931,7 +931,7 @@
|
||||
};
|
||||
|
||||
#define MTDPART_OFS_NXTBLK (-2)
|
||||
@@ -52,6 +54,7 @@
|
||||
@@ -52,6 +54,7 @@ struct mtd_partition {
|
||||
|
||||
int add_mtd_partitions(struct mtd_info *, const struct mtd_partition *, int);
|
||||
int del_mtd_partitions(struct mtd_info *);
|
||||
@@ -941,7 +941,7 @@
|
||||
* Functions dealing with the various ways of partitioning the space
|
||||
--- a/include/mtd/mtd-abi.h
|
||||
+++ b/include/mtd/mtd-abi.h
|
||||
@@ -95,6 +95,7 @@
|
||||
@@ -95,6 +95,7 @@ struct otp_info {
|
||||
#define ECCGETLAYOUT _IOR('M', 17, struct nand_ecclayout)
|
||||
#define ECCGETSTATS _IOR('M', 18, struct mtd_ecc_stats)
|
||||
#define MTDFILEMODE _IO('M', 19)
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/drivers/mtd/redboot.c
|
||||
+++ b/drivers/mtd/redboot.c
|
||||
@@ -251,14 +251,21 @@
|
||||
@@ -251,14 +251,21 @@ static int parse_redboot_partitions(stru
|
||||
#endif
|
||||
names += strlen(names)+1;
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/include/linux/mtd/nand.h
|
||||
+++ b/include/linux/mtd/nand.h
|
||||
@@ -573,6 +573,7 @@
|
||||
@@ -573,6 +573,7 @@ struct platform_nand_chip {
|
||||
int chip_delay;
|
||||
unsigned int options;
|
||||
const char **part_probe_types;
|
||||
@@ -10,7 +10,7 @@
|
||||
|
||||
--- a/drivers/mtd/nand/plat_nand.c
|
||||
+++ b/drivers/mtd/nand/plat_nand.c
|
||||
@@ -70,7 +70,18 @@
|
||||
@@ -70,7 +70,18 @@ static int __init plat_nand_probe(struct
|
||||
platform_set_drvdata(pdev, data);
|
||||
|
||||
/* Scan to find existance of the device */
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/net/netfilter/Kconfig
|
||||
+++ b/net/netfilter/Kconfig
|
||||
@@ -735,6 +735,27 @@
|
||||
@@ -735,6 +735,27 @@ config NETFILTER_XT_MATCH_STATE
|
||||
|
||||
To compile it as a module, choose M here. If unsure, say N.
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
depends on NETFILTER_XTABLES
|
||||
--- a/net/netfilter/Makefile
|
||||
+++ b/net/netfilter/Makefile
|
||||
@@ -77,6 +77,7 @@
|
||||
@@ -77,6 +77,7 @@ obj-$(CONFIG_NETFILTER_XT_MATCH_RATEEST)
|
||||
obj-$(CONFIG_NETFILTER_XT_MATCH_REALM) += xt_realm.o
|
||||
obj-$(CONFIG_NETFILTER_XT_MATCH_SCTP) += xt_sctp.o
|
||||
obj-$(CONFIG_NETFILTER_XT_MATCH_STATE) += xt_state.o
|
||||
@@ -2027,7 +2027,7 @@
|
||||
+}
|
||||
--- a/net/netfilter/nf_conntrack_core.c
|
||||
+++ b/net/netfilter/nf_conntrack_core.c
|
||||
@@ -208,6 +208,14 @@
|
||||
@@ -208,6 +208,14 @@ destroy_conntrack(struct nf_conntrack *n
|
||||
* too. */
|
||||
nf_ct_remove_expectations(ct);
|
||||
|
||||
@@ -2044,7 +2044,7 @@
|
||||
BUG_ON(hlist_unhashed(&ct->tuplehash[IP_CT_DIR_ORIGINAL].hnode));
|
||||
--- a/net/netfilter/nf_conntrack_standalone.c
|
||||
+++ b/net/netfilter/nf_conntrack_standalone.c
|
||||
@@ -181,7 +181,12 @@
|
||||
@@ -181,7 +181,12 @@ static int ct_seq_show(struct seq_file *
|
||||
return -ENOSPC;
|
||||
#endif
|
||||
|
||||
@@ -2060,7 +2060,7 @@
|
||||
return 0;
|
||||
--- a/include/net/netfilter/nf_conntrack.h
|
||||
+++ b/include/net/netfilter/nf_conntrack.h
|
||||
@@ -124,6 +124,22 @@
|
||||
@@ -124,6 +124,22 @@ struct nf_conn
|
||||
u_int32_t secmark;
|
||||
#endif
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/include/linux/netfilter/xt_layer7.h
|
||||
+++ b/include/linux/netfilter/xt_layer7.h
|
||||
@@ -8,6 +8,7 @@
|
||||
@@ -8,6 +8,7 @@ struct xt_layer7_info {
|
||||
char protocol[MAX_PROTOCOL_LEN];
|
||||
char pattern[MAX_PATTERN_LEN];
|
||||
u_int8_t invert;
|
||||
@@ -10,7 +10,7 @@
|
||||
#endif /* _XT_LAYER7_H */
|
||||
--- a/net/netfilter/xt_layer7.c
|
||||
+++ b/net/netfilter/xt_layer7.c
|
||||
@@ -297,34 +297,36 @@
|
||||
@@ -297,34 +297,36 @@ static int match_no_append(struct nf_con
|
||||
}
|
||||
|
||||
/* add the new app data to the conntrack. Return number of bytes added. */
|
||||
@@ -61,7 +61,7 @@
|
||||
return length;
|
||||
}
|
||||
|
||||
@@ -411,7 +413,7 @@
|
||||
@@ -411,7 +413,7 @@ match(const struct sk_buff *skbin,
|
||||
const struct xt_layer7_info * info = matchinfo;
|
||||
enum ip_conntrack_info master_ctinfo, ctinfo;
|
||||
struct nf_conn *master_conntrack, *conntrack;
|
||||
@@ -70,7 +70,7 @@
|
||||
unsigned int pattern_result, appdatalen;
|
||||
regexp * comppattern;
|
||||
|
||||
@@ -439,8 +441,8 @@
|
||||
@@ -439,8 +441,8 @@ match(const struct sk_buff *skbin,
|
||||
master_conntrack = master_ct(master_conntrack);
|
||||
|
||||
/* if we've classified it or seen too many packets */
|
||||
@@ -81,7 +81,7 @@
|
||||
|
||||
pattern_result = match_no_append(conntrack, master_conntrack,
|
||||
ctinfo, master_ctinfo, info);
|
||||
@@ -473,6 +475,25 @@
|
||||
@@ -473,6 +475,25 @@ match(const struct sk_buff *skbin,
|
||||
/* the return value gets checked later, when we're ready to use it */
|
||||
comppattern = compile_and_cache(info->pattern, info->protocol);
|
||||
|
||||
|
||||
@@ -893,7 +893,7 @@
|
||||
+
|
||||
--- a/net/ipv4/netfilter/Kconfig
|
||||
+++ b/net/ipv4/netfilter/Kconfig
|
||||
@@ -57,6 +57,12 @@
|
||||
@@ -57,6 +57,12 @@ config IP_NF_IPTABLES
|
||||
To compile it as a module, choose M here. If unsure, say N.
|
||||
|
||||
# The matches.
|
||||
@@ -908,7 +908,7 @@
|
||||
depends on IP_NF_IPTABLES
|
||||
--- a/net/ipv4/netfilter/Makefile
|
||||
+++ b/net/ipv4/netfilter/Makefile
|
||||
@@ -47,6 +47,8 @@
|
||||
@@ -47,6 +47,8 @@ obj-$(CONFIG_IP_NF_MATCH_ECN) += ipt_ecn
|
||||
obj-$(CONFIG_IP_NF_MATCH_RECENT) += ipt_recent.o
|
||||
obj-$(CONFIG_IP_NF_MATCH_TTL) += ipt_ttl.o
|
||||
|
||||
|
||||
@@ -7517,7 +7517,7 @@
|
||||
+module_exit(ipt_SET_fini);
|
||||
--- a/net/ipv4/netfilter/Kconfig
|
||||
+++ b/net/ipv4/netfilter/Kconfig
|
||||
@@ -385,5 +385,122 @@
|
||||
@@ -385,5 +385,122 @@ config IP_NF_ARP_MANGLE
|
||||
Allows altering the ARP packet payload: source and destination
|
||||
hardware and network addresses.
|
||||
|
||||
@@ -7642,7 +7642,7 @@
|
||||
|
||||
--- a/net/ipv4/netfilter/Makefile
|
||||
+++ b/net/ipv4/netfilter/Makefile
|
||||
@@ -46,6 +46,7 @@
|
||||
@@ -46,6 +46,7 @@ obj-$(CONFIG_IP_NF_MATCH_AH) += ipt_ah.o
|
||||
obj-$(CONFIG_IP_NF_MATCH_ECN) += ipt_ecn.o
|
||||
obj-$(CONFIG_IP_NF_MATCH_RECENT) += ipt_recent.o
|
||||
obj-$(CONFIG_IP_NF_MATCH_TTL) += ipt_ttl.o
|
||||
@@ -7650,7 +7650,7 @@
|
||||
|
||||
obj-$(CONFIG_IP_NF_MATCH_IPP2P) += ipt_ipp2p.o
|
||||
|
||||
@@ -59,6 +60,18 @@
|
||||
@@ -59,6 +60,18 @@ obj-$(CONFIG_IP_NF_TARGET_REDIRECT) += i
|
||||
obj-$(CONFIG_IP_NF_TARGET_REJECT) += ipt_REJECT.o
|
||||
obj-$(CONFIG_IP_NF_TARGET_TTL) += ipt_TTL.o
|
||||
obj-$(CONFIG_IP_NF_TARGET_ULOG) += ipt_ULOG.o
|
||||
|
||||
@@ -204,7 +204,7 @@
|
||||
+}
|
||||
--- a/net/ipv4/netfilter/Kconfig
|
||||
+++ b/net/ipv4/netfilter/Kconfig
|
||||
@@ -63,6 +63,22 @@
|
||||
@@ -63,6 +63,22 @@ config IP_NF_MATCH_IPP2P
|
||||
help
|
||||
Module for matching traffic of various Peer-to-Peer applications
|
||||
|
||||
@@ -229,7 +229,7 @@
|
||||
depends on IP_NF_IPTABLES
|
||||
--- a/net/ipv4/netfilter/Makefile
|
||||
+++ b/net/ipv4/netfilter/Makefile
|
||||
@@ -47,6 +47,7 @@
|
||||
@@ -47,6 +47,7 @@ obj-$(CONFIG_IP_NF_MATCH_ECN) += ipt_ecn
|
||||
obj-$(CONFIG_IP_NF_MATCH_RECENT) += ipt_recent.o
|
||||
obj-$(CONFIG_IP_NF_MATCH_TTL) += ipt_ttl.o
|
||||
obj-$(CONFIG_IP_NF_MATCH_SET) += ipt_set.o
|
||||
|
||||
@@ -477,7 +477,7 @@
|
||||
+
|
||||
--- a/drivers/net/Kconfig
|
||||
+++ b/drivers/net/Kconfig
|
||||
@@ -117,6 +117,129 @@
|
||||
@@ -117,6 +117,129 @@ config EQUALIZER
|
||||
To compile this driver as a module, choose M here: the module
|
||||
will be called eql. If unsure, say N.
|
||||
|
||||
@@ -609,7 +609,7 @@
|
||||
select CRC32
|
||||
--- a/drivers/net/Makefile
|
||||
+++ b/drivers/net/Makefile
|
||||
@@ -143,6 +143,7 @@
|
||||
@@ -143,6 +143,7 @@ obj-$(CONFIG_SLHC) += slhc.o
|
||||
obj-$(CONFIG_XEN_NETDEV_FRONTEND) += xen-netfront.o
|
||||
|
||||
obj-$(CONFIG_DUMMY) += dummy.o
|
||||
@@ -653,7 +653,7 @@
|
||||
+#endif /* _IP6T_IMQ_H */
|
||||
--- a/include/linux/skbuff.h
|
||||
+++ b/include/linux/skbuff.h
|
||||
@@ -296,6 +296,10 @@
|
||||
@@ -296,6 +296,10 @@ struct sk_buff {
|
||||
struct nf_conntrack *nfct;
|
||||
struct sk_buff *nfct_reasm;
|
||||
#endif
|
||||
@@ -664,7 +664,7 @@
|
||||
#ifdef CONFIG_BRIDGE_NETFILTER
|
||||
struct nf_bridge_info *nf_bridge;
|
||||
#endif
|
||||
@@ -1736,6 +1740,10 @@
|
||||
@@ -1736,6 +1740,10 @@ static inline void __nf_copy(struct sk_b
|
||||
dst->nfct_reasm = src->nfct_reasm;
|
||||
nf_conntrack_get_reasm(src->nfct_reasm);
|
||||
#endif
|
||||
@@ -687,7 +687,7 @@
|
||||
#include <linux/proc_fs.h>
|
||||
#include <linux/seq_file.h>
|
||||
#include <linux/stat.h>
|
||||
@@ -1537,7 +1540,11 @@
|
||||
@@ -1537,7 +1540,11 @@ static int dev_gso_segment(struct sk_buf
|
||||
int dev_hard_start_xmit(struct sk_buff *skb, struct net_device *dev)
|
||||
{
|
||||
if (likely(!skb->next)) {
|
||||
@@ -774,7 +774,7 @@
|
||||
+MODULE_LICENSE("GPL");
|
||||
--- a/net/ipv4/netfilter/Kconfig
|
||||
+++ b/net/ipv4/netfilter/Kconfig
|
||||
@@ -145,6 +145,17 @@
|
||||
@@ -145,6 +145,17 @@ config IP_NF_FILTER
|
||||
|
||||
To compile it as a module, choose M here. If unsure, say N.
|
||||
|
||||
@@ -794,7 +794,7 @@
|
||||
depends on IP_NF_FILTER
|
||||
--- a/net/ipv4/netfilter/Makefile
|
||||
+++ b/net/ipv4/netfilter/Makefile
|
||||
@@ -55,6 +55,7 @@
|
||||
@@ -55,6 +55,7 @@ obj-$(CONFIG_IP_NF_MATCH_IPP2P) += ipt_i
|
||||
obj-$(CONFIG_IP_NF_TARGET_CLUSTERIP) += ipt_CLUSTERIP.o
|
||||
obj-$(CONFIG_IP_NF_TARGET_ECN) += ipt_ECN.o
|
||||
obj-$(CONFIG_IP_NF_TARGET_LOG) += ipt_LOG.o
|
||||
@@ -876,7 +876,7 @@
|
||||
+MODULE_LICENSE("GPL");
|
||||
--- a/net/ipv6/netfilter/Kconfig
|
||||
+++ b/net/ipv6/netfilter/Kconfig
|
||||
@@ -179,6 +179,15 @@
|
||||
@@ -179,6 +179,15 @@ config IP6_NF_MANGLE
|
||||
|
||||
To compile it as a module, choose M here. If unsure, say N.
|
||||
|
||||
@@ -904,7 +904,7 @@
|
||||
|
||||
--- a/net/sched/sch_generic.c
|
||||
+++ b/net/sched/sch_generic.c
|
||||
@@ -203,6 +203,7 @@
|
||||
@@ -203,6 +203,7 @@ void __qdisc_run(struct net_device *dev)
|
||||
|
||||
clear_bit(__LINK_STATE_QDISC_RUNNING, &dev->state);
|
||||
}
|
||||
|
||||
@@ -95,7 +95,7 @@
|
||||
+#define xt_request_find_match xt_request_find_match_lo
|
||||
--- a/net/netfilter/Kconfig
|
||||
+++ b/net/netfilter/Kconfig
|
||||
@@ -276,6 +276,14 @@
|
||||
@@ -276,6 +276,14 @@ config NETFILTER_XTABLES
|
||||
|
||||
# alphabetically ordered list of targets
|
||||
|
||||
@@ -110,7 +110,7 @@
|
||||
config NETFILTER_XT_TARGET_CLASSIFY
|
||||
tristate '"CLASSIFY" target support'
|
||||
depends on NETFILTER_XTABLES
|
||||
@@ -305,6 +313,14 @@
|
||||
@@ -305,6 +313,14 @@ config NETFILTER_XT_TARGET_CONNMARK
|
||||
<file:Documentation/kbuild/modules.txt>. The module will be called
|
||||
ipt_CONNMARK.ko. If unsure, say `N'.
|
||||
|
||||
@@ -125,7 +125,7 @@
|
||||
config NETFILTER_XT_TARGET_DSCP
|
||||
tristate '"DSCP" and "TOS" target support'
|
||||
depends on NETFILTER_XTABLES
|
||||
@@ -640,6 +656,14 @@
|
||||
@@ -640,6 +656,14 @@ config NETFILTER_XT_MATCH_POLICY
|
||||
|
||||
To compile it as a module, choose M here. If unsure, say N.
|
||||
|
||||
@@ -142,7 +142,7 @@
|
||||
depends on NETFILTER_XTABLES
|
||||
--- a/net/netfilter/Makefile
|
||||
+++ b/net/netfilter/Makefile
|
||||
@@ -50,6 +50,8 @@
|
||||
@@ -50,6 +50,8 @@ obj-$(CONFIG_NETFILTER_XT_TARGET_SECMARK
|
||||
obj-$(CONFIG_NETFILTER_XT_TARGET_TCPMSS) += xt_TCPMSS.o
|
||||
obj-$(CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP) += xt_TCPOPTSTRIP.o
|
||||
obj-$(CONFIG_NETFILTER_XT_TARGET_TRACE) += xt_TRACE.o
|
||||
@@ -151,7 +151,7 @@
|
||||
|
||||
# matches
|
||||
obj-$(CONFIG_NETFILTER_XT_MATCH_COMMENT) += xt_comment.o
|
||||
@@ -83,3 +85,4 @@
|
||||
@@ -83,3 +85,4 @@ obj-$(CONFIG_NETFILTER_XT_MATCH_STRING)
|
||||
obj-$(CONFIG_NETFILTER_XT_MATCH_TCPMSS) += xt_tcpmss.o
|
||||
obj-$(CONFIG_NETFILTER_XT_MATCH_TIME) += xt_time.o
|
||||
obj-$(CONFIG_NETFILTER_XT_MATCH_U32) += xt_u32.o
|
||||
@@ -833,7 +833,7 @@
|
||||
+MODULE_ALIAS("ipt_portscan");
|
||||
--- a/drivers/char/random.c
|
||||
+++ b/drivers/char/random.c
|
||||
@@ -1563,6 +1563,8 @@
|
||||
@@ -1563,6 +1563,8 @@ __u32 secure_tcp_sequence_number(__be32
|
||||
return seq;
|
||||
}
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/net/netfilter/Kconfig
|
||||
+++ b/net/netfilter/Kconfig
|
||||
@@ -437,6 +437,23 @@
|
||||
@@ -437,6 +437,23 @@ config NETFILTER_XT_TARGET_CONNSECMARK
|
||||
|
||||
To compile it as a module, choose M here. If unsure, say N.
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
depends on NETFILTER_XTABLES && (IPV6 || IPV6=n)
|
||||
--- a/net/netfilter/Makefile
|
||||
+++ b/net/netfilter/Makefile
|
||||
@@ -47,6 +47,7 @@
|
||||
@@ -47,6 +47,7 @@ obj-$(CONFIG_NETFILTER_XT_TARGET_NFQUEUE
|
||||
obj-$(CONFIG_NETFILTER_XT_TARGET_NOTRACK) += xt_NOTRACK.o
|
||||
obj-$(CONFIG_NETFILTER_XT_TARGET_RATEEST) += xt_RATEEST.o
|
||||
obj-$(CONFIG_NETFILTER_XT_TARGET_SECMARK) += xt_SECMARK.o
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/net/netfilter/Kconfig
|
||||
+++ b/net/netfilter/Kconfig
|
||||
@@ -145,7 +145,7 @@
|
||||
@@ -145,7 +145,7 @@ config NF_CONNTRACK_FTP
|
||||
|
||||
config NF_CONNTRACK_H323
|
||||
tristate "H.323 protocol support"
|
||||
@@ -9,7 +9,7 @@
|
||||
depends on NETFILTER_ADVANCED
|
||||
help
|
||||
H.323 is a VoIP signalling protocol from ITU-T. As one of the most
|
||||
@@ -456,7 +456,7 @@
|
||||
@@ -456,7 +456,7 @@ config NETFILTER_XT_TARGET_TARPIT
|
||||
|
||||
config NETFILTER_XT_TARGET_TCPMSS
|
||||
tristate '"TCPMSS" target support'
|
||||
|
||||
@@ -294,7 +294,7 @@
|
||||
+#endif /* _NETFILTER_MIME_H */
|
||||
--- a/net/ipv4/netfilter/Makefile
|
||||
+++ b/net/ipv4/netfilter/Makefile
|
||||
@@ -23,6 +23,7 @@
|
||||
@@ -23,6 +23,7 @@ obj-$(CONFIG_NF_NAT_AMANDA) += nf_nat_am
|
||||
obj-$(CONFIG_NF_NAT_FTP) += nf_nat_ftp.o
|
||||
obj-$(CONFIG_NF_NAT_H323) += nf_nat_h323.o
|
||||
obj-$(CONFIG_NF_NAT_IRC) += nf_nat_irc.o
|
||||
@@ -304,7 +304,7 @@
|
||||
obj-$(CONFIG_NF_NAT_SNMP_BASIC) += nf_nat_snmp_basic.o
|
||||
--- a/net/netfilter/Kconfig
|
||||
+++ b/net/netfilter/Kconfig
|
||||
@@ -258,6 +258,16 @@
|
||||
@@ -258,6 +258,16 @@ config NF_CONNTRACK_TFTP
|
||||
|
||||
To compile it as a module, choose M here. If unsure, say N.
|
||||
|
||||
@@ -323,7 +323,7 @@
|
||||
depends on NF_CONNTRACK
|
||||
--- a/net/netfilter/Makefile
|
||||
+++ b/net/netfilter/Makefile
|
||||
@@ -32,6 +32,7 @@
|
||||
@@ -32,6 +32,7 @@ obj-$(CONFIG_NF_CONNTRACK_PPTP) += nf_co
|
||||
obj-$(CONFIG_NF_CONNTRACK_SANE) += nf_conntrack_sane.o
|
||||
obj-$(CONFIG_NF_CONNTRACK_SIP) += nf_conntrack_sip.o
|
||||
obj-$(CONFIG_NF_CONNTRACK_TFTP) += nf_conntrack_tftp.o
|
||||
@@ -333,7 +333,7 @@
|
||||
obj-$(CONFIG_NETFILTER_XTABLES) += x_tables.o xt_tcpudp.o
|
||||
--- a/net/ipv4/netfilter/Kconfig
|
||||
+++ b/net/ipv4/netfilter/Kconfig
|
||||
@@ -288,6 +288,11 @@
|
||||
@@ -288,6 +288,11 @@ config NF_NAT_IRC
|
||||
depends on IP_NF_IPTABLES && NF_CONNTRACK && NF_NAT
|
||||
default NF_NAT && NF_CONNTRACK_IRC
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/include/linux/pkt_sched.h
|
||||
+++ b/include/linux/pkt_sched.h
|
||||
@@ -162,8 +162,37 @@
|
||||
@@ -162,8 +162,37 @@ struct tc_sfq_xstats
|
||||
*
|
||||
* The only reason for this is efficiency, it is possible
|
||||
* to change these parameters in compile time.
|
||||
@@ -40,7 +40,7 @@
|
||||
enum
|
||||
--- a/net/sched/Kconfig
|
||||
+++ b/net/sched/Kconfig
|
||||
@@ -139,6 +139,37 @@
|
||||
@@ -139,6 +139,37 @@ config NET_SCH_SFQ
|
||||
To compile this code as a module, choose M here: the
|
||||
module will be called sch_sfq.
|
||||
|
||||
@@ -80,7 +80,7 @@
|
||||
---help---
|
||||
--- a/net/sched/Makefile
|
||||
+++ b/net/sched/Makefile
|
||||
@@ -23,6 +23,7 @@
|
||||
@@ -23,6 +23,7 @@ obj-$(CONFIG_NET_SCH_GRED) += sch_gred.o
|
||||
obj-$(CONFIG_NET_SCH_INGRESS) += sch_ingress.o
|
||||
obj-$(CONFIG_NET_SCH_DSMARK) += sch_dsmark.o
|
||||
obj-$(CONFIG_NET_SCH_SFQ) += sch_sfq.o
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/arch/mips/Makefile
|
||||
+++ b/arch/mips/Makefile
|
||||
@@ -593,6 +593,9 @@
|
||||
@@ -593,6 +593,9 @@ core-$(CONFIG_TOSHIBA_RBTX4938) += arch/
|
||||
cflags-$(CONFIG_TOSHIBA_RBTX4938) += -Iinclude/asm-mips/mach-tx49xx
|
||||
load-$(CONFIG_TOSHIBA_RBTX4938) += 0xffffffff80100000
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/fs/jffs2/build.c
|
||||
+++ b/fs/jffs2/build.c
|
||||
@@ -105,6 +105,17 @@
|
||||
@@ -105,6 +105,17 @@ static int jffs2_build_filesystem(struct
|
||||
dbg_fsbuild("scanned flash completely\n");
|
||||
jffs2_dbg_dump_block_lists_nolock(c);
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
/* Now scan the directory tree, increasing nlink according to every dirent found. */
|
||||
--- a/fs/jffs2/scan.c
|
||||
+++ b/fs/jffs2/scan.c
|
||||
@@ -142,9 +142,12 @@
|
||||
@@ -142,9 +142,12 @@ int jffs2_scan_medium(struct jffs2_sb_in
|
||||
|
||||
/* reset summary info for next eraseblock scan */
|
||||
jffs2_sum_reset_collected(s);
|
||||
@@ -36,7 +36,7 @@
|
||||
|
||||
if (ret < 0)
|
||||
goto out;
|
||||
@@ -545,6 +548,17 @@
|
||||
@@ -545,6 +548,17 @@ static int jffs2_scan_eraseblock (struct
|
||||
return err;
|
||||
}
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/drivers/net/r8169.c
|
||||
+++ b/drivers/net/r8169.c
|
||||
@@ -1539,7 +1539,7 @@
|
||||
@@ -1539,7 +1539,7 @@ static const struct rtl_cfg_info {
|
||||
.hw_start = rtl_hw_start_8169,
|
||||
.region = 1,
|
||||
.align = 0,
|
||||
@@ -9,7 +9,7 @@
|
||||
RxFIFOOver | TxErr | TxOK | RxOK | RxErr,
|
||||
.napi_event = RxFIFOOver | TxErr | TxOK | RxOK | RxOverflow,
|
||||
.msi = 0
|
||||
@@ -1548,7 +1548,7 @@
|
||||
@@ -1548,7 +1548,7 @@ static const struct rtl_cfg_info {
|
||||
.hw_start = rtl_hw_start_8168,
|
||||
.region = 2,
|
||||
.align = 8,
|
||||
@@ -18,7 +18,7 @@
|
||||
TxErr | TxOK | RxOK | RxErr,
|
||||
.napi_event = TxErr | TxOK | RxOK | RxOverflow,
|
||||
.msi = RTL_FEATURE_MSI
|
||||
@@ -1557,7 +1557,7 @@
|
||||
@@ -1557,7 +1557,7 @@ static const struct rtl_cfg_info {
|
||||
.hw_start = rtl_hw_start_8101,
|
||||
.region = 2,
|
||||
.align = 8,
|
||||
@@ -27,7 +27,7 @@
|
||||
RxFIFOOver | TxErr | TxOK | RxOK | RxErr,
|
||||
.napi_event = RxFIFOOver | TxErr | TxOK | RxOK | RxOverflow,
|
||||
.msi = RTL_FEATURE_MSI
|
||||
@@ -2905,10 +2905,12 @@
|
||||
@@ -2905,10 +2905,12 @@ static irqreturn_t rtl8169_interrupt(int
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/fs/Kconfig
|
||||
+++ b/fs/Kconfig
|
||||
@@ -1449,6 +1449,9 @@
|
||||
@@ -1449,6 +1449,9 @@ config VXFS_FS
|
||||
To compile this as a module, choose M here: the module will be
|
||||
called freevxfs. If unsure, say N.
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
depends on BLOCK
|
||||
--- a/fs/Makefile
|
||||
+++ b/fs/Makefile
|
||||
@@ -77,6 +77,7 @@
|
||||
@@ -77,6 +77,7 @@ obj-$(CONFIG_SQUASHFS) += squashfs/
|
||||
obj-y += ramfs/
|
||||
obj-$(CONFIG_HUGETLBFS) += hugetlbfs/
|
||||
obj-$(CONFIG_CODA_FS) += coda/
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/fs/mini_fo/main.c
|
||||
+++ b/fs/mini_fo/main.c
|
||||
@@ -79,6 +79,7 @@
|
||||
@@ -79,6 +79,7 @@ mini_fo_tri_interpose(dentry_t *hidden_d
|
||||
* of the new inode's fields
|
||||
*/
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
/*
|
||||
* original: inode = iget(sb, hidden_inode->i_ino);
|
||||
*/
|
||||
@@ -87,6 +88,13 @@
|
||||
@@ -87,6 +88,13 @@ mini_fo_tri_interpose(dentry_t *hidden_d
|
||||
err = -EACCES; /* should be impossible??? */
|
||||
goto out;
|
||||
}
|
||||
@@ -22,7 +22,7 @@
|
||||
|
||||
/*
|
||||
* interpose the inode if not already interposed
|
||||
@@ -184,9 +192,9 @@
|
||||
@@ -184,9 +192,9 @@ mini_fo_parse_options(super_block_t *sb,
|
||||
hidden_root = ERR_PTR(err);
|
||||
goto out;
|
||||
}
|
||||
@@ -35,7 +35,7 @@
|
||||
|
||||
} else if(!strncmp("sto=", options, 4)) {
|
||||
/* parse the storage dir */
|
||||
@@ -204,9 +212,9 @@
|
||||
@@ -204,9 +212,9 @@ mini_fo_parse_options(super_block_t *sb,
|
||||
hidden_root2 = ERR_PTR(err);
|
||||
goto out;
|
||||
}
|
||||
@@ -50,7 +50,7 @@
|
||||
/* validate storage dir, this is done in
|
||||
--- a/fs/mini_fo/mini_fo.h
|
||||
+++ b/fs/mini_fo/mini_fo.h
|
||||
@@ -302,6 +302,10 @@
|
||||
@@ -302,6 +302,10 @@ extern int mini_fo_tri_interpose(dentry_
|
||||
extern int mini_fo_cp_cont(dentry_t *tgt_dentry, struct vfsmount *tgt_mnt,
|
||||
dentry_t *src_dentry, struct vfsmount *src_mnt);
|
||||
|
||||
@@ -61,7 +61,7 @@
|
||||
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
|
||||
extern int mini_fo_create(inode_t *dir, dentry_t *dentry, int mode, struct nameidata *nd);
|
||||
|
||||
@@ -501,6 +505,29 @@
|
||||
@@ -501,6 +505,29 @@ static inline void double_unlock(struct
|
||||
#endif /* if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) */
|
||||
#endif /* __KERNEL__ */
|
||||
|
||||
@@ -93,7 +93,7 @@
|
||||
*/
|
||||
--- a/fs/mini_fo/super.c
|
||||
+++ b/fs/mini_fo/super.c
|
||||
@@ -262,10 +262,31 @@
|
||||
@@ -262,10 +262,31 @@ mini_fo_umount_begin(super_block_t *sb)
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -127,7 +127,7 @@
|
||||
#endif /* defined(FIST_DEBUG) || defined(FIST_FILTER_SCA) */
|
||||
--- a/fs/mini_fo/aux.c
|
||||
+++ b/fs/mini_fo/aux.c
|
||||
@@ -164,11 +164,11 @@
|
||||
@@ -164,11 +164,11 @@ dentry_t *bpath_walk(super_block_t *sb,
|
||||
err = vfs_path_lookup(mnt->mnt_root, mnt, bpath+1, 0, &nd);
|
||||
|
||||
/* validate */
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/fs/mini_fo/meta.c
|
||||
+++ b/fs/mini_fo/meta.c
|
||||
@@ -442,6 +442,11 @@
|
||||
@@ -442,6 +442,11 @@ int meta_write_d_entry(dentry_t *dentry,
|
||||
S_IRUSR | S_IWUSR);
|
||||
#endif
|
||||
}
|
||||
@@ -12,7 +12,7 @@
|
||||
/* open META-file for writing */
|
||||
meta_file = dentry_open(meta_dentry, meta_mnt, 0x1);
|
||||
if(!meta_file || IS_ERR(meta_file)) {
|
||||
@@ -535,6 +540,11 @@
|
||||
@@ -535,6 +540,11 @@ int meta_write_r_entry(dentry_t *dentry,
|
||||
meta_dentry, S_IRUSR | S_IWUSR);
|
||||
#endif
|
||||
}
|
||||
@@ -24,7 +24,7 @@
|
||||
/* open META-file for writing */
|
||||
meta_file = dentry_open(meta_dentry, meta_mnt, 0x1);
|
||||
if(!meta_file || IS_ERR(meta_file)) {
|
||||
@@ -671,14 +681,16 @@
|
||||
@@ -671,14 +681,16 @@ int meta_sync_d_list(dentry_t *dentry, i
|
||||
}
|
||||
}
|
||||
|
||||
@@ -44,7 +44,7 @@
|
||||
dput(meta_dentry);
|
||||
err = -1;
|
||||
goto out;
|
||||
@@ -811,14 +823,16 @@
|
||||
@@ -811,14 +823,16 @@ int meta_sync_r_list(dentry_t *dentry, i
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/lib/kobject_uevent.c
|
||||
+++ b/lib/kobject_uevent.c
|
||||
@@ -27,7 +27,8 @@
|
||||
@@ -27,7 +27,8 @@ u64 uevent_seqnum;
|
||||
char uevent_helper[UEVENT_HELPER_PATH_LEN] = CONFIG_UEVENT_HELPER_PATH;
|
||||
static DEFINE_SPINLOCK(sequence_lock);
|
||||
#if defined(CONFIG_NET)
|
||||
@@ -10,7 +10,7 @@
|
||||
#endif
|
||||
|
||||
/* the strings here must match the enum in include/linux/kobject.h */
|
||||
@@ -40,6 +41,18 @@
|
||||
@@ -40,6 +41,18 @@ static const char *kobject_actions[] = {
|
||||
[KOBJ_OFFLINE] = "offline",
|
||||
};
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
/**
|
||||
* kobject_action_type - translate action string to numeric type
|
||||
*
|
||||
@@ -192,9 +205,7 @@
|
||||
@@ -192,9 +205,7 @@ int kobject_uevent_env(struct kobject *k
|
||||
kobj->state_remove_uevent_sent = 1;
|
||||
|
||||
/* we will send an event, so request a new sequence number */
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/sound/core/Kconfig
|
||||
+++ b/sound/core/Kconfig
|
||||
@@ -9,7 +9,7 @@
|
||||
@@ -9,7 +9,7 @@ config SND_PCM
|
||||
depends on SND
|
||||
|
||||
config SND_HWDEP
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/drivers/leds/Kconfig
|
||||
+++ b/drivers/leds/Kconfig
|
||||
@@ -181,4 +181,8 @@
|
||||
@@ -181,4 +181,8 @@ config LEDS_TRIGGER_HEARTBEAT
|
||||
load average.
|
||||
If unsure, say Y.
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
endif # NEW_LEDS
|
||||
--- a/drivers/leds/Makefile
|
||||
+++ b/drivers/leds/Makefile
|
||||
@@ -26,3 +26,4 @@
|
||||
@@ -26,3 +26,4 @@ obj-$(CONFIG_LEDS_HP6XX) += leds-hp6xx.
|
||||
obj-$(CONFIG_LEDS_TRIGGER_TIMER) += ledtrig-timer.o
|
||||
obj-$(CONFIG_LEDS_TRIGGER_IDE_DISK) += ledtrig-ide-disk.o
|
||||
obj-$(CONFIG_LEDS_TRIGGER_HEARTBEAT) += ledtrig-heartbeat.o
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/drivers/leds/Kconfig
|
||||
+++ b/drivers/leds/Kconfig
|
||||
@@ -79,6 +79,12 @@
|
||||
@@ -79,6 +79,12 @@ config LEDS_WRAP
|
||||
help
|
||||
This option enables support for the PCEngines WRAP programmable LEDs.
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
depends on LEDS_CLASS && ARCH_H1940
|
||||
--- a/drivers/leds/Makefile
|
||||
+++ b/drivers/leds/Makefile
|
||||
@@ -14,6 +14,7 @@
|
||||
@@ -14,6 +14,7 @@ obj-$(CONFIG_LEDS_S3C24XX) += leds-s3c2
|
||||
obj-$(CONFIG_LEDS_AMS_DELTA) += leds-ams-delta.o
|
||||
obj-$(CONFIG_LEDS_NET48XX) += leds-net48xx.o
|
||||
obj-$(CONFIG_LEDS_WRAP) += leds-wrap.o
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/drivers/leds/Kconfig
|
||||
+++ b/drivers/leds/Kconfig
|
||||
@@ -191,4 +191,11 @@
|
||||
@@ -191,4 +191,11 @@ config LEDS_TRIGGER_MORSE
|
||||
tristate "LED Morse Trigger"
|
||||
depends on LEDS_TRIGGERS
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
endif # NEW_LEDS
|
||||
--- a/drivers/leds/Makefile
|
||||
+++ b/drivers/leds/Makefile
|
||||
@@ -28,3 +28,4 @@
|
||||
@@ -28,3 +28,4 @@ obj-$(CONFIG_LEDS_TRIGGER_TIMER) += ledt
|
||||
obj-$(CONFIG_LEDS_TRIGGER_IDE_DISK) += ledtrig-ide-disk.o
|
||||
obj-$(CONFIG_LEDS_TRIGGER_HEARTBEAT) += ledtrig-heartbeat.o
|
||||
obj-$(CONFIG_LEDS_TRIGGER_MORSE) += ledtrig-morse.o
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/drivers/input/misc/Kconfig
|
||||
+++ b/drivers/input/misc/Kconfig
|
||||
@@ -197,4 +197,20 @@
|
||||
@@ -197,4 +197,20 @@ config HP_SDC_RTC
|
||||
Say Y here if you want to support the built-in real time clock
|
||||
of the HP SDC controller.
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
endif
|
||||
--- a/drivers/input/misc/Makefile
|
||||
+++ b/drivers/input/misc/Makefile
|
||||
@@ -19,3 +19,4 @@
|
||||
@@ -19,3 +19,4 @@ obj-$(CONFIG_INPUT_YEALINK) += yealink.
|
||||
obj-$(CONFIG_HP_SDC_RTC) += hp_sdc_rtc.o
|
||||
obj-$(CONFIG_INPUT_UINPUT) += uinput.o
|
||||
obj-$(CONFIG_INPUT_APANEL) += apanel.o
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/drivers/char/Kconfig
|
||||
+++ b/drivers/char/Kconfig
|
||||
@@ -955,6 +955,13 @@
|
||||
@@ -955,6 +955,13 @@ config CS5535_GPIO
|
||||
|
||||
If compiled as a module, it will be called cs5535_gpio.
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
depends on CPU_VR41XX
|
||||
--- a/drivers/char/Makefile
|
||||
+++ b/drivers/char/Makefile
|
||||
@@ -94,6 +94,7 @@
|
||||
@@ -94,6 +94,7 @@ obj-$(CONFIG_SCx200_GPIO) += scx200_gpio
|
||||
obj-$(CONFIG_PC8736x_GPIO) += pc8736x_gpio.o
|
||||
obj-$(CONFIG_NSC_GPIO) += nsc_gpio.o
|
||||
obj-$(CONFIG_CS5535_GPIO) += cs5535_gpio.o
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/fs/Kconfig
|
||||
+++ b/fs/Kconfig
|
||||
@@ -421,6 +421,7 @@
|
||||
@@ -421,6 +421,7 @@ config FS_POSIX_ACL
|
||||
|
||||
source "fs/xfs/Kconfig"
|
||||
source "fs/gfs2/Kconfig"
|
||||
@@ -10,7 +10,7 @@
|
||||
tristate "OCFS2 file system support"
|
||||
--- a/fs/Makefile
|
||||
+++ b/fs/Makefile
|
||||
@@ -121,3 +121,4 @@
|
||||
@@ -121,3 +121,4 @@ obj-$(CONFIG_HPPFS) += hppfs/
|
||||
obj-$(CONFIG_DEBUG_FS) += debugfs/
|
||||
obj-$(CONFIG_OCFS2_FS) += ocfs2/
|
||||
obj-$(CONFIG_GFS2_FS) += gfs2/
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/fs/yaffs2/yaffs_fs.c
|
||||
+++ b/fs/yaffs2/yaffs_fs.c
|
||||
@@ -181,7 +181,13 @@
|
||||
@@ -181,7 +181,13 @@ static int yaffs_statfs(struct super_blo
|
||||
#else
|
||||
static int yaffs_statfs(struct super_block *sb, struct statfs *buf);
|
||||
#endif
|
||||
@@ -14,7 +14,7 @@
|
||||
|
||||
static void yaffs_put_inode(struct inode *inode);
|
||||
static void yaffs_delete_inode(struct inode *);
|
||||
@@ -284,7 +290,9 @@
|
||||
@@ -284,7 +290,9 @@ static struct file_operations yaffs_dir_
|
||||
|
||||
static struct super_operations yaffs_super_ops = {
|
||||
.statfs = yaffs_statfs,
|
||||
@@ -24,7 +24,7 @@
|
||||
.put_inode = yaffs_put_inode,
|
||||
.put_super = yaffs_put_super,
|
||||
.delete_inode = yaffs_delete_inode,
|
||||
@@ -844,11 +852,17 @@
|
||||
@@ -844,11 +852,17 @@ struct inode *yaffs_get_inode(struct sup
|
||||
T(YAFFS_TRACE_OS,
|
||||
(KERN_DEBUG "yaffs_get_inode for object %d\n", obj->objectId));
|
||||
|
||||
@@ -42,7 +42,7 @@
|
||||
|
||||
return inode;
|
||||
}
|
||||
@@ -1427,6 +1441,39 @@
|
||||
@@ -1427,6 +1441,39 @@ static int yaffs_sync_fs(struct super_bl
|
||||
}
|
||||
|
||||
|
||||
@@ -82,7 +82,7 @@
|
||||
static void yaffs_read_inode(struct inode *inode)
|
||||
{
|
||||
/* NB This is called as a side effect of other functions, but
|
||||
@@ -1448,6 +1495,7 @@
|
||||
@@ -1448,6 +1495,7 @@ static void yaffs_read_inode(struct inod
|
||||
|
||||
yaffs_GrossUnlock(dev);
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/drivers/net/phy/phy.c
|
||||
+++ b/drivers/net/phy/phy.c
|
||||
@@ -348,6 +348,50 @@
|
||||
@@ -348,6 +348,50 @@ int phy_ethtool_gset(struct phy_device *
|
||||
}
|
||||
EXPORT_SYMBOL(phy_ethtool_gset);
|
||||
|
||||
@@ -53,7 +53,7 @@
|
||||
* @phydev: the phy_device struct
|
||||
--- a/include/linux/phy.h
|
||||
+++ b/include/linux/phy.h
|
||||
@@ -399,6 +399,7 @@
|
||||
@@ -399,6 +399,7 @@ void phy_start_machine(struct phy_device
|
||||
void phy_stop_machine(struct phy_device *phydev);
|
||||
int phy_ethtool_sset(struct phy_device *phydev, struct ethtool_cmd *cmd);
|
||||
int phy_ethtool_gset(struct phy_device *phydev, struct ethtool_cmd *cmd);
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/drivers/net/phy/mdio_bus.c
|
||||
+++ b/drivers/net/phy/mdio_bus.c
|
||||
@@ -132,6 +132,9 @@
|
||||
@@ -132,6 +132,9 @@ static int mdio_bus_match(struct device
|
||||
struct phy_device *phydev = to_phy_device(dev);
|
||||
struct phy_driver *phydrv = to_phy_driver(drv);
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
}
|
||||
--- a/include/linux/phy.h
|
||||
+++ b/include/linux/phy.h
|
||||
@@ -325,6 +325,11 @@
|
||||
@@ -325,6 +325,11 @@ struct phy_driver {
|
||||
u32 features;
|
||||
u32 flags;
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/drivers/net/phy/Kconfig
|
||||
+++ b/drivers/net/phy/Kconfig
|
||||
@@ -65,6 +65,11 @@
|
||||
@@ -65,6 +65,11 @@ config REALTEK_PHY
|
||||
---help---
|
||||
Supports the Realtek 821x PHY.
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
depends on PHYLIB=y
|
||||
--- a/drivers/net/phy/Makefile
|
||||
+++ b/drivers/net/phy/Makefile
|
||||
@@ -12,6 +12,7 @@
|
||||
@@ -12,6 +12,7 @@ obj-$(CONFIG_SMSC_PHY) += smsc.o
|
||||
obj-$(CONFIG_VITESSE_PHY) += vitesse.o
|
||||
obj-$(CONFIG_BROADCOM_PHY) += broadcom.o
|
||||
obj-$(CONFIG_ICPLUS_PHY) += icplus.o
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/drivers/net/phy/phy_device.c
|
||||
+++ b/drivers/net/phy/phy_device.c
|
||||
@@ -53,6 +53,18 @@
|
||||
@@ -53,6 +53,18 @@ static void phy_device_release(struct de
|
||||
phy_device_free(to_phy_device(dev));
|
||||
}
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
struct phy_device* phy_device_create(struct mii_bus *bus, int addr, int phy_id)
|
||||
{
|
||||
struct phy_device *dev;
|
||||
@@ -78,6 +90,8 @@
|
||||
@@ -78,6 +90,8 @@ struct phy_device* phy_device_create(str
|
||||
dev->bus = bus;
|
||||
|
||||
dev->state = PHY_DOWN;
|
||||
@@ -30,7 +30,7 @@
|
||||
|
||||
--- a/include/linux/phy.h
|
||||
+++ b/include/linux/phy.h
|
||||
@@ -295,6 +295,17 @@
|
||||
@@ -295,6 +295,17 @@ struct phy_device {
|
||||
void (*adjust_link)(struct net_device *dev);
|
||||
|
||||
void (*adjust_state)(struct net_device *dev);
|
||||
@@ -50,7 +50,7 @@
|
||||
|
||||
--- a/include/linux/netdevice.h
|
||||
+++ b/include/linux/netdevice.h
|
||||
@@ -595,6 +595,7 @@
|
||||
@@ -595,6 +595,7 @@ struct net_device
|
||||
void *ax25_ptr; /* AX.25 specific data */
|
||||
struct wireless_dev *ieee80211_ptr; /* IEEE 802.11 specific data,
|
||||
assign before registering */
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/drivers/net/phy/Kconfig
|
||||
+++ b/drivers/net/phy/Kconfig
|
||||
@@ -70,6 +70,12 @@
|
||||
@@ -70,6 +70,12 @@ config ADM6996_PHY
|
||||
---help---
|
||||
Currently supports the ADM6996F switch
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
depends on PHYLIB=y
|
||||
--- a/drivers/net/phy/Makefile
|
||||
+++ b/drivers/net/phy/Makefile
|
||||
@@ -13,6 +13,7 @@
|
||||
@@ -13,6 +13,7 @@ obj-$(CONFIG_VITESSE_PHY) += vitesse.o
|
||||
obj-$(CONFIG_BROADCOM_PHY) += broadcom.o
|
||||
obj-$(CONFIG_ICPLUS_PHY) += icplus.o
|
||||
obj-$(CONFIG_ADM6996_PHY) += adm6996.o
|
||||
@@ -38,7 +38,7 @@
|
||||
/**
|
||||
* mdiobus_register - bring up all the PHYs on a given bus and attach them to bus
|
||||
* @bus: target mii_bus
|
||||
@@ -85,6 +91,7 @@
|
||||
@@ -85,6 +91,7 @@ int mdiobus_register(struct mii_bus *bus
|
||||
|
||||
phydev->dev.parent = bus->dev;
|
||||
phydev->dev.bus = &mdio_bus_type;
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,6 +1,6 @@
|
||||
--- a/drivers/usb/serial/usb-serial.c
|
||||
+++ b/drivers/usb/serial/usb-serial.c
|
||||
@@ -58,6 +58,7 @@
|
||||
@@ -58,6 +58,7 @@ static struct usb_driver usb_serial_driv
|
||||
drivers depend on it.
|
||||
*/
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
static int debug;
|
||||
static struct usb_serial *serial_table[SERIAL_TTY_MINORS]; /* initially all NULL */
|
||||
static DEFINE_MUTEX(table_lock);
|
||||
@@ -903,7 +904,7 @@
|
||||
@@ -903,7 +904,7 @@ int usb_serial_probe(struct usb_interfac
|
||||
dev_err(&interface->dev, "No free urbs available\n");
|
||||
goto probe_error;
|
||||
}
|
||||
@@ -17,7 +17,7 @@
|
||||
port->bulk_in_size = buffer_size;
|
||||
port->bulk_in_endpointAddress = endpoint->bEndpointAddress;
|
||||
port->bulk_in_buffer = kmalloc (buffer_size, GFP_KERNEL);
|
||||
@@ -1315,3 +1316,5 @@
|
||||
@@ -1315,3 +1316,5 @@ MODULE_LICENSE("GPL");
|
||||
|
||||
module_param(debug, bool, S_IRUGO | S_IWUSR);
|
||||
MODULE_PARM_DESC(debug, "Debug enabled or not");
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/init/main.c
|
||||
+++ b/init/main.c
|
||||
@@ -775,7 +775,7 @@
|
||||
@@ -775,7 +775,7 @@ static int noinline init_post(void)
|
||||
numa_default_policy();
|
||||
|
||||
if (sys_open((const char __user *) "/dev/console", O_RDWR, 0) < 0)
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/fs/jffs2/erase.c
|
||||
+++ b/fs/jffs2/erase.c
|
||||
@@ -35,6 +35,8 @@
|
||||
@@ -35,6 +35,8 @@ static void jffs2_erase_block(struct jff
|
||||
{
|
||||
int ret;
|
||||
uint32_t bad_offset;
|
||||
@@ -9,7 +9,7 @@
|
||||
#ifdef __ECOS
|
||||
ret = jffs2_flash_erase(c, jeb);
|
||||
if (!ret) {
|
||||
@@ -47,6 +49,11 @@
|
||||
@@ -47,6 +49,11 @@ static void jffs2_erase_block(struct jff
|
||||
|
||||
D1(printk(KERN_DEBUG "jffs2_erase_block(): erase block %#08x (range %#08x-%#08x)\n",
|
||||
jeb->offset, jeb->offset, jeb->offset + c->sector_size));
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
#include <linux/types.h>
|
||||
|
||||
#ifdef __KERNEL__
|
||||
@@ -232,4 +236,6 @@
|
||||
@@ -232,4 +236,6 @@ struct itimerval {
|
||||
*/
|
||||
#define TIMER_ABSTIME 0x01
|
||||
|
||||
@@ -35,7 +35,7 @@
|
||||
#ifdef __KERNEL__
|
||||
|
||||
#define DECLARE_BITMAP(name,bits) \
|
||||
@@ -161,6 +169,8 @@
|
||||
@@ -161,6 +169,8 @@ typedef unsigned long blkcnt_t;
|
||||
|
||||
#endif /* __KERNEL_STRICT_NAMES */
|
||||
|
||||
|
||||
@@ -62,7 +62,7 @@
|
||||
|
||||
--- a/scripts/kconfig/Makefile
|
||||
+++ b/scripts/kconfig/Makefile
|
||||
@@ -93,6 +93,9 @@
|
||||
@@ -93,6 +93,9 @@ check-lxdialog := $(srctree)/$(src)/lxd
|
||||
# we really need to do so. (Do not call gcc as part of make mrproper)
|
||||
HOST_EXTRACFLAGS = $(shell $(CONFIG_SHELL) $(check-lxdialog) -ccflags)
|
||||
HOST_LOADLIBES = $(shell $(CONFIG_SHELL) $(check-lxdialog) -ldflags $(HOSTCC))
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/drivers/net/wireless/hostap/hostap_ap.c
|
||||
+++ b/drivers/net/wireless/hostap/hostap_ap.c
|
||||
@@ -2397,13 +2397,13 @@
|
||||
@@ -2397,13 +2397,13 @@ int prism2_ap_get_sta_qual(local_info_t
|
||||
addr[count].sa_family = ARPHRD_ETHER;
|
||||
memcpy(addr[count].sa_data, sta->addr, ETH_ALEN);
|
||||
if (sta->last_rx_silence == 0)
|
||||
@@ -20,7 +20,7 @@
|
||||
qual[count].updated = sta->last_rx_updated;
|
||||
|
||||
sta->last_rx_updated = IW_QUAL_DBM;
|
||||
@@ -2468,13 +2468,13 @@
|
||||
@@ -2468,13 +2468,13 @@ int prism2_ap_translate_scan(struct net_
|
||||
memset(&iwe, 0, sizeof(iwe));
|
||||
iwe.cmd = IWEVQUAL;
|
||||
if (sta->last_rx_silence == 0)
|
||||
@@ -54,7 +54,7 @@
|
||||
#endif /* HOSTAP_CONFIG_H */
|
||||
--- a/drivers/net/wireless/hostap/hostap.h
|
||||
+++ b/drivers/net/wireless/hostap/hostap.h
|
||||
@@ -89,6 +89,7 @@
|
||||
@@ -89,6 +89,7 @@ extern const struct iw_handler_def hosta
|
||||
extern const struct ethtool_ops prism2_ethtool_ops;
|
||||
|
||||
int hostap_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd);
|
||||
@@ -64,7 +64,7 @@
|
||||
#endif /* HOSTAP_H */
|
||||
--- a/drivers/net/wireless/hostap/hostap_hw.c
|
||||
+++ b/drivers/net/wireless/hostap/hostap_hw.c
|
||||
@@ -933,6 +933,7 @@
|
||||
@@ -933,6 +933,7 @@ static int hfa384x_set_rid(struct net_de
|
||||
prism2_hw_reset(dev);
|
||||
}
|
||||
|
||||
@@ -74,7 +74,7 @@
|
||||
|
||||
--- a/drivers/net/wireless/hostap/hostap_info.c
|
||||
+++ b/drivers/net/wireless/hostap/hostap_info.c
|
||||
@@ -434,6 +434,11 @@
|
||||
@@ -434,6 +434,11 @@ static void handle_info_queue_linkstatus
|
||||
}
|
||||
|
||||
/* Get BSSID if we have a valid AP address */
|
||||
@@ -88,7 +88,7 @@
|
||||
netif_carrier_on(local->ddev);
|
||||
--- a/drivers/net/wireless/hostap/hostap_ioctl.c
|
||||
+++ b/drivers/net/wireless/hostap/hostap_ioctl.c
|
||||
@@ -1500,23 +1500,20 @@
|
||||
@@ -1500,23 +1500,20 @@ static int prism2_txpower_hfa386x_to_dBm
|
||||
val = 255;
|
||||
|
||||
tmp = val;
|
||||
@@ -116,7 +116,7 @@
|
||||
|
||||
return (unsigned char) tmp;
|
||||
}
|
||||
@@ -4076,3 +4073,35 @@
|
||||
@@ -4076,3 +4073,35 @@ int hostap_ioctl(struct net_device *dev,
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/include/linux/stddef.h
|
||||
+++ b/include/linux/stddef.h
|
||||
@@ -16,6 +16,7 @@
|
||||
@@ -16,6 +16,7 @@ enum {
|
||||
false = 0,
|
||||
true = 1
|
||||
};
|
||||
@@ -8,7 +8,7 @@
|
||||
|
||||
#undef offsetof
|
||||
#ifdef __compiler_offsetof
|
||||
@@ -23,6 +24,5 @@
|
||||
@@ -23,6 +24,5 @@ enum {
|
||||
#else
|
||||
#define offsetof(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER)
|
||||
#endif
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/scripts/gen_initramfs_list.sh
|
||||
+++ b/scripts/gen_initramfs_list.sh
|
||||
@@ -125,7 +125,7 @@
|
||||
@@ -125,7 +125,7 @@ parse() {
|
||||
str="${ftype} ${name} ${location} ${str}"
|
||||
;;
|
||||
"nod")
|
||||
@@ -9,7 +9,7 @@
|
||||
local maj=`field 5 ${dev}`
|
||||
local min=`field 6 ${dev}`
|
||||
maj=${maj%,}
|
||||
@@ -135,7 +135,7 @@
|
||||
@@ -135,7 +135,7 @@ parse() {
|
||||
str="${ftype} ${name} ${str} ${dev} ${maj} ${min}"
|
||||
;;
|
||||
"slink")
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/drivers/mtd/devices/m25p80.c
|
||||
+++ b/drivers/mtd/devices/m25p80.c
|
||||
@@ -627,12 +627,10 @@
|
||||
@@ -627,12 +627,10 @@ static int __devinit m25p_probe(struct s
|
||||
struct mtd_partition *parts = NULL;
|
||||
int nr_parts = 0;
|
||||
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
Index: linux-2.6.25.17/include/linux/spi/spi_gpio.h
|
||||
===================================================================
|
||||
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
||||
+++ linux-2.6.25.17/include/linux/spi/spi_gpio.h 2008-10-18 23:32:31.000000000 +0200
|
||||
--- /dev/null
|
||||
+++ b/include/linux/spi/spi_gpio.h
|
||||
@@ -0,0 +1,72 @@
|
||||
+/*
|
||||
+ * spi_gpio interface to platform code
|
||||
@@ -75,10 +73,8 @@ Index: linux-2.6.25.17/include/linux/spi/spi_gpio.h
|
||||
+int spi_gpio_next_id(void);
|
||||
+
|
||||
+#endif /* _LINUX_SPI_SPI_GPIO */
|
||||
Index: linux-2.6.25.17/drivers/spi/spi_gpio.c
|
||||
===================================================================
|
||||
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
||||
+++ linux-2.6.25.17/drivers/spi/spi_gpio.c 2008-10-18 23:31:27.000000000 +0200
|
||||
--- /dev/null
|
||||
+++ b/drivers/spi/spi_gpio.c
|
||||
@@ -0,0 +1,249 @@
|
||||
+/*
|
||||
+ * Bitbanging SPI bus driver using GPIO API
|
||||
@@ -329,10 +325,8 @@ Index: linux-2.6.25.17/drivers/spi/spi_gpio.c
|
||||
+MODULE_AUTHOR("Piot Skamruk <piotr.skamruk at gmail.com>");
|
||||
+MODULE_DESCRIPTION("Platform independent GPIO bitbanging SPI driver");
|
||||
+MODULE_LICENSE("GPL v2");
|
||||
Index: linux-2.6.25.17/drivers/spi/Kconfig
|
||||
===================================================================
|
||||
--- linux-2.6.25.17.orig/drivers/spi/Kconfig 2008-10-18 23:30:41.000000000 +0200
|
||||
+++ linux-2.6.25.17/drivers/spi/Kconfig 2008-10-18 23:30:43.000000000 +0200
|
||||
--- a/drivers/spi/Kconfig
|
||||
+++ b/drivers/spi/Kconfig
|
||||
@@ -100,6 +100,19 @@ config SPI_BUTTERFLY
|
||||
inexpensive battery powered microcontroller evaluation board.
|
||||
This same cable can be used to flash new firmware.
|
||||
@@ -353,10 +347,8 @@ Index: linux-2.6.25.17/drivers/spi/Kconfig
|
||||
config SPI_IMX
|
||||
tristate "Freescale iMX SPI controller"
|
||||
depends on SPI_MASTER && ARCH_IMX && EXPERIMENTAL
|
||||
Index: linux-2.6.25.17/drivers/spi/Makefile
|
||||
===================================================================
|
||||
--- linux-2.6.25.17.orig/drivers/spi/Makefile 2008-10-18 23:30:41.000000000 +0200
|
||||
+++ linux-2.6.25.17/drivers/spi/Makefile 2008-10-18 23:30:43.000000000 +0200
|
||||
--- a/drivers/spi/Makefile
|
||||
+++ b/drivers/spi/Makefile
|
||||
@@ -16,6 +16,7 @@ obj-$(CONFIG_SPI_BFIN) += spi_bfin5xx.
|
||||
obj-$(CONFIG_SPI_BITBANG) += spi_bitbang.o
|
||||
obj-$(CONFIG_SPI_AU1550) += au1550_spi.o
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
Index: linux-2.6.25.17/drivers/mmc/host/gpiommc.c
|
||||
===================================================================
|
||||
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
||||
+++ linux-2.6.25.17/drivers/mmc/host/gpiommc.c 2008-10-18 23:33:54.000000000 +0200
|
||||
--- /dev/null
|
||||
+++ b/drivers/mmc/host/gpiommc.c
|
||||
@@ -0,0 +1,605 @@
|
||||
+/*
|
||||
+ * Driver an MMC/SD card on a bitbanging GPIO SPI bus.
|
||||
@@ -608,10 +606,8 @@ Index: linux-2.6.25.17/drivers/mmc/host/gpiommc.c
|
||||
+ platform_driver_unregister(&gpiommc_plat_driver);
|
||||
+}
|
||||
+module_exit(gpiommc_modexit);
|
||||
Index: linux-2.6.25.17/drivers/mmc/host/Kconfig
|
||||
===================================================================
|
||||
--- linux-2.6.25.17.orig/drivers/mmc/host/Kconfig 2008-10-18 23:30:41.000000000 +0200
|
||||
+++ linux-2.6.25.17/drivers/mmc/host/Kconfig 2008-10-18 23:32:54.000000000 +0200
|
||||
--- a/drivers/mmc/host/Kconfig
|
||||
+++ b/drivers/mmc/host/Kconfig
|
||||
@@ -130,3 +130,27 @@ config MMC_SPI
|
||||
|
||||
If unsure, or if your system has no SPI master driver, say N.
|
||||
@@ -640,20 +636,16 @@ Index: linux-2.6.25.17/drivers/mmc/host/Kconfig
|
||||
+ help
|
||||
+ This option automatically enables configfs support for gpiommc
|
||||
+ if configfs is available.
|
||||
Index: linux-2.6.25.17/drivers/mmc/host/Makefile
|
||||
===================================================================
|
||||
--- linux-2.6.25.17.orig/drivers/mmc/host/Makefile 2008-10-18 23:30:41.000000000 +0200
|
||||
+++ linux-2.6.25.17/drivers/mmc/host/Makefile 2008-10-18 23:32:54.000000000 +0200
|
||||
--- a/drivers/mmc/host/Makefile
|
||||
+++ b/drivers/mmc/host/Makefile
|
||||
@@ -17,4 +17,4 @@ obj-$(CONFIG_MMC_OMAP) += omap.o
|
||||
obj-$(CONFIG_MMC_AT91) += at91_mci.o
|
||||
obj-$(CONFIG_MMC_TIFM_SD) += tifm_sd.o
|
||||
obj-$(CONFIG_MMC_SPI) += mmc_spi.o
|
||||
-
|
||||
+obj-$(CONFIG_GPIOMMC) += gpiommc.o
|
||||
Index: linux-2.6.25.17/include/linux/mmc/gpiommc.h
|
||||
===================================================================
|
||||
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
||||
+++ linux-2.6.25.17/include/linux/mmc/gpiommc.h 2008-10-18 23:34:21.000000000 +0200
|
||||
--- /dev/null
|
||||
+++ b/include/linux/mmc/gpiommc.h
|
||||
@@ -0,0 +1,69 @@
|
||||
+/*
|
||||
+ * Device driver for MMC/SD cards driven over a GPIO bus.
|
||||
@@ -724,10 +716,8 @@ Index: linux-2.6.25.17/include/linux/mmc/gpiommc.h
|
||||
+int gpiommc_next_id(void);
|
||||
+
|
||||
+#endif /* LINUX_GPIOMMC_H_ */
|
||||
Index: linux-2.6.25.17/Documentation/gpiommc.txt
|
||||
===================================================================
|
||||
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
||||
+++ linux-2.6.25.17/Documentation/gpiommc.txt 2008-10-18 23:32:54.000000000 +0200
|
||||
--- /dev/null
|
||||
+++ b/Documentation/gpiommc.txt
|
||||
@@ -0,0 +1,97 @@
|
||||
+GPIOMMC - Driver for an MMC/SD card on a bitbanging GPIO SPI bus
|
||||
+================================================================
|
||||
|
||||
@@ -1,10 +1,8 @@
|
||||
The gpiommc configfs context structure needs locking, as configfs
|
||||
does not lock access between files.
|
||||
|
||||
Index: linux-2.6.25.17/drivers/mmc/host/gpiommc.c
|
||||
===================================================================
|
||||
--- linux-2.6.25.17.orig/drivers/mmc/host/gpiommc.c 2008-10-18 23:33:54.000000000 +0200
|
||||
+++ linux-2.6.25.17/drivers/mmc/host/gpiommc.c 2008-10-18 23:34:33.000000000 +0200
|
||||
--- a/drivers/mmc/host/gpiommc.c
|
||||
+++ b/drivers/mmc/host/gpiommc.c
|
||||
@@ -140,6 +140,8 @@ struct gpiommc_configfs_device {
|
||||
struct platform_device *pdev;
|
||||
/* The configuration */
|
||||
|
||||
@@ -32,7 +32,7 @@ and didn't make it with the ppc32 equivalent. Thanks.
|
||||
---
|
||||
--- a/include/asm-ppc/io.h
|
||||
+++ b/include/asm-ppc/io.h
|
||||
@@ -413,11 +413,21 @@
|
||||
@@ -413,11 +413,21 @@ static inline unsigned int ioread16(void
|
||||
return readw(addr);
|
||||
}
|
||||
|
||||
@@ -54,7 +54,7 @@ and didn't make it with the ppc32 equivalent. Thanks.
|
||||
static inline void iowrite8(u8 val, void __iomem *addr)
|
||||
{
|
||||
writeb(val, addr);
|
||||
@@ -428,11 +438,21 @@
|
||||
@@ -428,11 +438,21 @@ static inline void iowrite16(u16 val, vo
|
||||
writew(val, addr);
|
||||
}
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
#
|
||||
# machine_is_xxx CONFIG_xxxx MACH_TYPE_xxx number
|
||||
#
|
||||
@@ -381,13 +381,13 @@
|
||||
@@ -381,13 +381,13 @@ ks8695p ARCH_KS8695P KS8695P 363
|
||||
se4000 ARCH_SE4000 SE4000 364
|
||||
quadriceps ARCH_QUADRICEPS QUADRICEPS 365
|
||||
bronco ARCH_BRONCO BRONCO 366
|
||||
@@ -25,7 +25,7 @@
|
||||
rcube ARCH_RCUBE RCUBE 374
|
||||
rea_olv ARCH_REA_OLV REA_OLV 375
|
||||
pxa_iphone ARCH_PXA_IPHONE PXA_IPHONE 376
|
||||
@@ -1463,7 +1463,7 @@
|
||||
@@ -1463,7 +1463,7 @@ artemis MACH_ARTEMIS ARTEMIS 1462
|
||||
htctitan MACH_HTCTITAN HTCTITAN 1463
|
||||
qranium MACH_QRANIUM QRANIUM 1464
|
||||
adx_wsc2 MACH_ADX_WSC2 ADX_WSC2 1465
|
||||
@@ -34,7 +34,7 @@
|
||||
bboard MACH_BBOARD BBOARD 1467
|
||||
cambria MACH_CAMBRIA CAMBRIA 1468
|
||||
mt7xxx MACH_MT7XXX MT7XXX 1469
|
||||
@@ -1611,3 +1611,112 @@
|
||||
@@ -1611,3 +1611,112 @@ kb9263 MACH_KB9263 KB9263 1612
|
||||
mt7108 MACH_MT7108 MT7108 1613
|
||||
smtr2440 MACH_SMTR2440 SMTR2440 1614
|
||||
manao MACH_MANAO MANAO 1615
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/crypto/Kconfig
|
||||
+++ b/crypto/Kconfig
|
||||
@@ -593,3 +593,6 @@
|
||||
@@ -593,3 +593,6 @@ config CRYPTO_LZO
|
||||
source "drivers/crypto/Kconfig"
|
||||
|
||||
endif # if CRYPTO
|
||||
@@ -9,7 +9,7 @@
|
||||
+
|
||||
--- a/crypto/Makefile
|
||||
+++ b/crypto/Makefile
|
||||
@@ -65,6 +65,8 @@
|
||||
@@ -65,6 +65,8 @@ obj-$(CONFIG_CRYPTO_LZO) += lzo.o
|
||||
|
||||
obj-$(CONFIG_CRYPTO_TEST) += tcrypt.o
|
||||
|
||||
@@ -44,7 +44,7 @@
|
||||
* All of these routines try to estimate how many bits of randomness a
|
||||
* particular randomness source. They do this by keeping track of the
|
||||
* first and second order deltas of the event timings.
|
||||
@@ -669,6 +679,61 @@
|
||||
@@ -669,6 +679,61 @@ void add_disk_randomness(struct gendisk
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -108,7 +108,7 @@
|
||||
/*********************************************************************
|
||||
--- a/fs/fcntl.c
|
||||
+++ b/fs/fcntl.c
|
||||
@@ -202,6 +202,7 @@
|
||||
@@ -202,6 +202,7 @@ asmlinkage long sys_dup(unsigned int fil
|
||||
ret = dupfd(file, 0, 0);
|
||||
return ret;
|
||||
}
|
||||
@@ -167,7 +167,7 @@
|
||||
struct rand_pool_info {
|
||||
int entropy_count;
|
||||
int buf_size;
|
||||
@@ -48,6 +73,10 @@
|
||||
@@ -48,6 +73,10 @@ extern void add_input_randomness(unsigne
|
||||
unsigned int value);
|
||||
extern void add_interrupt_randomness(int irq);
|
||||
|
||||
|
||||
@@ -24,7 +24,7 @@ Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
||||
|
||||
--- a/drivers/gpio/gpiolib.c
|
||||
+++ b/drivers/gpio/gpiolib.c
|
||||
@@ -68,6 +68,9 @@
|
||||
@@ -68,6 +68,9 @@ static void gpio_ensure_requested(struct
|
||||
if (test_and_set_bit(FLAG_REQUESTED, &desc->flags) == 0) {
|
||||
pr_warning("GPIO-%d autorequested\n", (int)(desc - gpio_desc));
|
||||
desc_set_label(desc, "[auto]");
|
||||
@@ -34,7 +34,7 @@ Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
||||
}
|
||||
}
|
||||
|
||||
@@ -177,6 +180,9 @@
|
||||
@@ -177,6 +180,9 @@ int gpio_request(unsigned gpio, const ch
|
||||
if (desc->chip == NULL)
|
||||
goto done;
|
||||
|
||||
@@ -44,7 +44,7 @@ Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
||||
/* NOTE: gpio_request() can be called in early boot,
|
||||
* before IRQs are enabled.
|
||||
*/
|
||||
@@ -184,8 +190,10 @@
|
||||
@@ -184,8 +190,10 @@ int gpio_request(unsigned gpio, const ch
|
||||
if (test_and_set_bit(FLAG_REQUESTED, &desc->flags) == 0) {
|
||||
desc_set_label(desc, label ? : "?");
|
||||
status = 0;
|
||||
@@ -56,7 +56,7 @@ Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
||||
|
||||
done:
|
||||
if (status)
|
||||
@@ -209,9 +217,10 @@
|
||||
@@ -209,9 +217,10 @@ void gpio_free(unsigned gpio)
|
||||
spin_lock_irqsave(&gpio_lock, flags);
|
||||
|
||||
desc = &gpio_desc[gpio];
|
||||
@@ -79,7 +79,7 @@ Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
||||
|
||||
/**
|
||||
* struct gpio_chip - abstract a GPIO controller
|
||||
@@ -48,6 +49,7 @@
|
||||
@@ -48,6 +49,7 @@ struct seq_file;
|
||||
*/
|
||||
struct gpio_chip {
|
||||
char *label;
|
||||
|
||||
@@ -18,7 +18,7 @@ Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
||||
|
||||
--- a/Documentation/gpio.txt
|
||||
+++ b/Documentation/gpio.txt
|
||||
@@ -107,6 +107,16 @@
|
||||
@@ -107,6 +107,16 @@ type of GPIO controller, and on one part
|
||||
The numbers need not be contiguous; either of those platforms could also
|
||||
use numbers 2000-2063 to identify GPIOs in a bank of I2C GPIO expanders.
|
||||
|
||||
@@ -37,7 +37,7 @@ Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
||||
|
||||
--- a/drivers/gpio/gpiolib.c
|
||||
+++ b/drivers/gpio/gpiolib.c
|
||||
@@ -99,7 +99,7 @@
|
||||
@@ -99,7 +99,7 @@ int gpiochip_add(struct gpio_chip *chip)
|
||||
* dynamic allocation. We don't currently support that.
|
||||
*/
|
||||
|
||||
@@ -46,7 +46,7 @@ Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
||||
status = -EINVAL;
|
||||
goto fail;
|
||||
}
|
||||
@@ -174,7 +174,7 @@
|
||||
@@ -174,7 +174,7 @@ int gpio_request(unsigned gpio, const ch
|
||||
|
||||
spin_lock_irqsave(&gpio_lock, flags);
|
||||
|
||||
@@ -55,7 +55,7 @@ Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
||||
goto done;
|
||||
desc = &gpio_desc[gpio];
|
||||
if (desc->chip == NULL)
|
||||
@@ -209,7 +209,7 @@
|
||||
@@ -209,7 +209,7 @@ void gpio_free(unsigned gpio)
|
||||
unsigned long flags;
|
||||
struct gpio_desc *desc;
|
||||
|
||||
@@ -64,7 +64,7 @@ Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
||||
WARN_ON(extra_checks);
|
||||
return;
|
||||
}
|
||||
@@ -245,7 +245,7 @@
|
||||
@@ -245,7 +245,7 @@ const char *gpiochip_is_requested(struct
|
||||
{
|
||||
unsigned gpio = chip->base + offset;
|
||||
|
||||
@@ -73,7 +73,7 @@ Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
||||
return NULL;
|
||||
if (test_bit(FLAG_REQUESTED, &gpio_desc[gpio].flags) == 0)
|
||||
return NULL;
|
||||
@@ -276,7 +276,7 @@
|
||||
@@ -276,7 +276,7 @@ int gpio_direction_input(unsigned gpio)
|
||||
|
||||
spin_lock_irqsave(&gpio_lock, flags);
|
||||
|
||||
@@ -82,7 +82,7 @@ Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
||||
goto fail;
|
||||
chip = desc->chip;
|
||||
if (!chip || !chip->get || !chip->direction_input)
|
||||
@@ -314,7 +314,7 @@
|
||||
@@ -314,7 +314,7 @@ int gpio_direction_output(unsigned gpio,
|
||||
|
||||
spin_lock_irqsave(&gpio_lock, flags);
|
||||
|
||||
@@ -91,7 +91,7 @@ Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
||||
goto fail;
|
||||
chip = desc->chip;
|
||||
if (!chip || !chip->set || !chip->direction_output)
|
||||
@@ -531,7 +531,7 @@
|
||||
@@ -531,7 +531,7 @@ static int gpiolib_show(struct seq_file
|
||||
|
||||
/* REVISIT this isn't locked against gpio_chip removal ... */
|
||||
|
||||
@@ -115,7 +115,7 @@ Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
||||
struct seq_file;
|
||||
struct module;
|
||||
|
||||
@@ -99,6 +105,16 @@
|
||||
@@ -99,6 +105,16 @@ extern int __gpio_cansleep(unsigned gpio
|
||||
|
||||
#else
|
||||
|
||||
|
||||
@@ -23,7 +23,7 @@ Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
||||
|
||||
--- a/drivers/gpio/gpiolib.c
|
||||
+++ b/drivers/gpio/gpiolib.c
|
||||
@@ -80,6 +80,33 @@
|
||||
@@ -80,6 +80,33 @@ static inline struct gpio_chip *gpio_to_
|
||||
return gpio_desc[gpio].chip;
|
||||
}
|
||||
|
||||
@@ -57,7 +57,7 @@ Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
||||
/**
|
||||
* gpiochip_add() - register a gpio_chip
|
||||
* @chip: the chip to register, with chip->base initialized
|
||||
@@ -88,38 +115,49 @@
|
||||
@@ -88,38 +115,49 @@ static inline struct gpio_chip *gpio_to_
|
||||
* Returns a negative errno if the chip can't be registered, such as
|
||||
* because the chip->base is invalid or already associated with a
|
||||
* different chip. Otherwise it returns zero as a success code.
|
||||
|
||||
@@ -21,7 +21,7 @@ Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
||||
|
||||
--- a/drivers/gpio/gpiolib.c
|
||||
+++ b/drivers/gpio/gpiolib.c
|
||||
@@ -43,6 +43,7 @@
|
||||
@@ -43,6 +43,7 @@ struct gpio_desc {
|
||||
/* flag symbols are bit numbers */
|
||||
#define FLAG_REQUESTED 0
|
||||
#define FLAG_IS_OUT 1
|
||||
@@ -29,7 +29,7 @@ Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
||||
|
||||
#ifdef CONFIG_DEBUG_FS
|
||||
const char *label;
|
||||
@@ -88,9 +89,10 @@
|
||||
@@ -88,9 +89,10 @@ static int gpiochip_find_base(int ngpio)
|
||||
int base = -ENOSPC;
|
||||
|
||||
for (i = ARCH_NR_GPIOS - 1; i >= 0 ; i--) {
|
||||
@@ -42,7 +42,7 @@ Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
||||
spare++;
|
||||
if (spare == ngpio) {
|
||||
base = i;
|
||||
@@ -98,7 +100,8 @@
|
||||
@@ -98,7 +100,8 @@ static int gpiochip_find_base(int ngpio)
|
||||
}
|
||||
} else {
|
||||
spare = 0;
|
||||
@@ -52,7 +52,7 @@ Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
||||
}
|
||||
}
|
||||
|
||||
@@ -108,6 +111,47 @@
|
||||
@@ -108,6 +111,47 @@ static int gpiochip_find_base(int ngpio)
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -102,7 +102,7 @@ Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
||||
* Context: potentially before irqs or kmalloc will work
|
||||
--- a/include/asm-generic/gpio.h
|
||||
+++ b/include/asm-generic/gpio.h
|
||||
@@ -74,6 +74,7 @@
|
||||
@@ -74,6 +74,7 @@ struct gpio_chip {
|
||||
|
||||
extern const char *gpiochip_is_requested(struct gpio_chip *chip,
|
||||
unsigned offset);
|
||||
|
||||
@@ -17,7 +17,7 @@ Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
||||
|
||||
--- a/drivers/gpio/gpiolib.c
|
||||
+++ b/drivers/gpio/gpiolib.c
|
||||
@@ -127,7 +127,7 @@
|
||||
@@ -127,7 +127,7 @@ int __init gpiochip_reserve(int start, i
|
||||
unsigned long flags;
|
||||
int i;
|
||||
|
||||
@@ -26,7 +26,7 @@ Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
||||
return -EINVAL;
|
||||
|
||||
spin_lock_irqsave(&gpio_lock, flags);
|
||||
@@ -170,7 +170,7 @@
|
||||
@@ -170,7 +170,7 @@ int gpiochip_add(struct gpio_chip *chip)
|
||||
unsigned id;
|
||||
int base = chip->base;
|
||||
|
||||
@@ -35,7 +35,7 @@ Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
||||
&& base >= 0) {
|
||||
status = -EINVAL;
|
||||
goto fail;
|
||||
@@ -207,7 +207,7 @@
|
||||
@@ -207,7 +207,7 @@ fail:
|
||||
/* failures here can mean systems won't boot... */
|
||||
if (status)
|
||||
pr_err("gpiochip_add: gpios %d..%d (%s) not registered\n",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/drivers/usb/serial/sierra.c
|
||||
+++ b/drivers/usb/serial/sierra.c
|
||||
@@ -166,14 +166,19 @@
|
||||
@@ -166,14 +166,19 @@ static struct usb_device_id id_table []
|
||||
{ USB_DEVICE(0x1199, 0x6815) }, /* Sierra Wireless MC8775 */
|
||||
{ USB_DEVICE(0x03f0, 0x1e1d) }, /* HP hs2300 a.k.a MC8775 */
|
||||
{ USB_DEVICE(0x1199, 0x6820) }, /* Sierra Wireless AirCard 875 */
|
||||
|
||||
Reference in New Issue
Block a user