1. 25 8月, 2013 1 次提交
    • R
      drm/msm: basic KMS driver for snapdragon · c8afe684
      Rob Clark 提交于
      The snapdragon chips have multiple different display controllers,
      depending on which chip variant/version.  (As far as I can tell, current
      devices have either MDP3 or MDP4, and upcoming devices have MDSS.)  And
      then external to the display controller are HDMI, DSI, etc. blocks which
      may be shared across devices which have different display controller
      blocks.
      
      To more easily add support for different display controller blocks, the
      display controller specific bits are split out into a "kms" module,
      which provides the kms plane/crtc/encoder objects.
      
      The external HDMI, DSI, etc. blocks are part encoder, and part connector
      currently.  But I think I will pull in the drm_bridge patches from
      chromeos tree, and split them into a bridge+connector, with the
      registers that need to be set in modeset handled by the bridge.  This
      would remove the 'msm_connector' base class.  But some things need to be
      double checked to make sure I could get the correct ON/OFF sequencing..
      
      This patch adds support for mdp4 crtc (including hw cursor), dtv encoder
      (part of MDP4 block), and hdmi.
      Signed-off-by: NRob Clark <robdclark@gmail.com>
      c8afe684
  2. 22 8月, 2013 1 次提交
  3. 19 8月, 2013 1 次提交
    • G
      drm: DRM should depend on HAS_DMA · cc6a36f2
      Geert Uytterhoeven 提交于
      If NO_DMA=y:
      
      drivers/built-in.o: In function `__drm_pci_free':
      drivers/gpu/drm/drm_pci.c:112: undefined reference to `dma_free_coherent'
      drivers/built-in.o: In function `drm_pci_alloc':
      drivers/gpu/drm/drm_pci.c:72: undefined reference to `dma_alloc_coherent'
      drivers/built-in.o: In function `drm_gem_unmap_dma_buf':
      drivers/gpu/drm/drm_prime.c:87: undefined reference to `dma_unmap_sg'
      drivers/built-in.o: In function `drm_gem_map_dma_buf':
      drivers/gpu/drm/drm_prime.c:78: undefined reference to `dma_map_sg'
      Signed-off-by: NGeert Uytterhoeven <geert@linux-m68k.org>
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      cc6a36f2
  4. 28 6月, 2013 1 次提交
  5. 27 6月, 2013 1 次提交
  6. 22 4月, 2013 1 次提交
  7. 12 4月, 2013 1 次提交
    • D
      drm: add new QXL driver. (v1.4) · f64122c1
      Dave Airlie 提交于
      QXL is a paravirtual graphics device used by the Spice virtual desktop
      interface.
      
      The drivers uses GEM and TTM to manage memory, the qxl hw fencing however
      is quite different than normal TTM expects, we have to keep track of a number
      of non-linear fence ids per bo that we need to have released by the hardware.
      
      The releases are freed from a workqueue that wakes up and processes the
      release ring.
      
      releases are suballocated from a BO, there are 3 release categories, drawables,
      surfaces and cursor cmds. The hw also has 3 rings for commands, cursor and release handling.
      
      The hardware also have a surface id tracking mechnaism and the driver encapsulates it completely inside the kernel, userspace never sees the actual hw surface
      ids.
      
      This requires a newer version of the QXL userspace driver, so shouldn't be
      enabled until that has been placed into your distro of choice.
      
      Authors: Dave Airlie, Alon Levy
      
      v1.1: fixup some issues in the ioctl interface with padding
      v1.2: add module device table
      v1.3: fix nomodeset, fbcon leak, dumb bo create, release ring irq,
            don't try flush release ring (broken hw), fix -modesetting.
      v1.4: fbcon cpu usage reduction + suitable accel flags.
      Signed-off-by: NAlon Levy <alevy@redhat.com>
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      f64122c1
  8. 22 2月, 2013 1 次提交
  9. 20 2月, 2013 1 次提交
    • R
      drm/tilcdc: add TI LCD Controller DRM driver (v4) · 16ea975e
      Rob Clark 提交于
      A simple DRM/KMS driver for the TI LCD Controller found in various
      smaller TI parts (AM33xx, OMAPL138, etc).  This driver uses the
      CMA helpers.  Currently only the TFP410 DVI encoder is supported
      (tested with beaglebone + DVI cape).  There are also various LCD
      displays, for which support can be added (as I get hw to test on),
      and an external i2c HDMI encoder found on some boards.
      
      The display controller supports a single CRTC.  And the encoder+
      connector are split out into sub-devices.  Depending on which LCD
      or external encoder is actually present, the appropriate output
      module(s) will be loaded.
      
      v1: original
      v2: fix fb refcnting and few other cleanups
      v3: get +/- vsync/hsync from timings rather than panel-info, add
          option DT max-bandwidth field so driver doesn't attempt to
          pick a display mode with too high memory bandwidth, and other
          small cleanups
      v4: remove some unneeded stuff from panel-info struct, properly
          set high bits for hfp/hsw/hbp for rev 2, add DT bindings docs
      Signed-off-by: NRob Clark <robdclark@gmail.com>
      Reviewed-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      Tested-by: NKoen Kooi <koen@dominion.thruhere.net>
      16ea975e
  10. 17 2月, 2013 1 次提交
    • R
      drm/omap: move out of staging · 8bb0daff
      Rob Clark 提交于
      Now that the omapdss interface has been reworked so that omapdrm can use
      dispc directly, we have been able to fix the remaining functional kms
      issues with omapdrm.  And in the mean time the PM sequencing and many
      other of that open issues have been solved.  So I think it makes sense
      to finally move omapdrm out of staging.
      Signed-off-by: NRob Clark <robdclark@gmail.com>
      8bb0daff
  11. 08 2月, 2013 1 次提交
  12. 01 2月, 2013 1 次提交
  13. 20 11月, 2012 1 次提交
  14. 18 9月, 2012 3 次提交
  15. 04 9月, 2012 1 次提交
    • S
      drm: udl: usb: Fix recursive Kconfig dependency · 95ca19cf
      Sedat Dilek 提交于
      In drivers/usb/Kconfig "config USB_ARCH_HAS_HCD" is within "if USB_SUPPORT"
      statement.
      
      In drivers/gpu/drm/Kconfig "config DRM_USB" depends on USB_ARCH_HAS_HCD
      but selects USB_SUPPORT which leads to the error for udl Kconfig:
      
      $ yes "" | make oldconfig
      scripts/kconfig/conf --oldconfig Kconfig
      drivers/gpu/drm/udl/Kconfig:1:error: recursive dependency detected!
      drivers/gpu/drm/udl/Kconfig:1:  symbol DRM_UDL depends on USB_ARCH_HAS_HCD
      drivers/usb/Kconfig:76: symbol USB_ARCH_HAS_HCD depends on USB_SUPPORT
      drivers/usb/Kconfig:58: symbol USB_SUPPORT is selected by DRM_USB
      drivers/gpu/drm/Kconfig:22:     symbol DRM_USB is selected by DRM_UDL
      
      Fix this by changing from select to depends on USB_SUPPORT in
      "config DRM_USB".
      
      This is a follow-up fix to df0b3443
      in Dave's drm-next GIT branch.
      
      [ v2: Restore old status, but change from select to depends on USB_SUPPORT ]
      Signed-off-by: NSedat Dilek <sedat.dilek@gmail.com>
      Signed-off-by: NDave Airlie <airlied@gmail.com>
      95ca19cf
  16. 24 8月, 2012 1 次提交
    • S
      drm/usb: select USB_SUPPORT in Kconfig · df0b3443
      Sachin Kamat 提交于
      DRM_USB selects USB. However, USB depends on USB_SUPPORT and USB_ARCH_HAS_HCD.
      Thus, selecting USB_SUPPORT in Kconfig avoids the following warning
      (detected when DisplayLink was selected using exynos4_defconfig):
      
      warning: (MOUSE_APPLETOUCH && MOUSE_BCM5974 && MOUSE_SYNAPTICS_USB && JOYSTICK_XPAD && TABLET_USB_ACECAD && TABLET_USB_AIPTEK && TABLET_USB_HANWANG && TABLET_USB_KBTAB && TABLET_USB_WACOM && TOUCHSCREEN_USB_COMPOSITE && INPUT_ATI_REMOTE2 && INPUT_KEYSPAN_REMOTE && INPUT_POWERMATE && INPUT_YEALINK && INPUT_CM109 && RC_ATI_REMOTE && IR_IMON && IR_MCEUSB && IR_REDRAT3 && IR_STREAMZAP && IR_IGUANA && DRM_USB) selects USB which has unmet direct dependencies (USB_SUPPORT && USB_ARCH_HAS_HCD)
      Signed-off-by: NSachin Kamat <sachin.kamat@linaro.org>
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      df0b3443
  17. 21 8月, 2012 1 次提交
    • G
      gpu/mfd/usb: Fix USB randconfig problems · 8f057d7b
      Guenter Roeck 提交于
      Fix config warning:
      
      warning: ( ... && DRM_USB) selects USB which has unmet direct dependencies
      (USB_SUPPORT && USB_ARCH_HAS_HCD)
      
      and build error:
      ERROR: "usb_speed_string" [drivers/usb/core/usbcore.ko] undefined!
      
      by adding the missing dependency on USB_ARCH_HAS_HCD to DRM_UDL and DRM_USB.
      
      This exposes:
      drivers/video/Kconfig:36:error: recursive dependency detected!
      drivers/video/Kconfig:36:       symbol FB is selected by DRM_KMS_HELPER
      drivers/gpu/drm/Kconfig:28:     symbol DRM_KMS_HELPER is selected by DRM_UDL
      drivers/gpu/drm/udl/Kconfig:1:  symbol DRM_UDL depends on USB_ARCH_HAS_HCD
      drivers/usb/Kconfig:78: symbol USB_ARCH_HAS_HCD depends on USB_ARCH_HAS_OHCI
      drivers/usb/Kconfig:16: symbol USB_ARCH_HAS_OHCI depends on I2C
      drivers/i2c/Kconfig:5:  symbol I2C is selected by FB_DDC
      drivers/video/Kconfig:86:       symbol FB_DDC is selected by FB_CYBER2000_DDC
      drivers/video/Kconfig:385:      symbol FB_CYBER2000_DDC depends on FB_CYBER2000
      drivers/video/Kconfig:373:      symbol FB_CYBER2000 depends on FB
      
      which is due to drivers/usb/Kconfig:
      config USB_ARCH_HAS_OHCI
      	...
      	default y if ARCH_PNX4008 && I2C
      
      Fix by dropping I2C from the above dependency; logic is that this is not a
      platform dependency but a configuration dependency: the _architecture_ still
      supports USB even is I2C is not selected.
      
      This exposes:
      drivers/video/Kconfig:36:error: recursive dependency detected!
      drivers/video/Kconfig:36:       symbol FB is selected by DRM_KMS_HELPER
      drivers/gpu/drm/Kconfig:28:     symbol DRM_KMS_HELPER is selected by DRM_UDL
      drivers/gpu/drm/udl/Kconfig:1:  symbol DRM_UDL depends on USB_ARCH_HAS_HCD
      drivers/usb/Kconfig:78: symbol USB_ARCH_HAS_HCD depends on USB_ARCH_HAS_OHCI
      drivers/usb/Kconfig:17: symbol USB_ARCH_HAS_OHCI depends on MFD_TC6393XB
      drivers/mfd/Kconfig:396:        symbol MFD_TC6393XB depends on GPIOLIB
      drivers/gpio/Kconfig:35:        symbol GPIOLIB is selected by FB_VIA
      drivers/video/Kconfig:1560:     symbol FB_VIA depends on FB
      
      which can be fixed by having MFD_TC6393XB select GPIOLIB instead of depending on
      it.
      Signed-off-by: NGuenter Roeck <linux@roeck-us.net>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      8f057d7b
  18. 17 5月, 2012 3 次提交
    • D
      drm/kms: driver for virtual cirrus under qemu · f9aa76a8
      Dave Airlie 提交于
      This is the initial driver for emulated cirrus GPU found in qemu.
      This driver only supports the emulated GPU and doesn't attempt
      to bind to any real cirrus GPUs.
      
      This driver is intended to be used with xf86-video-modesetting in userspace.
      It requires at least version 0.3.0
      
      This follow the same design as ast and mgag200, and is based on work
      done by Matthew Garrett previously.
      
      This GPU has no hw cursor, and it can't scanout 32-bpp, only packed 24-bpp.
      i.e. it sucks.
      Reviewed-by: NAdam Jackson <ajax@redhat.com>
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      f9aa76a8
    • D
      mgag200: initial g200se driver (v2) · 414c4531
      Dave Airlie 提交于
      This is a driver for the G200 server engines chips,
      it doesn't driver any of the Matrix G series desktop cards.
      
      It will bind to G200 SE A,B, G200EV, G200WB, G200EH and G200ER cards.
      
      Its based on previous work done my Matthew Garrett but remodelled
      to follow the same style and flow as the AST server driver. It also
      works along the same lines as the AST server driver wrt memory management.
      
      There is no userspace driver planned, xf86-video-modesetting should be used.
      It also appears these GPUs have no ARGB hw cursors.
      
      v2: add missing tagfifo reset + G200 SE memory bw setup pieces.
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      414c4531
    • D
      drm: Initial KMS driver for AST (ASpeed Technologies) 2000 series (v2) · 312fec14
      Dave Airlie 提交于
      This is the initial driver for the Aspeed Technologies chips found in
      servers. This driver supports the AST 2000, 2100, 2200, 2150 and 2300. It
      doesn't support the AST11xx due to lack of hw to test it on, and them requiring
      different codepaths.
      
      This driver is intended to be used with xf86-video-modesetting in userspace.
      
      This driver has a slightly different design than other KMS drivers, but
      future server chips will probably share similiar setup. As these GPUs commonly
      have low video RAM, it doesn't make sense to put the kms console in VRAM
      always. This driver places the kms console into system RAM, and does dirty
      updates to a copy in video RAM. When userspace sets a new scanout buffer,
      it forcefully evicts the video RAM console, and X can create a framebuffer
      that can use all of of video RAM.
      
      This driver uses TTM but in a very simple fashion to control the eviction
      to system RAM of the console, and multiple servers.
      
      v2: add s/r support, fix Kconfig.
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      312fec14
  19. 30 3月, 2012 1 次提交
  20. 22 3月, 2012 1 次提交
  21. 20 3月, 2012 2 次提交
    • C
      drm: allow loading an EDID as firmware to override broken monitor · da0df92b
      Carsten Emde 提交于
      Broken monitors and/or broken graphic boards may send erroneous or no
      EDID data. This also applies to broken KVM devices that are unable to
      correctly forward the EDID data of the connected monitor but invent
      their own fantasy data.
      
      This patch allows to specify an EDID data set to be used instead of
      probing the monitor for it. It contains built-in data sets of frequently
      used screen resolutions. In addition, a particular EDID data set may be
      provided in the /lib/firmware directory and loaded via the firmware
      interface. The name is passed to the kernel as module parameter of the
      drm_kms_helper module either when loaded
        options drm_kms_helper edid_firmware=edid/1280x1024.bin
      or as kernel commandline parameter
        drm_kms_helper.edid_firmware=edid/1280x1024.bin
      
      It is also possible to restrict the usage of a specified EDID data set
      to a particular connector. This is done by prepending the name of the
      connector to the name of the EDID data set using the syntax
        edid_firmware=[<connector>:]<edid>
      such as, for example,
        edid_firmware=DVI-I-1:edid/1920x1080.bin
      in which case no other connector will be affected.
      
      The built-in data sets are
      Resolution    Name
      --------------------------------
      1024x768      edid/1024x768.bin
      1280x1024     edid/1280x1024.bin
      1680x1050     edid/1680x1050.bin
      1920x1080     edid/1920x1080.bin
      
      They are ignored, if a file with the same name is available in the
      /lib/firmware directory.
      
      The built-in EDID data sets are based on standard timings that may not
      apply to a particular monitor and even crash it. Ideally, EDID data of
      the connected monitor should be used. They may be obtained through the
      drm/cardX/cardX-<connector>/edid entry in the /sys/devices PCI directory
      of a correctly working graphics adapter.
      
      It is even possible to specify the name of an EDID data set on-the-fly
      via the /sys/module interface, e.g.
      echo edid/myedid.bin >/sys/module/drm_kms_helper/parameters/edid_firmware
      The new screen mode is considered when the related kernel function is
      called for the first time after the change. Such calls are made when the
      X server is started or when the display settings dialog is opened in an
      already running X server.
      Signed-off-by: NCarsten Emde <C.Emde@osadl.org>
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      da0df92b
    • D
      drm/usb: move usb support into a separate module · 9c1dfc55
      Dave Airlie 提交于
      In order to satisfy all the various Kconfig options between
      USB and DRM, we need to split the USB code out into a separate module
      and export symbols to it.
      
      This fixes build problems in -next reported by sfr.
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      9c1dfc55
  22. 15 3月, 2012 1 次提交
    • D
      drm/udl: initial UDL driver (v4) · 5320918b
      Dave Airlie 提交于
      This is an initial drm/kms driver for the displaylink devices.
      
      Supports fb_defio,
      supports KMS dumb interface
      supports 24bpp via conversion to 16bpp, hw can do this better.
      supports hot unplug using new drm core features.
      
      On an unplug, it disables connector polling, unplugs connectors
      from sysfs, unplugs fbdev layer (using Kay's API), drops all the
      USB device URBs, and call the drm core to unplug the device.
      
      This driver is based in large parts on udlfb.c so I've licensed
      it under GPLv2.
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      5320918b
  23. 16 11月, 2011 1 次提交
  24. 11 11月, 2011 2 次提交
  25. 11 10月, 2011 1 次提交
  26. 05 10月, 2011 1 次提交
    • I
      DRM: add DRM Driver for Samsung SoC EXYNOS4210. · 1c248b7d
      Inki Dae 提交于
      This patch is a DRM Driver for Samsung SoC Exynos4210 and now enables
      only FIMD yet but we will add HDMI support also in the future.
      
      this patch is based on git repository below:
      git://people.freedesktop.org/~airlied/linux.git
      branch name: drm-next
      commit-id: 88ef4e3f
      
      you can refer to our working repository below:
      http://git.infradead.org/users/kmpark/linux-2.6-samsung
      branch name: samsung-drm
      
      We tried to re-use lowlevel codes of the FIMD driver(s3c-fb.c
      based on Linux framebuffer) but couldn't so because lowlevel codes
      of s3c-fb.c are included internally and so FIMD module of this driver has
      its own lowlevel codes.
      
      We used GEM framework for buffer management and DMA APIs(dma_alloc_*)
      for buffer allocation so we can allocate physically continuous memory
      for DMA through it and also we could use CMA later if CMA is applied to
      mainline.
      
      Refer to this link for CMA(Continuous Memory Allocator):
      http://lkml.org/lkml/2011/7/20/45
      
      this driver supports only physically continuous memory(non-iommu).
      
      Links to previous versions of the patchset:
      v1: < https://lwn.net/Articles/454380/ >
      v2: < http://www.spinics.net/lists/kernel/msg1224275.html >
      v3: < http://www.spinics.net/lists/dri-devel/msg13755.html >
      v4: < http://permalink.gmane.org/gmane.comp.video.dri.devel/60439 >
      v5: < http://comments.gmane.org/gmane.comp.video.dri.devel/60802 >
      
      Changelog v2:
      DRM: add DRM_IOCTL_SAMSUNG_GEM_MMAP ioctl command.
      
          this feature maps user address space to physical memory region
          once user application requests DRM_IOCTL_SAMSUNG_GEM_MMAP ioctl.
      
      DRM: code clean and add exception codes.
      
      Changelog v3:
      DRM: Support multiple irq.
      
          FIMD and HDMI have their own irq handler but DRM Framework can regiter
          only one irq handler this patch supports mutiple irq for Samsung SoC.
      
      DRM: Consider modularization.
      
          each DRM, FIMD could be built as a module.
      
      DRM: Have indenpendent crtc object.
      
          crtc isn't specific to SoC Platform so this patch gets a crtc
          to be used as common object.
          created crtc could be attached to any encoder object.
      
      DRM: code clean and add exception codes.
      
      Changelog v4:
      DRM: remove is_defult from samsung_fb.
      
          is_default isn't used for default framebuffer.
      
      DRM: code refactoring to fimd module.
          this patch is be considered with multiple display objects and
          would use its own request_irq() to register a irq handler instead of
          drm framework's one.
      
      DRM: remove find_samsung_drm_gem_object()
      
      DRM: move kernel private data structures and definitions to driver folder.
      
          samsung_drm.h would contain only public information for userspace
          ioctl interface.
      
      DRM: code refactoring to gem modules.
          buffer module isn't dependent of gem module anymore.
      
      DRM: fixed security issue.
      
      DRM: remove encoder porinter from specific connector.
      
          samsung connector doesn't need to have generic encoder.
      
      DRM: code clean and add exception codes.
      
      Changelog v5:
      DRM: updated fimd(display controller) driver.
          added various pixel formats, color key and pixel blending features.
      
      DRM: removed end_buf_off from samsung_drm_overlay structure.
          this variable isn't used and end buffer address would be
          calculated by each sub driver.
      
      DRM: use generic function for mmap_offset.
          replaced samsung_drm_gem_create_mmap_offset() and
          samsung_drm_free_mmap_offset() with generic ones applied
          to mainline recentrly.
      
      DRM: removed unnecessary codes and added exception codes.
      
      DRM: added comments and code clean.
      
      Changelog v6:
      DRM: added default config options.
      
      DRM: added padding for 64-bit align.
      
      DRM: changed prefix 'samsung' to 'exynos'
      Signed-off-by: NInki Dae <inki.dae@samsung.com>
      Signed-off-by: NJoonyoung Shim <jy0922.shim@samsung.com>
      Signed-off-by: NSeung-Woo Kim <sw0312.kim@samsung.com>
      Signed-off-by: NKyungmin Park <kyungmin.park@samsung.com>
      Reviewed-by: NKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
      Reviewed-by: NDave Airlie <airlied@redhat.com>
      Reviewed-by: NRob Clark <robdclark@gmail.com>
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      1c248b7d
  27. 27 4月, 2011 1 次提交
  28. 13 4月, 2011 1 次提交
  29. 07 2月, 2011 2 次提交
    • A
      drm/i810: remove the BKL · 1f692a14
      Arnd Bergmann 提交于
      SMP i810 systems were practically nonexistent and the configuration
      was not officially supported by Intel at the time when Pentium-III
      was common.
      
      With this change, it is still possible to build a distribution kernel
      that has support for SMP and includes the i810 driver without the BKL.
      As a precaution, check for the theoretical SMP case at run time and
      refuse to load the driver.
      
      We also need to disable CONFIG_PREEMPT builds for this driver.
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Cc: dri-devel@lists.freedesktop.org
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      1f692a14
    • A
      drm: remove i830 driver · 7f506847
      Arnd Bergmann 提交于
      This driver is one of the last users of the big kernel
      lock, which is going away. All the hardware supported
      by this driver also works with the newer i915 driver,
      and recent X.org releases only work with that driver
      anyway.
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Cc: Chris Wilson <chris@chris-wilson.co.uk>
      Cc: dri-devel@lists.freedesktop.org
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      7f506847
  30. 21 1月, 2011 1 次提交
    • D
      kconfig: rename CONFIG_EMBEDDED to CONFIG_EXPERT · 6a108a14
      David Rientjes 提交于
      The meaning of CONFIG_EMBEDDED has long since been obsoleted; the option
      is used to configure any non-standard kernel with a much larger scope than
      only small devices.
      
      This patch renames the option to CONFIG_EXPERT in init/Kconfig and fixes
      references to the option throughout the kernel.  A new CONFIG_EMBEDDED
      option is added that automatically selects CONFIG_EXPERT when enabled and
      can be used in the future to isolate options that should only be
      considered for embedded systems (RISC architectures, SLOB, etc).
      
      Calling the option "EXPERT" more accurately represents its intention: only
      expert users who understand the impact of the configuration changes they
      are making should enable it.
      Reviewed-by: NIngo Molnar <mingo@elte.hu>
      Acked-by: NDavid Woodhouse <david.woodhouse@intel.com>
      Signed-off-by: NDavid Rientjes <rientjes@google.com>
      Cc: Greg KH <gregkh@suse.de>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: Jens Axboe <axboe@kernel.dk>
      Cc: Arnd Bergmann <arnd@arndb.de>
      Cc: Robin Holt <holt@sgi.com>
      Cc: <linux-arch@vger.kernel.org>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      6a108a14
  31. 20 1月, 2011 1 次提交
    • C
      drm/i915: Add dependency on CONFIG_TMPFS · f7ab9b40
      Chris Wilson 提交于
      Without tmpfs, shmem_readpage() is not compiled in causing an OOPS as
      soon as we try to allocate some swappable pages for GEM.
      
      Jan 19 22:52:26 harlie kernel: Modules linked in: i915(+) drm_kms_helper cfbcopyarea video backlight cfbimgblt cfbfillrect
      Jan 19 22:52:26 harlie kernel:
      Jan 19 22:52:26 harlie kernel: Pid: 1125, comm: modprobe Not tainted 2.6.37Harlie #10 To be filled by O.E.M./To be filled by O.E.M.
      Jan 19 22:52:26 harlie kernel: EIP: 0060:[<00000000>] EFLAGS: 00010246 CPU: 3
      Jan 19 22:52:26 harlie kernel: EIP is at 0x0
      Jan 19 22:52:26 harlie kernel: EAX: 00000000 EBX: f7b7d000 ECX: f3383100 EDX: f7b7d000
      Jan 19 22:52:26 harlie kernel: ESI: f1456118 EDI: 00000000 EBP: f2303c98 ESP: f2303c7c
      Jan 19 22:52:26 harlie kernel:  DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068
      Jan 19 22:52:26 harlie kernel: Process modprobe (pid: 1125, ti=f2302000 task=f259cd80 task.ti=f2302000)
      Jan 19 22:52:26 harlie kernel: Stack:
      Jan 19 22:52:26 harlie udevd-work[1072]: '/sbin/modprobe -b pci:v00008086d00000046sv00000000sd00000000bc03sc00i00' unexpected exit with status 0x0009
      Jan 19 22:52:26 harlie kernel:  c1074061 000000d0 f2f42b80 00000000 000a13d2 f2d5dcc0 00000001 f2303cac
      Jan 19 22:52:26 harlie kernel:  c107416f 00000000 000a13d2 00000000 f2303cd4 f8d620ed f2cee620 00001000
      Jan 19 22:52:26 harlie kernel:  00000000 000a13d2 f1456118 f2d5dcc0 f1a40000 00001000 f2303d04 f8d637ab
      Jan 19 22:52:26 harlie kernel: Call Trace:
      Jan 19 22:52:26 harlie kernel:  [<c1074061>] ? do_read_cache_page+0x71/0x160
      Jan 19 22:52:26 harlie kernel:  [<c107416f>] ? read_cache_page_gfp+0x1f/0x30
      Jan 19 22:52:26 harlie kernel:  [<f8d620ed>] ? i915_gem_object_get_pages+0xad/0x1d0 [i915]
      Jan 19 22:52:26 harlie kernel:  [<f8d637ab>] ? i915_gem_object_bind_to_gtt+0xeb/0x2d0 [i915]
      Jan 19 22:52:26 harlie kernel:  [<f8d65961>] ? i915_gem_object_pin+0x151/0x190 [i915]
      Jan 19 22:52:26 harlie kernel:  [<c11e16ed>] ? drm_gem_object_init+0x3d/0x60
      Jan 19 22:52:26 harlie kernel:  [<f8d65aa5>] ? i915_gem_init_ringbuffer+0x105/0x1e0 [i915]
      Jan 19 22:52:26 harlie kernel:  [<f8d571b7>] ? i915_driver_load+0x667/0x1160 [i915]
      Reported-by: NJohn J. Stimson-III <john@idsfa.net>
      Signed-off-by: NChris Wilson <chris@chris-wilson.co.uk>
      Cc: stable@kernel.org
      f7ab9b40
  32. 14 12月, 2010 1 次提交
  33. 21 10月, 2010 1 次提交
    • A
      BKL: introduce CONFIG_BKL. · 6de5bd12
      Arnd Bergmann 提交于
      With all the patches we have queued in the BKL removal tree, only a
      few dozen modules are left that actually rely on the BKL, and even
      there are lots of low-hanging fruit. We need to decide what to do
      about them, this patch illustrates one of the options:
      
      Every user of the BKL is marked as 'depends on BKL' in Kconfig,
      and the CONFIG_BKL becomes a user-visible option. If it gets
      disabled, no BKL using module can be built any more and the BKL
      code itself is compiled out.
      
      The one exception is file locking, which is practically always
      enabled and does a 'select BKL' instead. This effectively forces
      CONFIG_BKL to be enabled until we have solved the fs/lockd
      mess and can apply the patch that removes the BKL from fs/locks.c.
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      6de5bd12