1. 20 12月, 2013 1 次提交
    • T
      drm/tegra: Add DSI support · dec72739
      Thierry Reding 提交于
      This commit adds support for both DSI outputs found on Tegra. Only very
      minimal functionality is implemented, so advanced features like ganged
      mode won't work.
      
      Due to the lack of other test hardware, some sections of the driver are
      hardcoded to work with Dalmore.
      Signed-off-by: NThierry Reding <treding@nvidia.com>
      dec72739
  2. 19 12月, 2013 15 次提交
  3. 18 12月, 2013 11 次提交
    • T
      gpu: host1x: Add MIPI pad calibration DT bindings · 4c48140a
      Thierry Reding 提交于
      Introduce device tree bindings for the MIPI pad calibration controller
      found on Tegra SoCs. The controller can be used to perform calibration
      of pads used for DSI and CSI peripherals.
      Signed-off-by: NThierry Reding <treding@nvidia.com>
      4c48140a
    • T
      gpu: host1x: Update host1x device tree example · 5d30be28
      Thierry Reding 提交于
      The display controller primary clock was recently renamed to "dc", so
      update the example to reflect that.
      Signed-off-by: NThierry Reding <treding@nvidia.com>
      5d30be28
    • T
      drm/tegra: Implement panel support · 9be7d864
      Thierry Reding 提交于
      Use the DRM panel framework to attach a panel to an output. If the panel
      attached to a connector supports supports the backlight brightness
      accessors, a property will be available to allow the brightness to be
      modified from userspace.
      Signed-off-by: NThierry Reding <treding@nvidia.com>
      9be7d864
    • T
      drm/panel: Add support for Panasonic VVX10F004B0 · 210fcd9d
      Thierry Reding 提交于
      The Panasonic VVX10F004B0 is a 10.1" WUXGA TFT LCD panel connected using
      four DSI lanes.
      Signed-off-by: NThierry Reding <treding@nvidia.com>
      210fcd9d
    • T
      drm/panel: Add simple panel support · 280921de
      Thierry Reding 提交于
      Add a driver for simple panels. Such panels can have a regulator that
      provides the supply voltage and a separate GPIO to enable the panel.
      Optionally the panels can have a backlight associated with them so it
      can be enabled or disabled according to the panel's power management
      mode.
      
      Support is added for two panels: An AU Optronics 10.1" WSVGA and a
      Chunghwa Picture Tubes 10.1" WXGA panel.
      Signed-off-by: NThierry Reding <treding@nvidia.com>
      280921de
    • T
      drm: Add panel support · aead40ea
      Thierry Reding 提交于
      Add a very simple framework to register and lookup panels. Panel drivers
      can initialize a DRM panel and register it with the framework, allowing
      them to be retrieved and used by display drivers. Currently only support
      for DPMS and obtaining panel modes is provided. However it should be
      sufficient to enable a large number of panels. The framework should also
      be easily extensible to support more sophisticated kinds of panels such
      as DSI.
      
      The framework hasn't been tied into the DRM core, even though it should
      be easily possible to do so if that's what we want. In the current
      implementation, display drivers can simple make use of it to retrieve a
      panel, obtain its modes and control its DPMS mode.
      
      Note that this is currently only tested on systems that boot from a
      device tree. No glue code has been written yet for systems that use
      platform data, but it should be easy to add.
      Signed-off-by: NThierry Reding <treding@nvidia.com>
      aead40ea
    • A
      drm: Add MIPI DSI bus support · 068a0023
      Andrzej Hajda 提交于
      MIPI DSI bus allows to model DSI hosts and DSI peripherals using the
      Linux driver model. DSI hosts are registered by the DSI host drivers.
      During registration DSI peripherals will be created from the children
      of the DSI host's device tree node. Support for registration from
      board-setup code will be added later when needed.
      
      DSI hosts expose operations which can be used by DSI peripheral drivers
      to access associated devices.
      Signed-off-by: NAndrzej Hajda <a.hajda@samsung.com>
      Signed-off-by: NKyungmin Park <kyungmin.park@samsung.com>
      Signed-off-by: NThierry Reding <treding@nvidia.com>
      068a0023
    • T
      of: Add simple panel device tree binding · d95f95eb
      Thierry Reding 提交于
      This binding specifies a set of common properties for display panels. It
      can be used as a basis by bindings for specific panels.
      
      Bindings for three specific panels are provided to show how the simple
      panel binding can be used.
      Acked-by: NRob Herring <rob.herring@calxeda.com>
      Signed-off-by: NThierry Reding <treding@nvidia.com>
      d95f95eb
    • T
      of: Add MIPI DSI bus device tree bindings · 43394d2f
      Thierry Reding 提交于
      Document the device tree bindings for the MIPI DSI bus. The MIPI Display
      Serial Interface specifies a serial bus and a protocol for communication
      between a host and up to four peripherals.
      Signed-off-by: NThierry Reding <treding@nvidia.com>
      43394d2f
    • T
      Merge tag 'tegra-for-3.14-powergate' into drm/for-next · a4d86e5e
      Thierry Reding 提交于
      ARM: tegra: powergate driver changes
      
      This branch includes all the changes to Tegra's powergate driver for 3.14.
      These are separate out, since the Tegra DRM changes for 3.14 rely on the
      new APIs introduced here.
      
      A few cleanups and fixes are included, plus additions of Tegra124 SoC
      support, and a new API for manipulating Tegra's IO rail deep power down
      states.
      
      This branch is based on tag tegra-for-3.14-dmas-resets-rework, in order
      to avoid conflicts with the addition of common reset controller support
      to the powergate driver.
      a4d86e5e
    • T
      Merge tag 'tegra-for-3.14-dmas-resets-rework' into drm/for-next · b03bb79d
      Thierry Reding 提交于
      ARM: tegra: implement common DMA and resets DT bindings
      
      This series converts the Tegra DTs and drivers to use the common/
      standard DMA and reset bindings, rather than custom bindings. It also
      adds complete documentation for the Tegra clock bindings without
      actually changing any binding definitions.
      
      This conversion relies on a few sets of patches in branches from outside
      the Tegra tree:
      
      1) A patch to add an DMA channel request API which allows deferred probe
         to be implemented.
      
      2) A patch to implement a common part of the of_xlate function for DMA
         controllers.
      
      3) Some ASoC patches (which in turn rely on (1) above), which support
         deferred probe during DMA channel allocation.
      
      4) The Tegra clock driver changes for 3.14.
      
      Consequently, this branch is based on a merge of all of those external
      branches.
      
      In turn, this branch is or will be pulled into a few places that either
      rely on features introduced here, or would otherwise conflict with the
      patches:
      
      a) Tegra's own for-3.14/powergate and for-4.14/dt branches, to avoid
         conflicts.
      
      b) The DRM tree, which introduces new code that relies on the reset
         controller framework introduced in this branch, and to avoid
         conflicts.
      b03bb79d
  4. 17 12月, 2013 8 次提交
  5. 16 12月, 2013 5 次提交
    • L
      Linux 3.13-rc4 · 319e2e3f
      Linus Torvalds 提交于
      319e2e3f
    • M
      null_blk: mem garbage on NUMA systems during init · 57053d8c
      Matias Bjorling 提交于
      For NUMA systems, initializing the blk-mq layer and using per node hctx.
      We initialize submit queues to 1, while blk-mq nr_hw_queues is
      initialized to the number of NUMA nodes.
      
      This makes the null_init_hctx function overwrite memory outside of what
      it allocated.  In my case it lead to writing garbage into struct
      request_queue's mq_map.
      Signed-off-by: NMatias Bjorling <m@bjorling.me>
      Cc: Jens Axboe <axboe@kernel.dk>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      57053d8c
    • S
      radeon_pm: fix oops in hwmon_attributes_visible() and radeon_hwmon_show_temp_thresh() · e4158f1b
      Sergey Senozhatsky 提交于
      Since commit ec39f64b ("drm/radeon/dpm: Convert to use
      devm_hwmon_register_with_groups") radeon_hwmon_init() is using
      hwmon_device_register_with_groups(), which sets `rdev' as a device
      private driver_data, while hwmon_attributes_visible() and
      radeon_hwmon_show_temp_thresh() are still waiting for `drm_device'.
      
      Fix them by using dev_get_drvdata(), in order to avoid this oops:
      
        BUG: unable to handle kernel paging request at 0000000000001e28
        IP: [<ffffffffa02ae8b4>] hwmon_attributes_visible+0x18/0x3d [radeon]
        PGD 15057e067 PUD 151a8e067 PMD 0
        Oops: 0000 [#1] PREEMPT SMP
        Call Trace:
          internal_create_group+0x114/0x1d9
          sysfs_create_group+0xe/0x10
          sysfs_create_groups+0x22/0x5f
          device_add+0x34f/0x501
          device_register+0x15/0x18
          hwmon_device_register_with_groups+0xb5/0xed
          radeon_hwmon_init+0x56/0x7c [radeon]
          radeon_pm_init+0x134/0x7e5 [radeon]
          radeon_modeset_init+0x75f/0x8ed [radeon]
          radeon_driver_load_kms+0xc6/0x187 [radeon]
          drm_dev_register+0xf9/0x1b4 [drm]
          drm_get_pci_dev+0x98/0x129 [drm]
          radeon_pci_probe+0xa3/0xac [radeon]
          pci_device_probe+0x6e/0xcf
          driver_probe_device+0x98/0x1c4
          __driver_attach+0x5c/0x7e
          bus_for_each_dev+0x7b/0x85
          driver_attach+0x19/0x1b
          bus_add_driver+0x104/0x1ce
          driver_register+0x89/0xc5
          __pci_register_driver+0x58/0x5b
          drm_pci_init+0x86/0xea [drm]
          radeon_init+0x97/0x1000 [radeon]
          do_one_initcall+0x7f/0x117
          load_module+0x1583/0x1bb4
          SyS_init_module+0xa0/0xaf
      Signed-off-by: NSergey Senozhatsky <sergey.senozhatsky@gmail.com>
      Cc: Borislav Petkov <bp@alien8.de>
      Cc: Alexander Deucher <Alexander.Deucher@amd.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      e4158f1b
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net · 4a251dd2
      Linus Torvalds 提交于
      Pull networking fixes from David Miller:
      
       1) Revert CHECKSUM_COMPLETE optimization in pskb_trim_rcsum(), I can't
          figure out why it breaks things.
      
       2) Fix comparison in netfilter ipset's hash_netnet4_data_equal(), it
          was basically doing "x == x", from Dave Jones.
      
       3) Freescale FEC driver was DMA mapping the wrong number of bytes, from
          Sebastian Siewior.
      
       4) Blackhole and prohibit routes in ipv6 were not doing the right thing
          because their ->input and ->output methods were not being assigned
          correctly.  Now they behave properly like their ipv4 counterparts.
          From Kamala R.
      
       5) Several drivers advertise the NETIF_F_FRAGLIST capability, but
          really do not support this feature and will send garbage packets if
          fed fraglist SKBs.  From Eric Dumazet.
      
       6) Fix long standing user triggerable BUG_ON over loopback in RDS
          protocol stack, from Venkat Venkatsubra.
      
       7) Several not so common code paths can potentially try to invoke
          packet scheduler actions that might be NULL without checking.  Shore
          things up by either 1) defining a method as mandatory and erroring
          on registration if that method is NULL 2) defininig a method as
          optional and the registration function hooks up a default
          implementation when NULL is seen.  From Jamal Hadi Salim.
      
       8) Fix fragment detection in xen-natback driver, from Paul Durrant.
      
       9) Kill dangling enter_memory_pressure method in cg_proto ops, from
          Eric W Biederman.
      
      10) SKBs that traverse namespaces should have their local_df cleared,
          from Hannes Frederic Sowa.
      
      11) IOCB file position is not being updated by macvtap_aio_read() and
          tun_chr_aio_read().  From Zhi Yong Wu.
      
      12) Don't free virtio_net netdev before releasing all of the NAPI
          instances.  From Andrey Vagin.
      
      13) Procfs entry leak in xt_hashlimit, from Sergey Popovich.
      
      14) IPv6 routes that are no cached routes should not count against the
          garbage collection limits.  We had this almost right, but were
          missing handling addrconf generated routes properly.  From Hannes
          Frederic Sowa.
      
      15) fib{4,6}_rule_suppress() have to consider potentially seeing NULL
          route info when they are called, from Stefan Tomanek.
      
      16) TUN and MACVTAP have had truncated packet signalling for some time,
          fix from Jason Wang.
      
      17) Fix use after frrr in __udp4_lib_rcv(), from Eric Dumazet.
      
      18) xen-netback does not interpret the NAPI budget properly for TX work,
          fix from Paul Durrant.
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (132 commits)
        igb: Fix for issue where values could be too high for udelay function.
        i40e: fix null dereference
        xen-netback: fix gso_prefix check
        net: make neigh_priv_len in struct net_device 16bit instead of 8bit
        drivers: net: cpsw: fix for cpsw crash when build as modules
        xen-netback: napi: don't prematurely request a tx event
        xen-netback: napi: fix abuse of budget
        sch_tbf: use do_div() for 64-bit divide
        udp: ipv4: must add synchronization in udp_sk_rx_dst_set()
        net:fec: remove duplicate lines in comment about errata ERR006358
        Revert "8390 : Replace ei_debug with msg_enable/NETIF_MSG_* feature"
        8390 : Replace ei_debug with msg_enable/NETIF_MSG_* feature
        xen-netback: make sure skb linear area covers checksum field
        net: smc91x: Fix device tree based configuration so it's usable
        udp: ipv4: fix potential use after free in udp_v4_early_demux()
        macvtap: signal truncated packets
        tun: unbreak truncated packet signalling
        net: sched: htb: fix the calculation of quantum
        net: sched: tbf: fix the calculation of max_size
        micrel: add support for KSZ8041RNLI
        ...
      4a251dd2
    • L
      Merge branch 'x86/urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 908bfda7
      Linus Torvalds 提交于
      Pull x86 fixes from Peter Anvin:
       "This is a pretty small batch:
      
        The biggest single change is to stop using EFI time services on 32-bit
        platforms.  This matches our current behavior on 64-bit platforms as
        we already had ruled them out there as being too unreliable.  Turns
        out that affects 32-bit platforms, too.
      
        One NULL pointer fix for SGI UV.
      
        Two minor build fixes, one of which only affects icc and the other
        which affects icc and future versions or nonstandard default settings
        of gcc"
      
      * 'x86/urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, efi: Don't use (U)EFI time services on 32 bit
        x86, build, icc: Remove uninitialized_var() from compiler-intel.h
        x86/UV: Fix NULL pointer dereference in uv_flush_tlb_others() if the 'nobau' boot option is used
        x86, build: Pass in additional -mno-mmx, -mno-sse options
      908bfda7