From f287160631221cc0baf71a4e3288446378c4f92c Mon Sep 17 00:00:00 2001 From: Fabio Estevam Date: Wed, 21 Nov 2012 17:19:38 -0200 Subject: [PATCH] --- yaml --- r: 347401 b: refs/heads/master c: 3e24b05ba3be5281c3fbf0b126953f5810f9d8ab h: refs/heads/master i: 347399: d3c4f11b5854fa4a037732752b80ea195e49ac9c v: v3 --- [refs] | 2 +- trunk/Documentation/DMA-attributes.txt | 9 - trunk/Documentation/DocBook/drm.tmpl | 39 +- .../bindings/gpu/nvidia,tegra20-host1x.txt | 191 -- trunk/Documentation/kref.txt | 88 - trunk/MAINTAINERS | 9 - trunk/arch/arm/boot/dts/Makefile | 5 +- trunk/arch/arm/boot/dts/imx27-3ds.dts | 8 +- .../arm/boot/dts/imx27-phytec-phycore.dts | 13 +- trunk/arch/arm/boot/dts/imx27.dtsi | 11 +- trunk/arch/arm/boot/dts/omap2420-h4.dts | 2 +- trunk/arch/arm/boot/dts/sun4i-cubieboard.dts | 4 +- trunk/arch/arm/boot/dts/sun5i-olinuxino.dts | 4 +- trunk/arch/arm/mach-davinci/board-da850-evm.c | 1 - trunk/arch/arm/mach-exynos/common.h | 2 +- trunk/arch/arm/mach-omap2/Kconfig | 3 +- trunk/arch/arm/mach-omap2/board-3430sdp.c | 1 - trunk/arch/arm/mach-omap2/board-am3517evm.c | 1 - trunk/arch/arm/mach-omap2/board-cm-t35.c | 1 - trunk/arch/arm/mach-omap2/board-devkit8000.c | 1 - trunk/arch/arm/mach-omap2/board-h4.c | 83 +- trunk/arch/arm/mach-omap2/board-omap3evm.c | 1 - .../arch/arm/mach-omap2/board-omap3stalker.c | 1 - trunk/arch/arm/mach-omap2/cclock44xx_data.c | 78 +- trunk/arch/arm/mach-omap2/clock.h | 10 - trunk/arch/arm/mach-omap2/clockdomain.c | 3 +- trunk/arch/arm/mach-omap2/common.c | 3 + trunk/arch/arm/mach-omap2/cpuidle34xx.c | 14 +- trunk/arch/arm/mach-omap2/cpuidle44xx.c | 28 +- trunk/arch/arm/mach-omap2/dpll3xxx.c | 46 +- trunk/arch/arm/mach-omap2/dpll44xx.c | 64 +- trunk/arch/arm/mach-omap2/mux.c | 10 +- trunk/arch/arm/mach-omap2/mux.h | 20 +- trunk/arch/arm/mach-omap2/mux34xx.c | 2 +- trunk/arch/arm/mach-omap2/serial.c | 3 +- trunk/arch/arm/mach-omap2/timer.c | 6 +- trunk/arch/arm/mach-omap2/usb-host.c | 4 - trunk/arch/arm/mach-tegra/common.c | 2 +- trunk/arch/arm/mach-tegra/tegra30_clocks.c | 4 +- trunk/arch/arm/mach-u300/core.c | 34 + trunk/arch/arm/mach-ux500/devices-db8500.h | 1 - trunk/arch/arm/mm/dma-mapping.c | 41 +- trunk/arch/arm/plat-omap/Makefile | 1 + trunk/arch/arm/plat-omap/debug-devices.c | 92 + .../plat-omap/include/plat/debug-devices.h | 2 + .../arm/plat-omap/include/plat/omap-serial.h} | 0 trunk/block/blk-cgroup.c | 2 +- trunk/block/blk-core.c | 127 +- trunk/block/blk-exec.c | 4 +- trunk/block/blk-lib.c | 26 +- trunk/block/blk-settings.c | 6 +- trunk/block/blk-sysfs.c | 4 +- trunk/block/blk-throttle.c | 2 +- trunk/block/blk.h | 4 +- trunk/block/bsg-lib.c | 13 + trunk/block/cfq-iosched.c | 3 +- trunk/block/deadline-iosched.c | 2 +- trunk/block/elevator.c | 16 +- trunk/block/genhd.c | 2 +- trunk/block/partitions/Kconfig | 4 +- trunk/drivers/amba/tegra-ahb.c | 2 - trunk/drivers/char/agp/intel-agp.h | 91 + trunk/drivers/char/agp/intel-gtt.c | 320 +- trunk/drivers/gpu/drm/Kconfig | 2 - trunk/drivers/gpu/drm/Makefile | 6 +- trunk/drivers/gpu/drm/ast/ast_ttm.c | 12 +- trunk/drivers/gpu/drm/cirrus/cirrus_drv.c | 13 +- trunk/drivers/gpu/drm/cirrus/cirrus_ttm.c | 12 +- trunk/drivers/gpu/drm/drm_crtc.c | 63 +- trunk/drivers/gpu/drm/drm_crtc_helper.c | 161 +- .../{drm_dp_helper.c => drm_dp_i2c_helper.c} | 146 +- trunk/drivers/gpu/drm/drm_edid.c | 48 +- trunk/drivers/gpu/drm/drm_fb_helper.c | 76 +- trunk/drivers/gpu/drm/drm_hashtab.c | 38 +- trunk/drivers/gpu/drm/drm_ioctl.c | 3 - trunk/drivers/gpu/drm/drm_irq.c | 120 +- trunk/drivers/gpu/drm/drm_modes.c | 8 +- trunk/drivers/gpu/drm/drm_pci.c | 2 +- trunk/drivers/gpu/drm/drm_stub.c | 37 +- trunk/drivers/gpu/drm/drm_sysfs.c | 6 +- trunk/drivers/gpu/drm/exynos/Kconfig | 30 - trunk/drivers/gpu/drm/exynos/Makefile | 5 - trunk/drivers/gpu/drm/exynos/exynos_ddc.c | 4 +- trunk/drivers/gpu/drm/exynos/exynos_drm_buf.c | 115 +- trunk/drivers/gpu/drm/exynos/exynos_drm_buf.h | 4 +- .../drivers/gpu/drm/exynos/exynos_drm_crtc.c | 5 - .../gpu/drm/exynos/exynos_drm_dmabuf.c | 150 +- trunk/drivers/gpu/drm/exynos/exynos_drm_drv.c | 117 +- trunk/drivers/gpu/drm/exynos/exynos_drm_drv.h | 43 +- .../gpu/drm/exynos/exynos_drm_encoder.c | 36 +- .../gpu/drm/exynos/exynos_drm_encoder.h | 1 - trunk/drivers/gpu/drm/exynos/exynos_drm_fb.c | 94 +- .../drivers/gpu/drm/exynos/exynos_drm_fbdev.c | 74 +- .../drivers/gpu/drm/exynos/exynos_drm_fimc.c | 2001 ------------- .../drivers/gpu/drm/exynos/exynos_drm_fimc.h | 37 - .../drivers/gpu/drm/exynos/exynos_drm_fimd.c | 200 +- trunk/drivers/gpu/drm/exynos/exynos_drm_g2d.c | 495 +--- trunk/drivers/gpu/drm/exynos/exynos_drm_gem.c | 435 ++- trunk/drivers/gpu/drm/exynos/exynos_drm_gem.h | 58 +- trunk/drivers/gpu/drm/exynos/exynos_drm_gsc.c | 1870 ------------ trunk/drivers/gpu/drm/exynos/exynos_drm_gsc.h | 38 - .../drivers/gpu/drm/exynos/exynos_drm_hdmi.c | 59 +- .../drivers/gpu/drm/exynos/exynos_drm_hdmi.h | 3 +- .../drivers/gpu/drm/exynos/exynos_drm_iommu.c | 150 - .../drivers/gpu/drm/exynos/exynos_drm_iommu.h | 85 - trunk/drivers/gpu/drm/exynos/exynos_drm_ipp.c | 2060 ------------- trunk/drivers/gpu/drm/exynos/exynos_drm_ipp.h | 266 -- .../drivers/gpu/drm/exynos/exynos_drm_plane.c | 12 +- .../gpu/drm/exynos/exynos_drm_rotator.c | 855 ------ .../gpu/drm/exynos/exynos_drm_rotator.h | 33 - .../drivers/gpu/drm/exynos/exynos_drm_vidi.c | 26 +- trunk/drivers/gpu/drm/exynos/exynos_hdmi.c | 324 +-- trunk/drivers/gpu/drm/exynos/exynos_hdmiphy.c | 4 +- trunk/drivers/gpu/drm/exynos/exynos_mixer.c | 376 +-- trunk/drivers/gpu/drm/exynos/regs-fimc.h | 669 ----- trunk/drivers/gpu/drm/exynos/regs-gsc.h | 284 -- trunk/drivers/gpu/drm/exynos/regs-hdmi.h | 22 +- trunk/drivers/gpu/drm/exynos/regs-rotator.h | 73 - trunk/drivers/gpu/drm/gma500/cdv_device.c | 4 +- trunk/drivers/gpu/drm/gma500/cdv_intel_dp.c | 2 +- trunk/drivers/gpu/drm/gma500/cdv_intel_hdmi.c | 6 +- trunk/drivers/gpu/drm/gma500/cdv_intel_lvds.c | 10 +- .../drivers/gpu/drm/gma500/mdfld_dsi_output.c | 12 +- .../gpu/drm/gma500/mdfld_intel_display.c | 2 +- trunk/drivers/gpu/drm/gma500/oaktrail.h | 6 - trunk/drivers/gpu/drm/gma500/oaktrail_crtc.c | 10 +- .../drivers/gpu/drm/gma500/oaktrail_device.c | 2 +- trunk/drivers/gpu/drm/gma500/oaktrail_hdmi.c | 365 +-- trunk/drivers/gpu/drm/gma500/oaktrail_lvds.c | 8 +- trunk/drivers/gpu/drm/gma500/psb_intel_lvds.c | 10 +- trunk/drivers/gpu/drm/gma500/psb_intel_sdvo.c | 24 +- trunk/drivers/gpu/drm/i2c/ch7006_drv.c | 20 +- trunk/drivers/gpu/drm/i915/i915_debugfs.c | 66 +- trunk/drivers/gpu/drm/i915/i915_dma.c | 95 +- trunk/drivers/gpu/drm/i915/i915_drv.c | 136 +- trunk/drivers/gpu/drm/i915/i915_drv.h | 472 ++- trunk/drivers/gpu/drm/i915/i915_gem.c | 292 +- trunk/drivers/gpu/drm/i915/i915_gem_context.c | 5 +- .../gpu/drm/i915/i915_gem_execbuffer.c | 64 +- trunk/drivers/gpu/drm/i915/i915_gem_gtt.c | 420 +-- trunk/drivers/gpu/drm/i915/i915_irq.c | 86 +- trunk/drivers/gpu/drm/i915/i915_reg.h | 308 +- trunk/drivers/gpu/drm/i915/i915_suspend.c | 763 +++-- trunk/drivers/gpu/drm/i915/i915_sysfs.c | 45 +- trunk/drivers/gpu/drm/i915/i915_trace.h | 10 +- trunk/drivers/gpu/drm/i915/intel_bios.c | 3 +- trunk/drivers/gpu/drm/i915/intel_crt.c | 62 +- trunk/drivers/gpu/drm/i915/intel_ddi.c | 1091 ++----- trunk/drivers/gpu/drm/i915/intel_display.c | 2007 ++++--------- trunk/drivers/gpu/drm/i915/intel_dp.c | 961 +++---- trunk/drivers/gpu/drm/i915/intel_drv.h | 123 +- trunk/drivers/gpu/drm/i915/intel_hdmi.c | 135 +- trunk/drivers/gpu/drm/i915/intel_i2c.c | 9 +- trunk/drivers/gpu/drm/i915/intel_lvds.c | 227 +- trunk/drivers/gpu/drm/i915/intel_modes.c | 11 +- trunk/drivers/gpu/drm/i915/intel_opregion.c | 2 - trunk/drivers/gpu/drm/i915/intel_panel.c | 90 +- trunk/drivers/gpu/drm/i915/intel_pm.c | 511 ++-- trunk/drivers/gpu/drm/i915/intel_ringbuffer.c | 250 +- trunk/drivers/gpu/drm/i915/intel_ringbuffer.h | 36 +- trunk/drivers/gpu/drm/i915/intel_sdvo.c | 128 +- trunk/drivers/gpu/drm/i915/intel_sprite.c | 101 +- trunk/drivers/gpu/drm/i915/intel_tv.c | 21 +- trunk/drivers/gpu/drm/mgag200/mgag200_main.c | 4 +- trunk/drivers/gpu/drm/mgag200/mgag200_ttm.c | 12 +- trunk/drivers/gpu/drm/nouveau/Makefile | 38 +- .../gpu/drm/nouveau/core/core/engctx.c | 15 - .../gpu/drm/nouveau/core/core/falcon.c | 247 -- .../gpu/drm/nouveau/core/core/gpuobj.c | 4 +- trunk/drivers/gpu/drm/nouveau/core/core/mm.c | 17 +- .../gpu/drm/nouveau/core/engine/bsp/nv84.c | 108 +- .../gpu/drm/nouveau/core/engine/bsp/nvc0.c | 110 - .../gpu/drm/nouveau/core/engine/bsp/nve0.c | 110 - .../gpu/drm/nouveau/core/engine/copy/nva3.c | 124 +- .../gpu/drm/nouveau/core/engine/copy/nvc0.c | 167 +- .../gpu/drm/nouveau/core/engine/copy/nve0.c | 54 +- .../gpu/drm/nouveau/core/engine/crypt/nv84.c | 46 +- .../gpu/drm/nouveau/core/engine/crypt/nv98.c | 83 +- .../drm/nouveau/core/engine/disp/dacnv50.c | 88 - .../drm/nouveau/core/engine/disp/hdanva3.c | 48 - .../drm/nouveau/core/engine/disp/hdanvd0.c | 53 - .../drm/nouveau/core/engine/disp/hdminv84.c | 66 - .../drm/nouveau/core/engine/disp/hdminva3.c | 66 - .../drm/nouveau/core/engine/disp/hdminvd0.c | 62 - .../gpu/drm/nouveau/core/engine/disp/nv50.c | 1144 +------- .../gpu/drm/nouveau/core/engine/disp/nv50.h | 142 - .../gpu/drm/nouveau/core/engine/disp/nv84.c | 98 - .../gpu/drm/nouveau/core/engine/disp/nv94.c | 109 - .../gpu/drm/nouveau/core/engine/disp/nva0.c | 88 - .../gpu/drm/nouveau/core/engine/disp/nva3.c | 111 - .../gpu/drm/nouveau/core/engine/disp/nvd0.c | 884 +----- .../gpu/drm/nouveau/core/engine/disp/nve0.c | 94 - .../drm/nouveau/core/engine/disp/sornv50.c | 112 - .../drm/nouveau/core/engine/disp/sornv94.c | 190 -- .../drm/nouveau/core/engine/disp/sornvd0.c | 126 - .../gpu/drm/nouveau/core/engine/dmaobj/base.c | 71 +- .../gpu/drm/nouveau/core/engine/dmaobj/nv04.c | 68 +- .../gpu/drm/nouveau/core/engine/dmaobj/nv50.c | 126 +- .../gpu/drm/nouveau/core/engine/dmaobj/nvc0.c | 104 +- .../gpu/drm/nouveau/core/engine/dmaobj/nvd0.c | 122 - .../gpu/drm/nouveau/core/engine/fifo/base.c | 19 +- .../gpu/drm/nouveau/core/engine/fifo/nv04.c | 17 +- .../gpu/drm/nouveau/core/engine/fifo/nv10.c | 6 +- .../gpu/drm/nouveau/core/engine/fifo/nv17.c | 8 +- .../gpu/drm/nouveau/core/engine/fifo/nv40.c | 8 +- .../gpu/drm/nouveau/core/engine/fifo/nv50.c | 36 +- .../gpu/drm/nouveau/core/engine/fifo/nv84.c | 60 +- .../gpu/drm/nouveau/core/engine/fifo/nvc0.c | 26 +- .../gpu/drm/nouveau/core/engine/fifo/nve0.c | 21 +- .../gpu/drm/nouveau/core/engine/graph/nv04.c | 184 +- .../gpu/drm/nouveau/core/engine/graph/nv10.c | 10 +- .../gpu/drm/nouveau/core/engine/graph/nv20.c | 6 +- .../gpu/drm/nouveau/core/engine/graph/nv40.c | 38 +- .../gpu/drm/nouveau/core/engine/graph/nv50.c | 83 +- .../gpu/drm/nouveau/core/engine/graph/nvc0.c | 2 +- .../gpu/drm/nouveau/core/engine/graph/regs.h | 5 - .../gpu/drm/nouveau/core/engine/mpeg/nv31.c | 6 +- .../gpu/drm/nouveau/core/engine/mpeg/nv50.c | 1 + .../gpu/drm/nouveau/core/engine/ppp/nv98.c | 107 +- .../gpu/drm/nouveau/core/engine/ppp/nvc0.c | 110 - .../drm/nouveau/core/engine/software/nv04.c | 4 +- .../drm/nouveau/core/engine/software/nv10.c | 2 +- .../drm/nouveau/core/engine/software/nv50.c | 10 +- .../drm/nouveau/core/engine/software/nvc0.c | 10 +- .../gpu/drm/nouveau/core/engine/vp/nv84.c | 108 +- .../gpu/drm/nouveau/core/engine/vp/nvc0.c | 110 - .../gpu/drm/nouveau/core/engine/vp/nve0.c | 110 - .../gpu/drm/nouveau/core/include/core/class.h | 225 -- .../drm/nouveau/core/include/core/engctx.h | 3 - .../drm/nouveau/core/include/core/falcon.h | 81 - .../drm/nouveau/core/include/core/gpuobj.h | 4 +- .../gpu/drm/nouveau/core/include/core/mm.h | 6 - .../drm/nouveau/core/include/core/object.h | 41 +- .../drm/nouveau/core/include/core/parent.h | 2 +- .../gpu/drm/nouveau/core/include/engine/bsp.h | 41 +- .../drm/nouveau/core/include/engine/copy.h | 39 +- .../drm/nouveau/core/include/engine/crypt.h | 39 + .../drm/nouveau/core/include/engine/disp.h | 5 - .../drm/nouveau/core/include/engine/dmaobj.h | 29 +- .../drm/nouveau/core/include/engine/fifo.h | 6 +- .../gpu/drm/nouveau/core/include/engine/ppp.h | 40 +- .../gpu/drm/nouveau/core/include/engine/vp.h | 41 +- .../nouveau/core/include/subdev/bios/dcb.h | 34 +- .../nouveau/core/include/subdev/bios/disp.h | 48 - .../drm/nouveau/core/include/subdev/bios/dp.h | 32 +- .../gpu/drm/nouveau/core/include/subdev/fb.h | 43 +- .../gpu/drm/nouveau/core/subdev/bar/base.c | 4 +- .../gpu/drm/nouveau/core/subdev/bios/base.c | 32 +- .../gpu/drm/nouveau/core/subdev/bios/dcb.c | 63 - .../gpu/drm/nouveau/core/subdev/bios/disp.c | 178 -- .../gpu/drm/nouveau/core/subdev/bios/dp.c | 182 +- .../gpu/drm/nouveau/core/subdev/bios/gpio.c | 4 +- .../gpu/drm/nouveau/core/subdev/bios/init.c | 13 +- .../gpu/drm/nouveau/core/subdev/device/base.c | 28 +- .../gpu/drm/nouveau/core/subdev/device/nv10.c | 4 +- .../gpu/drm/nouveau/core/subdev/device/nv20.c | 6 +- .../gpu/drm/nouveau/core/subdev/device/nv30.c | 6 +- .../gpu/drm/nouveau/core/subdev/device/nv40.c | 28 +- .../gpu/drm/nouveau/core/subdev/device/nv50.c | 26 +- .../gpu/drm/nouveau/core/subdev/device/nvc0.c | 64 +- .../gpu/drm/nouveau/core/subdev/device/nve0.c | 17 +- .../drm/nouveau/core/subdev/devinit/nv50.c | 34 +- .../gpu/drm/nouveau/core/subdev/fb/base.c | 92 +- .../gpu/drm/nouveau/core/subdev/fb/nv04.c | 62 +- .../gpu/drm/nouveau/core/subdev/fb/nv10.c | 52 +- .../gpu/drm/nouveau/core/subdev/fb/nv1a.c | 89 - .../gpu/drm/nouveau/core/subdev/fb/nv20.c | 86 +- .../gpu/drm/nouveau/core/subdev/fb/nv25.c | 81 - .../gpu/drm/nouveau/core/subdev/fb/nv30.c | 51 +- .../gpu/drm/nouveau/core/subdev/fb/nv35.c | 82 - .../gpu/drm/nouveau/core/subdev/fb/nv36.c | 82 - .../gpu/drm/nouveau/core/subdev/fb/nv40.c | 131 +- .../gpu/drm/nouveau/core/subdev/fb/nv41.c | 106 - .../gpu/drm/nouveau/core/subdev/fb/nv44.c | 114 - .../gpu/drm/nouveau/core/subdev/fb/nv46.c | 79 - .../gpu/drm/nouveau/core/subdev/fb/nv47.c | 66 - .../gpu/drm/nouveau/core/subdev/fb/nv49.c | 84 - .../gpu/drm/nouveau/core/subdev/fb/nv4e.c | 72 - .../gpu/drm/nouveau/core/subdev/fb/nv50.c | 393 ++- .../gpu/drm/nouveau/core/subdev/fb/nvc0.c | 126 +- .../gpu/drm/nouveau/core/subdev/i2c/aux.c | 2 +- .../drm/nouveau/core/subdev/instmem/nv04.c | 8 +- .../drm/nouveau/core/subdev/instmem/nv40.c | 4 +- .../drm/nouveau/core/subdev/instmem/nv50.c | 4 +- .../gpu/drm/nouveau/core/subdev/mc/base.c | 8 +- .../gpu/drm/nouveau/core/subdev/mc/nv50.c | 1 - .../gpu/drm/nouveau/core/subdev/mc/nv98.c | 1 - .../gpu/drm/nouveau/core/subdev/mc/nvc0.c | 1 - trunk/drivers/gpu/drm/nouveau/nouveau_abi16.c | 27 +- trunk/drivers/gpu/drm/nouveau/nouveau_acpi.c | 30 +- trunk/drivers/gpu/drm/nouveau/nouveau_acpi.h | 4 - trunk/drivers/gpu/drm/nouveau/nouveau_bios.c | 235 +- trunk/drivers/gpu/drm/nouveau/nouveau_bios.h | 9 + trunk/drivers/gpu/drm/nouveau/nouveau_bo.c | 65 +- trunk/drivers/gpu/drm/nouveau/nouveau_bo.h | 2 +- trunk/drivers/gpu/drm/nouveau/nouveau_chan.c | 6 +- .../gpu/drm/nouveau/nouveau_connector.c | 25 +- .../gpu/drm/nouveau/nouveau_connector.h | 16 - trunk/drivers/gpu/drm/nouveau/nouveau_crtc.h | 10 + .../drivers/gpu/drm/nouveau/nouveau_display.c | 25 +- trunk/drivers/gpu/drm/nouveau/nouveau_dp.c | 141 +- trunk/drivers/gpu/drm/nouveau/nouveau_drm.c | 98 +- trunk/drivers/gpu/drm/nouveau/nouveau_drm.h | 4 +- .../drivers/gpu/drm/nouveau/nouveau_encoder.h | 7 +- trunk/drivers/gpu/drm/nouveau/nouveau_gem.c | 2 +- trunk/drivers/gpu/drm/nouveau/nouveau_hdmi.c | 261 ++ trunk/drivers/gpu/drm/nouveau/nouveau_irq.c | 12 + trunk/drivers/gpu/drm/nouveau/nouveau_prime.c | 4 + trunk/drivers/gpu/drm/nouveau/nouveau_vga.c | 5 +- trunk/drivers/gpu/drm/nouveau/nv04_crtc.c | 6 +- trunk/drivers/gpu/drm/nouveau/nv04_display.c | 5 + trunk/drivers/gpu/drm/nouveau/nv10_fence.c | 7 +- trunk/drivers/gpu/drm/nouveau/nv17_tv.c | 16 +- trunk/drivers/gpu/drm/nouveau/nv50_crtc.c | 764 +++++ trunk/drivers/gpu/drm/nouveau/nv50_cursor.c | 136 + trunk/drivers/gpu/drm/nouveau/nv50_dac.c | 321 +++ trunk/drivers/gpu/drm/nouveau/nv50_display.c | 2561 +++++------------ trunk/drivers/gpu/drm/nouveau/nv50_display.h | 71 +- trunk/drivers/gpu/drm/nouveau/nv50_evo.c | 403 +++ trunk/drivers/gpu/drm/nouveau/nv50_evo.h | 120 + trunk/drivers/gpu/drm/nouveau/nv50_fence.c | 5 +- trunk/drivers/gpu/drm/nouveau/nv50_pm.c | 2 +- trunk/drivers/gpu/drm/nouveau/nv50_sor.c | 530 ++++ trunk/drivers/gpu/drm/nouveau/nvc0_fence.c | 28 +- trunk/drivers/gpu/drm/nouveau/nvd0_display.c | 2141 ++++++++++++++ trunk/drivers/gpu/drm/radeon/atombios_crtc.c | 2 - trunk/drivers/gpu/drm/radeon/atombios_dp.c | 149 +- .../gpu/drm/radeon/atombios_encoders.c | 2 +- trunk/drivers/gpu/drm/radeon/evergreen.c | 218 +- trunk/drivers/gpu/drm/radeon/evergreen_cs.c | 739 +---- trunk/drivers/gpu/drm/radeon/evergreend.h | 131 - trunk/drivers/gpu/drm/radeon/ni.c | 357 +-- trunk/drivers/gpu/drm/radeon/nid.h | 86 - trunk/drivers/gpu/drm/radeon/r100.c | 23 +- trunk/drivers/gpu/drm/radeon/r600.c | 480 +-- trunk/drivers/gpu/drm/radeon/r600_cp.c | 7 +- trunk/drivers/gpu/drm/radeon/r600_cs.c | 357 +-- trunk/drivers/gpu/drm/radeon/r600_reg.h | 9 - trunk/drivers/gpu/drm/radeon/r600d.h | 86 +- trunk/drivers/gpu/drm/radeon/radeon.h | 38 +- trunk/drivers/gpu/drm/radeon/radeon_asic.c | 198 +- trunk/drivers/gpu/drm/radeon/radeon_asic.h | 34 - trunk/drivers/gpu/drm/radeon/radeon_combios.c | 6 +- .../gpu/drm/radeon/radeon_connectors.c | 62 +- trunk/drivers/gpu/drm/radeon/radeon_cp.c | 14 + trunk/drivers/gpu/drm/radeon/radeon_cs.c | 13 - trunk/drivers/gpu/drm/radeon/radeon_cursor.c | 17 +- trunk/drivers/gpu/drm/radeon/radeon_device.c | 1 - trunk/drivers/gpu/drm/radeon/radeon_display.c | 4 - trunk/drivers/gpu/drm/radeon/radeon_drv.c | 18 +- trunk/drivers/gpu/drm/radeon/radeon_drv.h | 1 + trunk/drivers/gpu/drm/radeon/radeon_fence.c | 2 +- trunk/drivers/gpu/drm/radeon/radeon_gart.c | 1 + trunk/drivers/gpu/drm/radeon/radeon_kms.c | 16 - trunk/drivers/gpu/drm/radeon/radeon_mode.h | 2 +- trunk/drivers/gpu/drm/radeon/radeon_object.c | 52 +- trunk/drivers/gpu/drm/radeon/radeon_object.h | 2 +- trunk/drivers/gpu/drm/radeon/radeon_test.c | 37 +- trunk/drivers/gpu/drm/radeon/radeon_ttm.c | 40 +- trunk/drivers/gpu/drm/radeon/rv515.c | 122 +- trunk/drivers/gpu/drm/radeon/rv770.c | 31 +- trunk/drivers/gpu/drm/radeon/rv770d.h | 71 - trunk/drivers/gpu/drm/radeon/si.c | 355 +-- trunk/drivers/gpu/drm/radeon/sid.h | 119 - .../drivers/gpu/drm/shmobile/shmob_drm_crtc.c | 2 +- trunk/drivers/gpu/drm/tegra/Kconfig | 23 - trunk/drivers/gpu/drm/tegra/Makefile | 7 - trunk/drivers/gpu/drm/tegra/dc.c | 834 ------ trunk/drivers/gpu/drm/tegra/dc.h | 388 --- trunk/drivers/gpu/drm/tegra/drm.c | 115 - trunk/drivers/gpu/drm/tegra/drm.h | 234 -- trunk/drivers/gpu/drm/tegra/fb.c | 56 - trunk/drivers/gpu/drm/tegra/hdmi.c | 1334 --------- trunk/drivers/gpu/drm/tegra/hdmi.h | 575 ---- trunk/drivers/gpu/drm/tegra/host1x.c | 325 --- trunk/drivers/gpu/drm/tegra/output.c | 272 -- trunk/drivers/gpu/drm/tegra/rgb.c | 228 -- trunk/drivers/gpu/drm/ttm/ttm_bo.c | 321 ++- trunk/drivers/gpu/drm/ttm/ttm_bo_util.c | 8 +- trunk/drivers/gpu/drm/ttm/ttm_bo_vm.c | 4 +- trunk/drivers/gpu/drm/ttm/ttm_execbuf_util.c | 10 +- trunk/drivers/gpu/drm/ttm/ttm_memory.c | 1 + trunk/drivers/gpu/drm/ttm/ttm_object.c | 51 +- trunk/drivers/gpu/drm/udl/udl_connector.c | 14 +- trunk/drivers/gpu/drm/vmwgfx/Makefile | 3 +- .../gpu/drm/vmwgfx/svga3d_surfacedefs.h | 909 ------ trunk/drivers/gpu/drm/vmwgfx/vmwgfx_buffer.c | 23 +- trunk/drivers/gpu/drm/vmwgfx/vmwgfx_context.c | 274 -- trunk/drivers/gpu/drm/vmwgfx/vmwgfx_dmabuf.c | 22 +- trunk/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c | 92 +- trunk/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h | 153 +- trunk/drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c | 917 ++---- trunk/drivers/gpu/drm/vmwgfx/vmwgfx_fence.c | 2 +- trunk/drivers/gpu/drm/vmwgfx/vmwgfx_ioctl.c | 7 +- trunk/drivers/gpu/drm/vmwgfx/vmwgfx_ldu.c | 2 +- trunk/drivers/gpu/drm/vmwgfx/vmwgfx_overlay.c | 21 +- .../drivers/gpu/drm/vmwgfx/vmwgfx_resource.c | 2109 +++++++++----- .../gpu/drm/vmwgfx/vmwgfx_resource_priv.h | 84 - trunk/drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c | 4 +- trunk/drivers/gpu/drm/vmwgfx/vmwgfx_surface.c | 893 ------ trunk/drivers/gpu/vga/vga_switcheroo.c | 6 + trunk/drivers/mfd/omap-usb-host.c | 3 +- trunk/drivers/scsi/scsi_lib.c | 2 +- trunk/drivers/tty/serial/omap-serial.c | 3 +- trunk/fs/ext3/inode.c | 3 +- trunk/fs/ext3/super.c | 3 + trunk/fs/quota/quota.c | 4 - trunk/fs/udf/inode.c | 14 +- trunk/include/drm/drmP.h | 3 - trunk/include/drm/drm_crtc.h | 19 +- trunk/include/drm/drm_crtc_helper.h | 3 - trunk/include/drm/drm_dp_helper.h | 39 - trunk/include/drm/drm_hashtab.h | 14 - trunk/include/drm/exynos_drm.h | 26 - trunk/include/drm/intel-gtt.h | 7 +- trunk/include/drm/ttm/ttm_bo_api.h | 33 +- trunk/include/drm/ttm/ttm_bo_driver.h | 45 +- trunk/include/drm/ttm/ttm_execbuf_util.h | 3 + trunk/include/drm/ttm/ttm_memory.h | 2 + trunk/include/drm/ttm/ttm_object.h | 4 - trunk/include/linux/backing-dev.h | 4 - trunk/include/linux/blkdev.h | 17 +- trunk/include/linux/bsg-lib.h | 1 + trunk/include/linux/dma-attrs.h | 1 - trunk/include/linux/kref.h | 21 - trunk/include/linux/platform_data/usb-omap.h | 3 - trunk/include/uapi/drm/drm.h | 1 - trunk/include/uapi/drm/exynos_drm.h | 203 +- trunk/include/uapi/drm/i915_drm.h | 6 - trunk/include/uapi/drm/radeon_drm.h | 6 - trunk/include/video/omap-panel-tfp410.h | 2 +- trunk/kernel/sched/fair.c | 2 +- trunk/mm/backing-dev.c | 84 - 433 files changed, 15375 insertions(+), 39531 deletions(-) delete mode 100644 trunk/Documentation/devicetree/bindings/gpu/nvidia,tegra20-host1x.txt create mode 100644 trunk/arch/arm/plat-omap/debug-devices.c create mode 100644 trunk/arch/arm/plat-omap/include/plat/debug-devices.h rename trunk/{include/linux/platform_data/serial-omap.h => arch/arm/plat-omap/include/plat/omap-serial.h} (100%) rename trunk/drivers/gpu/drm/{drm_dp_helper.c => drm_dp_i2c_helper.c} (58%) delete mode 100644 trunk/drivers/gpu/drm/exynos/exynos_drm_fimc.c delete mode 100644 trunk/drivers/gpu/drm/exynos/exynos_drm_fimc.h delete mode 100644 trunk/drivers/gpu/drm/exynos/exynos_drm_gsc.c delete mode 100644 trunk/drivers/gpu/drm/exynos/exynos_drm_gsc.h delete mode 100644 trunk/drivers/gpu/drm/exynos/exynos_drm_iommu.c delete mode 100644 trunk/drivers/gpu/drm/exynos/exynos_drm_iommu.h delete mode 100644 trunk/drivers/gpu/drm/exynos/exynos_drm_ipp.c delete mode 100644 trunk/drivers/gpu/drm/exynos/exynos_drm_ipp.h delete mode 100644 trunk/drivers/gpu/drm/exynos/exynos_drm_rotator.c delete mode 100644 trunk/drivers/gpu/drm/exynos/exynos_drm_rotator.h delete mode 100644 trunk/drivers/gpu/drm/exynos/regs-fimc.h delete mode 100644 trunk/drivers/gpu/drm/exynos/regs-gsc.h delete mode 100644 trunk/drivers/gpu/drm/exynos/regs-rotator.h delete mode 100644 trunk/drivers/gpu/drm/nouveau/core/core/falcon.c delete mode 100644 trunk/drivers/gpu/drm/nouveau/core/engine/bsp/nvc0.c delete mode 100644 trunk/drivers/gpu/drm/nouveau/core/engine/bsp/nve0.c delete mode 100644 trunk/drivers/gpu/drm/nouveau/core/engine/disp/dacnv50.c delete mode 100644 trunk/drivers/gpu/drm/nouveau/core/engine/disp/hdanva3.c delete mode 100644 trunk/drivers/gpu/drm/nouveau/core/engine/disp/hdanvd0.c delete mode 100644 trunk/drivers/gpu/drm/nouveau/core/engine/disp/hdminv84.c delete mode 100644 trunk/drivers/gpu/drm/nouveau/core/engine/disp/hdminva3.c delete mode 100644 trunk/drivers/gpu/drm/nouveau/core/engine/disp/hdminvd0.c delete mode 100644 trunk/drivers/gpu/drm/nouveau/core/engine/disp/nv50.h delete mode 100644 trunk/drivers/gpu/drm/nouveau/core/engine/disp/nv84.c delete mode 100644 trunk/drivers/gpu/drm/nouveau/core/engine/disp/nv94.c delete mode 100644 trunk/drivers/gpu/drm/nouveau/core/engine/disp/nva0.c delete mode 100644 trunk/drivers/gpu/drm/nouveau/core/engine/disp/nva3.c delete mode 100644 trunk/drivers/gpu/drm/nouveau/core/engine/disp/nve0.c delete mode 100644 trunk/drivers/gpu/drm/nouveau/core/engine/disp/sornv50.c delete mode 100644 trunk/drivers/gpu/drm/nouveau/core/engine/disp/sornv94.c delete mode 100644 trunk/drivers/gpu/drm/nouveau/core/engine/disp/sornvd0.c delete mode 100644 trunk/drivers/gpu/drm/nouveau/core/engine/dmaobj/nvd0.c delete mode 100644 trunk/drivers/gpu/drm/nouveau/core/engine/ppp/nvc0.c delete mode 100644 trunk/drivers/gpu/drm/nouveau/core/engine/vp/nvc0.c delete mode 100644 trunk/drivers/gpu/drm/nouveau/core/engine/vp/nve0.c delete mode 100644 trunk/drivers/gpu/drm/nouveau/core/include/core/falcon.h delete mode 100644 trunk/drivers/gpu/drm/nouveau/core/include/subdev/bios/disp.h delete mode 100644 trunk/drivers/gpu/drm/nouveau/core/subdev/bios/disp.c delete mode 100644 trunk/drivers/gpu/drm/nouveau/core/subdev/fb/nv1a.c delete mode 100644 trunk/drivers/gpu/drm/nouveau/core/subdev/fb/nv25.c delete mode 100644 trunk/drivers/gpu/drm/nouveau/core/subdev/fb/nv35.c delete mode 100644 trunk/drivers/gpu/drm/nouveau/core/subdev/fb/nv36.c delete mode 100644 trunk/drivers/gpu/drm/nouveau/core/subdev/fb/nv41.c delete mode 100644 trunk/drivers/gpu/drm/nouveau/core/subdev/fb/nv44.c delete mode 100644 trunk/drivers/gpu/drm/nouveau/core/subdev/fb/nv46.c delete mode 100644 trunk/drivers/gpu/drm/nouveau/core/subdev/fb/nv47.c delete mode 100644 trunk/drivers/gpu/drm/nouveau/core/subdev/fb/nv49.c delete mode 100644 trunk/drivers/gpu/drm/nouveau/core/subdev/fb/nv4e.c create mode 100644 trunk/drivers/gpu/drm/nouveau/nouveau_hdmi.c create mode 100644 trunk/drivers/gpu/drm/nouveau/nv50_crtc.c create mode 100644 trunk/drivers/gpu/drm/nouveau/nv50_cursor.c create mode 100644 trunk/drivers/gpu/drm/nouveau/nv50_dac.c create mode 100644 trunk/drivers/gpu/drm/nouveau/nv50_evo.c create mode 100644 trunk/drivers/gpu/drm/nouveau/nv50_evo.h create mode 100644 trunk/drivers/gpu/drm/nouveau/nv50_sor.c create mode 100644 trunk/drivers/gpu/drm/nouveau/nvd0_display.c delete mode 100644 trunk/drivers/gpu/drm/tegra/Kconfig delete mode 100644 trunk/drivers/gpu/drm/tegra/Makefile delete mode 100644 trunk/drivers/gpu/drm/tegra/dc.c delete mode 100644 trunk/drivers/gpu/drm/tegra/dc.h delete mode 100644 trunk/drivers/gpu/drm/tegra/drm.c delete mode 100644 trunk/drivers/gpu/drm/tegra/drm.h delete mode 100644 trunk/drivers/gpu/drm/tegra/fb.c delete mode 100644 trunk/drivers/gpu/drm/tegra/hdmi.c delete mode 100644 trunk/drivers/gpu/drm/tegra/hdmi.h delete mode 100644 trunk/drivers/gpu/drm/tegra/host1x.c delete mode 100644 trunk/drivers/gpu/drm/tegra/output.c delete mode 100644 trunk/drivers/gpu/drm/tegra/rgb.c delete mode 100644 trunk/drivers/gpu/drm/vmwgfx/svga3d_surfacedefs.h delete mode 100644 trunk/drivers/gpu/drm/vmwgfx/vmwgfx_context.c delete mode 100644 trunk/drivers/gpu/drm/vmwgfx/vmwgfx_resource_priv.h delete mode 100644 trunk/drivers/gpu/drm/vmwgfx/vmwgfx_surface.c diff --git a/[refs] b/[refs] index aa57757afd55..a604d22e1650 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: a93178a13dbd35850ec8a86b023e1f8953e80dae +refs/heads/master: 3e24b05ba3be5281c3fbf0b126953f5810f9d8ab diff --git a/trunk/Documentation/DMA-attributes.txt b/trunk/Documentation/DMA-attributes.txt index e59480db9ee0..f50309081ac7 100644 --- a/trunk/Documentation/DMA-attributes.txt +++ b/trunk/Documentation/DMA-attributes.txt @@ -91,12 +91,3 @@ transferred to 'device' domain. This attribute can be also used for dma_unmap_{single,page,sg} functions family to force buffer to stay in device domain after releasing a mapping for it. Use this attribute with care! - -DMA_ATTR_FORCE_CONTIGUOUS -------------------------- - -By default DMA-mapping subsystem is allowed to assemble the buffer -allocated by dma_alloc_attrs() function from individual pages if it can -be mapped as contiguous chunk into device dma address space. By -specifing this attribute the allocated buffer is forced to be contiguous -also in physical memory. diff --git a/trunk/Documentation/DocBook/drm.tmpl b/trunk/Documentation/DocBook/drm.tmpl index 4ee2304f82f9..b0300529ab13 100644 --- a/trunk/Documentation/DocBook/drm.tmpl +++ b/trunk/Documentation/DocBook/drm.tmpl @@ -1141,13 +1141,23 @@ int max_width, max_height; the page_flip operation will be called with a non-NULL event argument pointing to a drm_pending_vblank_event instance. Upon page - flip completion the driver must call drm_send_vblank_event - to fill in the event and send to wake up any waiting processes. - This can be performed with + flip completion the driver must fill the + event::event + sequence, tv_sec + and tv_usec fields with the associated + vertical blanking count and timestamp, add the event to the + drm_file list of events to be signaled, and wake + up any waiting process. This can be performed with event.sequence = drm_vblank_count_and_time(..., &now); + event->event.tv_sec = now.tv_sec; + event->event.tv_usec = now.tv_usec; + spin_lock_irqsave(&dev->event_lock, flags); - ... - drm_send_vblank_event(dev, pipe, event); + list_add_tail(&event->base.link, &event->base.file_priv->event_list); + wake_up_interruptible(&event->base.file_priv->event_wait); spin_unlock_irqrestore(&dev->event_lock, flags); ]]> @@ -1611,10 +1621,10 @@ void intel_crt_init(struct drm_device *dev) - + - Mode Setting Helper Functions + Mid-layer Helper Functions The CRTC, encoder and connector functions provided by the drivers implement the DRM API. They're called by the DRM core and ioctl handlers @@ -2096,21 +2106,6 @@ void intel_crt_init(struct drm_device *dev) - - Modeset Helper Functions Reference -!Edrivers/gpu/drm/drm_crtc_helper.c - - - fbdev Helper Functions Reference -!Pdrivers/gpu/drm/drm_fb_helper.c fbdev helpers -!Edrivers/gpu/drm/drm_fb_helper.c - - - Display Port Helper Functions Reference -!Pdrivers/gpu/drm/drm_dp_helper.c dp helpers -!Iinclude/drm/drm_dp_helper.h -!Edrivers/gpu/drm/drm_dp_helper.c - diff --git a/trunk/Documentation/devicetree/bindings/gpu/nvidia,tegra20-host1x.txt b/trunk/Documentation/devicetree/bindings/gpu/nvidia,tegra20-host1x.txt deleted file mode 100644 index b4fa934ae3a2..000000000000 --- a/trunk/Documentation/devicetree/bindings/gpu/nvidia,tegra20-host1x.txt +++ /dev/null @@ -1,191 +0,0 @@ -NVIDIA Tegra host1x - -Required properties: -- compatible: "nvidia,tegra-host1x" -- reg: Physical base address and length of the controller's registers. -- interrupts: The interrupt outputs from the controller. -- #address-cells: The number of cells used to represent physical base addresses - in the host1x address space. Should be 1. -- #size-cells: The number of cells used to represent the size of an address - range in the host1x address space. Should be 1. -- ranges: The mapping of the host1x address space to the CPU address space. - -The host1x top-level node defines a number of children, each representing one -of the following host1x client modules: - -- mpe: video encoder - - Required properties: - - compatible: "nvidia,tegra-mpe" - - reg: Physical base address and length of the controller's registers. - - interrupts: The interrupt outputs from the controller. - -- vi: video input - - Required properties: - - compatible: "nvidia,tegra-vi" - - reg: Physical base address and length of the controller's registers. - - interrupts: The interrupt outputs from the controller. - -- epp: encoder pre-processor - - Required properties: - - compatible: "nvidia,tegra-epp" - - reg: Physical base address and length of the controller's registers. - - interrupts: The interrupt outputs from the controller. - -- isp: image signal processor - - Required properties: - - compatible: "nvidia,tegra-isp" - - reg: Physical base address and length of the controller's registers. - - interrupts: The interrupt outputs from the controller. - -- gr2d: 2D graphics engine - - Required properties: - - compatible: "nvidia,tegra-gr2d" - - reg: Physical base address and length of the controller's registers. - - interrupts: The interrupt outputs from the controller. - -- gr3d: 3D graphics engine - - Required properties: - - compatible: "nvidia,tegra-gr3d" - - reg: Physical base address and length of the controller's registers. - -- dc: display controller - - Required properties: - - compatible: "nvidia,tegra-dc" - - reg: Physical base address and length of the controller's registers. - - interrupts: The interrupt outputs from the controller. - - Each display controller node has a child node, named "rgb", that represents - the RGB output associated with the controller. It can take the following - optional properties: - - nvidia,ddc-i2c-bus: phandle of an I2C controller used for DDC EDID probing - - nvidia,hpd-gpio: specifies a GPIO used for hotplug detection - - nvidia,edid: supplies a binary EDID blob - -- hdmi: High Definition Multimedia Interface - - Required properties: - - compatible: "nvidia,tegra-hdmi" - - reg: Physical base address and length of the controller's registers. - - interrupts: The interrupt outputs from the controller. - - vdd-supply: regulator for supply voltage - - pll-supply: regulator for PLL - - Optional properties: - - nvidia,ddc-i2c-bus: phandle of an I2C controller used for DDC EDID probing - - nvidia,hpd-gpio: specifies a GPIO used for hotplug detection - - nvidia,edid: supplies a binary EDID blob - -- tvo: TV encoder output - - Required properties: - - compatible: "nvidia,tegra-tvo" - - reg: Physical base address and length of the controller's registers. - - interrupts: The interrupt outputs from the controller. - -- dsi: display serial interface - - Required properties: - - compatible: "nvidia,tegra-dsi" - - reg: Physical base address and length of the controller's registers. - -Example: - -/ { - ... - - host1x { - compatible = "nvidia,tegra20-host1x", "simple-bus"; - reg = <0x50000000 0x00024000>; - interrupts = <0 65 0x04 /* mpcore syncpt */ - 0 67 0x04>; /* mpcore general */ - - #address-cells = <1>; - #size-cells = <1>; - - ranges = <0x54000000 0x54000000 0x04000000>; - - mpe { - compatible = "nvidia,tegra20-mpe"; - reg = <0x54040000 0x00040000>; - interrupts = <0 68 0x04>; - }; - - vi { - compatible = "nvidia,tegra20-vi"; - reg = <0x54080000 0x00040000>; - interrupts = <0 69 0x04>; - }; - - epp { - compatible = "nvidia,tegra20-epp"; - reg = <0x540c0000 0x00040000>; - interrupts = <0 70 0x04>; - }; - - isp { - compatible = "nvidia,tegra20-isp"; - reg = <0x54100000 0x00040000>; - interrupts = <0 71 0x04>; - }; - - gr2d { - compatible = "nvidia,tegra20-gr2d"; - reg = <0x54140000 0x00040000>; - interrupts = <0 72 0x04>; - }; - - gr3d { - compatible = "nvidia,tegra20-gr3d"; - reg = <0x54180000 0x00040000>; - }; - - dc@54200000 { - compatible = "nvidia,tegra20-dc"; - reg = <0x54200000 0x00040000>; - interrupts = <0 73 0x04>; - - rgb { - status = "disabled"; - }; - }; - - dc@54240000 { - compatible = "nvidia,tegra20-dc"; - reg = <0x54240000 0x00040000>; - interrupts = <0 74 0x04>; - - rgb { - status = "disabled"; - }; - }; - - hdmi { - compatible = "nvidia,tegra20-hdmi"; - reg = <0x54280000 0x00040000>; - interrupts = <0 75 0x04>; - status = "disabled"; - }; - - tvo { - compatible = "nvidia,tegra20-tvo"; - reg = <0x542c0000 0x00040000>; - interrupts = <0 76 0x04>; - status = "disabled"; - }; - - dsi { - compatible = "nvidia,tegra20-dsi"; - reg = <0x54300000 0x00040000>; - status = "disabled"; - }; - }; - - ... -}; diff --git a/trunk/Documentation/kref.txt b/trunk/Documentation/kref.txt index ddf85a5dde0c..48ba715d5a63 100644 --- a/trunk/Documentation/kref.txt +++ b/trunk/Documentation/kref.txt @@ -213,91 +213,3 @@ presentation on krefs, which can be found at: and: http://www.kroah.com/linux/talks/ols_2004_kref_talk/ - -The above example could also be optimized using kref_get_unless_zero() in -the following way: - -static struct my_data *get_entry() -{ - struct my_data *entry = NULL; - mutex_lock(&mutex); - if (!list_empty(&q)) { - entry = container_of(q.next, struct my_data, link); - if (!kref_get_unless_zero(&entry->refcount)) - entry = NULL; - } - mutex_unlock(&mutex); - return entry; -} - -static void release_entry(struct kref *ref) -{ - struct my_data *entry = container_of(ref, struct my_data, refcount); - - mutex_lock(&mutex); - list_del(&entry->link); - mutex_unlock(&mutex); - kfree(entry); -} - -static void put_entry(struct my_data *entry) -{ - kref_put(&entry->refcount, release_entry); -} - -Which is useful to remove the mutex lock around kref_put() in put_entry(), but -it's important that kref_get_unless_zero is enclosed in the same critical -section that finds the entry in the lookup table, -otherwise kref_get_unless_zero may reference already freed memory. -Note that it is illegal to use kref_get_unless_zero without checking its -return value. If you are sure (by already having a valid pointer) that -kref_get_unless_zero() will return true, then use kref_get() instead. - -The function kref_get_unless_zero also makes it possible to use rcu -locking for lookups in the above example: - -struct my_data -{ - struct rcu_head rhead; - . - struct kref refcount; - . - . -}; - -static struct my_data *get_entry_rcu() -{ - struct my_data *entry = NULL; - rcu_read_lock(); - if (!list_empty(&q)) { - entry = container_of(q.next, struct my_data, link); - if (!kref_get_unless_zero(&entry->refcount)) - entry = NULL; - } - rcu_read_unlock(); - return entry; -} - -static void release_entry_rcu(struct kref *ref) -{ - struct my_data *entry = container_of(ref, struct my_data, refcount); - - mutex_lock(&mutex); - list_del_rcu(&entry->link); - mutex_unlock(&mutex); - kfree_rcu(entry, rhead); -} - -static void put_entry(struct my_data *entry) -{ - kref_put(&entry->refcount, release_entry_rcu); -} - -But note that the struct kref member needs to remain in valid memory for a -rcu grace period after release_entry_rcu was called. That can be accomplished -by using kfree_rcu(entry, rhead) as done above, or by calling synchronize_rcu() -before using kfree, but note that synchronize_rcu() may sleep for a -substantial amount of time. - - -Thomas Hellstrom diff --git a/trunk/MAINTAINERS b/trunk/MAINTAINERS index 6892b26025ba..d9c31b906ac9 100644 --- a/trunk/MAINTAINERS +++ b/trunk/MAINTAINERS @@ -2549,15 +2549,6 @@ S: Supported F: drivers/gpu/drm/exynos F: include/drm/exynos* -DRM DRIVERS FOR NVIDIA TEGRA -M: Thierry Reding -L: dri-devel@lists.freedesktop.org -L: linux-tegra@vger.kernel.org -T: git git://gitorious.org/thierryreding/linux.git -S: Maintained -F: drivers/gpu/drm/tegra/ -F: Documentation/devicetree/bindings/gpu/nvidia,tegra20-host1x.txt - DSCC4 DRIVER M: Francois Romieu L: netdev@vger.kernel.org diff --git a/trunk/arch/arm/boot/dts/Makefile b/trunk/arch/arm/boot/dts/Makefile index d077ef8426df..0f441740c22a 100644 --- a/trunk/arch/arm/boot/dts/Makefile +++ b/trunk/arch/arm/boot/dts/Makefile @@ -107,7 +107,6 @@ dtb-$(CONFIG_ARCH_OMAP2PLUS) += omap2420-h4.dtb \ omap3-evm.dtb \ omap3-tobi.dtb \ omap4-panda.dtb \ - omap4-panda-a4.dtb \ omap4-panda-es.dtb \ omap4-var-som.dtb \ omap4-sdp.dtb \ @@ -132,8 +131,8 @@ dtb-$(CONFIG_ARCH_SPEAR3XX)+= spear300-evb.dtb \ spear320-evb.dtb \ spear320-hmi.dtb dtb-$(CONFIG_ARCH_SPEAR6XX)+= spear600-evb.dtb -dtb-$(CONFIG_ARCH_SUNXI) += sun4i-a10-cubieboard.dtb \ - sun5i-a13-olinuxino.dtb +dtb-$(CONFIG_ARCH_SUNXI) += sun4i-cubieboard.dtb \ + sun5i-olinuxino.dtb dtb-$(CONFIG_ARCH_TEGRA) += tegra20-harmony.dtb \ tegra20-medcom-wide.dtb \ tegra20-paz00.dtb \ diff --git a/trunk/arch/arm/boot/dts/imx27-3ds.dts b/trunk/arch/arm/boot/dts/imx27-3ds.dts index b01c0d745fc5..fa04c7b18bcb 100644 --- a/trunk/arch/arm/boot/dts/imx27-3ds.dts +++ b/trunk/arch/arm/boot/dts/imx27-3ds.dts @@ -21,17 +21,17 @@ }; soc { - aipi@10000000 { /* aipi */ - + aipi@10000000 { /* aipi1 */ uart1: serial@1000a000 { fsl,uart-has-rtscts; status = "okay"; }; + }; - fec@1002b000 { + aipi@10020000 { /* aipi2 */ + ethernet@1002b000 { status = "okay"; }; }; }; - }; diff --git a/trunk/arch/arm/boot/dts/imx27-phytec-phycore.dts b/trunk/arch/arm/boot/dts/imx27-phytec-phycore.dts index af50469e34b2..53b0ec0c228e 100644 --- a/trunk/arch/arm/boot/dts/imx27-phytec-phycore.dts +++ b/trunk/arch/arm/boot/dts/imx27-phytec-phycore.dts @@ -21,8 +21,7 @@ }; soc { - aipi@10000000 { /* aipi */ - + aipi@10000000 { /* aipi1 */ serial@1000a000 { fsl,uart-has-rtscts; status = "okay"; @@ -38,10 +37,6 @@ status = "okay"; }; - ethernet@1002b000 { - status = "okay"; - }; - i2c@1001d000 { clock-frequency = <400000>; status = "okay"; @@ -60,6 +55,12 @@ }; }; }; + + aipi@10020000 { /* aipi2 */ + ethernet@1002b000 { + status = "okay"; + }; + }; }; nor_flash@c0000000 { diff --git a/trunk/arch/arm/boot/dts/imx27.dtsi b/trunk/arch/arm/boot/dts/imx27.dtsi index b8d3905915ac..5a82cb5707a8 100644 --- a/trunk/arch/arm/boot/dts/imx27.dtsi +++ b/trunk/arch/arm/boot/dts/imx27.dtsi @@ -55,7 +55,7 @@ compatible = "fsl,aipi-bus", "simple-bus"; #address-cells = <1>; #size-cells = <1>; - reg = <0x10000000 0x10000000>; + reg = <0x10000000 0x20000>; ranges; wdog: wdog@10002000 { @@ -211,6 +211,15 @@ status = "disabled"; }; + }; + + aipi@10020000 { /* AIPI2 */ + compatible = "fsl,aipi-bus", "simple-bus"; + #address-cells = <1>; + #size-cells = <1>; + reg = <0x10020000 0x20000>; + ranges; + fec: ethernet@1002b000 { compatible = "fsl,imx27-fec"; reg = <0x1002b000 0x4000>; diff --git a/trunk/arch/arm/boot/dts/omap2420-h4.dts b/trunk/arch/arm/boot/dts/omap2420-h4.dts index 9b0d07746cba..77b84e17c477 100644 --- a/trunk/arch/arm/boot/dts/omap2420-h4.dts +++ b/trunk/arch/arm/boot/dts/omap2420-h4.dts @@ -15,6 +15,6 @@ memory { device_type = "memory"; - reg = <0x80000000 0x4000000>; /* 64 MB */ + reg = <0x80000000 0x84000000>; /* 64 MB */ }; }; diff --git a/trunk/arch/arm/boot/dts/sun4i-cubieboard.dts b/trunk/arch/arm/boot/dts/sun4i-cubieboard.dts index 5cab82540437..f4ca126ad994 100644 --- a/trunk/arch/arm/boot/dts/sun4i-cubieboard.dts +++ b/trunk/arch/arm/boot/dts/sun4i-cubieboard.dts @@ -11,11 +11,11 @@ */ /dts-v1/; -/include/ "sun4i-a10.dtsi" +/include/ "sun4i.dtsi" / { model = "Cubietech Cubieboard"; - compatible = "cubietech,a10-cubieboard", "allwinner,sun4i-a10"; + compatible = "cubietech,cubieboard", "allwinner,sun4i"; aliases { serial0 = &uart0; diff --git a/trunk/arch/arm/boot/dts/sun5i-olinuxino.dts b/trunk/arch/arm/boot/dts/sun5i-olinuxino.dts index 498a091a4ea2..d6ff889a5d87 100644 --- a/trunk/arch/arm/boot/dts/sun5i-olinuxino.dts +++ b/trunk/arch/arm/boot/dts/sun5i-olinuxino.dts @@ -12,11 +12,11 @@ */ /dts-v1/; -/include/ "sun5i-a13.dtsi" +/include/ "sun5i.dtsi" / { model = "Olimex A13-Olinuxino"; - compatible = "olimex,a13-olinuxino", "allwinner,sun5i-a13"; + compatible = "olimex,a13-olinuxino", "allwinner,sun5i"; chosen { bootargs = "earlyprintk console=ttyS0,115200"; diff --git a/trunk/arch/arm/mach-davinci/board-da850-evm.c b/trunk/arch/arm/mach-davinci/board-da850-evm.c index 0299915575a8..7211772edd9d 100644 --- a/trunk/arch/arm/mach-davinci/board-da850-evm.c +++ b/trunk/arch/arm/mach-davinci/board-da850-evm.c @@ -41,7 +41,6 @@ #include #include #include -#include #include #include diff --git a/trunk/arch/arm/mach-exynos/common.h b/trunk/arch/arm/mach-exynos/common.h index 04744f9c120f..dac146df79ac 100644 --- a/trunk/arch/arm/mach-exynos/common.h +++ b/trunk/arch/arm/mach-exynos/common.h @@ -25,7 +25,7 @@ void exynos_init_late(void); #ifdef CONFIG_PM_GENERIC_DOMAINS int exynos_pm_late_initcall(void); #else -static inline int exynos_pm_late_initcall(void) { return 0; } +static int exynos_pm_late_initcall(void) { return 0; } #endif #ifdef CONFIG_ARCH_EXYNOS4 diff --git a/trunk/arch/arm/mach-omap2/Kconfig b/trunk/arch/arm/mach-omap2/Kconfig index 41b581fd0213..be0f62bf9037 100644 --- a/trunk/arch/arm/mach-omap2/Kconfig +++ b/trunk/arch/arm/mach-omap2/Kconfig @@ -26,8 +26,6 @@ config SOC_HAS_OMAP2_SDRC config SOC_HAS_REALTIME_COUNTER bool "Real time free running counter" - depends on SOC_OMAP5 - default y config ARCH_OMAP2 bool "TI OMAP2" @@ -81,6 +79,7 @@ config SOC_OMAP5 select ARM_GIC select CPU_V7 select HAVE_SMP + select SOC_HAS_REALTIME_COUNTER select COMMON_CLK comment "OMAP Core Type" diff --git a/trunk/arch/arm/mach-omap2/board-3430sdp.c b/trunk/arch/arm/mach-omap2/board-3430sdp.c index bb73afc9ac17..7b201546834d 100644 --- a/trunk/arch/arm/mach-omap2/board-3430sdp.c +++ b/trunk/arch/arm/mach-omap2/board-3430sdp.c @@ -157,7 +157,6 @@ static struct omap_dss_device sdp3430_lcd_device = { static struct tfp410_platform_data dvi_panel = { .power_down_gpio = -1, - .i2c_bus_num = -1, }; static struct omap_dss_device sdp3430_dvi_device = { diff --git a/trunk/arch/arm/mach-omap2/board-am3517evm.c b/trunk/arch/arm/mach-omap2/board-am3517evm.c index f81a303b87ff..4be58fd071f6 100644 --- a/trunk/arch/arm/mach-omap2/board-am3517evm.c +++ b/trunk/arch/arm/mach-omap2/board-am3517evm.c @@ -208,7 +208,6 @@ static struct omap_dss_device am3517_evm_tv_device = { static struct tfp410_platform_data dvi_panel = { .power_down_gpio = -1, - .i2c_bus_num = -1, }; static struct omap_dss_device am3517_evm_dvi_device = { diff --git a/trunk/arch/arm/mach-omap2/board-cm-t35.c b/trunk/arch/arm/mach-omap2/board-cm-t35.c index b3102c2f4a3c..c8e37dc00892 100644 --- a/trunk/arch/arm/mach-omap2/board-cm-t35.c +++ b/trunk/arch/arm/mach-omap2/board-cm-t35.c @@ -241,7 +241,6 @@ static struct omap_dss_device cm_t35_lcd_device = { static struct tfp410_platform_data dvi_panel = { .power_down_gpio = CM_T35_DVI_EN_GPIO, - .i2c_bus_num = -1, }; static struct omap_dss_device cm_t35_dvi_device = { diff --git a/trunk/arch/arm/mach-omap2/board-devkit8000.c b/trunk/arch/arm/mach-omap2/board-devkit8000.c index 12865af25d3a..7667eb749522 100644 --- a/trunk/arch/arm/mach-omap2/board-devkit8000.c +++ b/trunk/arch/arm/mach-omap2/board-devkit8000.c @@ -141,7 +141,6 @@ static struct omap_dss_device devkit8000_lcd_device = { static struct tfp410_platform_data dvi_panel = { .power_down_gpio = -1, - .i2c_bus_num = 1, }; static struct omap_dss_device devkit8000_dvi_device = { diff --git a/trunk/arch/arm/mach-omap2/board-h4.c b/trunk/arch/arm/mach-omap2/board-h4.c index 3be1311f9e33..9a3878ec2256 100644 --- a/trunk/arch/arm/mach-omap2/board-h4.c +++ b/trunk/arch/arm/mach-omap2/board-h4.c @@ -27,12 +27,14 @@ #include #include #include -#include #include #include #include +#include +#include + #include