summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* ARM: imx: move mx3 support to mach-imxUwe Kleine-König2011-05-1944-507/+559
| | | | | | | | | Fixing a few "please, no space before tabs" and "empty line at end of file" warnings on the way. LAKML-Reference: 1299271882-2130-6-git-send-email-u.kleine-koenig@pengutronix.de Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* MX1: Add ARMadeus Systems APF9328 board supportGwenhael Goavec-Merou2011-05-194-0/+153
| | | | | | | | | | | | | APF9328 is an i.MXL based SOM (System On Module) that can be plugged on several docking/development boards. Here only basic module support is added (Ethernet, Serial, NOR Flash). Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@armadeus.com> Signed-off-by: Eric Jarrige <eric.jarrige@armadeus.org> Signed-off-by: Nicolas Colombain <nicolas.colombain@armadeus.com> Signed-off-by: Julien Boibessot <julien.boibessot@armadeus.com> Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* mx23: register clocks for mmcPeter Korsgaard2011-05-191-0/+2
| | | | | | | | | | Commit 47babe69 (mxs: dynamically allocate mmc device) added the ssp setup and mmc clocks for mx23/28, but forgot to register the mmc clocks on mx23. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk> Acked-by: Shawn Guo <shawn.guo@freescale.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* arm: mach-imx/mxs: drop 'default' boardsWolfram Sang2011-05-191-2/+0
| | | | | | | No boards should be compiled in by default. Signed-off-by: Wolfram Sang <w.sang@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: imx: remove some deprecated and unused #definesUwe Kleine-König2011-05-191-7/+0
| | | | | | LAKML-Reference: 1302464943-20721-6-git-send-email-u.kleine-koenig@pengutronix.de Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: mx3: make ioremap quirk ready for multi-SoC kernelsUwe Kleine-König2011-05-192-10/+17
| | | | | | | | | | | | | | | | | | To be able to compile e.g. i.MX31 and i.MX51 in a single kernel image the ioremap quirk needs a runtime check. While touching this code make the comment more understandable by adding a sentence from the commit log that introduced it (eadefef ([ARM] MX3: Use ioremap wrapper to map SoC devices nonshared)). As mach/io.h now uses cpu_is_ some header reshuffling in mach/hardware.h was necessary. (mach/mx27.h and mach/mx31.h #include <linux/io.h> which #includes <mach/io.h>. So mach/mxc.h which provides the cpu_is_ macros needs to be included before mach/mx27.h and mach/mx31.h.) LAKML-Reference: 1302464943-20721-5-git-send-email-u.kleine-koenig@pengutronix.de Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: mxc: don't allow to compile together i.MX51 and i.MX53Uwe Kleine-König2011-05-193-21/+51
| | | | | | | | | The two SoCs have different PHYS_OFFSETs so it's not (yet) possible to compile a single (working) kernel for these. LAKML-Reference: 1302464943-20721-4-git-send-email-u.kleine-koenig@pengutronix.de Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: mxc: don't use the symbols in the CPU family choice to select othersUwe Kleine-König2011-05-194-4/+9
| | | | | | | | | | | | | The symbols in this choice should only be used to select between the available machines that can be built into a single kernel. As these sets (will) differ e.g. depending on ARM_PATCH_PHYS_VIRT and AUTO_ZRELADDR letting them select other symbols makes the logic more complex and needs to duplicate some things. So let the machines select the corresponding symbols (indirectly via SOC_XYZ). LAKML-Reference: 1302464943-20721-2-git-send-email-u.kleine-koenig@pengutronix.de Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: remove support for mxc91231Uwe Kleine-König2011-05-1925-2275/+2
| | | | | | | | | | | Since support for mxc91231 was introduced 2009 it only saw patches that were part of (mxc or arm) global cleanups. The only supported machine only had 4 devices (2x UART, sdhc, watchdog). Cc: Dmitriy Taychenachev <dimichxp@gmail.com> LAKML-Reference: 1302211482-17926-1-git-send-email-u.kleine-koenig@pengutronix.de Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* video i.MX: remove mx1 compile time dependenciesSascha Hauer2011-05-193-27/+7
| | | | | | | | | | | remove usage of CONFIG_ARCH_MX1. It's mostly unused anyway, replace it with cpu_is_mx1() where necessary. Also, depend on IMX_HAVE_PLATFORM_IMX_FB instead of the architectures directly. LAKML-Reference: 20110303141244.GQ29521@pengutronix.de Acked-by: Paul Mundt <lethal@linux-sh.org> Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: mx51: Remove imx51_add_gpio_keysFabio Estevam2011-05-194-5/+3
| | | | | | | | | | | There is no need for using a MX51-specific version of imx_add_gpio_keys. Remove imx51_add_gpio_keys and use imx_add_gpio_keys instead. Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com> LAKML-Reference: 1302105926-20574-1-git-send-email-fabio.estevam@freescale.com Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: imx51: use platform id 2 for imx51-cspiUwe Kleine-König2011-05-191-1/+1
| | | | | | | | | | | | | | | The platform id is used to determine the spi bus number, so it should better be different to the ids used for imx51-ecspi. Otherwise it's not possible to use both devices "imx51-cspi.0" and "imx51-ecspi.0". Alternative approaches are to use dynamic bus numbering as offered by the spi framework or let the machine code set the bus number. The downside of both possibilities is that the bus number isn't fixed for the same busses on different machines using i.MX51. LAKML-Reference: 1302100716-21034-1-git-send-email-u.kleine-koenig@pengutronix.de Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: mxs: fix naming of struct holding info for mxs-i2c devicesUwe Kleine-König2011-05-193-5/+7
| | | | | | | | | For consistency mxs has to be repeated, one for the name space and another one for the device name. LAKML-Reference: 1300308028-8922-1-git-send-email-u.kleine-koenig@pengutronix.de Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: mxs/i.MX23: make i2c defines consistent and match the reference manualWolfram Sang2011-05-191-1/+1
| | | | | | | | | | | The defines for the i2c related irqs (MX23_INT_I2C_DMA and MX23_INT_I2C_ERROR) already match the reference manual. So make the base address consistent. Signed-off-by: Wolfram Sang <w.sang@pengutronix.de> LAKML-Reference: 1298049507-6987-2-git-send-email-w.sang@pengutronix.de Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: mx3: dynamically allocate "ipu-core" devicesUwe Kleine-König2011-05-1930-208/+263
| | | | | | | | | | | | | | | | | ... together with the related devices "mx3_camera" and "mx3_sdc_fb". "mx3_camera" doesn't fit the scheme of the other devices that just are allocated and registered in a single function because it needs additional care to get some dmaable memory. So currently imx31_alloc_mx3_camera duplicates most of imx_add_platform_device_dmamask, but I'm not sure it's worth to split the latter to be able to reuse more code. This gets rid of mach-mx3/devices.[ch] and so several files need to be adapted not to #include devices.h anymore. LAKML-Reference: 1299271882-2130-5-git-send-email-u.kleine-koenig@pengutronix.de Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: mx3/mx31moboard: properly allocate memory for mx3-cameraUwe Kleine-König2011-05-191-16/+17
| | | | | | | | | | | | | | | It's not allowed to create an alias of system RAM for DMA. So the memory used must not be allocated using dma_alloc_coherent but has to be reserved before using memblock routines. There is no need to memzero the buffer because dma_alloc_coherent zeros the memory for us. LAKML-Reference: 1299271882-2130-4-git-send-email-u.kleine-koenig@pengutronix.de Tested-by: Philippe Retornaz <philippe.retornaz@epfl.ch> Acked-by: Philippe Retornaz <philippe.retornaz@epfl.ch> Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: mx3/pcm037: properly allocate memory for mx3-cameraUwe Kleine-König2011-05-191-16/+18
| | | | | | | | | | | | | | | | There is no need to memzero the buffer because dma_alloc_coherent zeros the memory for us. This fixes: BUG: Your driver calls ioremap() on system memory. This leads <4>to architecturally unpredictable behaviour on ARMv6+, and ioremap() <4>will fail in the next kernel release. Please fix your driver. Tested-by: Michael Grzeschik <mgr@pengutronix.de> LAKML-Reference: 1299271882-2130-3-git-send-email-u.kleine-koenig@pengutronix.de Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: mx3: dynamically allocate "mxc_rtc" devicesUwe Kleine-König2011-05-199-21/+59
| | | | | | LAKML-Reference: 1299271882-2130-2-git-send-email-u.kleine-koenig@pengutronix.de Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: mx5/mx53_loco: Fix build warning related to gpio_keys_button structureFabio Estevam2011-05-191-1/+1
| | | | | | | | | | | | Fix the following warning: CC arch/arm/mach-mx5/board-mx53_loco.o arch/arm/mach-mx5/board-mx53_loco.c:203: warning: initialization discards qualifiers from pointer target type Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com> LAKML-Reference: 1301881643-26040-1-git-send-email-festevam@gmail.com Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: mx5/mx53_smd: Add esdhc supportFabio Estevam2011-05-192-0/+29
| | | | | | | | Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com> Acked-by: Wolfram Sang <w.sang@pengutronix.de> LAKML-Reference: 1301921449-32194-1-git-send-email-fabio.estevam@freescale.com Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: imx/mx25: add NAND chip select pins to iomuxBaruch Siach2011-05-191-0/+3
| | | | | | | Signed-off-by: Baruch Siach <baruch@tkos.co.il> LAKML-Reference: cae1d71db47204ee2654eca7391cb656ed53566b.1300095569.git.baruch@tkos.co.il Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: imx: clean up the section marks of extern dataRichard Zhao2011-05-199-97/+93
| | | | | | | Signed-off-by: Richard Zhao <richard.zhao@linaro.org> LAKML-Reference: 1301566583-18947-1-git-send-email-richard.zhao@freescale.com Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: mxs/mach-mx2[38]evk: Set the initial value on gpio_request_oneFabio Estevam2011-05-192-3/+3
| | | | | | | | | | | | Current code does not set the GPIO value to zero as mentioned in the comment. Fix it by setting the initial GPIO value to zero. Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com> LAKML-Reference: 1301427910-31726-1-git-send-email-fabio.estevam@freescale.com [ukleinek: squashed two patches together fixing both boards at once] Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: mx27: fix gpt4/5 base addressWolfram Sang2011-05-191-2/+2
| | | | | | | | Reported-by: Igor Trevisan <igt1972@gmail.com> Signed-off-by: Wolfram Sang <w.sang@pengutronix.de> LAKML-Reference: 1299786904-5494-1-git-send-email-w.sang@pengutronix.de Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: imx: remove #includes already available from devices-common.hUwe Kleine-König2011-05-1932-50/+0
| | | | | | | | | | | | | | | | | Most machine files include "devices-imxXX.h" which in turn includes <mach/devices-common.h>. The latter already includes many headers that the machine files don't need to include again. These were found by: $ grep \#include arch/arm/plat-mxc/include/mach/devices-common.h > tmpfile $ git grep -l 'devices-imx' arch/arm | xargs grep -f tmpfile -F (but I kept linux/init.h, linux/kernel.h and linux/platform_device.h) LAKML-Reference: 1298912674-15153-2-git-send-email-u.kleine-koenig@pengutronix.de Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: imx: use imx_add_gpio_keys to register "gpio-keys" devicesUwe Kleine-König2011-05-199-80/+27
| | | | | | LAKML-Reference: 1302207841-12450-1-git-send-email-u.kleine-koenig@pengutronix.de Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: mach-imx: mx25_3ds: add write-protect and card-detect for SDShawn Guo2011-05-191-1/+11
| | | | | | | | | | Signed-off-by: Shawn Guo <shawn.guo@freescale.com> LAKML-Reference: 1298733544-24659-1-git-send-email-shawn.guo@freescale.com Acked-by: Wolfram Sang <w.sang@pengutronix.de> [ukl: fixup conflict with ff86452 (ARM: mx25_3ds: Add I2C support) and drop #inclusion of <mach/esdhc.h>] Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: mx5/babbage: Use gpio_request_one in babbage_usbhub_resetFabio Estevam2011-05-191-7/+5
| | | | | | | | | | | | Current code inside babbage_usbhub_reset uses gpio_direction_output with initial value of the GPIO and also sets the GPIO value via gpio_set_value to the same level right after. This is not needed. By using gpio_request_one it is possible to set the direction and initial value in one shot. Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com> LAKML-Reference: 1300377359-23212-2-git-send-email-fabio.estevam@freescale.com Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: mx53: Print silicon revision on bootFabio Estevam2011-05-194-13/+25
| | | | | | | | | | | | | | | | | Having the silicon revision to appear on the boot log is a useful information. MX31, MX35 and MX51 already show the silicon revision on boot. Add support for displaying such information for MX53 as well. Tested on a mx53loco board, where it shows: CPU identified as i.MX53, silicon rev 2.0 Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com> LAKML-Reference: 1301068367-18937-1-git-send-email-fabio.estevam@freescale.com Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: mxc: Correct data alignment in headsmp.S for CONFIG_THUMB2_KERNELDave Martin2011-04-121-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Directives such as .long and .word do not magically cause the assembler location counter to become aligned in gas. As a result, using these directives in code sections can result in misaligned data words when building a Thumb-2 kernel (CONFIG_THUMB2_KERNEL). This is a Bad Thing, since the ABI permits the compiler to assume that fundamental types of word size or above are word- aligned when accessing them from C. If the data is not really word-aligned, this can cause impaired performance and stray alignment faults in some circumstances. In general, the following rules should be applied when using data word declaration directives inside code sections: * .quad and .double: .align 3 * .long, .word, .single, .float: .align (or .align 2) * .short: No explicit alignment required, since Thumb-2 instructions are always 2 or 4 bytes in size. immediately after an instruction. Signed-off-by: Dave Martin <dave.martin@linaro.org> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de> LAKML-Reference: 1289913217-8672-1-git-send-email-dave.martin@linaro.org Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: mxs/clock-mx28: fix up name##_set_rateUwe Kleine-König2011-04-121-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For the lcdif clock get_rate looks as follows: read div from HW_CLKCTRL_DIS_LCDIF.DIV return clk_get_rate(clk->parent) / div with clk->parent being ref_pix_clk on my system. ref_pix_clk's rate depends on HW_CLKCTRL_FRAC1.PIXFRAC. The set_rate function for lcdif does: parent_rate = clk_get_rate(clk->parent); based on that calculate frac and div such that parent_rate * 18 / frac / div is near the requested rate. HW_CLKCTRL_FRAC1.PIXFRAC is updated with frac HW_CLKCTRL_DIS_LCDIF.DIV is updated with div For this calculation to be correct parent_rate needs to be initialized not with the clock rate of lcdif's parent (i.e. ref_pix) but that of its grandparent (i.e. ref_pix' parent == pll0_clk). The obvious downside of this patch is that now set_rate(lcdif) changes its parent's rate, too. Still this is better than a wrong rate. Acked-by: Shawn Guo <shawn.guo@freescale.com> LAKML-Reference: 20110225084950.GA13684@S2101-09.ap.freescale.net Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* ARM: imx: fix usb related build failure for mach-vpr200Uwe Kleine-König2011-04-121-3/+8
| | | | | | | | | | | | | | | | | | | | This was broken by 4bd597b (ARM i.MX ehci: do ehci init in board specific functions) and fixes: CC arch/arm/mach-mx3/mach-vpr200.o arch/arm/mach-mx3/mach-vpr200.c:263: error: unknown field 'flags' specified in initializer arch/arm/mach-mx3/mach-vpr200.c:264: warning: initialization makes pointer from integer without a cast by just applying the change to mach-vpr200.c that the other machine files got by 4bd597b. LAKML-Reference: 1302257029-17397-1-git-send-email-u.kleine-koenig@pengutronix.de Acked-by: Marc Reilly <marc@cpdesign.com.au> Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
* Linux 2.6.39-rc2v2.6.39-rc2Linus Torvalds2011-04-061-1/+1
|
* Merge branch 'for-linus' of ↵Linus Torvalds2011-04-0614-91/+148
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux-2.6-block * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux-2.6-block: ide: always ensure that blk_delay_queue() is called if we have pending IO block: fix request sorting at unplug dm: improve block integrity support fs: export empty_aops ide: ide_requeue_and_plug() reinstate "always plug" behaviour blk-throttle: don't call xchg on bool ufs: remove unessecary blk_flush_plug block: make the flush insertion use the tail of the dispatch list block: get rid of elv_insert() interface block: dump request state on seeing a corrupted request completion
| * ide: always ensure that blk_delay_queue() is called if we have pending IOJens Axboe2011-04-051-21/+21
| | | | | | | | | | | | | | | | | | | | Just because we are not requeuing a request does not mean that some aren't pending. So always issue a blk_delay_queue() if either we are requeueing OR there's pending IO. This fixes a boot problem for some IDE boxes. Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
| * block: fix request sorting at unplugKonstantin Khlebnikov2011-04-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Comparison function for list_sort() must be anticommutative, otherwise it is not sorting in ordinary meaning. But fortunately list_sort() always check ((*cmp)(priv, a, b) <= 0) it not distinguish negative and zero, so comparison function can implement only less-or-equal instead of full three-way comparison. Signed-off-by: Konstantin Khlebnikov <khlebnikov@openvz.org> Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
| * dm: improve block integrity supportMike Snitzer2011-04-053-35/+93
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current block integrity (DIF/DIX) support in DM is verifying that all devices' integrity profiles match during DM device resume (which is past the point of no return). To some degree that is unavoidable (stacked DM devices force this late checking). But for most DM devices (which aren't stacking on other DM devices) the ideal time to verify all integrity profiles match is during table load. Introduce the notion of an "initialized" integrity profile: a profile that was blk_integrity_register()'d with a non-NULL 'blk_integrity' template. Add blk_integrity_is_initialized() to allow checking if a profile was initialized. Update DM integrity support to: - check all devices with _initialized_ integrity profiles match during table load; uninitialized profiles (e.g. for underlying DM device(s) of a stacked DM device) are ignored. - disallow a table load that would result in an integrity profile that conflicts with a DM device's existing (in-use) integrity profile - avoid clearing an existing integrity profile - validate all integrity profiles match during resume; but if they don't all we can do is report the mismatch (during resume we're past the point of no return) Signed-off-by: Mike Snitzer <snitzer@redhat.com> Cc: Martin K. Petersen <martin.petersen@oracle.com> Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
| * fs: export empty_aopsJens Axboe2011-04-054-5/+12
| | | | | | | | | | | | | | | | | | | | | | | | With the ->sync_page() hook gone, we have a few users that add their own static address_space_operations without any functions defined. fs/inode.c already has an empty_aops that it uses for init purposes. Lets export that and use it in the places where an otherwise empty aops was defined. Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
| * ide: ide_requeue_and_plug() reinstate "always plug" behaviourJens Axboe2011-04-051-2/+1
| | | | | | | | | | | | | | | | We see stalls if we don't always ensure that the queue gets run again. Even if rq == NULL, we could have other pending requests in the queue. Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
| * blk-throttle: don't call xchg on boolAndreas Schwab2011-04-051-2/+2
| | | | | | | | | | | | | | xchg does not work portably with smaller than 32bit types. Signed-off-by: Andreas Schwab <schwab@linux-m68k.org> Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
| * ufs: remove unessecary blk_flush_plugChristoph Hellwig2011-04-051-1/+0
| | | | | | | | | | | | | | | | We already flush the per-process plugging list when context switching, so a blk_flush_plug call just before a yield() is not needed. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
| * block: make the flush insertion use the tail of the dispatch listJens Axboe2011-04-051-2/+2
| | | | | | | | | | | | | | It's not a preempt type request, in fact we have to insert it behind requests that do specify INSERT_FRONT. Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
| * block: get rid of elv_insert() interfaceJens Axboe2011-04-053-23/+17
| | | | | | | | | | | | | | | | Merge it with __elv_add_request(), it's pretty pointless to have a function with only two callers. The main interface is elv_add_request()/__elv_add_request(). Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
| * block: dump request state on seeing a corrupted request completionJens Axboe2011-04-051-1/+1
| | | | | | | | | | | | | | | | Currently we just dump a non-informative 'request botched' message. Lets actually try and print something sane to help debug issues around this. Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
* | inotify: fix double free/corruption of stuct userEric Paris2011-04-062-26/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On an error path in inotify_init1 a normal user can trigger a double free of struct user. This is a regression introduced by a2ae4cc9a16e ("inotify: stop kernel memory leak on file creation failure"). We fix this by making sure that if a group exists the user reference is dropped when the group is cleaned up. We should not explictly drop the reference on error and also drop the reference when the group is cleaned up. The new lifetime rules are that an inotify group lives from inotify_new_group to the last fsnotify_put_group. Since the struct user and inotify_devs are directly tied to this lifetime they are only changed/updated in those two locations. We get rid of all special casing of struct user or user->inotify_devs. Signed-off-by: Eric Paris <eparis@redhat.com> Cc: stable@kernel.org (2.6.37 and up) Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* | Merge branch 'drm-intel-fixes' of ↵Linus Torvalds2011-04-052-44/+0
|\ \ | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/keithp/linux-2.6 * 'drm-intel-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/keithp/linux-2.6: drm/i915/lvds: Remove 0xa0 DDC probe for LVDS drm/i915/crt: Remove 0xa0 probe for VGA
| * | drm/i915/lvds: Remove 0xa0 DDC probe for LVDSChris Wilson2011-04-051-24/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a revert of 428d2e828c0a68206e5158a42451487601dc9194. This is broken in the same manner as for VGA: trying to write to an invalid address on the (currently 7-bit) i2c bus. One notable failure appears to be for MacBooks. The scary part was that it gave the appearance of working (i.e. reporting the absence of the panel) on various all-in-one machines with ghost LVDS panels and not failing for laptops. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Acked-by: Dave Airlie <airlied@linux.ie> Signed-off-by: Keith Packard <keithp@keithp.com>
| * | drm/i915/crt: Remove 0xa0 probe for VGAChris Wilson2011-04-051-20/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a moral revert of 6ec3d0c0e9c0c605696e91048eebaca7b0c36695. Following the fix to reset the GMBUS controller after a NAK, we finally utilize the 0xa0 probe for a CRT connection. And discover that the code is broken. Shock. There are a number of issues, but following a key insight from Dave Airlie, that 0xA0 is an invalid address on a 7-bit bus (though not if we were to enable 10-bit addressing), and would look like the EDID port 0x50, it is possible to see where the confusion starts. In short, a write to 0xA0 is accepted by the GMBUS controller which we interpreted as meaning the existence of a connection (a slave on the other end of the wire ACKing the write). That was false. During testing with a broken GMBUS implementation, which never reset an earlier NAK, this test always reported a NAK and so we proceeded on to the next test. Reported-and-tested-by: Sitsofe Wheeler <sitsofe@yahoo.com> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=35904 Reported-and-tested-by: Riccardo Magliocchetti <riccardo.magliocchetti@gmail.com> Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=32612 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Acked-by: Dave Airlie <airlied@linux.ie> Signed-off-by: Keith Packard <keithp@keithp.com>
* | | Merge branch 'for-linus' of ↵Linus Torvalds2011-04-059-109/+221
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: Input: rpckbd - fix a leak of the IRQ during init failure Input: wacom - add support for Lenovo tablet ID (0xE6) Input: i8042 - downgrade selftest error message to dbg() Input: synaptics - fix crash in synaptics_module_init() Input: spear-keyboard - fix inverted condition in interrupt handler Input: uinput - allow for 0/0 min/max on absolute axes. Input: sparse-keymap - report KEY_UNKNOWN for unknown scan codes Input: sparse-keymap - report scancodes with key events Input: h3600_ts_input - fix a spelling error Input: wacom - report resolution for pen devices Input: wacom - constify wacom_features for a new missed Bamboo models
| * | | Input: rpckbd - fix a leak of the IRQ during init failureAxel Lin2011-04-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In rpckbd_open prror path, free_irq() was using NULL rather than the driver data as the data pointer so free_irq() wouldn't have matched. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>