linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCHv5,RESEND 0/8] Support for Tegra 2D hardware
@ 2013-01-15 11:43 Terje Bergstrom
  2013-01-15 11:43 ` [PATCHv5,RESEND 1/8] gpu: host1x: Add host1x driver Terje Bergstrom
                   ` (8 more replies)
  0 siblings, 9 replies; 49+ messages in thread
From: Terje Bergstrom @ 2013-01-15 11:43 UTC (permalink / raw)
  To: amerilainen, airlied, thierry.reding
  Cc: dri-devel, linux-tegra, linux-kernel, Terje Bergstrom

This set of patches adds support for Tegra20 and Tegra30 host1x and
2D. It is based on linux-next-20130114. The set was regenerated with
git format-patch -M.

The fifth version merges DRM and host1x drivers into one driver. This
allowed moving include/linux/host1x.h back into the driver and removed
the need for a dummy platform device. This version also uses the code
from tegradrm driver almost as is, so there are a lot less actual code
changes.

This patch set does not have the host1x allocator, but it uses CMA
helpers for memory management.

host1x is the driver that controls host1x hardware. It supports
host1x command channels, synchronization, and memory management. It
is sectioned into logical driver under drivers/gpu/host1x and
physical driver under drivers/host1x/hw. The physical driver is
compiled with the hardware headers of the particular host1x version.

The hardware units are described (briefly) in the Tegra2 TRM. Wiki
page https://gitorious.org/linux-tegra-drm/pages/Host1xIntroduction
also contains a short description of the functionality.

The patch set merges tegradrm into host1x and adds 2D driver, which
uses host1x channels and sync points. The patch set also adds user
space API to tegradrm for accessing host1x and 2D.


Terje Bergstrom (8):
  gpu: host1x: Add host1x driver
  gpu: host1x: Add syncpoint wait and interrupts
  gpu: host1x: Add channel support
  gpu: host1x: Add debug support
  drm: tegra: Move drm to live under host1x
  gpu: host1x: Remove second host1x driver
  ARM: tegra: Add board data and 2D clocks
  drm: tegra: Add gr2d device

 arch/arm/mach-tegra/board-dt-tegra20.c         |    1 +
 arch/arm/mach-tegra/board-dt-tegra30.c         |    1 +
 arch/arm/mach-tegra/tegra20_clocks_data.c      |    2 +-
 arch/arm/mach-tegra/tegra30_clocks_data.c      |    1 +
 drivers/gpu/Makefile                           |    1 +
 drivers/gpu/drm/Kconfig                        |    2 -
 drivers/gpu/drm/Makefile                       |    1 -
 drivers/gpu/drm/tegra/Makefile                 |    7 -
 drivers/gpu/drm/tegra/drm.c                    |  115 -----
 drivers/gpu/host1x/Kconfig                     |   32 ++
 drivers/gpu/host1x/Makefile                    |   22 +
 drivers/gpu/host1x/cdma.c                      |  473 ++++++++++++++++++
 drivers/gpu/host1x/cdma.h                      |  107 +++++
 drivers/gpu/host1x/channel.c                   |  140 ++++++
 drivers/gpu/host1x/channel.h                   |   58 +++
 drivers/gpu/host1x/cma.c                       |  116 +++++
 drivers/gpu/host1x/cma.h                       |   43 ++
 drivers/gpu/host1x/debug.c                     |  215 +++++++++
 drivers/gpu/host1x/debug.h                     |   50 ++
 drivers/gpu/host1x/dev.c                       |  251 ++++++++++
 drivers/gpu/host1x/dev.h                       |  170 +++++++
 drivers/gpu/{drm/tegra => host1x/drm}/Kconfig  |    2 +-
 drivers/gpu/{drm/tegra => host1x/drm}/dc.c     |    7 +-
 drivers/gpu/{drm/tegra => host1x/drm}/dc.h     |    0
 drivers/gpu/host1x/drm/drm.c                   |  548 +++++++++++++++++++++
 drivers/gpu/{drm/tegra => host1x/drm}/drm.h    |   37 +-
 drivers/gpu/{drm/tegra => host1x/drm}/fb.c     |    0
 drivers/gpu/host1x/drm/gr2d.c                  |  325 +++++++++++++
 drivers/gpu/{drm/tegra => host1x/drm}/hdmi.c   |    7 +-
 drivers/gpu/{drm/tegra => host1x/drm}/hdmi.h   |    0
 drivers/gpu/{drm/tegra => host1x/drm}/host1x.c |    0
 drivers/gpu/{drm/tegra => host1x/drm}/output.c |    0
 drivers/gpu/{drm/tegra => host1x/drm}/rgb.c    |    0
 drivers/gpu/host1x/host1x.h                    |   29 ++
 drivers/gpu/host1x/host1x_client.h             |   34 ++
 drivers/gpu/host1x/hw/Makefile                 |    6 +
 drivers/gpu/host1x/hw/cdma_hw.c                |  478 ++++++++++++++++++
 drivers/gpu/host1x/hw/cdma_hw.h                |   37 ++
 drivers/gpu/host1x/hw/channel_hw.c             |  148 ++++++
 drivers/gpu/host1x/hw/debug_hw.c               |  400 ++++++++++++++++
 drivers/gpu/host1x/hw/host1x01.c               |   45 ++
 drivers/gpu/host1x/hw/host1x01.h               |   25 +
 drivers/gpu/host1x/hw/host1x01_hardware.h      |  150 ++++++
 drivers/gpu/host1x/hw/hw_host1x01_channel.h    |  120 +++++
 drivers/gpu/host1x/hw/hw_host1x01_sync.h       |  241 ++++++++++
 drivers/gpu/host1x/hw/hw_host1x01_uclass.h     |  168 +++++++
 drivers/gpu/host1x/hw/intr_hw.c                |  178 +++++++
 drivers/gpu/host1x/hw/syncpt_hw.c              |  157 ++++++
 drivers/gpu/host1x/intr.c                      |  383 +++++++++++++++
 drivers/gpu/host1x/intr.h                      |  109 +++++
 drivers/gpu/host1x/job.c                       |  612 ++++++++++++++++++++++++
 drivers/gpu/host1x/job.h                       |  164 +++++++
 drivers/gpu/host1x/memmgr.c                    |  173 +++++++
 drivers/gpu/host1x/memmgr.h                    |   72 +++
 drivers/gpu/host1x/syncpt.c                    |  399 +++++++++++++++
 drivers/gpu/host1x/syncpt.h                    |  165 +++++++
 drivers/video/Kconfig                          |    2 +
 include/drm/tegra_drm.h                        |  131 +++++
 include/trace/events/host1x.h                  |  272 +++++++++++
 59 files changed, 7295 insertions(+), 137 deletions(-)
 delete mode 100644 drivers/gpu/drm/tegra/Makefile
 delete mode 100644 drivers/gpu/drm/tegra/drm.c
 create mode 100644 drivers/gpu/host1x/Kconfig
 create mode 100644 drivers/gpu/host1x/Makefile
 create mode 100644 drivers/gpu/host1x/cdma.c
 create mode 100644 drivers/gpu/host1x/cdma.h
 create mode 100644 drivers/gpu/host1x/channel.c
 create mode 100644 drivers/gpu/host1x/channel.h
 create mode 100644 drivers/gpu/host1x/cma.c
 create mode 100644 drivers/gpu/host1x/cma.h
 create mode 100644 drivers/gpu/host1x/debug.c
 create mode 100644 drivers/gpu/host1x/debug.h
 create mode 100644 drivers/gpu/host1x/dev.c
 create mode 100644 drivers/gpu/host1x/dev.h
 rename drivers/gpu/{drm/tegra => host1x/drm}/Kconfig (94%)
 rename drivers/gpu/{drm/tegra => host1x/drm}/dc.c (99%)
 rename drivers/gpu/{drm/tegra => host1x/drm}/dc.h (100%)
 create mode 100644 drivers/gpu/host1x/drm/drm.c
 rename drivers/gpu/{drm/tegra => host1x/drm}/drm.h (86%)
 rename drivers/gpu/{drm/tegra => host1x/drm}/fb.c (100%)
 create mode 100644 drivers/gpu/host1x/drm/gr2d.c
 rename drivers/gpu/{drm/tegra => host1x/drm}/hdmi.c (99%)
 rename drivers/gpu/{drm/tegra => host1x/drm}/hdmi.h (100%)
 rename drivers/gpu/{drm/tegra => host1x/drm}/host1x.c (100%)
 rename drivers/gpu/{drm/tegra => host1x/drm}/output.c (100%)
 rename drivers/gpu/{drm/tegra => host1x/drm}/rgb.c (100%)
 create mode 100644 drivers/gpu/host1x/host1x.h
 create mode 100644 drivers/gpu/host1x/host1x_client.h
 create mode 100644 drivers/gpu/host1x/hw/Makefile
 create mode 100644 drivers/gpu/host1x/hw/cdma_hw.c
 create mode 100644 drivers/gpu/host1x/hw/cdma_hw.h
 create mode 100644 drivers/gpu/host1x/hw/channel_hw.c
 create mode 100644 drivers/gpu/host1x/hw/debug_hw.c
 create mode 100644 drivers/gpu/host1x/hw/host1x01.c
 create mode 100644 drivers/gpu/host1x/hw/host1x01.h
 create mode 100644 drivers/gpu/host1x/hw/host1x01_hardware.h
 create mode 100644 drivers/gpu/host1x/hw/hw_host1x01_channel.h
 create mode 100644 drivers/gpu/host1x/hw/hw_host1x01_sync.h
 create mode 100644 drivers/gpu/host1x/hw/hw_host1x01_uclass.h
 create mode 100644 drivers/gpu/host1x/hw/intr_hw.c
 create mode 100644 drivers/gpu/host1x/hw/syncpt_hw.c
 create mode 100644 drivers/gpu/host1x/intr.c
 create mode 100644 drivers/gpu/host1x/intr.h
 create mode 100644 drivers/gpu/host1x/job.c
 create mode 100644 drivers/gpu/host1x/job.h
 create mode 100644 drivers/gpu/host1x/memmgr.c
 create mode 100644 drivers/gpu/host1x/memmgr.h
 create mode 100644 drivers/gpu/host1x/syncpt.c
 create mode 100644 drivers/gpu/host1x/syncpt.h
 create mode 100644 include/drm/tegra_drm.h
 create mode 100644 include/trace/events/host1x.h

-- 
1.7.9.5


^ permalink raw reply	[flat|nested] 49+ messages in thread

end of thread, other threads:[~2013-03-11  9:41 UTC | newest]

Thread overview: 49+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-01-15 11:43 [PATCHv5,RESEND 0/8] Support for Tegra 2D hardware Terje Bergstrom
2013-01-15 11:43 ` [PATCHv5,RESEND 1/8] gpu: host1x: Add host1x driver Terje Bergstrom
2013-02-04  9:09   ` Thierry Reding
2013-02-05  3:30     ` Terje Bergström
2013-02-05  7:43       ` Thierry Reding
2013-02-06 20:13         ` Terje Bergström
2013-01-15 11:43 ` [PATCHv5,RESEND 2/8] gpu: host1x: Add syncpoint wait and interrupts Terje Bergstrom
2013-02-04 10:30   ` Thierry Reding
2013-02-05  4:29     ` Terje Bergström
2013-02-05  8:42       ` Thierry Reding
2013-02-06 20:29         ` Terje Bergström
2013-02-06 20:38           ` Thierry Reding
2013-02-06 20:41             ` Terje Bergström
2013-01-15 11:43 ` [PATCHv5,RESEND 3/8] gpu: host1x: Add channel support Terje Bergstrom
2013-02-25 15:24   ` Thierry Reding
2013-02-26  9:48     ` Terje Bergström
2013-02-27  8:56       ` Thierry Reding
2013-03-08 16:16       ` Terje Bergström
2013-03-08 20:43         ` Thierry Reding
2013-03-11  6:29           ` Terje Bergström
2013-03-11  7:18             ` Thierry Reding
2013-03-11  9:21               ` Terje Bergström
2013-03-11  9:41                 ` Thierry Reding
2013-01-15 11:44 ` [PATCHv5,RESEND 4/8] gpu: host1x: Add debug support Terje Bergstrom
2013-02-04 11:03   ` Thierry Reding
2013-02-05  4:41     ` Terje Bergström
2013-02-05  9:15       ` Thierry Reding
2013-02-06 20:58         ` Terje Bergström
2013-02-08  6:54           ` Thierry Reding
2013-01-15 11:44 ` [PATCHv5,RESEND 5/8] drm: tegra: Move drm to live under host1x Terje Bergstrom
2013-02-04 11:08   ` Thierry Reding
2013-02-05  4:45     ` Terje Bergström
2013-02-05  9:26       ` Thierry Reding
2013-01-15 11:44 ` [PATCHv5,RESEND 6/8] gpu: host1x: Remove second host1x driver Terje Bergstrom
2013-02-04 11:23   ` Thierry Reding
2013-01-15 11:44 ` [PATCHv5,RESEND 7/8] ARM: tegra: Add board data and 2D clocks Terje Bergstrom
2013-02-04 11:26   ` Thierry Reding
2013-02-04 17:06     ` Stephen Warren
2013-02-05  4:47     ` Terje Bergström
2013-01-15 11:44 ` [PATCHv5,RESEND 8/8] drm: tegra: Add gr2d device Terje Bergstrom
2013-02-04 12:56   ` Thierry Reding
2013-02-05  5:17     ` Terje Bergström
2013-02-05  9:54       ` Thierry Reding
2013-02-06 21:23         ` Terje Bergström
2013-02-08  7:07           ` Thierry Reding
2013-02-11  0:42             ` Terje Bergström
2013-02-11  6:44               ` Thierry Reding
2013-02-11 15:40                 ` Terje Bergström
2013-01-22  9:03 ` [PATCHv5,RESEND 0/8] Support for Tegra 2D hardware Terje Bergström

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).