From 12199e5fd5601b1c752bdea65b76a54775496099 Mon Sep 17 00:00:00 2001 From: Linus Torvalds Date: Wed, 31 Aug 2011 15:08:19 -0700 Subject: [PATCH] --- yaml --- r: 263615 b: refs/heads/master c: b79c4f75e4d3fbfd225660c12f29a7fafcd8e6d9 h: refs/heads/master i: 263613: c912d6e46a180212385c85f25099a10e08b18ed0 263611: f9c279777b058d592150729631324153de33212c 263607: be5e128893497c7cf8f97961875abba26f9a8286 263599: 3c1a7c63c466e98d16c1ad3736d33f3a1dd45f6b 263583: f7871deb2b61ae84423c64d87ea2c5c5572d4152 263551: 484d3ceff5e384afaf97787c7c936ae8dcd2e66f v: v3 --- [refs] | 2 +- trunk/Documentation/networking/00-INDEX | 116 ++++++++ trunk/Documentation/networking/ip-sysctl.txt | 2 +- trunk/Documentation/networking/scaling.txt | 23 +- trunk/Documentation/power/runtime_pm.txt | 3 +- trunk/MAINTAINERS | 15 +- trunk/Makefile | 2 +- trunk/arch/alpha/include/asm/sysinfo.h | 9 - trunk/arch/alpha/include/asm/thread_info.h | 8 +- trunk/arch/alpha/kernel/osf_sys.c | 12 +- trunk/arch/alpha/kernel/systbls.S | 2 +- trunk/arch/arm/Kconfig | 12 + trunk/arch/arm/boot/compressed/mmcif-sh7372.c | 2 +- trunk/arch/arm/boot/compressed/sdhi-sh7372.c | 2 +- .../arm/include/asm/hardware/cache-l2x0.h | 2 +- trunk/arch/arm/include/asm/pmu.h | 10 +- trunk/arch/arm/kernel/calls.S | 2 +- trunk/arch/arm/kernel/pmu.c | 26 +- trunk/arch/arm/kernel/relocate_kernel.S | 3 +- trunk/arch/arm/kernel/setup.c | 15 +- trunk/arch/arm/kernel/smp_twd.c | 4 +- trunk/arch/arm/mach-at91/at91sam9261.c | 2 +- .../arm/mach-ep93xx/include/mach/ts72xx.h | 26 +- trunk/arch/arm/mach-exynos4/clock.c | 2 +- trunk/arch/arm/mach-exynos4/cpu.c | 11 +- .../arch/arm/mach-exynos4/include/mach/irqs.h | 5 +- .../arm/mach-exynos4/include/mach/regs-pmu.h | 2 + trunk/arch/arm/mach-exynos4/irq-eint.c | 7 + .../arm/mach-exynos4/mach-universal_c210.c | 4 +- trunk/arch/arm/mach-exynos4/setup-usb-phy.c | 2 +- trunk/arch/arm/mach-footbridge/Kconfig | 1 + trunk/arch/arm/mach-footbridge/dc21285.c | 1 + trunk/arch/arm/mach-imx/mach-cpuimx27.c | 2 +- trunk/arch/arm/mach-imx/mach-cpuimx35.c | 2 +- .../arch/arm/mach-imx/mach-eukrea_cpuimx25.c | 2 +- trunk/arch/arm/mach-orion5x/dns323-setup.c | 2 +- trunk/arch/arm/mach-orion5x/pci.c | 1 + .../arm/mach-realview/include/mach/system.h | 1 + trunk/arch/arm/mach-s3c64xx/pm.c | 1 + trunk/arch/arm/mach-s5p64x0/irq-eint.c | 2 +- trunk/arch/arm/mach-s5pv210/pm.c | 2 +- trunk/arch/arm/mach-shmobile/board-ag5evm.c | 3 +- trunk/arch/arm/mach-shmobile/board-ap4evb.c | 1 + trunk/arch/arm/mach-shmobile/board-mackerel.c | 5 + trunk/arch/arm/mach-shmobile/clock-sh7372.c | 31 +- trunk/arch/arm/mach-shmobile/clock-sh73a0.c | 2 +- .../arm/mach-shmobile/include/mach/sh7372.h | 4 + trunk/arch/arm/mach-shmobile/intc-sh7372.c | 7 +- trunk/arch/arm/mach-shmobile/setup-sh7372.c | 176 ++++++++++- trunk/arch/arm/mach-vexpress/v2m.c | 7 + trunk/arch/arm/mm/proc-arm920.S | 2 +- trunk/arch/arm/mm/proc-arm926.S | 2 +- trunk/arch/arm/mm/proc-sa1100.S | 10 +- trunk/arch/arm/mm/proc-v6.S | 16 + trunk/arch/arm/mm/proc-v7.S | 6 +- trunk/arch/arm/mm/proc-xsc3.S | 6 +- trunk/arch/arm/plat-omap/omap_device.c | 3 +- trunk/arch/arm/plat-s5p/clock.c | 2 +- trunk/arch/arm/plat-s5p/irq-gpioint.c | 6 + .../arm/plat-samsung/include/plat/backlight.h | 2 +- trunk/arch/arm/plat-samsung/irq-vic-timer.c | 5 + trunk/arch/arm/tools/mach-types | 6 +- trunk/arch/avr32/kernel/syscall_table.S | 2 +- trunk/arch/blackfin/mach-common/entry.S | 2 +- trunk/arch/cris/arch-v10/kernel/entry.S | 2 +- trunk/arch/cris/arch-v32/kernel/entry.S | 2 +- trunk/arch/cris/include/asm/serial.h | 9 + trunk/arch/frv/kernel/entry.S | 2 +- trunk/arch/h8300/kernel/syscalls.S | 2 +- trunk/arch/ia64/kernel/entry.S | 2 +- trunk/arch/m32r/kernel/syscall_table.S | 2 +- trunk/arch/m68k/include/asm/page_mm.h | 2 +- trunk/arch/m68k/kernel/syscalltable.S | 2 +- trunk/arch/microblaze/kernel/syscall_table.S | 2 +- trunk/arch/mips/kernel/scall32-o32.S | 2 +- trunk/arch/mips/kernel/scall64-64.S | 2 +- trunk/arch/mips/kernel/scall64-n32.S | 2 +- trunk/arch/mips/kernel/scall64-o32.S | 2 +- trunk/arch/mn10300/kernel/entry.S | 2 +- trunk/arch/parisc/kernel/syscall_table.S | 2 +- trunk/arch/powerpc/boot/dts/p1023rds.dts | 2 +- .../powerpc/configs/85xx/p1023rds_defconfig | 1 + .../powerpc/configs/corenet32_smp_defconfig | 1 + .../powerpc/configs/corenet64_smp_defconfig | 5 +- trunk/arch/powerpc/configs/mpc85xx_defconfig | 1 + .../powerpc/configs/mpc85xx_smp_defconfig | 1 + trunk/arch/powerpc/include/asm/systbl.h | 2 +- trunk/arch/powerpc/sysdev/fsl_rio.c | 5 +- trunk/arch/s390/kernel/compat_wrapper.S | 6 - trunk/arch/s390/kernel/early.c | 14 +- trunk/arch/s390/kernel/ipl.c | 7 +- trunk/arch/s390/kernel/syscalls.S | 2 +- trunk/arch/sh/include/asm/ptrace.h | 2 +- trunk/arch/sh/kernel/cpu/sh4a/setup-sh7757.c | 1 + trunk/arch/sh/kernel/idle.c | 2 +- trunk/arch/sh/kernel/syscalls_32.S | 2 +- trunk/arch/sh/kernel/syscalls_64.S | 2 +- trunk/arch/sh/kernel/traps_32.c | 37 +++ trunk/arch/sparc/include/asm/sigcontext.h | 14 + trunk/arch/sparc/kernel/Makefile | 1 + trunk/arch/sparc/kernel/irq.h | 2 +- trunk/arch/sparc/kernel/setup_64.c | 10 +- trunk/arch/sparc/kernel/signal32.c | 184 +++++++----- trunk/arch/sparc/kernel/signal_32.c | 172 +++++------ trunk/arch/sparc/kernel/signal_64.c | 108 +++---- trunk/arch/sparc/kernel/sigutil.h | 9 + trunk/arch/sparc/kernel/sigutil_32.c | 120 ++++++++ trunk/arch/sparc/kernel/sigutil_64.c | 93 ++++++ trunk/arch/sparc/kernel/sys32.S | 1 - trunk/arch/sparc/kernel/systbls_32.S | 2 +- trunk/arch/sparc/kernel/systbls_64.S | 4 +- trunk/arch/x86/ia32/ia32entry.S | 2 +- trunk/arch/x86/include/asm/unistd_64.h | 2 +- trunk/arch/x86/kernel/apic/x2apic_uv_x.c | 1 - trunk/arch/x86/kernel/cpu/mtrr/main.c | 2 - trunk/arch/x86/kernel/entry_32.S | 8 +- trunk/arch/x86/kernel/syscall_table_32.S | 2 +- trunk/arch/x86/platform/mrst/mrst.c | 4 +- trunk/arch/x86/platform/olpc/olpc.c | 4 +- trunk/arch/x86/vdso/vdso32/sysenter.S | 2 +- trunk/arch/xtensa/include/asm/unistd.h | 2 +- trunk/drivers/base/devres.c | 1 + trunk/drivers/base/devtmpfs.c | 2 +- trunk/drivers/base/firmware_class.c | 11 +- trunk/drivers/base/platform.c | 2 +- trunk/drivers/base/power/clock_ops.c | 40 +-- trunk/drivers/bcma/main.c | 12 + trunk/drivers/bluetooth/ath3k.c | 1 + trunk/drivers/bluetooth/btusb.c | 13 +- trunk/drivers/char/msm_smd_pkt.c | 5 +- trunk/drivers/clocksource/sh_cmt.c | 34 ++- trunk/drivers/firewire/sbp2.c | 4 + trunk/drivers/firmware/google/gsmi.c | 2 +- trunk/drivers/gpu/drm/drm_crtc.c | 2 + trunk/drivers/gpu/drm/i915/intel_display.c | 4 +- trunk/drivers/gpu/drm/radeon/evergreen.c | 1 + trunk/drivers/gpu/drm/radeon/ni.c | 1 + trunk/drivers/gpu/drm/radeon/radeon_combios.c | 8 + .../gpu/drm/radeon/radeon_connectors.c | 10 + trunk/drivers/gpu/drm/radeon/radeon_device.c | 2 + trunk/drivers/gpu/drm/radeon/radeon_test.c | 34 ++- trunk/drivers/gpu/drm/radeon/radeon_ttm.c | 23 ++ trunk/drivers/gpu/drm/ttm/ttm_bo.c | 14 +- trunk/drivers/gpu/drm/ttm/ttm_bo_util.c | 2 +- trunk/drivers/hid/Kconfig | 1 + trunk/drivers/hid/hid-apple.c | 6 + trunk/drivers/hid/hid-core.c | 3 + trunk/drivers/hid/hid-ids.h | 6 + trunk/drivers/hid/hid-wiimote.c | 277 ++++++++++++------ trunk/drivers/hid/usbhid/hid-quirks.c | 1 + trunk/drivers/hwmon/i5k_amb.c | 42 +-- trunk/drivers/hwmon/ntc_thermistor.c | 3 +- trunk/drivers/i2c/busses/i2c-nomadik.c | 9 +- trunk/drivers/i2c/busses/i2c-omap.c | 29 -- trunk/drivers/input/joystick/analog.c | 2 +- trunk/drivers/input/keyboard/ep93xx_keypad.c | 1 + trunk/drivers/input/keyboard/tegra-kbc.c | 2 +- trunk/drivers/input/misc/ad714x-i2c.c | 81 +++-- trunk/drivers/input/misc/ad714x-spi.c | 68 ++++- trunk/drivers/input/misc/ad714x.c | 116 +++----- trunk/drivers/input/misc/ad714x.h | 35 ++- trunk/drivers/input/misc/mma8450.c | 2 +- trunk/drivers/input/misc/mpu3050.c | 2 +- trunk/drivers/input/mouse/bcm5974.c | 40 +++ trunk/drivers/input/tablet/wacom_sys.c | 17 +- trunk/drivers/input/tablet/wacom_wac.c | 4 + .../drivers/input/touchscreen/atmel_mxt_ts.c | 12 + trunk/drivers/input/touchscreen/max11801_ts.c | 3 +- .../drivers/input/touchscreen/tnetv107x-ts.c | 1 + trunk/drivers/leds/leds-ams-delta.c | 1 + trunk/drivers/leds/leds-bd2802.c | 5 + trunk/drivers/leds/leds-hp6xx.c | 1 + trunk/drivers/md/linear.h | 2 +- trunk/drivers/md/md.c | 16 +- trunk/drivers/md/raid5.c | 2 +- trunk/drivers/misc/Kconfig | 1 + trunk/drivers/misc/ab8500-pwm.c | 2 +- trunk/drivers/misc/fsa9480.c | 4 +- trunk/drivers/misc/pti.c | 2 + trunk/drivers/misc/ti-st/st_core.c | 10 +- trunk/drivers/misc/ti-st/st_kim.c | 33 +++ trunk/drivers/misc/ti-st/st_ll.c | 19 ++ trunk/drivers/net/bonding/bond_main.c | 18 ++ trunk/drivers/net/can/sja1000/plx_pci.c | 4 +- trunk/drivers/net/can/ti_hecc.c | 3 +- trunk/drivers/net/cassini.c | 3 +- trunk/drivers/net/e1000e/e1000.h | 4 + trunk/drivers/net/e1000e/ich8lan.c | 65 +++- trunk/drivers/net/e1000e/netdev.c | 80 ++++- trunk/drivers/net/forcedeth.c | 3 +- trunk/drivers/net/gianfar.c | 9 +- trunk/drivers/net/gianfar_ethtool.c | 26 +- trunk/drivers/net/ibmveth.c | 12 +- trunk/drivers/net/ixgbe/ixgbe_main.c | 4 +- trunk/drivers/net/phy/national.c | 17 +- trunk/drivers/net/rionet.c | 23 +- trunk/drivers/net/sh_eth.c | 2 + trunk/drivers/net/usb/cdc_ncm.c | 47 ++- trunk/drivers/net/via-velocity.c | 4 - trunk/drivers/net/vmxnet3/vmxnet3_drv.c | 34 ++- .../net/wireless/ath/ath9k/ar9003_eeprom.c | 2 +- trunk/drivers/net/wireless/ath/ath9k/main.c | 4 + .../drivers/net/wireless/ath/carl9170/main.c | 4 +- trunk/drivers/net/wireless/iwlwifi/iwl-pci.c | 25 +- trunk/drivers/net/wireless/rt2x00/rt2800usb.c | 20 +- trunk/drivers/net/wireless/rt2x00/rt2x00usb.c | 31 +- trunk/drivers/net/wireless/wl12xx/acx.c | 6 +- trunk/drivers/net/wireless/wl12xx/main.c | 1 + trunk/drivers/net/wireless/wl12xx/sdio.c | 2 +- trunk/drivers/net/wireless/wl12xx/testmode.c | 50 +--- trunk/drivers/power/max8997_charger.c | 1 + trunk/drivers/power/max8998_charger.c | 1 + trunk/drivers/power/s3c_adc_battery.c | 1 + trunk/drivers/rapidio/rio-scan.c | 3 +- trunk/drivers/rtc/rtc-s3c.c | 79 ++--- trunk/drivers/s390/block/dasd_ioctl.c | 10 +- trunk/drivers/s390/char/sclp_cmd.c | 6 +- trunk/drivers/sh/intc/chip.c | 3 + .../drivers/staging/brcm80211/brcmsmac/otp.c | 1 + .../staging/brcm80211/brcmsmac/types.h | 1 + trunk/drivers/staging/octeon/ethernet-rgmii.c | 1 + trunk/drivers/staging/octeon/ethernet-spi.c | 1 + .../staging/tidspbridge/core/dsp-clock.c | 1 - trunk/drivers/staging/zcache/tmem.c | 2 +- trunk/drivers/staging/zcache/zcache-main.c | 8 +- trunk/drivers/target/iscsi/iscsi_target.c | 1 - .../target/iscsi/iscsi_target_configfs.c | 4 +- .../drivers/target/iscsi/iscsi_target_erl1.c | 2 +- .../drivers/target/iscsi/iscsi_target_login.c | 16 +- .../target/iscsi/iscsi_target_parameters.c | 43 +-- .../drivers/target/iscsi/iscsi_target_util.c | 4 +- trunk/drivers/target/target_core_cdb.c | 57 ++-- trunk/drivers/target/target_core_device.c | 48 ++- .../target/target_core_fabric_configfs.c | 2 +- trunk/drivers/target/target_core_pr.c | 8 +- trunk/drivers/target/target_core_rd.c | 24 +- trunk/drivers/target/target_core_tpg.c | 64 ++-- trunk/drivers/target/target_core_transport.c | 206 +++++++------ trunk/drivers/target/tcm_fc/tfc_conf.c | 6 +- trunk/drivers/tty/pty.c | 17 +- trunk/drivers/tty/serial/8250.c | 8 +- trunk/drivers/tty/serial/8250_pci.c | 11 +- trunk/drivers/tty/serial/8250_pnp.c | 3 + trunk/drivers/tty/serial/atmel_serial.c | 8 +- trunk/drivers/tty/serial/max3107-aava.c | 2 +- trunk/drivers/tty/serial/max3107.c | 2 +- trunk/drivers/tty/serial/mrst_max3110.c | 2 +- trunk/drivers/tty/serial/omap-serial.c | 3 +- trunk/drivers/tty/serial/pch_uart.c | 3 +- trunk/drivers/tty/serial/samsung.c | 8 +- trunk/drivers/tty/serial/serial_core.c | 5 + trunk/drivers/tty/serial/sh-sci.c | 72 ++++- trunk/drivers/tty/serial/ucc_uart.c | 2 +- trunk/drivers/tty/tty_io.c | 3 +- trunk/drivers/usb/core/hcd.c | 2 + trunk/drivers/usb/gadget/f_phonet.c | 1 + trunk/drivers/usb/host/ehci-hub.c | 7 +- trunk/drivers/usb/host/ehci-s5p.c | 1 + trunk/drivers/usb/host/xhci-hub.c | 17 +- trunk/drivers/usb/host/xhci-ring.c | 90 ++++-- trunk/drivers/usb/host/xhci.c | 28 +- trunk/drivers/usb/musb/blackfin.c | 1 + trunk/drivers/usb/musb/cppi_dma.c | 26 +- trunk/drivers/usb/musb/musb_core.h | 12 +- trunk/drivers/usb/musb/musb_gadget.c | 4 +- trunk/drivers/usb/musb/musb_regs.h | 6 +- trunk/drivers/usb/musb/tusb6010.c | 1 + trunk/drivers/usb/musb/tusb6010_omap.c | 1 + trunk/drivers/usb/musb/ux500_dma.c | 38 +-- trunk/drivers/usb/serial/ftdi_sio.c | 20 +- trunk/drivers/usb/serial/option.c | 104 ++++++- trunk/drivers/video/backlight/adp8870_bl.c | 2 +- trunk/drivers/video/backlight/ep93xx_bl.c | 2 +- trunk/drivers/video/backlight/pwm_bl.c | 9 + trunk/drivers/w1/masters/ds2490.c | 4 +- trunk/drivers/w1/masters/matrox_w1.c | 4 +- trunk/drivers/w1/slaves/w1_ds2408.c | 2 +- trunk/drivers/w1/slaves/w1_smem.c | 4 +- trunk/drivers/w1/slaves/w1_therm.c | 4 +- trunk/drivers/w1/w1.c | 4 +- trunk/drivers/w1/w1.h | 2 +- trunk/drivers/w1/w1_family.c | 2 +- trunk/drivers/w1/w1_family.h | 2 +- trunk/drivers/w1/w1_int.c | 2 +- trunk/drivers/w1/w1_int.h | 2 +- trunk/drivers/w1/w1_io.c | 2 +- trunk/drivers/w1/w1_log.h | 2 +- trunk/drivers/w1/w1_netlink.c | 2 +- trunk/drivers/w1/w1_netlink.h | 2 +- trunk/fs/compat.c | 5 - trunk/fs/fuse/dev.c | 4 + trunk/fs/fuse/file.c | 84 +----- trunk/fs/fuse/fuse_i.h | 8 +- trunk/fs/fuse/inode.c | 10 +- trunk/fs/hugetlbfs/inode.c | 1 + trunk/fs/inode.c | 24 +- trunk/fs/xfs/Makefile | 119 ++++---- trunk/fs/xfs/{linux-2.6 => }/kmem.c | 0 trunk/fs/xfs/{linux-2.6 => }/kmem.h | 0 trunk/fs/xfs/{linux-2.6 => }/mrlock.h | 0 trunk/fs/xfs/{linux-2.6 => }/time.h | 0 trunk/fs/xfs/{support => }/uuid.c | 0 trunk/fs/xfs/{support => }/uuid.h | 0 trunk/fs/xfs/xfs.h | 3 +- trunk/fs/xfs/{linux-2.6 => }/xfs_acl.c | 0 trunk/fs/xfs/{linux-2.6 => }/xfs_aops.c | 0 trunk/fs/xfs/{linux-2.6 => }/xfs_aops.h | 0 trunk/fs/xfs/{linux-2.6 => }/xfs_buf.c | 0 trunk/fs/xfs/{linux-2.6 => }/xfs_buf.h | 0 trunk/fs/xfs/{linux-2.6 => }/xfs_discard.c | 0 trunk/fs/xfs/{linux-2.6 => }/xfs_discard.h | 0 trunk/fs/xfs/{quota => }/xfs_dquot.c | 0 trunk/fs/xfs/{quota => }/xfs_dquot.h | 0 trunk/fs/xfs/{quota => }/xfs_dquot_item.c | 0 trunk/fs/xfs/{quota => }/xfs_dquot_item.h | 0 trunk/fs/xfs/{linux-2.6 => }/xfs_export.c | 0 trunk/fs/xfs/{linux-2.6 => }/xfs_export.h | 0 trunk/fs/xfs/{linux-2.6 => }/xfs_file.c | 0 trunk/fs/xfs/{linux-2.6 => }/xfs_fs_subr.c | 0 trunk/fs/xfs/{linux-2.6 => }/xfs_globals.c | 0 trunk/fs/xfs/{linux-2.6 => }/xfs_ioctl.c | 0 trunk/fs/xfs/{linux-2.6 => }/xfs_ioctl.h | 0 trunk/fs/xfs/{linux-2.6 => }/xfs_ioctl32.c | 0 trunk/fs/xfs/{linux-2.6 => }/xfs_ioctl32.h | 0 trunk/fs/xfs/{linux-2.6 => }/xfs_iops.c | 0 trunk/fs/xfs/{linux-2.6 => }/xfs_iops.h | 0 trunk/fs/xfs/{linux-2.6 => }/xfs_linux.h | 27 +- trunk/fs/xfs/{linux-2.6 => }/xfs_message.c | 0 trunk/fs/xfs/{linux-2.6 => }/xfs_message.h | 0 trunk/fs/xfs/{quota => }/xfs_qm.c | 0 trunk/fs/xfs/{quota => }/xfs_qm.h | 0 trunk/fs/xfs/{quota => }/xfs_qm_bhv.c | 0 trunk/fs/xfs/{quota => }/xfs_qm_stats.c | 0 trunk/fs/xfs/{quota => }/xfs_qm_stats.h | 0 trunk/fs/xfs/{quota => }/xfs_qm_syscalls.c | 0 trunk/fs/xfs/{quota => }/xfs_quota_priv.h | 0 trunk/fs/xfs/{linux-2.6 => }/xfs_quotaops.c | 2 +- trunk/fs/xfs/{linux-2.6 => }/xfs_stats.c | 0 trunk/fs/xfs/{linux-2.6 => }/xfs_stats.h | 0 trunk/fs/xfs/{linux-2.6 => }/xfs_super.c | 0 trunk/fs/xfs/{linux-2.6 => }/xfs_super.h | 0 trunk/fs/xfs/{linux-2.6 => }/xfs_sync.c | 0 trunk/fs/xfs/{linux-2.6 => }/xfs_sync.h | 0 trunk/fs/xfs/{linux-2.6 => }/xfs_sysctl.c | 0 trunk/fs/xfs/{linux-2.6 => }/xfs_sysctl.h | 0 trunk/fs/xfs/{linux-2.6 => }/xfs_trace.c | 4 +- trunk/fs/xfs/{linux-2.6 => }/xfs_trace.h | 0 trunk/fs/xfs/{quota => }/xfs_trans_dquot.c | 0 trunk/fs/xfs/{linux-2.6 => }/xfs_vnode.h | 0 trunk/fs/xfs/{linux-2.6 => }/xfs_xattr.c | 0 trunk/include/asm-generic/unistd.h | 2 +- trunk/include/linux/compat.h | 1 - trunk/include/linux/connector.h | 2 +- trunk/include/linux/fs.h | 5 + trunk/include/linux/fuse.h | 9 +- trunk/include/linux/personality.h | 1 + trunk/include/linux/pwm_backlight.h | 1 + trunk/include/linux/rio_regs.h | 18 +- trunk/include/linux/syscalls.h | 3 - trunk/include/linux/ti_wilink_st.h | 27 +- trunk/include/linux/tty.h | 2 + trunk/include/linux/tty_driver.h | 3 + trunk/include/linux/writeback.h | 11 - trunk/include/net/cfg80211.h | 3 + trunk/include/target/target_core_fabric_ops.h | 6 + trunk/kernel/irq/manage.c | 1 - trunk/kernel/printk.c | 2 +- trunk/kernel/sys.c | 38 +++ trunk/kernel/sys_ni.c | 1 - trunk/kernel/sysctl_binary.c | 2 +- trunk/kernel/sysctl_check.c | 2 +- trunk/lib/Makefile | 4 +- trunk/mm/memcontrol.c | 26 +- trunk/mm/page-writeback.c | 15 +- trunk/mm/vmscan.c | 19 +- trunk/net/8021q/vlan_core.c | 2 + trunk/net/atm/br2684.c | 7 +- trunk/net/bluetooth/af_bluetooth.c | 6 +- trunk/net/bluetooth/bnep/bnep.h | 1 + trunk/net/bluetooth/bnep/core.c | 13 +- trunk/net/bluetooth/cmtp/capi.c | 3 +- trunk/net/bluetooth/cmtp/cmtp.h | 1 + trunk/net/bluetooth/cmtp/core.c | 20 +- trunk/net/bluetooth/hci_core.c | 8 +- trunk/net/bluetooth/hidp/core.c | 19 +- trunk/net/bluetooth/l2cap_core.c | 6 +- trunk/net/bluetooth/l2cap_sock.c | 30 +- trunk/net/bluetooth/rfcomm/core.c | 17 +- trunk/net/bluetooth/rfcomm/sock.c | 28 +- trunk/net/bluetooth/sco.c | 28 +- trunk/net/bridge/br_if.c | 6 +- trunk/net/bridge/br_multicast.c | 21 +- trunk/net/core/neighbour.c | 8 +- trunk/net/core/netpoll.c | 4 +- trunk/net/ipv4/igmp.c | 2 +- trunk/net/ipv6/ipv6_sockglue.c | 9 +- trunk/net/ipv6/mcast.c | 2 +- trunk/net/ipv6/sit.c | 3 + trunk/net/mac80211/main.c | 2 +- trunk/net/sched/act_mirred.c | 3 +- trunk/net/socket.c | 10 +- trunk/net/wireless/core.c | 7 + trunk/net/wireless/sysfs.c | 6 +- trunk/scripts/checkpatch.pl | 3 +- trunk/scripts/get_maintainer.pl | 2 +- trunk/sound/pci/hda/patch_conexant.c | 57 ++-- trunk/sound/pci/hda/patch_realtek.c | 28 +- trunk/sound/soc/blackfin/bf5xx-ad193x.c | 2 +- trunk/sound/soc/codecs/ad193x.c | 11 +- trunk/sound/soc/codecs/ad193x.h | 5 +- trunk/sound/soc/codecs/sta32x.c | 1 + trunk/sound/soc/codecs/wm8962.c | 12 +- trunk/sound/soc/codecs/wm8996.c | 28 +- trunk/sound/soc/ep93xx/ep93xx-i2s.c | 5 +- trunk/sound/soc/fsl/fsl_dma.c | 2 + trunk/sound/soc/fsl/mpc8610_hpcd.c | 18 +- trunk/sound/soc/fsl/p1022_ds.c | 4 +- trunk/sound/soc/kirkwood/kirkwood-i2s.c | 2 +- trunk/sound/soc/omap/ams-delta.c | 6 +- trunk/sound/soc/samsung/Kconfig | 1 + trunk/sound/soc/samsung/h1940_uda1380.c | 1 + trunk/sound/soc/samsung/rx1950_uda1380.c | 1 + trunk/sound/soc/samsung/speyside_wm8962.c | 6 + trunk/sound/soc/soc-core.c | 2 +- trunk/sound/soc/soc-io.c | 23 ++ trunk/sound/soc/soc-jack.c | 2 +- trunk/sound/soc/soc-pcm.c | 3 + trunk/sound/soc/tegra/tegra_wm8903.c | 4 +- trunk/tools/perf/arch/arm/util/dwarf-regs.c | 3 + trunk/tools/power/cpupower/Makefile | 7 +- .../power/cpupower/debug/x86_64/Makefile | 8 +- .../cpupower/debug/x86_64/centrino-decode.c | 1 - .../debug/x86_64/powernow-k8-decode.c | 1 - .../cpupower/man/cpupower-frequency-info.1 | 6 +- .../cpupower/man/cpupower-frequency-set.1 | 8 +- trunk/tools/power/cpupower/man/cpupower.1 | 14 +- trunk/tools/power/cpupower/utils/builtin.h | 7 - .../tools/power/cpupower/utils/cpufreq-info.c | 42 +-- .../tools/power/cpupower/utils/cpufreq-set.c | 29 +- .../tools/power/cpupower/utils/cpuidle-info.c | 24 +- .../power/cpupower/utils/cpupower-info.c | 20 +- .../tools/power/cpupower/utils/cpupower-set.c | 25 +- trunk/tools/power/cpupower/utils/cpupower.c | 91 +++--- .../power/cpupower/utils/helpers/helpers.h | 12 + .../power/cpupower/utils/helpers/sysfs.c | 50 ++++ .../power/cpupower/utils/helpers/sysfs.h | 2 + .../power/cpupower/utils/helpers/topology.c | 5 +- .../utils/idle_monitor/cpuidle_sysfs.c | 2 +- .../utils/idle_monitor/cpupower-monitor.c | 66 ++--- .../utils/idle_monitor/mperf_monitor.c | 177 ++++++++--- 450 files changed, 3778 insertions(+), 2112 deletions(-) create mode 100644 trunk/arch/cris/include/asm/serial.h create mode 100644 trunk/arch/sparc/kernel/sigutil.h create mode 100644 trunk/arch/sparc/kernel/sigutil_32.c create mode 100644 trunk/arch/sparc/kernel/sigutil_64.c rename trunk/fs/xfs/{linux-2.6 => }/kmem.c (100%) rename trunk/fs/xfs/{linux-2.6 => }/kmem.h (100%) rename trunk/fs/xfs/{linux-2.6 => }/mrlock.h (100%) rename trunk/fs/xfs/{linux-2.6 => }/time.h (100%) rename trunk/fs/xfs/{support => }/uuid.c (100%) rename trunk/fs/xfs/{support => }/uuid.h (100%) rename trunk/fs/xfs/{linux-2.6 => }/xfs_acl.c (100%) rename trunk/fs/xfs/{linux-2.6 => }/xfs_aops.c (100%) rename trunk/fs/xfs/{linux-2.6 => }/xfs_aops.h (100%) rename trunk/fs/xfs/{linux-2.6 => }/xfs_buf.c (100%) rename trunk/fs/xfs/{linux-2.6 => }/xfs_buf.h (100%) rename trunk/fs/xfs/{linux-2.6 => }/xfs_discard.c (100%) rename trunk/fs/xfs/{linux-2.6 => }/xfs_discard.h (100%) rename trunk/fs/xfs/{quota => }/xfs_dquot.c (100%) rename trunk/fs/xfs/{quota => }/xfs_dquot.h (100%) rename trunk/fs/xfs/{quota => }/xfs_dquot_item.c (100%) rename trunk/fs/xfs/{quota => }/xfs_dquot_item.h (100%) rename trunk/fs/xfs/{linux-2.6 => }/xfs_export.c (100%) rename trunk/fs/xfs/{linux-2.6 => }/xfs_export.h (100%) rename trunk/fs/xfs/{linux-2.6 => }/xfs_file.c (100%) rename trunk/fs/xfs/{linux-2.6 => }/xfs_fs_subr.c (100%) rename trunk/fs/xfs/{linux-2.6 => }/xfs_globals.c (100%) rename trunk/fs/xfs/{linux-2.6 => }/xfs_ioctl.c (100%) rename trunk/fs/xfs/{linux-2.6 => }/xfs_ioctl.h (100%) rename trunk/fs/xfs/{linux-2.6 => }/xfs_ioctl32.c (100%) rename trunk/fs/xfs/{linux-2.6 => }/xfs_ioctl32.h (100%) rename trunk/fs/xfs/{linux-2.6 => }/xfs_iops.c (100%) rename trunk/fs/xfs/{linux-2.6 => }/xfs_iops.h (100%) rename trunk/fs/xfs/{linux-2.6 => }/xfs_linux.h (96%) rename trunk/fs/xfs/{linux-2.6 => }/xfs_message.c (100%) rename trunk/fs/xfs/{linux-2.6 => }/xfs_message.h (100%) rename trunk/fs/xfs/{quota => }/xfs_qm.c (100%) rename trunk/fs/xfs/{quota => }/xfs_qm.h (100%) rename trunk/fs/xfs/{quota => }/xfs_qm_bhv.c (100%) rename trunk/fs/xfs/{quota => }/xfs_qm_stats.c (100%) rename trunk/fs/xfs/{quota => }/xfs_qm_stats.h (100%) rename trunk/fs/xfs/{quota => }/xfs_qm_syscalls.c (100%) rename trunk/fs/xfs/{quota => }/xfs_quota_priv.h (100%) rename trunk/fs/xfs/{linux-2.6 => }/xfs_quotaops.c (99%) rename trunk/fs/xfs/{linux-2.6 => }/xfs_stats.c (100%) rename trunk/fs/xfs/{linux-2.6 => }/xfs_stats.h (100%) rename trunk/fs/xfs/{linux-2.6 => }/xfs_super.c (100%) rename trunk/fs/xfs/{linux-2.6 => }/xfs_super.h (100%) rename trunk/fs/xfs/{linux-2.6 => }/xfs_sync.c (100%) rename trunk/fs/xfs/{linux-2.6 => }/xfs_sync.h (100%) rename trunk/fs/xfs/{linux-2.6 => }/xfs_sysctl.c (100%) rename trunk/fs/xfs/{linux-2.6 => }/xfs_sysctl.h (100%) rename trunk/fs/xfs/{linux-2.6 => }/xfs_trace.c (96%) rename trunk/fs/xfs/{linux-2.6 => }/xfs_trace.h (100%) rename trunk/fs/xfs/{quota => }/xfs_trans_dquot.c (100%) rename trunk/fs/xfs/{linux-2.6 => }/xfs_vnode.h (100%) rename trunk/fs/xfs/{linux-2.6 => }/xfs_xattr.c (100%) delete mode 120000 trunk/tools/power/cpupower/debug/x86_64/centrino-decode.c delete mode 120000 trunk/tools/power/cpupower/debug/x86_64/powernow-k8-decode.c diff --git a/[refs] b/[refs] index 11b812229a43..2a814dc8e594 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 8c0bec2151a47906bf779c6715a10ce04453ab77 +refs/heads/master: b79c4f75e4d3fbfd225660c12f29a7fafcd8e6d9 diff --git a/trunk/Documentation/networking/00-INDEX b/trunk/Documentation/networking/00-INDEX index 4edd78dfb362..bbce1215434a 100644 --- a/trunk/Documentation/networking/00-INDEX +++ b/trunk/Documentation/networking/00-INDEX @@ -1,13 +1,21 @@ 00-INDEX - this file +3c359.txt + - information on the 3Com TokenLink Velocity XL (3c5359) driver. 3c505.txt - information on the 3Com EtherLink Plus (3c505) driver. +3c509.txt + - information on the 3Com Etherlink III Series Ethernet cards. 6pack.txt - info on the 6pack protocol, an alternative to KISS for AX.25 DLINK.txt - info on the D-Link DE-600/DE-620 parallel port pocket adapters PLIP.txt - PLIP: The Parallel Line Internet Protocol device driver +README.ipw2100 + - README for the Intel PRO/Wireless 2100 driver. +README.ipw2200 + - README for the Intel PRO/Wireless 2915ABG and 2200BG driver. README.sb1000 - info on General Instrument/NextLevel SURFboard1000 cable modem. alias.txt @@ -20,8 +28,12 @@ atm.txt - info on where to get ATM programs and support for Linux. ax25.txt - info on using AX.25 and NET/ROM code for Linux +batman-adv.txt + - B.A.T.M.A.N routing protocol on top of layer 2 Ethernet Frames. baycom.txt - info on the driver for Baycom style amateur radio modems +bonding.txt + - Linux Ethernet Bonding Driver HOWTO: link aggregation in Linux. bridge.txt - where to get user space programs for ethernet bridging with Linux. can.txt @@ -34,32 +46,60 @@ cxacru.txt - Conexant AccessRunner USB ADSL Modem cxacru-cf.py - Conexant AccessRunner USB ADSL Modem configuration file parser +cxgb.txt + - Release Notes for the Chelsio N210 Linux device driver. +dccp.txt + - the Datagram Congestion Control Protocol (DCCP) (RFC 4340..42). de4x5.txt - the Digital EtherWORKS DE4?? and DE5?? PCI Ethernet driver decnet.txt - info on using the DECnet networking layer in Linux. depca.txt - the Digital DEPCA/EtherWORKS DE1?? and DE2?? LANCE Ethernet driver +dl2k.txt + - README for D-Link DL2000-based Gigabit Ethernet Adapters (dl2k.ko). +dm9000.txt + - README for the Simtec DM9000 Network driver. dmfe.txt - info on the Davicom DM9102(A)/DM9132/DM9801 fast ethernet driver. +dns_resolver.txt + - The DNS resolver module allows kernel servies to make DNS queries. +driver.txt + - Softnet driver issues. e100.txt - info on Intel's EtherExpress PRO/100 line of 10/100 boards e1000.txt - info on Intel's E1000 line of gigabit ethernet boards +e1000e.txt + - README for the Intel Gigabit Ethernet Driver (e1000e). eql.txt - serial IP load balancing ewrk3.txt - the Digital EtherWORKS 3 DE203/4/5 Ethernet driver +fib_trie.txt + - Level Compressed Trie (LC-trie) notes: a structure for routing. filter.txt - Linux Socket Filtering fore200e.txt - FORE Systems PCA-200E/SBA-200E ATM NIC driver info. framerelay.txt - info on using Frame Relay/Data Link Connection Identifier (DLCI). +gen_stats.txt + - Generic networking statistics for netlink users. +generic_hdlc.txt + - The generic High Level Data Link Control (HDLC) layer. generic_netlink.txt - info on Generic Netlink +gianfar.txt + - Gianfar Ethernet Driver. ieee802154.txt - Linux IEEE 802.15.4 implementation, API and drivers +ifenslave.c + - Configure network interfaces for parallel routing (bonding). +igb.txt + - README for the Intel Gigabit Ethernet Driver (igb). +igbvf.txt + - README for the Intel Gigabit Ethernet Driver (igbvf). ip-sysctl.txt - /proc/sys/net/ipv4/* variables ip_dynaddr.txt @@ -68,41 +108,117 @@ ipddp.txt - AppleTalk-IP Decapsulation and AppleTalk-IP Encapsulation iphase.txt - Interphase PCI ATM (i)Chip IA Linux driver info. +ipv6.txt + - Options to the ipv6 kernel module. +ipvs-sysctl.txt + - Per-inode explanation of the /proc/sys/net/ipv4/vs interface. irda.txt - where to get IrDA (infrared) utilities and info for Linux. +ixgb.txt + - README for the Intel 10 Gigabit Ethernet Driver (ixgb). +ixgbe.txt + - README for the Intel 10 Gigabit Ethernet Driver (ixgbe). +ixgbevf.txt + - README for the Intel Virtual Function (VF) Driver (ixgbevf). +l2tp.txt + - User guide to the L2TP tunnel protocol. lapb-module.txt - programming information of the LAPB module. ltpc.txt - the Apple or Farallon LocalTalk PC card driver +mac80211-injection.txt + - HOWTO use packet injection with mac80211 multicast.txt - Behaviour of cards under Multicast +multiqueue.txt + - HOWTO for multiqueue network device support. +netconsole.txt + - The network console module netconsole.ko: configuration and notes. +netdev-features.txt + - Network interface features API description. netdevices.txt - info on network device driver functions exported to the kernel. +netif-msg.txt + - Design of the network interface message level setting (NETIF_MSG_*). +nfc.txt + - The Linux Near Field Communication (NFS) subsystem. olympic.txt - IBM PCI Pit/Pit-Phy/Olympic Token Ring driver info. +operstates.txt + - Overview of network interface operational states. +packet_mmap.txt + - User guide to memory mapped packet socket rings (PACKET_[RT]X_RING). +phonet.txt + - The Phonet packet protocol used in Nokia cellular modems. +phy.txt + - The PHY abstraction layer. +pktgen.txt + - User guide to the kernel packet generator (pktgen.ko). policy-routing.txt - IP policy-based routing +ppp_generic.txt + - Information about the generic PPP driver. +proc_net_tcp.txt + - Per inode overview of the /proc/net/tcp and /proc/net/tcp6 interfaces. +radiotap-headers.txt + - Background on radiotap headers. ray_cs.txt - Raylink Wireless LAN card driver info. +rds.txt + - Background on the reliable, ordered datagram delivery method RDS. +regulatory.txt + - Overview of the Linux wireless regulatory infrastructure. +rxrpc.txt + - Guide to the RxRPC protocol. +s2io.txt + - Release notes for Neterion Xframe I/II 10GbE driver. +scaling.txt + - Explanation of network scaling techniques: RSS, RPS, RFS, aRFS, XPS. +sctp.txt + - Notes on the Linux kernel implementation of the SCTP protocol. +secid.txt + - Explanation of the secid member in flow structures. skfp.txt - SysKonnect FDDI (SK-5xxx, Compaq Netelligent) driver info. smc9.txt - the driver for SMC's 9000 series of Ethernet cards smctr.txt - SMC TokenCard TokenRing Linux driver info. +spider-net.txt + - README for the Spidernet Driver (as found in PS3 / Cell BE). +stmmac.txt + - README for the STMicro Synopsys Ethernet driver. +tc-actions-env-rules.txt + - rules for traffic control (tc) actions. +timestamping.txt + - overview of network packet timestamping variants. tcp.txt - short blurb on how TCP output takes place. +tcp-thin.txt + - kernel tuning options for low rate 'thin' TCP streams. tlan.txt - ThunderLAN (Compaq Netelligent 10/100, Olicom OC-2xxx) driver info. tms380tr.txt - SysKonnect Token Ring ISA/PCI adapter driver info. +tproxy.txt + - Transparent proxy support user guide. tuntap.txt - TUN/TAP device driver, allowing user space Rx/Tx of packets. +udplite.txt + - UDP-Lite protocol (RFC 3828) introduction. vortex.txt - info on using 3Com Vortex (3c590, 3c592, 3c595, 3c597) Ethernet cards. +vxge.txt + - README for the Neterion X3100 PCIe Server Adapter. x25.txt - general info on X.25 development. x25-iface.txt - description of the X.25 Packet Layer to LAPB device interface. +xfrm_proc.txt + - description of the statistics package for XFRM. +xfrm_sync.txt + - sync patches for XFRM enable migration of an SA between hosts. +xfrm_sysctl.txt + - description of the XFRM configuration options. z8530drv.txt - info about Linux driver for Z8530 based HDLC cards for AX.25 diff --git a/trunk/Documentation/networking/ip-sysctl.txt b/trunk/Documentation/networking/ip-sysctl.txt index db2a4067013c..81546990f41c 100644 --- a/trunk/Documentation/networking/ip-sysctl.txt +++ b/trunk/Documentation/networking/ip-sysctl.txt @@ -992,7 +992,7 @@ bindv6only - BOOLEAN TRUE: disable IPv4-mapped address feature FALSE: enable IPv4-mapped address feature - Default: FALSE (as specified in RFC2553bis) + Default: FALSE (as specified in RFC3493) IPv6 Fragmentation: diff --git a/trunk/Documentation/networking/scaling.txt b/trunk/Documentation/networking/scaling.txt index 7254b4b5910e..58fd7414e6c0 100644 --- a/trunk/Documentation/networking/scaling.txt +++ b/trunk/Documentation/networking/scaling.txt @@ -52,7 +52,8 @@ module parameter for specifying the number of hardware queues to configure. In the bnx2x driver, for instance, this parameter is called num_queues. A typical RSS configuration would be to have one receive queue for each CPU if the device supports enough queues, or otherwise at least -one for each cache domain at a particular cache level (L1, L2, etc.). +one for each memory domain, where a memory domain is a set of CPUs that +share a particular memory level (L1, L2, NUMA node, etc.). The indirection table of an RSS device, which resolves a queue by masked hash, is usually programmed by the driver at initialization. The @@ -82,11 +83,17 @@ RSS should be enabled when latency is a concern or whenever receive interrupt processing forms a bottleneck. Spreading load between CPUs decreases queue length. For low latency networking, the optimal setting is to allocate as many queues as there are CPUs in the system (or the -NIC maximum, if lower). Because the aggregate number of interrupts grows -with each additional queue, the most efficient high-rate configuration +NIC maximum, if lower). The most efficient high-rate configuration is likely the one with the smallest number of receive queues where no -CPU that processes receive interrupts reaches 100% utilization. Per-cpu -load can be observed using the mpstat utility. +receive queue overflows due to a saturated CPU, because in default +mode with interrupt coalescing enabled, the aggregate number of +interrupts (and thus work) grows with each additional queue. + +Per-cpu load can be observed using the mpstat utility, but note that on +processors with hyperthreading (HT), each hyperthread is represented as +a separate CPU. For interrupt handling, HT has shown no benefit in +initial tests, so limit the number of queues to the number of CPU cores +in the system. RPS: Receive Packet Steering @@ -145,7 +152,7 @@ the bitmap. == Suggested Configuration For a single queue device, a typical RPS configuration would be to set -the rps_cpus to the CPUs in the same cache domain of the interrupting +the rps_cpus to the CPUs in the same memory domain of the interrupting CPU. If NUMA locality is not an issue, this could also be all CPUs in the system. At high interrupt rate, it might be wise to exclude the interrupting CPU from the map since that already performs much work. @@ -154,7 +161,7 @@ For a multi-queue system, if RSS is configured so that a hardware receive queue is mapped to each CPU, then RPS is probably redundant and unnecessary. If there are fewer hardware queues than CPUs, then RPS might be beneficial if the rps_cpus for each queue are the ones that -share the same cache domain as the interrupting CPU for that queue. +share the same memory domain as the interrupting CPU for that queue. RFS: Receive Flow Steering @@ -326,7 +333,7 @@ The queue chosen for transmitting a particular flow is saved in the corresponding socket structure for the flow (e.g. a TCP connection). This transmit queue is used for subsequent packets sent on the flow to prevent out of order (ooo) packets. The choice also amortizes the cost -of calling get_xps_queues() over all packets in the connection. To avoid +of calling get_xps_queues() over all packets in the flow. To avoid ooo packets, the queue for a flow can subsequently only be changed if skb->ooo_okay is set for a packet in the flow. This flag indicates that there are no outstanding packets in the flow, so the transmit queue can diff --git a/trunk/Documentation/power/runtime_pm.txt b/trunk/Documentation/power/runtime_pm.txt index 4ce5450ab6e8..6066e3a6b9a9 100644 --- a/trunk/Documentation/power/runtime_pm.txt +++ b/trunk/Documentation/power/runtime_pm.txt @@ -431,8 +431,7 @@ drivers/base/power/runtime.c and include/linux/pm_runtime.h: void pm_runtime_irq_safe(struct device *dev); - set the power.irq_safe flag for the device, causing the runtime-PM - suspend and resume callbacks (but not the idle callback) to be invoked - with interrupts disabled + callbacks to be invoked with interrupts off void pm_runtime_mark_last_busy(struct device *dev); - set the power.last_busy field to the current time diff --git a/trunk/MAINTAINERS b/trunk/MAINTAINERS index 069ee3b5c651..28f65c249b97 100644 --- a/trunk/MAINTAINERS +++ b/trunk/MAINTAINERS @@ -1883,7 +1883,7 @@ S: Maintained F: drivers/connector/ CONTROL GROUPS (CGROUPS) -M: Paul Menage +M: Paul Menage M: Li Zefan L: containers@lists.linux-foundation.org S: Maintained @@ -1932,7 +1932,7 @@ S: Maintained F: tools/power/cpupower CPUSETS -M: Paul Menage +M: Paul Menage W: http://www.bullopensource.org/cpuset/ W: http://oss.sgi.com/projects/cpusets/ S: Supported @@ -2649,11 +2649,11 @@ F: drivers/net/wan/dlci.c F: drivers/net/wan/sdla.c FRAMEBUFFER LAYER -M: Paul Mundt +M: Florian Tobias Schandinat L: linux-fbdev@vger.kernel.org W: http://linux-fbdev.sourceforge.net/ Q: http://patchwork.kernel.org/project/linux-fbdev/list/ -T: git git://git.kernel.org/pub/scm/linux/kernel/git/lethal/fbdev-2.6.git +T: git git://github.com/schandinat/linux-2.6.git fbdev-next S: Maintained F: Documentation/fb/ F: Documentation/devicetree/bindings/fb/ @@ -4450,8 +4450,8 @@ M: "David S. Miller" L: netdev@vger.kernel.org W: http://www.linuxfoundation.org/en/Net W: http://patchwork.ozlabs.org/project/netdev/list/ -T: git git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6.git -T: git git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6.git +T: git git://git.kernel.org/pub/scm/linux/kernel/git/davem/net.git +T: git git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git S: Maintained F: net/ F: include/net/ @@ -5532,6 +5532,7 @@ F: include/media/*7146* SAMSUNG AUDIO (ASoC) DRIVERS M: Jassi Brar +M: Sangbeom Kim L: alsa-devel@alsa-project.org (moderated for non-subscribers) S: Supported F: sound/soc/samsung @@ -7087,7 +7088,7 @@ S: Supported F: drivers/mmc/host/vub300.c W1 DALLAS'S 1-WIRE BUS -M: Evgeniy Polyakov +M: Evgeniy Polyakov S: Maintained F: Documentation/w1/ F: drivers/w1/ diff --git a/trunk/Makefile b/trunk/Makefile index 788511f86a62..c3e90c530a65 100644 --- a/trunk/Makefile +++ b/trunk/Makefile @@ -1,7 +1,7 @@ VERSION = 3 PATCHLEVEL = 1 SUBLEVEL = 0 -EXTRAVERSION = -rc3 +EXTRAVERSION = -rc4 NAME = "Divemaster Edition" # *DOCUMENTATION* diff --git a/trunk/arch/alpha/include/asm/sysinfo.h b/trunk/arch/alpha/include/asm/sysinfo.h index 086aba284df2..e77d77cd07b8 100644 --- a/trunk/arch/alpha/include/asm/sysinfo.h +++ b/trunk/arch/alpha/include/asm/sysinfo.h @@ -27,13 +27,4 @@ #define UAC_NOFIX 2 #define UAC_SIGBUS 4 - -#ifdef __KERNEL__ - -/* This is the shift that is applied to the UAC bits as stored in the - per-thread flags. See thread_info.h. */ -#define UAC_SHIFT 6 - -#endif - #endif /* __ASM_ALPHA_SYSINFO_H */ diff --git a/trunk/arch/alpha/include/asm/thread_info.h b/trunk/arch/alpha/include/asm/thread_info.h index 6f32f9c84a2d..ff73db022342 100644 --- a/trunk/arch/alpha/include/asm/thread_info.h +++ b/trunk/arch/alpha/include/asm/thread_info.h @@ -74,9 +74,9 @@ register struct thread_info *__current_thread_info __asm__("$8"); #define TIF_NEED_RESCHED 3 /* rescheduling necessary */ #define TIF_POLLING_NRFLAG 8 /* poll_idle is polling NEED_RESCHED */ #define TIF_DIE_IF_KERNEL 9 /* dik recursion lock */ -#define TIF_UAC_NOPRINT 10 /* see sysinfo.h */ -#define TIF_UAC_NOFIX 11 -#define TIF_UAC_SIGBUS 12 +#define TIF_UAC_NOPRINT 10 /* ! Preserve sequence of following */ +#define TIF_UAC_NOFIX 11 /* ! flags as they match */ +#define TIF_UAC_SIGBUS 12 /* ! userspace part of 'osf_sysinfo' */ #define TIF_MEMDIE 13 /* is terminating due to OOM killer */ #define TIF_RESTORE_SIGMASK 14 /* restore signal mask in do_signal */ #define TIF_FREEZE 16 /* is freezing for suspend */ @@ -97,7 +97,7 @@ register struct thread_info *__current_thread_info __asm__("$8"); #define _TIF_ALLWORK_MASK (_TIF_WORK_MASK \ | _TIF_SYSCALL_TRACE) -#define ALPHA_UAC_SHIFT 10 +#define ALPHA_UAC_SHIFT TIF_UAC_NOPRINT #define ALPHA_UAC_MASK (1 << TIF_UAC_NOPRINT | 1 << TIF_UAC_NOFIX | \ 1 << TIF_UAC_SIGBUS) diff --git a/trunk/arch/alpha/kernel/osf_sys.c b/trunk/arch/alpha/kernel/osf_sys.c index 326f0a2d56e5..01e8715e26d9 100644 --- a/trunk/arch/alpha/kernel/osf_sys.c +++ b/trunk/arch/alpha/kernel/osf_sys.c @@ -42,6 +42,7 @@ #include #include #include +#include #include #include @@ -633,9 +634,10 @@ SYSCALL_DEFINE5(osf_getsysinfo, unsigned long, op, void __user *, buffer, case GSI_UACPROC: if (nbytes < sizeof(unsigned int)) return -EINVAL; - w = (current_thread_info()->flags >> UAC_SHIFT) & UAC_BITMASK; - if (put_user(w, (unsigned int __user *)buffer)) - return -EFAULT; + w = (current_thread_info()->flags >> ALPHA_UAC_SHIFT) & + UAC_BITMASK; + if (put_user(w, (unsigned int __user *)buffer)) + return -EFAULT; return 1; case GSI_PROC_TYPE: @@ -756,8 +758,8 @@ SYSCALL_DEFINE5(osf_setsysinfo, unsigned long, op, void __user *, buffer, case SSIN_UACPROC: again: old = current_thread_info()->flags; - new = old & ~(UAC_BITMASK << UAC_SHIFT); - new = new | (w & UAC_BITMASK) << UAC_SHIFT; + new = old & ~(UAC_BITMASK << ALPHA_UAC_SHIFT); + new = new | (w & UAC_BITMASK) << ALPHA_UAC_SHIFT; if (cmpxchg(¤t_thread_info()->flags, old, new) != old) goto again; diff --git a/trunk/arch/alpha/kernel/systbls.S b/trunk/arch/alpha/kernel/systbls.S index b9c28f3f1956..6acea1f96de3 100644 --- a/trunk/arch/alpha/kernel/systbls.S +++ b/trunk/arch/alpha/kernel/systbls.S @@ -360,7 +360,7 @@ sys_call_table: .quad sys_newuname .quad sys_nanosleep /* 340 */ .quad sys_mremap - .quad sys_nfsservctl + .quad sys_ni_syscall /* old nfsservctl */ .quad sys_setresuid .quad sys_getresuid .quad sys_pciconfig_read /* 345 */ diff --git a/trunk/arch/arm/Kconfig b/trunk/arch/arm/Kconfig index 5ebc5d922ea1..3269576dbfa8 100644 --- a/trunk/arch/arm/Kconfig +++ b/trunk/arch/arm/Kconfig @@ -1271,6 +1271,18 @@ config ARM_ERRATA_754327 This workaround defines cpu_relax() as smp_mb(), preventing correctly written polling loops from denying visibility of updates to memory. +config ARM_ERRATA_364296 + bool "ARM errata: Possible cache data corruption with hit-under-miss enabled" + depends on CPU_V6 && !SMP + help + This options enables the workaround for the 364296 ARM1136 + r0p2 erratum (possible cache data corruption with + hit-under-miss enabled). It sets the undocumented bit 31 in + the auxiliary control register and the FI bit in the control + register, thus disabling hit-under-miss without putting the + processor into full low interrupt latency mode. ARM11MPCore + is not affected. + endmenu source "arch/arm/common/Kconfig" diff --git a/trunk/arch/arm/boot/compressed/mmcif-sh7372.c b/trunk/arch/arm/boot/compressed/mmcif-sh7372.c index b6f61d9a5a1b..672ae95db5c3 100644 --- a/trunk/arch/arm/boot/compressed/mmcif-sh7372.c +++ b/trunk/arch/arm/boot/compressed/mmcif-sh7372.c @@ -82,7 +82,7 @@ asmlinkage void mmc_loader(unsigned char *buf, unsigned long len) /* Disable clock to MMC hardware block */ - __raw_writel(__raw_readl(SMSTPCR3) & (1 << 12), SMSTPCR3); + __raw_writel(__raw_readl(SMSTPCR3) | (1 << 12), SMSTPCR3); mmc_update_progress(MMC_PROGRESS_DONE); } diff --git a/trunk/arch/arm/boot/compressed/sdhi-sh7372.c b/trunk/arch/arm/boot/compressed/sdhi-sh7372.c index d403a8b24d7f..d279294f2381 100644 --- a/trunk/arch/arm/boot/compressed/sdhi-sh7372.c +++ b/trunk/arch/arm/boot/compressed/sdhi-sh7372.c @@ -85,7 +85,7 @@ asmlinkage void mmc_loader(unsigned short *buf, unsigned long len) goto err; /* Disable clock to SDHI1 hardware block */ - __raw_writel(__raw_readl(SMSTPCR3) & (1 << 13), SMSTPCR3); + __raw_writel(__raw_readl(SMSTPCR3) | (1 << 13), SMSTPCR3); mmc_update_progress(MMC_PROGRESS_DONE); diff --git a/trunk/arch/arm/include/asm/hardware/cache-l2x0.h b/trunk/arch/arm/include/asm/hardware/cache-l2x0.h index 16bd48031583..bfa706ffd968 100644 --- a/trunk/arch/arm/include/asm/hardware/cache-l2x0.h +++ b/trunk/arch/arm/include/asm/hardware/cache-l2x0.h @@ -64,7 +64,7 @@ #define L2X0_AUX_CTRL_MASK 0xc0000fff #define L2X0_AUX_CTRL_ASSOCIATIVITY_SHIFT 16 #define L2X0_AUX_CTRL_WAY_SIZE_SHIFT 17 -#define L2X0_AUX_CTRL_WAY_SIZE_MASK (0x3 << 17) +#define L2X0_AUX_CTRL_WAY_SIZE_MASK (0x7 << 17) #define L2X0_AUX_CTRL_SHARE_OVERRIDE_SHIFT 22 #define L2X0_AUX_CTRL_NS_LOCKDOWN_SHIFT 26 #define L2X0_AUX_CTRL_NS_INT_CTRL_SHIFT 27 diff --git a/trunk/arch/arm/include/asm/pmu.h b/trunk/arch/arm/include/asm/pmu.h index 67c70a31a1be..b7e82c4aced6 100644 --- a/trunk/arch/arm/include/asm/pmu.h +++ b/trunk/arch/arm/include/asm/pmu.h @@ -41,7 +41,7 @@ struct arm_pmu_platdata { * encoded error on failure. */ extern struct platform_device * -reserve_pmu(enum arm_pmu_type device); +reserve_pmu(enum arm_pmu_type type); /** * release_pmu() - Relinquish control of the performance counters @@ -62,26 +62,26 @@ release_pmu(enum arm_pmu_type type); * the actual hardware initialisation. */ extern int -init_pmu(enum arm_pmu_type device); +init_pmu(enum arm_pmu_type type); #else /* CONFIG_CPU_HAS_PMU */ #include static inline struct platform_device * -reserve_pmu(enum arm_pmu_type device) +reserve_pmu(enum arm_pmu_type type) { return ERR_PTR(-ENODEV); } static inline int -release_pmu(struct platform_device *pdev) +release_pmu(enum arm_pmu_type type) { return -ENODEV; } static inline int -init_pmu(enum arm_pmu_type device) +init_pmu(enum arm_pmu_type type) { return -ENODEV; } diff --git a/trunk/arch/arm/kernel/calls.S b/trunk/arch/arm/kernel/calls.S index 80f7896cc016..9943e9e74a1b 100644 --- a/trunk/arch/arm/kernel/calls.S +++ b/trunk/arch/arm/kernel/calls.S @@ -178,7 +178,7 @@ CALL(sys_ni_syscall) /* vm86 */ CALL(sys_ni_syscall) /* was sys_query_module */ CALL(sys_poll) - CALL(sys_nfsservctl) + CALL(sys_ni_syscall) /* was nfsservctl */ /* 170 */ CALL(sys_setresgid16) CALL(sys_getresgid16) CALL(sys_prctl) diff --git a/trunk/arch/arm/kernel/pmu.c b/trunk/arch/arm/kernel/pmu.c index 2b70709376c3..c53474fe84df 100644 --- a/trunk/arch/arm/kernel/pmu.c +++ b/trunk/arch/arm/kernel/pmu.c @@ -31,7 +31,7 @@ static int __devinit pmu_register(struct platform_device *pdev, { if (type < 0 || type >= ARM_NUM_PMU_DEVICES) { pr_warning("received registration request for unknown " - "device %d\n", type); + "PMU device type %d\n", type); return -EINVAL; } @@ -112,17 +112,17 @@ static int __init register_pmu_driver(void) device_initcall(register_pmu_driver); struct platform_device * -reserve_pmu(enum arm_pmu_type device) +reserve_pmu(enum arm_pmu_type type) { struct platform_device *pdev; - if (test_and_set_bit_lock(device, &pmu_lock)) { + if (test_and_set_bit_lock(type, &pmu_lock)) { pdev = ERR_PTR(-EBUSY); - } else if (pmu_devices[device] == NULL) { - clear_bit_unlock(device, &pmu_lock); + } else if (pmu_devices[type] == NULL) { + clear_bit_unlock(type, &pmu_lock); pdev = ERR_PTR(-ENODEV); } else { - pdev = pmu_devices[device]; + pdev = pmu_devices[type]; } return pdev; @@ -130,11 +130,11 @@ reserve_pmu(enum arm_pmu_type device) EXPORT_SYMBOL_GPL(reserve_pmu); int -release_pmu(enum arm_pmu_type device) +release_pmu(enum arm_pmu_type type) { - if (WARN_ON(!pmu_devices[device])) + if (WARN_ON(!pmu_devices[type])) return -EINVAL; - clear_bit_unlock(device, &pmu_lock); + clear_bit_unlock(type, &pmu_lock); return 0; } EXPORT_SYMBOL_GPL(release_pmu); @@ -182,17 +182,17 @@ init_cpu_pmu(void) } int -init_pmu(enum arm_pmu_type device) +init_pmu(enum arm_pmu_type type) { int err = 0; - switch (device) { + switch (type) { case ARM_PMU_DEVICE_CPU: err = init_cpu_pmu(); break; default: - pr_warning("attempt to initialise unknown device %d\n", - device); + pr_warning("attempt to initialise PMU of unknown " + "type %d\n", type); err = -EINVAL; } diff --git a/trunk/arch/arm/kernel/relocate_kernel.S b/trunk/arch/arm/kernel/relocate_kernel.S index 9cf4cbf8f95b..d0cdedf4864d 100644 --- a/trunk/arch/arm/kernel/relocate_kernel.S +++ b/trunk/arch/arm/kernel/relocate_kernel.S @@ -57,7 +57,8 @@ relocate_new_kernel: mov r0,#0 ldr r1,kexec_mach_type ldr r2,kexec_boot_atags - mov pc,lr + ARM( mov pc, lr ) + THUMB( bx lr ) .align diff --git a/trunk/arch/arm/kernel/setup.c b/trunk/arch/arm/kernel/setup.c index 70bca649e925..e514c76043b4 100644 --- a/trunk/arch/arm/kernel/setup.c +++ b/trunk/arch/arm/kernel/setup.c @@ -280,18 +280,19 @@ static void __init cacheid_init(void) if (arch >= CPU_ARCH_ARMv6) { if ((cachetype & (7 << 29)) == 4 << 29) { /* ARMv7 register format */ + arch = CPU_ARCH_ARMv7; cacheid = CACHEID_VIPT_NONALIASING; if ((cachetype & (3 << 14)) == 1 << 14) cacheid |= CACHEID_ASID_TAGGED; - else if (cpu_has_aliasing_icache(CPU_ARCH_ARMv7)) - cacheid |= CACHEID_VIPT_I_ALIASING; - } else if (cachetype & (1 << 23)) { - cacheid = CACHEID_VIPT_ALIASING; } else { - cacheid = CACHEID_VIPT_NONALIASING; - if (cpu_has_aliasing_icache(CPU_ARCH_ARMv6)) - cacheid |= CACHEID_VIPT_I_ALIASING; + arch = CPU_ARCH_ARMv6; + if (cachetype & (1 << 23)) + cacheid = CACHEID_VIPT_ALIASING; + else + cacheid = CACHEID_VIPT_NONALIASING; } + if (cpu_has_aliasing_icache(arch)) + cacheid |= CACHEID_VIPT_I_ALIASING; } else { cacheid = CACHEID_VIVT; } diff --git a/trunk/arch/arm/kernel/smp_twd.c b/trunk/arch/arm/kernel/smp_twd.c index 2c277d40cee6..01c186222f3b 100644 --- a/trunk/arch/arm/kernel/smp_twd.c +++ b/trunk/arch/arm/kernel/smp_twd.c @@ -137,8 +137,8 @@ void __cpuinit twd_timer_setup(struct clock_event_device *clk) clk->max_delta_ns = clockevent_delta2ns(0xffffffff, clk); clk->min_delta_ns = clockevent_delta2ns(0xf, clk); + clockevents_register_device(clk); + /* Make sure our local interrupt controller has this enabled */ gic_enable_ppi(clk->irq); - - clockevents_register_device(clk); } diff --git a/trunk/arch/arm/mach-at91/at91sam9261.c b/trunk/arch/arm/mach-at91/at91sam9261.c index d522b47e30b5..6c8e3b5f669f 100644 --- a/trunk/arch/arm/mach-at91/at91sam9261.c +++ b/trunk/arch/arm/mach-at91/at91sam9261.c @@ -157,7 +157,7 @@ static struct clk_lookup periph_clocks_lookups[] = { CLKDEV_CON_DEV_ID("spi_clk", "atmel_spi.1", &spi1_clk), CLKDEV_CON_DEV_ID("t0_clk", "atmel_tcb.0", &tc0_clk), CLKDEV_CON_DEV_ID("t1_clk", "atmel_tcb.0", &tc1_clk), - CLKDEV_CON_DEV_ID("t2_clk", "atmel_tcb.0", &tc1_clk), + CLKDEV_CON_DEV_ID("t2_clk", "atmel_tcb.0", &tc2_clk), CLKDEV_CON_DEV_ID("pclk", "ssc.0", &ssc0_clk), CLKDEV_CON_DEV_ID("pclk", "ssc.1", &ssc1_clk), CLKDEV_CON_DEV_ID("pclk", "ssc.2", &ssc2_clk), diff --git a/trunk/arch/arm/mach-ep93xx/include/mach/ts72xx.h b/trunk/arch/arm/mach-ep93xx/include/mach/ts72xx.h index 0eabec62cd9d..f1397a13e76b 100644 --- a/trunk/arch/arm/mach-ep93xx/include/mach/ts72xx.h +++ b/trunk/arch/arm/mach-ep93xx/include/mach/ts72xx.h @@ -6,7 +6,7 @@ * TS72xx memory map: * * virt phys size - * febff000 22000000 4K model number register + * febff000 22000000 4K model number register (bits 0-2) * febfe000 22400000 4K options register * febfd000 22800000 4K options register #2 * febf9000 10800000 4K TS-5620 RTC index register @@ -20,6 +20,9 @@ #define TS72XX_MODEL_TS7200 0x00 #define TS72XX_MODEL_TS7250 0x01 #define TS72XX_MODEL_TS7260 0x02 +#define TS72XX_MODEL_TS7300 0x03 +#define TS72XX_MODEL_TS7400 0x04 +#define TS72XX_MODEL_MASK 0x07 #define TS72XX_OPTIONS_PHYS_BASE 0x22400000 @@ -51,19 +54,34 @@ #ifndef __ASSEMBLY__ +static inline int ts72xx_model(void) +{ + return __raw_readb(TS72XX_MODEL_VIRT_BASE) & TS72XX_MODEL_MASK; +} + static inline int board_is_ts7200(void) { - return __raw_readb(TS72XX_MODEL_VIRT_BASE) == TS72XX_MODEL_TS7200; + return ts72xx_model() == TS72XX_MODEL_TS7200; } static inline int board_is_ts7250(void) { - return __raw_readb(TS72XX_MODEL_VIRT_BASE) == TS72XX_MODEL_TS7250; + return ts72xx_model() == TS72XX_MODEL_TS7250; } static inline int board_is_ts7260(void) { - return __raw_readb(TS72XX_MODEL_VIRT_BASE) == TS72XX_MODEL_TS7260; + return ts72xx_model() == TS72XX_MODEL_TS7260; +} + +static inline int board_is_ts7300(void) +{ + return ts72xx_model() == TS72XX_MODEL_TS7300; +} + +static inline int board_is_ts7400(void) +{ + return ts72xx_model() == TS72XX_MODEL_TS7400; } static inline int is_max197_installed(void) diff --git a/trunk/arch/arm/mach-exynos4/clock.c b/trunk/arch/arm/mach-exynos4/clock.c index 851dea018578..1561b036a9bf 100644 --- a/trunk/arch/arm/mach-exynos4/clock.c +++ b/trunk/arch/arm/mach-exynos4/clock.c @@ -520,7 +520,7 @@ static struct clk init_clocks_off[] = { .ctrlbit = (1 << 21), }, { .name = "ac97", - .id = -1, + .devname = "samsung-ac97", .enable = exynos4_clk_ip_peril_ctrl, .ctrlbit = (1 << 27), }, { diff --git a/trunk/arch/arm/mach-exynos4/cpu.c b/trunk/arch/arm/mach-exynos4/cpu.c index 2d8a40c9e6e5..746d6fc6d397 100644 --- a/trunk/arch/arm/mach-exynos4/cpu.c +++ b/trunk/arch/arm/mach-exynos4/cpu.c @@ -24,12 +24,13 @@ #include #include #include -#include #include #include #include +#include #include +#include extern int combiner_init(unsigned int combiner_nr, void __iomem *base, unsigned int irq_start); @@ -128,6 +129,11 @@ static void exynos4_idle(void) local_irq_enable(); } +static void exynos4_sw_reset(void) +{ + __raw_writel(0x1, S5P_SWRESET); +} + /* * exynos4_map_io * @@ -241,5 +247,8 @@ int __init exynos4_init(void) /* set idle function */ pm_idle = exynos4_idle; + /* set sw_reset function */ + s5p_reset_hook = exynos4_sw_reset; + return sysdev_register(&exynos4_sysdev); } diff --git a/trunk/arch/arm/mach-exynos4/include/mach/irqs.h b/trunk/arch/arm/mach-exynos4/include/mach/irqs.h index 934d2a493982..f8952f8f3757 100644 --- a/trunk/arch/arm/mach-exynos4/include/mach/irqs.h +++ b/trunk/arch/arm/mach-exynos4/include/mach/irqs.h @@ -80,9 +80,8 @@ #define IRQ_HSMMC3 IRQ_SPI(76) #define IRQ_DWMCI IRQ_SPI(77) -#define IRQ_MIPICSI0 IRQ_SPI(78) - -#define IRQ_MIPICSI1 IRQ_SPI(80) +#define IRQ_MIPI_CSIS0 IRQ_SPI(78) +#define IRQ_MIPI_CSIS1 IRQ_SPI(80) #define IRQ_ONENAND_AUDI IRQ_SPI(82) #define IRQ_ROTATOR IRQ_SPI(83) diff --git a/trunk/arch/arm/mach-exynos4/include/mach/regs-pmu.h b/trunk/arch/arm/mach-exynos4/include/mach/regs-pmu.h index fa49bbb8e7b0..cdf9b47c303c 100644 --- a/trunk/arch/arm/mach-exynos4/include/mach/regs-pmu.h +++ b/trunk/arch/arm/mach-exynos4/include/mach/regs-pmu.h @@ -29,6 +29,8 @@ #define S5P_USE_STANDBY_WFE1 (1 << 25) #define S5P_USE_MASK ((0x3 << 16) | (0x3 << 24)) +#define S5P_SWRESET S5P_PMUREG(0x0400) + #define S5P_WAKEUP_STAT S5P_PMUREG(0x0600) #define S5P_EINT_WAKEUP_MASK S5P_PMUREG(0x0604) #define S5P_WAKEUP_MASK S5P_PMUREG(0x0608) diff --git a/trunk/arch/arm/mach-exynos4/irq-eint.c b/trunk/arch/arm/mach-exynos4/irq-eint.c index 9d87d2ac7f68..badb8c66fc9b 100644 --- a/trunk/arch/arm/mach-exynos4/irq-eint.c +++ b/trunk/arch/arm/mach-exynos4/irq-eint.c @@ -23,6 +23,8 @@ #include +#include + static DEFINE_SPINLOCK(eint_lock); static unsigned int eint0_15_data[16]; @@ -184,8 +186,11 @@ static inline void exynos4_irq_demux_eint(unsigned int start) static void exynos4_irq_demux_eint16_31(unsigned int irq, struct irq_desc *desc) { + struct irq_chip *chip = irq_get_chip(irq); + chained_irq_enter(chip, desc); exynos4_irq_demux_eint(IRQ_EINT(16)); exynos4_irq_demux_eint(IRQ_EINT(24)); + chained_irq_exit(chip, desc); } static void exynos4_irq_eint0_15(unsigned int irq, struct irq_desc *desc) @@ -193,6 +198,7 @@ static void exynos4_irq_eint0_15(unsigned int irq, struct irq_desc *desc) u32 *irq_data = irq_get_handler_data(irq); struct irq_chip *chip = irq_get_chip(irq); + chained_irq_enter(chip, desc); chip->irq_mask(&desc->irq_data); if (chip->irq_ack) @@ -201,6 +207,7 @@ static void exynos4_irq_eint0_15(unsigned int irq, struct irq_desc *desc) generic_handle_irq(*irq_data); chip->irq_unmask(&desc->irq_data); + chained_irq_exit(chip, desc); } int __init exynos4_init_irq_eint(void) diff --git a/trunk/arch/arm/mach-exynos4/mach-universal_c210.c b/trunk/arch/arm/mach-exynos4/mach-universal_c210.c index 0e280d12301e..b3b5d8911004 100644 --- a/trunk/arch/arm/mach-exynos4/mach-universal_c210.c +++ b/trunk/arch/arm/mach-exynos4/mach-universal_c210.c @@ -79,7 +79,7 @@ static struct s3c2410_uartcfg universal_uartcfgs[] __initdata = { }; static struct regulator_consumer_supply max8952_consumer = - REGULATOR_SUPPLY("vddarm", NULL); + REGULATOR_SUPPLY("vdd_arm", NULL); static struct max8952_platform_data universal_max8952_pdata __initdata = { .gpio_vid0 = EXYNOS4_GPX0(3), @@ -105,7 +105,7 @@ static struct max8952_platform_data universal_max8952_pdata __initdata = { }; static struct regulator_consumer_supply lp3974_buck1_consumer = - REGULATOR_SUPPLY("vddint", NULL); + REGULATOR_SUPPLY("vdd_int", NULL); static struct regulator_consumer_supply lp3974_buck2_consumer = REGULATOR_SUPPLY("vddg3d", NULL); diff --git a/trunk/arch/arm/mach-exynos4/setup-usb-phy.c b/trunk/arch/arm/mach-exynos4/setup-usb-phy.c index 0883c1b824b9..39aca045f660 100644 --- a/trunk/arch/arm/mach-exynos4/setup-usb-phy.c +++ b/trunk/arch/arm/mach-exynos4/setup-usb-phy.c @@ -82,7 +82,7 @@ static int exynos4_usb_phy1_init(struct platform_device *pdev) rstcon &= ~(HOST_LINK_PORT_SWRST_MASK | PHY1_SWRST_MASK); writel(rstcon, EXYNOS4_RSTCON); - udelay(50); + udelay(80); clk_disable(otg_clk); clk_put(otg_clk); diff --git a/trunk/arch/arm/mach-footbridge/Kconfig b/trunk/arch/arm/mach-footbridge/Kconfig index dc26fff22cf0..c8e7afcf14ec 100644 --- a/trunk/arch/arm/mach-footbridge/Kconfig +++ b/trunk/arch/arm/mach-footbridge/Kconfig @@ -62,6 +62,7 @@ config ARCH_EBSA285_HOST config ARCH_NETWINDER bool "NetWinder" select CLKSRC_I8253 + select CLKEVT_I8253 select FOOTBRIDGE_HOST select ISA select ISA_DMA diff --git a/trunk/arch/arm/mach-footbridge/dc21285.c b/trunk/arch/arm/mach-footbridge/dc21285.c index 1331fff51ae2..18c32a5541d9 100644 --- a/trunk/arch/arm/mach-footbridge/dc21285.c +++ b/trunk/arch/arm/mach-footbridge/dc21285.c @@ -18,6 +18,7 @@ #include #include #include +#include