From 772f4b2eaef6ba9b09ebc340cc93c96fe91e697d Mon Sep 17 00:00:00 2001 From: Arnaldo Carvalho de Melo Date: Tue, 6 Apr 2010 10:37:33 -0300 Subject: [PATCH] --- yaml --- r: 189631 b: refs/heads/master c: 8c40041f75a202ed6a3b38143b823cb80f6d6b7c h: refs/heads/master i: 189629: 4369f025c7598415b47bee4e2aac70368e513c85 189627: b47792f31492255900e1f49b7c17ad6a3cd518b1 189623: 5c4beb21e502bbc30b58c4613efd5ddd6a490cc2 189615: 6fcdb62c76648564e527ff812f9fc8df85a7f895 189599: 733c374caa0c1c358c116c8c9927e363a2bba497 189567: 42eb74ef07efda1aaf6b4bce3a6993b01e65a871 v: v3 --- [refs] | 2 +- .../fb/{efifb.txt => imacfb.txt} | 14 +- trunk/Documentation/networking/stmmac.txt | 143 - trunk/Documentation/sound/alsa/HD-Audio.txt | 16 +- .../watchdog/src/watchdog-simple.c | 3 + .../watchdog/src/watchdog-test.c | 8 +- trunk/Documentation/watchdog/watchdog-api.txt | 5 +- trunk/arch/arm/mach-davinci/dm365.c | 1 + trunk/arch/arm/mach-davinci/dma.c | 3 +- .../arm/mach-davinci/include/mach/da8xx.h | 8 +- trunk/arch/arm/mach-davinci/time.c | 6 +- trunk/arch/frv/include/asm/segment.h | 6 +- trunk/arch/frv/include/asm/uaccess.h | 2 + trunk/arch/microblaze/include/asm/futex.h | 2 +- trunk/arch/microblaze/include/asm/io.h | 5 - trunk/arch/microblaze/kernel/ftrace.c | 12 +- trunk/arch/microblaze/kernel/ptrace.c | 1 + trunk/arch/x86/Kconfig | 4 +- trunk/arch/x86/kernel/apic/apic.c | 2 - trunk/arch/x86/kernel/e820.c | 24 +- trunk/arch/x86/kernel/hpet.c | 9 +- trunk/arch/x86/kernel/mpparse.c | 4 +- trunk/arch/x86/kernel/setup.c | 14 +- trunk/arch/x86/power/hibernate_asm_32.S | 15 +- trunk/drivers/ata/libata-core.c | 77 +- trunk/drivers/ata/libata-sff.c | 4 + trunk/drivers/base/node.c | 2 +- trunk/drivers/block/cciss.c | 1 - trunk/drivers/char/amiserial.c | 4 +- trunk/drivers/char/mem.c | 10 +- trunk/drivers/char/mxser.c | 6 +- trunk/drivers/char/raw.c | 1 - trunk/drivers/firmware/iscsi_ibft_find.c | 11 +- trunk/drivers/gpio/timbgpio.c | 12 +- trunk/drivers/macintosh/windfarm_core.c | 1 - .../media/video/pvrusb2/pvrusb2-sysfs.c | 8 - trunk/drivers/mmc/host/omap_hsmmc.c | 9 +- trunk/drivers/net/Kconfig | 25 - trunk/drivers/net/Makefile | 1 - trunk/drivers/net/benet/be_cmds.c | 4 +- trunk/drivers/net/benet/be_main.c | 21 +- trunk/drivers/net/bonding/bond_main.c | 28 +- trunk/drivers/net/cxgb4/Makefile | 7 - trunk/drivers/net/cxgb4/cxgb4.h | 741 ---- trunk/drivers/net/cxgb4/cxgb4_main.c | 3388 ----------------- trunk/drivers/net/cxgb4/cxgb4_uld.h | 239 -- trunk/drivers/net/cxgb4/l2t.c | 624 --- trunk/drivers/net/cxgb4/l2t.h | 110 - trunk/drivers/net/cxgb4/sge.c | 2431 ------------ trunk/drivers/net/cxgb4/t4_hw.c | 3131 --------------- trunk/drivers/net/cxgb4/t4_hw.h | 100 - trunk/drivers/net/cxgb4/t4_msg.h | 664 ---- trunk/drivers/net/cxgb4/t4_regs.h | 878 ----- trunk/drivers/net/cxgb4/t4fw_api.h | 1580 -------- trunk/drivers/net/gianfar.c | 12 +- trunk/drivers/net/pcmcia/smc91c92_cs.c | 12 +- trunk/drivers/net/r8169.c | 4 +- trunk/drivers/net/sgiseeq.c | 4 +- trunk/drivers/net/stmmac/Kconfig | 1 - trunk/drivers/net/wireless/ath/ar9170/usb.c | 4 +- trunk/drivers/net/wireless/iwlwifi/iwl-4965.c | 6 +- trunk/drivers/net/wireless/iwlwifi/iwl-agn.c | 12 +- .../net/wireless/iwlwifi/iwl3945-base.c | 4 +- trunk/drivers/net/wireless/libertas/cfg.c | 8 +- trunk/drivers/net/wireless/libertas/dev.h | 1 - trunk/drivers/net/wireless/mwl8k.c | 1 - trunk/drivers/net/wireless/p54/p54usb.c | 1 - trunk/drivers/net/wireless/rt2x00/rt2500usb.c | 5 - trunk/drivers/net/wireless/rt2x00/rt2800lib.c | 4 +- trunk/drivers/pcmcia/rsrc_nonstatic.c | 31 +- trunk/drivers/platform/x86/intel_menlow.c | 1 - trunk/drivers/rtc/rtc-mxc.c | 26 +- trunk/drivers/thermal/thermal_sys.c | 3 - trunk/drivers/video/fsl-diu-fb.c | 1 - trunk/drivers/video/mb862xx/mb862xxfb_accel.c | 5 +- trunk/drivers/video/vesafb.c | 26 +- trunk/drivers/watchdog/Kconfig | 11 +- trunk/drivers/watchdog/hpwdt.c | 2 +- trunk/drivers/watchdog/iTCO_wdt.c | 99 +- trunk/drivers/watchdog/pika_wdt.c | 2 +- trunk/fs/block_dev.c | 5 +- trunk/fs/fscache/stats.c | 4 +- trunk/fs/proc/task_mmu.c | 29 +- trunk/include/linux/bitops.h | 3 + trunk/include/linux/fs.h | 1 - trunk/include/linux/iscsi_ibft.h | 8 +- trunk/include/linux/kernel.h | 2 +- trunk/include/linux/kfifo.h | 3 +- trunk/include/linux/libata.h | 1 - trunk/include/linux/mm.h | 4 +- trunk/include/linux/module.h | 14 +- trunk/include/linux/page_cgroup.h | 6 - trunk/include/sound/ak4113.h | 2 +- trunk/include/sound/soc-dai.h | 18 +- trunk/include/sound/soc.h | 1 - trunk/kernel/exit.c | 3 +- trunk/kernel/fork.c | 3 - trunk/kernel/irq/manage.c | 10 - trunk/kernel/module.c | 35 +- trunk/lib/Kconfig.debug | 2 +- trunk/lib/ratelimit.c | 11 +- trunk/mm/bootmem.c | 17 +- trunk/mm/memcontrol.c | 18 +- trunk/mm/memory.c | 3 +- trunk/mm/pagewalk.c | 47 +- trunk/mm/readahead.c | 2 +- trunk/mm/vmscan.c | 23 +- trunk/net/bluetooth/l2cap.c | 3 +- trunk/net/bluetooth/rfcomm/sock.c | 3 +- trunk/net/bluetooth/sco.c | 3 +- trunk/net/can/bcm.c | 3 - trunk/net/ieee802154/af_ieee802154.c | 3 - trunk/net/ipv4/af_inet.c | 5 - trunk/net/ipv4/tcp.c | 1 - trunk/net/mac80211/mesh_hwmp.c | 4 +- trunk/net/mac80211/tx.c | 6 - trunk/net/mac80211/util.c | 18 +- trunk/net/netlabel/netlabel_domainhash.c | 28 +- trunk/net/netlabel/netlabel_unlabeled.c | 66 +- trunk/net/netlink/af_netlink.c | 3 - trunk/net/wireless/reg.c | 12 +- trunk/sound/i2c/other/ak4113.c | 2 +- trunk/sound/pci/echoaudio/echoaudio.c | 5 +- trunk/sound/pci/hda/hda_intel.c | 1 - trunk/sound/pci/hda/patch_analog.c | 8 - trunk/sound/pci/hda/patch_realtek.c | 164 +- trunk/sound/pci/mixart/mixart.c | 24 +- trunk/sound/soc/atmel/atmel-pcm.c | 2 +- trunk/sound/soc/atmel/atmel_ssc_dai.c | 6 +- trunk/sound/soc/codecs/ac97.c | 15 +- trunk/sound/soc/codecs/wm8994.c | 58 +- trunk/sound/soc/codecs/wm_hubs.c | 83 +- trunk/sound/soc/codecs/wm_hubs.h | 1 - trunk/sound/soc/davinci/davinci-i2s.c | 3 +- trunk/sound/soc/davinci/davinci-mcasp.c | 3 +- trunk/sound/soc/davinci/davinci-pcm.c | 4 +- trunk/sound/soc/imx/imx-pcm-dma-mx2.c | 8 +- trunk/sound/soc/imx/imx-ssi.c | 7 +- trunk/sound/soc/omap/omap-mcbsp.c | 4 +- trunk/sound/soc/omap/omap-mcpdm.c | 3 +- trunk/sound/soc/omap/omap-pcm.c | 21 +- trunk/sound/soc/pxa/pxa-ssp.c | 23 +- trunk/sound/soc/pxa/pxa2xx-ac97.c | 17 +- trunk/sound/soc/pxa/pxa2xx-i2s.c | 7 +- trunk/sound/soc/pxa/pxa2xx-pcm.c | 4 +- trunk/sound/soc/s3c24xx/s3c-ac97.c | 21 +- trunk/sound/soc/s3c24xx/s3c-dma.c | 4 +- trunk/sound/soc/s3c24xx/s3c-i2s-v2.c | 13 +- trunk/sound/soc/s3c24xx/s3c-pcm.c | 7 +- trunk/sound/soc/s3c24xx/s3c24xx-i2s.c | 19 +- trunk/sound/soc/s6000/s6000-i2s.c | 3 +- trunk/sound/soc/s6000/s6000-pcm.c | 40 +- trunk/sound/soc/soc-core.c | 3 +- trunk/tools/perf/builtin-kmem.c | 1 - 154 files changed, 606 insertions(+), 15124 deletions(-) rename trunk/Documentation/fb/{efifb.txt => imacfb.txt} (66%) delete mode 100644 trunk/Documentation/networking/stmmac.txt delete mode 100644 trunk/drivers/net/cxgb4/Makefile delete mode 100644 trunk/drivers/net/cxgb4/cxgb4.h delete mode 100644 trunk/drivers/net/cxgb4/cxgb4_main.c delete mode 100644 trunk/drivers/net/cxgb4/cxgb4_uld.h delete mode 100644 trunk/drivers/net/cxgb4/l2t.c delete mode 100644 trunk/drivers/net/cxgb4/l2t.h delete mode 100644 trunk/drivers/net/cxgb4/sge.c delete mode 100644 trunk/drivers/net/cxgb4/t4_hw.c delete mode 100644 trunk/drivers/net/cxgb4/t4_hw.h delete mode 100644 trunk/drivers/net/cxgb4/t4_msg.h delete mode 100644 trunk/drivers/net/cxgb4/t4_regs.h delete mode 100644 trunk/drivers/net/cxgb4/t4fw_api.h diff --git a/[refs] b/[refs] index 68d6bc477940..1b32f3f15646 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 63634c86365b530af5026d409fd403801abe1e75 +refs/heads/master: 8c40041f75a202ed6a3b38143b823cb80f6d6b7c diff --git a/trunk/Documentation/fb/efifb.txt b/trunk/Documentation/fb/imacfb.txt similarity index 66% rename from trunk/Documentation/fb/efifb.txt rename to trunk/Documentation/fb/imacfb.txt index a59916c29b33..316ec9bb7deb 100644 --- a/trunk/Documentation/fb/efifb.txt +++ b/trunk/Documentation/fb/imacfb.txt @@ -1,9 +1,9 @@ -What is efifb? +What is imacfb? =============== This is a generic EFI platform driver for Intel based Apple computers. -efifb is only for EFI booted Intel Macs. +Imacfb is only for EFI booted Intel Macs. Supported Hardware ================== @@ -16,16 +16,16 @@ MacMini How to use it? ============== -efifb does not have any kind of autodetection of your machine. +Imacfb does not have any kind of autodetection of your machine. You have to add the following kernel parameters in your elilo.conf: Macbook : - video=efifb:macbook + video=imacfb:macbook MacMini : - video=efifb:mini + video=imacfb:mini Macbook Pro 15", iMac 17" : - video=efifb:i17 + video=imacfb:i17 Macbook Pro 17", iMac 20" : - video=efifb:i20 + video=imacfb:i20 -- Edgar Hucek diff --git a/trunk/Documentation/networking/stmmac.txt b/trunk/Documentation/networking/stmmac.txt deleted file mode 100644 index 7ee770b5ef5f..000000000000 --- a/trunk/Documentation/networking/stmmac.txt +++ /dev/null @@ -1,143 +0,0 @@ - STMicroelectronics 10/100/1000 Synopsys Ethernet driver - -Copyright (C) 2007-2010 STMicroelectronics Ltd -Author: Giuseppe Cavallaro - -This is the driver for the MAC 10/100/1000 on-chip Ethernet controllers -(Synopsys IP blocks); it has been fully tested on STLinux platforms. - -Currently this network device driver is for all STM embedded MAC/GMAC -(7xxx SoCs). - -DWC Ether MAC 10/100/1000 Universal version 3.41a and DWC Ether MAC 10/100 -Universal version 4.0 have been used for developing the first code -implementation. - -Please, for more information also visit: www.stlinux.com - -1) Kernel Configuration -The kernel configuration option is STMMAC_ETH: - Device Drivers ---> Network device support ---> Ethernet (1000 Mbit) ---> - STMicroelectronics 10/100/1000 Ethernet driver (STMMAC_ETH) - -2) Driver parameters list: - debug: message level (0: no output, 16: all); - phyaddr: to manually provide the physical address to the PHY device; - dma_rxsize: DMA rx ring size; - dma_txsize: DMA tx ring size; - buf_sz: DMA buffer size; - tc: control the HW FIFO threshold; - tx_coe: Enable/Disable Tx Checksum Offload engine; - watchdog: transmit timeout (in milliseconds); - flow_ctrl: Flow control ability [on/off]; - pause: Flow Control Pause Time; - tmrate: timer period (only if timer optimisation is configured). - -3) Command line options -Driver parameters can be also passed in command line by using: - stmmaceth=dma_rxsize:128,dma_txsize:512 - -4) Driver information and notes - -4.1) Transmit process -The xmit method is invoked when the kernel needs to transmit a packet; it sets -the descriptors in the ring and informs the DMA engine that there is a packet -ready to be transmitted. -Once the controller has finished transmitting the packet, an interrupt is -triggered; So the driver will be able to release the socket buffers. -By default, the driver sets the NETIF_F_SG bit in the features field of the -net_device structure enabling the scatter/gather feature. - -4.2) Receive process -When one or more packets are received, an interrupt happens. The interrupts -are not queued so the driver has to scan all the descriptors in the ring during -the receive process. -This is based on NAPI so the interrupt handler signals only if there is work to be -done, and it exits. -Then the poll method will be scheduled at some future point. -The incoming packets are stored, by the DMA, in a list of pre-allocated socket -buffers in order to avoid the memcpy (Zero-copy). - -4.3) Timer-Driver Interrupt -Instead of having the device that asynchronously notifies the frame receptions, the -driver configures a timer to generate an interrupt at regular intervals. -Based on the granularity of the timer, the frames that are received by the device -will experience different levels of latency. Some NICs have dedicated timer -device to perform this task. STMMAC can use either the RTC device or the TMU -channel 2 on STLinux platforms. -The timers frequency can be passed to the driver as parameter; when change it, -take care of both hardware capability and network stability/performance impact. -Several performance tests on STM platforms showed this optimisation allows to spare -the CPU while having the maximum throughput. - -4.4) WOL -Wake up on Lan feature through Magic Frame is only supported for the GMAC -core. - -4.5) DMA descriptors -Driver handles both normal and enhanced descriptors. The latter has been only -tested on DWC Ether MAC 10/100/1000 Universal version 3.41a. - -4.6) Ethtool support -Ethtool is supported. Driver statistics and internal errors can be taken using: -ethtool -S ethX command. It is possible to dump registers etc. - -4.7) Jumbo and Segmentation Offloading -Jumbo frames are supported and tested for the GMAC. -The GSO has been also added but it's performed in software. -LRO is not supported. - -4.8) Physical -The driver is compatible with PAL to work with PHY and GPHY devices. - -4.9) Platform information -Several information came from the platform; please refer to the -driver's Header file in include/linux directory. - -struct plat_stmmacenet_data { - int bus_id; - int pbl; - int has_gmac; - void (*fix_mac_speed)(void *priv, unsigned int speed); - void (*bus_setup)(unsigned long ioaddr); -#ifdef CONFIG_STM_DRIVERS - struct stm_pad_config *pad_config; -#endif - void *bsp_priv; -}; - -Where: -- pbl (Programmable Burst Length) is maximum number of - beats to be transferred in one DMA transaction. - GMAC also enables the 4xPBL by default. -- fix_mac_speed and bus_setup are used to configure internal target - registers (on STM platforms); -- has_gmac: GMAC core is on board (get it at run-time in the next step); -- bus_id: bus identifier. - -struct plat_stmmacphy_data { - int bus_id; - int phy_addr; - unsigned int phy_mask; - int interface; - int (*phy_reset)(void *priv); - void *priv; -}; - -Where: -- bus_id: bus identifier; -- phy_addr: physical address used for the attached phy device; - set it to -1 to get it at run-time; -- interface: physical MII interface mode; -- phy_reset: hook to reset HW function. - -TODO: -- Continue to make the driver more generic and suitable for other Synopsys - Ethernet controllers used on other architectures (i.e. ARM). -- 10G controllers are not supported. -- MAC uses Normal descriptors and GMAC uses enhanced ones. - This is a limit that should be reviewed. MAC could want to - use the enhanced structure. -- Checksumming: Rx/Tx csum is done in HW in case of GMAC only. -- Review the timer optimisation code to use an embedded device that seems to be - available in new chip generations. diff --git a/trunk/Documentation/sound/alsa/HD-Audio.txt b/trunk/Documentation/sound/alsa/HD-Audio.txt index 98d14cb8a85d..f4dd3bf99d12 100644 --- a/trunk/Documentation/sound/alsa/HD-Audio.txt +++ b/trunk/Documentation/sound/alsa/HD-Audio.txt @@ -119,18 +119,10 @@ the codec slots 0 and 1 no matter what the hardware reports. Interrupt Handling ~~~~~~~~~~~~~~~~~~ -HD-audio driver uses MSI as default (if available) since 2.6.33 -kernel as MSI works better on some machines, and in general, it's -better for performance. However, Nvidia controllers showed bad -regressions with MSI (especially in a combination with AMD chipset), -thus we disabled MSI for them. - -There seem also still other devices that don't work with MSI. If you -see a regression wrt the sound quality (stuttering, etc) or a lock-up -in the recent kernel, try to pass `enable_msi=0` option to disable -MSI. If it works, you can add the known bad device to the blacklist -defined in hda_intel.c. In such a case, please report and give the -patch back to the upstream developer. +In rare but some cases, the interrupt isn't properly handled as +default. You would notice this by the DMA transfer error reported by +ALSA PCM core, for example. Using MSI might help in such a case. +Pass `enable_msi=1` option for enabling MSI. HD-AUDIO CODEC diff --git a/trunk/Documentation/watchdog/src/watchdog-simple.c b/trunk/Documentation/watchdog/src/watchdog-simple.c index ba45803a2216..4cf72f3fa8e9 100644 --- a/trunk/Documentation/watchdog/src/watchdog-simple.c +++ b/trunk/Documentation/watchdog/src/watchdog-simple.c @@ -17,6 +17,9 @@ int main(void) ret = -1; break; } + ret = fsync(fd); + if (ret) + break; sleep(10); } close(fd); diff --git a/trunk/Documentation/watchdog/src/watchdog-test.c b/trunk/Documentation/watchdog/src/watchdog-test.c index 63fdc34ceb98..a750532ffcf8 100644 --- a/trunk/Documentation/watchdog/src/watchdog-test.c +++ b/trunk/Documentation/watchdog/src/watchdog-test.c @@ -31,8 +31,6 @@ static void keep_alive(void) */ int main(int argc, char *argv[]) { - int flags; - fd = open("/dev/watchdog", O_WRONLY); if (fd == -1) { @@ -43,14 +41,12 @@ int main(int argc, char *argv[]) if (argc > 1) { if (!strncasecmp(argv[1], "-d", 2)) { - flags = WDIOS_DISABLECARD; - ioctl(fd, WDIOC_SETOPTIONS, &flags); + ioctl(fd, WDIOC_SETOPTIONS, WDIOS_DISABLECARD); fprintf(stderr, "Watchdog card disabled.\n"); fflush(stderr); exit(0); } else if (!strncasecmp(argv[1], "-e", 2)) { - flags = WDIOS_ENABLECARD; - ioctl(fd, WDIOC_SETOPTIONS, &flags); + ioctl(fd, WDIOC_SETOPTIONS, WDIOS_ENABLECARD); fprintf(stderr, "Watchdog card enabled.\n"); fflush(stderr); exit(0); diff --git a/trunk/Documentation/watchdog/watchdog-api.txt b/trunk/Documentation/watchdog/watchdog-api.txt index eb7132ed8bbc..4cc4ba9d7150 100644 --- a/trunk/Documentation/watchdog/watchdog-api.txt +++ b/trunk/Documentation/watchdog/watchdog-api.txt @@ -222,10 +222,11 @@ returned value is the temperature in degrees fahrenheit. ioctl(fd, WDIOC_GETTEMP, &temperature); Finally the SETOPTIONS ioctl can be used to control some aspects of -the cards operation. +the cards operation; right now the pcwd driver is the only one +supporting this ioctl. int options = 0; - ioctl(fd, WDIOC_SETOPTIONS, &options); + ioctl(fd, WDIOC_SETOPTIONS, options); The following options are available: diff --git a/trunk/arch/arm/mach-davinci/dm365.c b/trunk/arch/arm/mach-davinci/dm365.c index 0d6ee583f65c..27772e18e45b 100644 --- a/trunk/arch/arm/mach-davinci/dm365.c +++ b/trunk/arch/arm/mach-davinci/dm365.c @@ -758,6 +758,7 @@ static u8 dm365_default_priorities[DAVINCI_N_AINTC_IRQ] = { [IRQ_MMCINT] = 7, [IRQ_DM365_MMCINT1] = 7, [IRQ_DM365_PWMINT3] = 7, + [IRQ_DDRINT] = 4, [IRQ_AEMIFINT] = 2, [IRQ_DM365_SDIOINT1] = 2, [IRQ_TINT0_TINT12] = 7, diff --git a/trunk/arch/arm/mach-davinci/dma.c b/trunk/arch/arm/mach-davinci/dma.c index 53137387aee1..02d939853b88 100644 --- a/trunk/arch/arm/mach-davinci/dma.c +++ b/trunk/arch/arm/mach-davinci/dma.c @@ -1267,8 +1267,7 @@ int edma_start(unsigned channel) /* EDMA channel with event association */ pr_debug("EDMA: ER%d %08x\n", j, edma_shadow0_read_array(ctlr, SH_ER, j)); - /* Clear any pending event or error */ - edma_write_array(ctlr, EDMA_ECR, j, mask); + /* Clear any pending error */ edma_write_array(ctlr, EDMA_EMCR, j, mask); /* Clear any SER */ edma_shadow0_write_array(ctlr, SH_SECR, j, mask); diff --git a/trunk/arch/arm/mach-davinci/include/mach/da8xx.h b/trunk/arch/arm/mach-davinci/include/mach/da8xx.h index 03acfd39042b..cc9be7fee627 100644 --- a/trunk/arch/arm/mach-davinci/include/mach/da8xx.h +++ b/trunk/arch/arm/mach-davinci/include/mach/da8xx.h @@ -3,7 +3,7 @@ * * Author: Mark A. Greer * - * 2007, 2009-2010 (c) MontaVista Software, Inc. This file is licensed under + * 2007, 2009 (c) MontaVista Software, Inc. This file is licensed under * the terms of the GNU General Public License version 2. This program * is licensed "as is" without any warranty of any kind, whether express * or implied. @@ -13,9 +13,7 @@ #include