From fe7f0431018b5ebb314aecc32561579556544c57 Mon Sep 17 00:00:00 2001 From: Dan Carpenter Date: Wed, 25 May 2011 12:56:56 +0300 Subject: [PATCH] --- yaml --- r: 253197 b: refs/heads/master c: f6b07f45e2df42d63a0292dcd13aaaa18d6c01f7 h: refs/heads/master i: 253195: 0a5b39d2fa40164a6d893102cbb8b6b7d7af207f v: v3 --- [refs] | 2 +- trunk/CREDITS | 8 - trunk/Documentation/kernel-parameters.txt | 5 +- trunk/Documentation/virtual/lguest/Makefile | 2 +- trunk/Documentation/virtual/lguest/lguest.c | 22 +- trunk/MAINTAINERS | 14 +- trunk/Makefile | 2 +- trunk/arch/arm/mach-omap1/dma.c | 11 +- trunk/arch/arm/mach-omap2/board-2430sdp.c | 2 +- trunk/arch/arm/mach-omap2/board-3430sdp.c | 6 +- trunk/arch/arm/mach-omap2/board-4430sdp.c | 11 +- trunk/arch/arm/mach-omap2/board-apollon.c | 2 +- trunk/arch/arm/mach-omap2/board-cm-t35.c | 2 + trunk/arch/arm/mach-omap2/board-cm-t3517.c | 5 +- trunk/arch/arm/mach-omap2/board-devkit8000.c | 2 + trunk/arch/arm/mach-omap2/board-omap3beagle.c | 8 +- .../arch/arm/mach-omap2/board-omap3pandora.c | 4 +- .../arm/mach-omap2/board-omap3touchbook.c | 2 + trunk/arch/arm/mach-omap2/board-omap4panda.c | 8 +- trunk/arch/arm/mach-omap2/board-overo.c | 4 +- .../arm/mach-omap2/board-rx51-peripherals.c | 3 +- .../arch/arm/mach-omap2/board-zoom-display.c | 2 +- .../arm/mach-omap2/common-board-devices.c | 20 +- .../arm/mach-omap2/common-board-devices.h | 2 - trunk/arch/arm/mach-omap2/devices.c | 2 +- trunk/arch/arm/mach-omap2/hsmmc.c | 16 +- trunk/arch/arm/mach-omap2/hsmmc.h | 1 - trunk/arch/arm/mach-omap2/mux.c | 5 +- trunk/arch/arm/mach-omap2/mux.h | 6 +- trunk/arch/arm/mach-omap2/mux44xx.c | 5 +- trunk/arch/arm/mach-omap2/omap_hwmod.c | 2 +- .../arm/mach-omap2/omap_hwmod_44xx_data.c | 2 +- trunk/arch/arm/mach-omap2/omap_phy_internal.c | 4 +- trunk/arch/arm/mach-shmobile/board-ap4evb.c | 56 -- trunk/arch/arm/mach-shmobile/board-mackerel.c | 78 --- trunk/arch/arm/mach-shmobile/clock-sh7372.c | 7 - .../arch/arm/mach-tegra/board-harmony-power.c | 4 +- trunk/arch/arm/mach-tegra/board-harmony.h | 3 +- trunk/arch/arm/plat-omap/include/plat/flash.h | 1 - trunk/arch/arm/plat-omap/include/plat/iovmm.h | 3 + trunk/arch/arm/plat-omap/include/plat/mmc.h | 3 - trunk/arch/arm/plat-omap/iovmm.c | 4 + trunk/arch/arm/plat-omap/sram.c | 12 +- trunk/arch/blackfin/lib/strncpy.S | 2 +- trunk/arch/ia64/include/asm/unistd.h | 3 +- trunk/arch/ia64/kernel/entry.S | 1 - trunk/arch/mn10300/kernel/traps.c | 4 +- trunk/arch/mn10300/kernel/vmlinux.lds.S | 1 - .../arch/mn10300/mm/cache-dbg-flush-by-reg.S | 4 +- trunk/arch/powerpc/platforms/powermac/pic.c | 3 +- trunk/arch/s390/Kconfig | 1 - trunk/arch/s390/include/asm/pgalloc.h | 8 +- trunk/arch/s390/include/asm/pgtable.h | 39 +- trunk/arch/s390/include/asm/qdio.h | 119 +++- trunk/arch/s390/include/asm/tlb.h | 94 +-- trunk/arch/s390/kvm/kvm-s390.c | 1 - trunk/arch/s390/kvm/sie64a.S | 2 - trunk/arch/s390/mm/pgtable.c | 292 +++++---- trunk/arch/sh/Kconfig | 2 +- trunk/arch/sh/boards/mach-ap325rxa/setup.c | 32 +- trunk/arch/sh/boards/mach-ecovec24/setup.c | 3 - trunk/arch/sh/include/asm/pgtable.h | 1 - trunk/arch/sh/include/asm/ptrace.h | 6 +- trunk/arch/sh/include/asm/tlb.h | 1 - trunk/arch/sh/include/cpu-sh4/cpu/sh7722.h | 1 - trunk/arch/sh/include/cpu-sh4/cpu/sh7724.h | 1 - trunk/arch/sh/include/cpu-sh4/cpu/sh7757.h | 1 - trunk/arch/sh/kernel/process_32.c | 1 - trunk/arch/sh/mm/consistent.c | 2 +- trunk/arch/x86/kernel/Makefile | 2 - trunk/arch/x86/kernel/process.c | 2 +- trunk/arch/x86/kernel/smpboot.c | 2 +- trunk/arch/x86/kvm/emulate.c | 82 ++- trunk/arch/x86/lguest/boot.c | 1 - trunk/block/blk-ioc.c | 4 +- trunk/block/cfq-iosched.c | 11 +- trunk/drivers/block/nbd.c | 22 +- trunk/drivers/block/paride/pcd.c | 1 + trunk/drivers/block/virtio_blk.c | 91 +-- trunk/drivers/block/xen-blkback/blkback.c | 10 +- trunk/drivers/block/xen-blkback/xenbus.c | 3 +- trunk/drivers/bluetooth/hci_ldisc.c | 17 +- trunk/drivers/cdrom/viocd.c | 1 + trunk/drivers/char/virtio_console.c | 5 + trunk/drivers/clocksource/sh_cmt.c | 12 +- trunk/drivers/clocksource/sh_tmu.c | 12 +- trunk/drivers/dma/shdma.c | 9 +- trunk/drivers/gpu/drm/i915/i915_irq.c | 2 +- trunk/drivers/gpu/drm/radeon/Kconfig | 9 +- trunk/drivers/gpu/drm/radeon/atombios_crtc.c | 12 +- .../gpu/drm/radeon/cayman_blit_shaders.c | 326 +--------- .../gpu/drm/radeon/cayman_blit_shaders.h | 3 - trunk/drivers/gpu/drm/radeon/evergreen.c | 104 +--- .../gpu/drm/radeon/evergreen_blit_kms.c | 561 ++++++++---------- trunk/drivers/gpu/drm/radeon/evergreend.h | 8 +- trunk/drivers/gpu/drm/radeon/ni.c | 13 +- trunk/drivers/gpu/drm/radeon/r600.c | 12 - trunk/drivers/gpu/drm/radeon/r600_cs.c | 28 +- trunk/drivers/gpu/drm/radeon/r600d.h | 3 - trunk/drivers/gpu/drm/radeon/radeon_asic.c | 8 +- trunk/drivers/gpu/drm/radeon/radeon_device.c | 2 - trunk/drivers/gpu/drm/radeon/radeon_display.c | 13 +- .../drivers/gpu/drm/radeon/radeon_encoders.c | 17 +- trunk/drivers/gpu/drm/radeon/radeon_family.h | 2 - trunk/drivers/gpu/drm/radeon/radeon_pm.c | 1 - trunk/drivers/gpu/drm/radeon/reg_srcs/r600 | 1 + trunk/drivers/hwmon/coretemp.c | 23 +- trunk/drivers/hwmon/max6642.c | 22 +- trunk/drivers/ide/ide-cd.c | 1 + trunk/drivers/input/serio/serport.c | 10 +- trunk/drivers/isdn/gigaset/ser-gigaset.c | 8 +- trunk/drivers/misc/kgdbts.c | 5 +- trunk/drivers/misc/ti-st/st_core.c | 6 +- trunk/drivers/mmc/host/omap_hsmmc.c | 3 - trunk/drivers/net/3c509.c | 14 +- trunk/drivers/net/3c59x.c | 4 +- trunk/drivers/net/caif/caif_serial.c | 6 +- trunk/drivers/net/can/flexcan.c | 5 +- trunk/drivers/net/can/slcan.c | 9 +- trunk/drivers/net/davinci_emac.c | 10 +- trunk/drivers/net/depca.c | 35 +- trunk/drivers/net/dm9000.c | 6 +- trunk/drivers/net/hamradio/6pack.c | 8 +- trunk/drivers/net/hamradio/mkiss.c | 11 +- trunk/drivers/net/hp100.c | 12 +- trunk/drivers/net/ibmlana.c | 4 +- trunk/drivers/net/irda/irtty-sir.c | 16 +- trunk/drivers/net/irda/smsc-ircc2.c | 44 +- trunk/drivers/net/ks8842.c | 2 +- trunk/drivers/net/ne3210.c | 15 +- trunk/drivers/net/ppp_async.c | 6 +- trunk/drivers/net/ppp_synctty.c | 6 +- trunk/drivers/net/slip.c | 11 +- trunk/drivers/net/smc-mca.c | 6 +- trunk/drivers/net/tg3.c | 2 +- trunk/drivers/net/tokenring/madgemc.c | 2 +- trunk/drivers/net/tulip/de4x5.c | 4 +- trunk/drivers/net/usb/catc.c | 2 +- trunk/drivers/net/usb/cdc_ncm.c | 3 +- trunk/drivers/net/virtio_net.c | 2 +- trunk/drivers/net/wan/x25_asy.c | 7 +- trunk/drivers/net/wireless/ath/ath9k/Kconfig | 1 + .../net/wireless/ath/ath9k/ar9002_calib.c | 2 +- .../net/wireless/ath/ath9k/ar9003_eeprom.c | 10 +- .../net/wireless/ath/ath9k/ar9003_phy.c | 22 - .../net/wireless/ath/ath9k/eeprom_9287.c | 10 +- trunk/drivers/net/wireless/ath/ath9k/hw.c | 5 +- trunk/drivers/net/wireless/ath/ath9k/hw.h | 2 - trunk/drivers/net/wireless/ath/ath9k/main.c | 4 +- trunk/drivers/net/wireless/ath/ath9k/rc.c | 3 +- trunk/drivers/net/wireless/b43/phy_n.c | 2 +- .../net/wireless/iwlegacy/iwl-4965-lib.c | 4 +- .../drivers/net/wireless/iwlegacy/iwl-4965.c | 2 +- trunk/drivers/net/wireless/iwlwifi/iwl-6000.c | 28 +- trunk/drivers/net/wireless/iwlwifi/iwl-agn.c | 6 +- trunk/drivers/net/wireless/iwlwifi/iwl-agn.h | 1 - trunk/drivers/net/wireless/libertas/cmd.c | 6 +- trunk/drivers/net/wireless/mwifiex/sdio.h | 4 +- trunk/drivers/net/wireless/rt2x00/Kconfig | 1 + trunk/drivers/net/wireless/rtlwifi/pci.c | 35 +- trunk/drivers/net/wireless/wl12xx/conf.h | 3 - trunk/drivers/net/wireless/wl12xx/main.c | 1 - trunk/drivers/net/wireless/wl12xx/scan.c | 49 +- trunk/drivers/net/wireless/wl12xx/scan.h | 3 - trunk/drivers/net/wireless/zd1211rw/zd_usb.c | 53 +- trunk/drivers/pci/dmar.c | 7 +- trunk/drivers/pci/intel-iommu.c | 240 ++------ trunk/drivers/pci/iova.c | 12 +- trunk/drivers/s390/cio/qdio_main.c | 6 +- trunk/drivers/s390/net/qeth_core.h | 2 +- trunk/drivers/s390/net/qeth_core_main.c | 57 +- trunk/drivers/s390/scsi/zfcp_fsf.c | 45 +- trunk/drivers/s390/scsi/zfcp_qdio.c | 11 +- trunk/drivers/s390/scsi/zfcp_qdio.h | 9 +- trunk/drivers/scsi/scsi_scan.c | 2 +- trunk/drivers/scsi/scsi_sysfs.c | 1 - trunk/drivers/tty/n_gsm.c | 6 +- trunk/drivers/tty/n_hdlc.c | 18 +- trunk/drivers/tty/n_r3964.c | 10 +- trunk/drivers/tty/n_tty.c | 61 +- trunk/drivers/tty/tty_buffer.c | 15 +- trunk/drivers/tty/vt/selection.c | 3 +- trunk/drivers/usb/core/inode.c | 1 + trunk/drivers/vhost/net.c | 12 +- trunk/drivers/vhost/test.c | 6 +- trunk/drivers/vhost/vhost.c | 138 ++--- trunk/drivers/vhost/vhost.h | 21 +- trunk/drivers/video/arcfb.c | 5 +- trunk/drivers/video/bf537-lq035.c | 1 - trunk/drivers/video/broadsheetfb.c | 4 +- trunk/drivers/video/efifb.c | 34 +- trunk/drivers/video/hecubafb.c | 5 +- trunk/drivers/video/imxfb.c | 4 +- trunk/drivers/video/metronomefb.c | 4 +- trunk/drivers/video/modedb.c | 1 - trunk/drivers/video/pxa168fb.c | 17 +- trunk/drivers/video/savage/savagefb_driver.c | 16 - trunk/drivers/video/sh_mobile_lcdcfb.c | 4 +- trunk/drivers/video/vga16fb.c | 2 - trunk/drivers/video/xen-fbfront.c | 3 +- trunk/drivers/virtio/virtio_balloon.c | 21 +- trunk/drivers/virtio/virtio_ring.c | 53 +- trunk/fs/autofs4/root.c | 2 + trunk/fs/block_dev.c | 4 +- trunk/fs/btrfs/btrfs_inode.h | 3 + trunk/fs/btrfs/ctree.c | 28 +- trunk/fs/btrfs/ctree.h | 22 +- trunk/fs/btrfs/delayed-inode.c | 8 +- trunk/fs/btrfs/disk-io.c | 36 +- trunk/fs/btrfs/extent-tree.c | 103 ++-- trunk/fs/btrfs/extent_io.c | 2 +- trunk/fs/btrfs/file.c | 10 +- trunk/fs/btrfs/free-space-cache.c | 70 +-- trunk/fs/btrfs/inode-map.c | 34 +- trunk/fs/btrfs/inode.c | 261 ++++---- trunk/fs/btrfs/ioctl.c | 26 +- trunk/fs/btrfs/relocation.c | 34 +- trunk/fs/btrfs/scrub.c | 123 ++-- trunk/fs/btrfs/super.c | 10 +- trunk/fs/btrfs/transaction.c | 302 +++++----- trunk/fs/btrfs/transaction.h | 29 +- trunk/fs/btrfs/volumes.c | 2 +- trunk/fs/btrfs/xattr.c | 2 + trunk/fs/fat/file.c | 2 +- trunk/fs/fuse/inode.c | 2 - trunk/fs/gfs2/glock.c | 9 +- trunk/fs/jfs/jfs_logmgr.c | 2 +- trunk/fs/namei.c | 14 +- trunk/fs/ocfs2/super.c | 2 +- trunk/fs/partitions/check.c | 10 +- trunk/fs/super.c | 2 +- trunk/fs/ubifs/io.c | 2 - trunk/fs/ubifs/journal.c | 1 - trunk/fs/ubifs/orphan.c | 2 +- trunk/fs/ubifs/recovery.c | 164 +++-- trunk/fs/ubifs/replay.c | 3 +- trunk/fs/ubifs/shrinker.c | 6 +- trunk/fs/ubifs/super.c | 42 +- trunk/fs/ubifs/tnc.c | 9 +- trunk/fs/ubifs/ubifs.h | 4 +- trunk/include/asm-generic/unistd.h | 4 +- trunk/include/drm/drm_pciids.h | 11 - trunk/include/linux/blkdev.h | 4 +- trunk/include/linux/dma_remapping.h | 4 - trunk/include/linux/fs.h | 3 +- trunk/include/linux/genhd.h | 1 - trunk/include/linux/ieee80211.h | 8 +- trunk/include/linux/if_packet.h | 1 - trunk/include/linux/mtd/physmap.h | 1 - trunk/include/linux/tty_ldisc.h | 9 +- trunk/include/linux/virtio.h | 9 - trunk/include/linux/virtio_9p.h | 25 +- trunk/include/linux/virtio_balloon.h | 25 +- trunk/include/linux/virtio_blk.h | 25 +- trunk/include/linux/virtio_config.h | 25 +- trunk/include/linux/virtio_console.h | 26 +- trunk/include/linux/virtio_ids.h | 24 +- trunk/include/linux/virtio_net.h | 25 +- trunk/include/linux/virtio_pci.h | 23 - trunk/include/linux/virtio_ring.h | 52 +- trunk/include/net/sctp/command.h | 1 - trunk/include/net/sctp/structs.h | 2 +- trunk/include/trace/events/net.h | 12 +- trunk/kernel/rcutree.c | 54 +- trunk/kernel/rcutree_plugin.h | 11 +- trunk/kernel/time/clockevents.c | 5 +- trunk/kernel/timer.c | 15 +- trunk/lib/Kconfig.debug | 2 +- trunk/mm/filemap.c | 2 +- trunk/mm/hugetlb.c | 4 +- trunk/mm/page_alloc.c | 4 + trunk/net/8021q/vlan_dev.c | 2 +- trunk/net/bluetooth/l2cap_core.c | 2 +- trunk/net/caif/chnl_net.c | 9 +- trunk/net/core/dev.c | 7 +- trunk/net/ipv4/af_inet.c | 3 - trunk/net/ipv4/ip_options.c | 15 +- trunk/net/mac80211/mlme.c | 7 - trunk/net/mac80211/scan.c | 1 + trunk/net/packet/af_packet.c | 15 +- trunk/net/sctp/associola.c | 23 +- trunk/net/sctp/sm_sideeffect.c | 3 - trunk/net/sctp/sm_statefuns.c | 14 +- trunk/net/wireless/nl80211.c | 4 +- trunk/net/wireless/scan.c | 43 +- trunk/security/apparmor/lsm.c | 3 +- trunk/sound/pci/asihpi/hpidspcd.c | 2 +- trunk/sound/pci/fm801.c | 13 +- trunk/sound/pci/hda/patch_analog.c | 16 +- trunk/sound/soc/codecs/cx20442.c | 8 +- trunk/sound/soc/codecs/wm_hubs.c | 8 +- trunk/sound/soc/soc-dapm.c | 5 +- trunk/sound/usb/6fire/firmware.c | 1 - trunk/sound/usb/quirks.c | 2 +- trunk/tools/testing/ktest/ktest.pl | 8 +- trunk/tools/virtio/virtio_test.c | 19 +- trunk/virt/kvm/kvm_main.c | 15 +- 297 files changed, 2117 insertions(+), 3779 deletions(-) diff --git a/[refs] b/[refs] index 903cabe65862..b33d6211bc0c 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 12871a0bd67dd4db4418e1daafcd46e9d329ef10 +refs/heads/master: f6b07f45e2df42d63a0292dcd13aaaa18d6c01f7 diff --git a/trunk/CREDITS b/trunk/CREDITS index d78359f5f64d..a7ea8e343836 100644 --- a/trunk/CREDITS +++ b/trunk/CREDITS @@ -518,14 +518,6 @@ N: Zach Brown E: zab@zabbo.net D: maestro pci sound -M: David Brownell -D: Kernel engineer, mentor, and friend. Maintained USB EHCI and -D: gadget layers, SPI subsystem, GPIO subsystem, and more than a few -D: device drivers. His encouragement also helped many engineers get -D: started working on the Linux kernel. David passed away in early -D: 2011, and will be greatly missed. -W: https://lkml.org/lkml/2011/4/5/36 - N: Gary Brubaker E: xavyer@ix.netcom.com D: USB Serial Empeg Empeg-car Mark I/II Driver diff --git a/trunk/Documentation/kernel-parameters.txt b/trunk/Documentation/kernel-parameters.txt index d9a203b058f1..5438a2d7907f 100644 --- a/trunk/Documentation/kernel-parameters.txt +++ b/trunk/Documentation/kernel-parameters.txt @@ -999,10 +999,7 @@ bytes respectively. Such letter suffixes can also be entirely omitted. With this option on every unmap_single operation will result in a hardware IOTLB flush operation as opposed to batching them for performance. - sp_off [Default Off] - By default, super page will be supported if Intel IOMMU - has the capability. With this option, super page will - not be supported. + intremap= [X86-64, Intel-IOMMU] Format: { on (default) | off | nosid } on enable Interrupt Remapping (default) diff --git a/trunk/Documentation/virtual/lguest/Makefile b/trunk/Documentation/virtual/lguest/Makefile index 0ac34206f7a7..bebac6b4f332 100644 --- a/trunk/Documentation/virtual/lguest/Makefile +++ b/trunk/Documentation/virtual/lguest/Makefile @@ -1,5 +1,5 @@ # This creates the demonstration utility "lguest" which runs a Linux guest. -# Missing headers? Add "-I../../../include -I../../../arch/x86/include" +# Missing headers? Add "-I../../include -I../../arch/x86/include" CFLAGS:=-m32 -Wall -Wmissing-declarations -Wmissing-prototypes -O3 -U_FORTIFY_SOURCE all: lguest diff --git a/trunk/Documentation/virtual/lguest/lguest.c b/trunk/Documentation/virtual/lguest/lguest.c index cd9d6af61d07..d9da7e148538 100644 --- a/trunk/Documentation/virtual/lguest/lguest.c +++ b/trunk/Documentation/virtual/lguest/lguest.c @@ -49,7 +49,7 @@ #include #include #include -#include "../../../include/linux/lguest_launcher.h" +#include "../../include/linux/lguest_launcher.h" /*L:110 * We can ignore the 42 include files we need for this program, but I do want * to draw attention to the use of kernel-style types. @@ -135,6 +135,9 @@ struct device { /* Is it operational */ bool running; + /* Does Guest want an intrrupt on empty? */ + bool irq_on_empty; + /* Device-specific data. */ void *priv; }; @@ -634,7 +637,10 @@ static void trigger_irq(struct virtqueue *vq) /* If they don't want an interrupt, don't send one... */ if (vq->vring.avail->flags & VRING_AVAIL_F_NO_INTERRUPT) { - return; + /* ... unless they've asked us to force one on empty. */ + if (!vq->dev->irq_on_empty + || lg_last_avail(vq) != vq->vring.avail->idx) + return; } /* Send the Guest an interrupt tell them we used something up. */ @@ -1051,6 +1057,15 @@ static void create_thread(struct virtqueue *vq) close(vq->eventfd); } +static bool accepted_feature(struct device *dev, unsigned int bit) +{ + const u8 *features = get_feature_bits(dev) + dev->feature_len; + + if (dev->feature_len < bit / CHAR_BIT) + return false; + return features[bit / CHAR_BIT] & (1 << (bit % CHAR_BIT)); +} + static void start_device(struct device *dev) { unsigned int i; @@ -1064,6 +1079,8 @@ static void start_device(struct device *dev) verbose(" %02x", get_feature_bits(dev) [dev->feature_len+i]); + dev->irq_on_empty = accepted_feature(dev, VIRTIO_F_NOTIFY_ON_EMPTY); + for (vq = dev->vq; vq; vq = vq->next) { if (vq->service) create_thread(vq); @@ -1547,6 +1564,7 @@ static void setup_tun_net(char *arg) /* Set up the tun device. */ configure_device(ipfd, tapif, ip); + add_feature(dev, VIRTIO_F_NOTIFY_ON_EMPTY); /* Expect Guest to handle everything except UFO */ add_feature(dev, VIRTIO_NET_F_CSUM); add_feature(dev, VIRTIO_NET_F_GUEST_CSUM); diff --git a/trunk/MAINTAINERS b/trunk/MAINTAINERS index fb0294919adc..29801f760b6f 100644 --- a/trunk/MAINTAINERS +++ b/trunk/MAINTAINERS @@ -4252,7 +4252,8 @@ F: drivers/mmc/ F: include/linux/mmc/ MULTIMEDIA CARD (MMC) ETC. OVER SPI -S: Orphan +M: David Brownell +S: Odd Fixes F: drivers/mmc/host/mmc_spi.c F: include/linux/spi/mmc_spi.h @@ -4602,6 +4603,7 @@ F: drivers/media/video/omap3isp/* OMAP USB SUPPORT M: Felipe Balbi +M: David Brownell L: linux-usb@vger.kernel.org L: linux-omap@vger.kernel.org T: git git://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb.git @@ -5982,6 +5984,7 @@ F: Documentation/serial/specialix.txt F: drivers/staging/tty/specialix* SPI SUBSYSTEM +M: David Brownell M: Grant Likely L: spi-devel-general@lists.sourceforge.net Q: http://patchwork.kernel.org/project/spi-devel-general/list/ @@ -6429,8 +6432,9 @@ S: Maintained F: drivers/usb/misc/rio500* USB EHCI DRIVER +M: David Brownell L: linux-usb@vger.kernel.org -S: Orphan +S: Odd Fixes F: Documentation/usb/ehci.txt F: drivers/usb/host/ehci* @@ -6444,9 +6448,10 @@ S: Maintained F: drivers/media/video/et61x251/ USB GADGET/PERIPHERAL SUBSYSTEM +M: David Brownell L: linux-usb@vger.kernel.org W: http://www.linux-usb.org/gadget -S: Orphan +S: Maintained F: drivers/usb/gadget/ F: include/linux/usb/gadget* @@ -6487,8 +6492,9 @@ S: Maintained F: sound/usb/midi.* USB OHCI DRIVER +M: David Brownell L: linux-usb@vger.kernel.org -S: Orphan +S: Odd Fixes F: Documentation/usb/ohci.txt F: drivers/usb/host/ohci* diff --git a/trunk/Makefile b/trunk/Makefile index 0f1db8d90741..afb8e0d26f2c 100644 --- a/trunk/Makefile +++ b/trunk/Makefile @@ -1,7 +1,7 @@ VERSION = 3 PATCHLEVEL = 0 SUBLEVEL = 0 -EXTRAVERSION = -rc2 +EXTRAVERSION = -rc1 NAME = Sneaky Weasel # *DOCUMENTATION* diff --git a/trunk/arch/arm/mach-omap1/dma.c b/trunk/arch/arm/mach-omap1/dma.c index f5a52204b89f..d8559344c6e2 100644 --- a/trunk/arch/arm/mach-omap1/dma.c +++ b/trunk/arch/arm/mach-omap1/dma.c @@ -284,15 +284,14 @@ static int __init omap1_system_dma_init(void) dma_base = ioremap(res[0].start, resource_size(&res[0])); if (!dma_base) { pr_err("%s: Unable to ioremap\n", __func__); - ret = -ENODEV; - goto exit_device_put; + return -ENODEV; } ret = platform_device_add_resources(pdev, res, ARRAY_SIZE(res)); if (ret) { dev_err(&pdev->dev, "%s: Unable to add resources for %s%d\n", __func__, pdev->name, pdev->id); - goto exit_device_put; + goto exit_device_del; } p = kzalloc(sizeof(struct omap_system_dma_plat_info), GFP_KERNEL); @@ -300,7 +299,7 @@ static int __init omap1_system_dma_init(void) dev_err(&pdev->dev, "%s: Unable to allocate 'p' for %s\n", __func__, pdev->name); ret = -ENOMEM; - goto exit_device_del; + goto exit_device_put; } d = kzalloc(sizeof(struct omap_dma_dev_attr), GFP_KERNEL); @@ -381,10 +380,10 @@ static int __init omap1_system_dma_init(void) kfree(d); exit_release_p: kfree(p); -exit_device_del: - platform_device_del(pdev); exit_device_put: platform_device_put(pdev); +exit_device_del: + platform_device_del(pdev); return ret; } diff --git a/trunk/arch/arm/mach-omap2/board-2430sdp.c b/trunk/arch/arm/mach-omap2/board-2430sdp.c index 5de6eac0a725..d54969be0a54 100644 --- a/trunk/arch/arm/mach-omap2/board-2430sdp.c +++ b/trunk/arch/arm/mach-omap2/board-2430sdp.c @@ -26,13 +26,13 @@ #include #include #include -#include #include #include #include #include +#include #include #include #include diff --git a/trunk/arch/arm/mach-omap2/board-3430sdp.c b/trunk/arch/arm/mach-omap2/board-3430sdp.c index 5dac974be625..ae2963a98041 100644 --- a/trunk/arch/arm/mach-omap2/board-3430sdp.c +++ b/trunk/arch/arm/mach-omap2/board-3430sdp.c @@ -622,19 +622,19 @@ static struct omap_device_pad serial3_pads[] __initdata = { OMAP_MUX_MODE0), }; -static struct omap_board_data serial1_data __initdata = { +static struct omap_board_data serial1_data = { .id = 0, .pads = serial1_pads, .pads_cnt = ARRAY_SIZE(serial1_pads), }; -static struct omap_board_data serial2_data __initdata = { +static struct omap_board_data serial2_data = { .id = 1, .pads = serial2_pads, .pads_cnt = ARRAY_SIZE(serial2_pads), }; -static struct omap_board_data serial3_data __initdata = { +static struct omap_board_data serial3_data = { .id = 2, .pads = serial3_pads, .pads_cnt = ARRAY_SIZE(serial3_pads), diff --git a/trunk/arch/arm/mach-omap2/board-4430sdp.c b/trunk/arch/arm/mach-omap2/board-4430sdp.c index 63de2d396e2d..73fa90bb6953 100644 --- a/trunk/arch/arm/mach-omap2/board-4430sdp.c +++ b/trunk/arch/arm/mach-omap2/board-4430sdp.c @@ -258,7 +258,7 @@ static struct gpio sdp4430_eth_gpios[] __initdata = { { ETH_KS8851_IRQ, GPIOF_IN, "eth_irq" }, }; -static int __init omap_ethernet_init(void) +static int omap_ethernet_init(void) { int status; @@ -322,7 +322,6 @@ static struct omap2_hsmmc_info mmc[] = { .gpio_wp = -EINVAL, .nonremovable = true, .ocr_mask = MMC_VDD_29_30, - .no_off_init = true, }, { .mmc = 1, @@ -682,19 +681,19 @@ static struct omap_device_pad serial4_pads[] __initdata = { OMAP_PIN_OUTPUT | OMAP_MUX_MODE0), }; -static struct omap_board_data serial2_data __initdata = { +static struct omap_board_data serial2_data = { .id = 1, .pads = serial2_pads, .pads_cnt = ARRAY_SIZE(serial2_pads), }; -static struct omap_board_data serial3_data __initdata = { +static struct omap_board_data serial3_data = { .id = 2, .pads = serial3_pads, .pads_cnt = ARRAY_SIZE(serial3_pads), }; -static struct omap_board_data serial4_data __initdata = { +static struct omap_board_data serial4_data = { .id = 3, .pads = serial4_pads, .pads_cnt = ARRAY_SIZE(serial4_pads), @@ -730,7 +729,7 @@ static void __init omap_4430sdp_init(void) if (omap_rev() == OMAP4430_REV_ES1_0) package = OMAP_PACKAGE_CBL; - omap4_mux_init(board_mux, NULL, package); + omap4_mux_init(board_mux, package); omap_board_config = sdp4430_config; omap_board_config_size = ARRAY_SIZE(sdp4430_config); diff --git a/trunk/arch/arm/mach-omap2/board-apollon.c b/trunk/arch/arm/mach-omap2/board-apollon.c index b124bdfb4239..f3beb8eeef77 100644 --- a/trunk/arch/arm/mach-omap2/board-apollon.c +++ b/trunk/arch/arm/mach-omap2/board-apollon.c @@ -27,13 +27,13 @@ #include #include #include -#include #include #include #include #include +#include #include #include #include diff --git a/trunk/arch/arm/mach-omap2/board-cm-t35.c b/trunk/arch/arm/mach-omap2/board-cm-t35.c index 77456dec93ea..c63115bc1536 100644 --- a/trunk/arch/arm/mach-omap2/board-cm-t35.c +++ b/trunk/arch/arm/mach-omap2/board-cm-t35.c @@ -63,6 +63,8 @@ #define SB_T35_SMSC911X_CS 4 #define SB_T35_SMSC911X_GPIO 65 +#define NAND_BLOCK_SIZE SZ_128K + #if defined(CONFIG_SMSC911X) || defined(CONFIG_SMSC911X_MODULE) #include #include diff --git a/trunk/arch/arm/mach-omap2/board-cm-t3517.c b/trunk/arch/arm/mach-omap2/board-cm-t3517.c index c3a9fd35034a..08f08e812492 100644 --- a/trunk/arch/arm/mach-omap2/board-cm-t3517.c +++ b/trunk/arch/arm/mach-omap2/board-cm-t3517.c @@ -48,7 +48,6 @@ #include "mux.h" #include "control.h" -#include "common-board-devices.h" #if defined(CONFIG_LEDS_GPIO) || defined(CONFIG_LEDS_GPIO_MODULE) static struct gpio_led cm_t3517_leds[] = { @@ -178,7 +177,7 @@ static struct usbhs_omap_board_data cm_t3517_ehci_pdata __initdata = { .reset_gpio_port[2] = -EINVAL, }; -static int __init cm_t3517_init_usbh(void) +static int cm_t3517_init_usbh(void) { int err; @@ -204,6 +203,8 @@ static inline int cm_t3517_init_usbh(void) #endif #if defined(CONFIG_MTD_NAND_OMAP2) || defined(CONFIG_MTD_NAND_OMAP2_MODULE) +#define NAND_BLOCK_SIZE SZ_128K + static struct mtd_partition cm_t3517_nand_partitions[] = { { .name = "xloader", diff --git a/trunk/arch/arm/mach-omap2/board-devkit8000.c b/trunk/arch/arm/mach-omap2/board-devkit8000.c index 34956ec83296..cf520d7dd614 100644 --- a/trunk/arch/arm/mach-omap2/board-devkit8000.c +++ b/trunk/arch/arm/mach-omap2/board-devkit8000.c @@ -61,6 +61,8 @@ #include "timer-gp.h" #include "common-board-devices.h" +#define NAND_BLOCK_SIZE SZ_128K + #define OMAP_DM9000_GPIO_IRQ 25 #define OMAP3_DEVKIT_TS_GPIO 27 diff --git a/trunk/arch/arm/mach-omap2/board-omap3beagle.c b/trunk/arch/arm/mach-omap2/board-omap3beagle.c index 7f21d24bd437..be71426359f2 100644 --- a/trunk/arch/arm/mach-omap2/board-omap3beagle.c +++ b/trunk/arch/arm/mach-omap2/board-omap3beagle.c @@ -54,6 +54,8 @@ #include "pm.h" #include "common-board-devices.h" +#define NAND_BLOCK_SIZE SZ_128K + /* * OMAP3 Beagle revision * Run time detection of Beagle revision is done by reading GPIO. @@ -104,9 +106,6 @@ static void __init omap3_beagle_init_rev(void) beagle_rev = gpio_get_value(171) | (gpio_get_value(172) << 1) | (gpio_get_value(173) << 2); - gpio_free_array(omap3_beagle_rev_gpios, - ARRAY_SIZE(omap3_beagle_rev_gpios)); - switch (beagle_rev) { case 7: printk(KERN_INFO "OMAP3 Beagle Rev: Ax/Bx\n"); @@ -580,9 +579,6 @@ static void __init omap3_beagle_init(void) omap_nand_flash_init(NAND_BUSWIDTH_16, omap3beagle_nand_partitions, ARRAY_SIZE(omap3beagle_nand_partitions)); - /* Ensure msecure is mux'd to be able to set the RTC. */ - omap_mux_init_signal("sys_drm_msecure", OMAP_PIN_OFF_OUTPUT_HIGH); - /* Ensure SDRC pins are mux'd for self-refresh */ omap_mux_init_signal("sdrc_cke0", OMAP_PIN_OUTPUT); omap_mux_init_signal("sdrc_cke1", OMAP_PIN_OUTPUT); diff --git a/trunk/arch/arm/mach-omap2/board-omap3pandora.c b/trunk/arch/arm/mach-omap2/board-omap3pandora.c index 2a0bb4818cae..1d10736c6d3c 100644 --- a/trunk/arch/arm/mach-omap2/board-omap3pandora.c +++ b/trunk/arch/arm/mach-omap2/board-omap3pandora.c @@ -30,7 +30,6 @@ #include #include #include -#include #include #include #include @@ -42,6 +41,7 @@ #include #include +#include #include #include #include @@ -57,6 +57,8 @@ #define PANDORA_WIFI_NRESET_GPIO 23 #define OMAP3_PANDORA_TS_GPIO 94 +#define NAND_BLOCK_SIZE SZ_128K + static struct mtd_partition omap3pandora_nand_partitions[] = { { .name = "xloader", diff --git a/trunk/arch/arm/mach-omap2/board-omap3touchbook.c b/trunk/arch/arm/mach-omap2/board-omap3touchbook.c index 5f649faf7377..82872d7d313b 100644 --- a/trunk/arch/arm/mach-omap2/board-omap3touchbook.c +++ b/trunk/arch/arm/mach-omap2/board-omap3touchbook.c @@ -56,6 +56,8 @@ #include +#define NAND_BLOCK_SIZE SZ_128K + #define OMAP3_AC_GPIO 136 #define OMAP3_TS_GPIO 162 #define TB_BL_PWM_TIMER 9 diff --git a/trunk/arch/arm/mach-omap2/board-omap4panda.c b/trunk/arch/arm/mach-omap2/board-omap4panda.c index 0cfe2005cb50..90485fced973 100644 --- a/trunk/arch/arm/mach-omap2/board-omap4panda.c +++ b/trunk/arch/arm/mach-omap2/board-omap4panda.c @@ -526,19 +526,19 @@ static struct omap_device_pad serial4_pads[] __initdata = { OMAP_PIN_OUTPUT | OMAP_MUX_MODE0), }; -static struct omap_board_data serial2_data __initdata = { +static struct omap_board_data serial2_data = { .id = 1, .pads = serial2_pads, .pads_cnt = ARRAY_SIZE(serial2_pads), }; -static struct omap_board_data serial3_data __initdata = { +static struct omap_board_data serial3_data = { .id = 2, .pads = serial3_pads, .pads_cnt = ARRAY_SIZE(serial3_pads), }; -static struct omap_board_data serial4_data __initdata = { +static struct omap_board_data serial4_data = { .id = 3, .pads = serial4_pads, .pads_cnt = ARRAY_SIZE(serial4_pads), @@ -687,7 +687,7 @@ static void __init omap4_panda_init(void) if (omap_rev() == OMAP4430_REV_ES1_0) package = OMAP_PACKAGE_CBL; - omap4_mux_init(board_mux, NULL, package); + omap4_mux_init(board_mux, package); if (wl12xx_set_platform_data(&omap_panda_wlan_data)) pr_err("error setting wl12xx data\n"); diff --git a/trunk/arch/arm/mach-omap2/board-overo.c b/trunk/arch/arm/mach-omap2/board-overo.c index 175e1ab2b04d..1555918e3ffa 100644 --- a/trunk/arch/arm/mach-omap2/board-overo.c +++ b/trunk/arch/arm/mach-omap2/board-overo.c @@ -24,7 +24,6 @@ #include #include #include -#include #include #include #include @@ -46,6 +45,7 @@ #include #include