From: "Terje Bergström" <tbergstrom@nvidia.com>
To: Thierry Reding <thierry.reding@avionic-design.de>
Cc: Stephen Warren <swarren@wwwdotorg.org>,
"linux-tegra@vger.kernel.org" <linux-tegra@vger.kernel.org>,
"dri-devel@lists.freedesktop.org"
<dri-devel@lists.freedesktop.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
Arto Merilainen <amerilainen@nvidia.com>
Subject: Re: [RFC v2 6/8] gpu: drm: tegra: Remove redundant host1x
Date: Sun, 16 Dec 2012 18:37:24 +0200 [thread overview]
Message-ID: <50CDF8C4.4070108@nvidia.com> (raw)
In-Reply-To: <20121216121603.GA31780@avionic-0098.adnet.avionic-design.de>
On 16.12.2012 14:16, Thierry Reding wrote:
> Okay, so we're back on the topic of using globals. I need to assert
> again that this is not an option. If we were to use globals, then we
> could just as well leave out the dummy device and just do all of that in
> the tegra-drm driver's initialization function.
> The whole point of all this is to link the host1x and it's particular
> tegra-drm instance. I will see if I can find the time to implement this
> in the existing driver, so that the host1x code that you want to remove
> registers the tegra-drm dummy device and the tegra-drm devices use the
> accessors as discussed previously to access host1x and the dummy device.
> Once that is implemented, removing the original host1x implementation
> should be much easier since you will only have to keep the dummy device
> instantiation along with the one or two accessor functions.
I'm not sure what you have discussed with Stephen, so I might be missing
the reason why this is a problem that needs to be solved with new
dependency between tegradrm and host1x instead of locally in tegradrm
driver itself.
As far I remember, we had two reasons for discussing the dummy device.
First reason is for DC, HDMI probe calls to find the global data. Second
is giving something to DRM framework's drm_platform_init().
The easiest way to solve the probe problem is just to have a tegradrm
accessor for the global data in the way I proposed in the patchset.
Dummy device doesn't help there, as the dummy device is in no
relationship to DC and HDMI. Sure we could tell DC to ask its parent
(host1x), and call host1x driver with platform_device pointer found that
way, and host1x would return a pointer to tegradrm's data. Hanging the
data onto host1x driver is just a more complicated way of implementing
global data, and it's breaking the responsibility split between host1x
driver and tegradrm. To me, host1x driver is responsible of host1x, and
tegradrm is responsible of the DRM interface and everything related to that.
All other parts of code use drm_device->dev_private for getting the
global data, so the access problem is only for the probe calls.
drm_platform_init() needing a device is another problem.
drm_platform_init() leads to a call to the CMA FB helper. That again
needed the coherent_dma_mask set for the device give to it. I guess that
problem can be solved by just setting the mask to 0xffffffff. But that
is still something that can be handled inside tegradrm without involving
the host1x driver.
Terje
next prev parent reply other threads:[~2012-12-16 16:37 UTC|newest]
Thread overview: 145+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-11-26 13:19 [RFC v2 0/8] Support for Tegra 2D hardware Terje Bergstrom
2012-11-26 13:19 ` [RFC v2 1/8] video: tegra: Add nvhost driver Terje Bergstrom
2012-11-27 10:52 ` Sivaram Nair
2012-11-28 21:23 ` Thierry Reding
2012-11-29 10:21 ` Terje Bergström
2012-11-29 11:47 ` Thierry Reding
2012-11-29 18:38 ` Stephen Warren
2012-11-30 6:52 ` Thierry Reding
2012-11-30 8:50 ` Lucas Stach
2012-12-01 11:44 ` Terje Bergström
2012-12-01 15:10 ` Thierry Reding
2012-12-01 16:55 ` Terje Bergström
2012-12-01 17:34 ` Lucas Stach
2012-12-01 19:29 ` Terje Bergström
2012-12-01 21:42 ` Dave Airlie
2012-12-01 22:39 ` Thierry Reding
2012-12-02 11:24 ` Terje Bergström
2012-12-02 20:55 ` Thierry Reding
2012-12-03 6:26 ` Terje Bergström
2012-11-30 8:56 ` Terje Bergström
2012-11-30 10:38 ` Thierry Reding
2012-12-01 11:31 ` Terje Bergström
2012-12-01 13:42 ` Daniel Vetter
2012-12-01 16:22 ` Terje Bergström
2012-12-01 14:58 ` Thierry Reding
2012-12-01 17:13 ` Terje Bergström
2012-12-03 19:23 ` Stephen Warren
2012-12-04 21:31 ` Thierry Reding
2012-12-03 19:20 ` Stephen Warren
2012-12-03 21:03 ` Thierry Reding
2012-12-04 2:08 ` Mark Zhang
2012-12-04 2:11 ` Mark Zhang
2012-12-04 6:17 ` Terje Bergström
2012-11-29 18:34 ` Stephen Warren
2012-11-30 6:54 ` Terje Bergström
2012-11-30 6:53 ` Thierry Reding
2012-11-29 9:10 ` [RFC,v2,1/8] " Mark Zhang
2012-12-10 10:28 ` Terje Bergström
2012-11-26 13:19 ` [RFC v2 2/8] video: tegra: Add syncpoint wait and interrupts Terje Bergstrom
2012-11-27 11:02 ` Sivaram Nair
2012-11-29 8:44 ` Thierry Reding
2012-11-29 10:39 ` Terje Bergström
2012-11-30 7:22 ` Thierry Reding
2012-11-30 7:41 ` Terje Bergström
2012-11-29 18:41 ` Stephen Warren
2012-11-30 7:23 ` Thierry Reding
2012-11-26 13:19 ` [RFC v2 3/8] video: tegra: host: Add channel and client support Terje Bergstrom
2012-11-29 10:01 ` [RFC,v2,3/8] " Mark Zhang
2012-11-29 10:46 ` Terje Bergström
2012-11-30 6:13 ` Mark Zhang
2012-11-29 10:04 ` [RFC v2 3/8] " Thierry Reding
2012-11-29 11:00 ` Terje Bergström
2012-11-30 7:46 ` Thierry Reding
2012-11-26 13:19 ` [RFC v2 4/8] video: tegra: Add debug support Terje Bergstrom
2012-11-26 13:19 ` [RFC v2 5/8] ARM: tegra: Add auxiliary data for nvhost Terje Bergstrom
2012-11-26 23:39 ` Stephen Warren
2012-11-27 6:33 ` Terje Bergström
2012-11-27 17:17 ` Stephen Warren
2012-11-26 13:19 ` [RFC v2 6/8] gpu: drm: tegra: Remove redundant host1x Terje Bergstrom
2012-12-05 8:33 ` Thierry Reding
2012-12-05 10:10 ` Terje Bergström
2012-12-05 11:13 ` Thierry Reding
2012-12-05 11:47 ` Terje Bergström
2012-12-05 12:02 ` Lucas Stach
2012-12-05 12:03 ` Daniel Vetter
2012-12-05 12:08 ` Daniel Vetter
2012-12-05 12:22 ` Thierry Reding
2012-12-05 12:31 ` Daniel Vetter
2012-12-05 13:28 ` Thierry Reding
2012-12-05 16:34 ` Daniel Vetter
2012-12-05 20:44 ` Thierry Reding
2012-12-05 12:04 ` Thierry Reding
2012-12-05 15:43 ` Terje Bergström
2012-12-10 11:42 ` Terje Bergström
2012-12-12 16:08 ` Thierry Reding
2012-12-12 16:56 ` Terje Bergström
2012-12-13 8:48 ` Terje Bergström
2012-12-13 8:57 ` Thierry Reding
2012-12-13 17:58 ` Stephen Warren
2012-12-13 20:32 ` Thierry Reding
2012-12-14 6:09 ` Terje Bergström
2012-12-14 16:21 ` Stephen Warren
2012-12-14 19:59 ` Terje Bergström
2012-12-16 12:16 ` Thierry Reding
2012-12-16 16:37 ` Terje Bergström [this message]
2012-12-17 20:55 ` Stephen Warren
2012-12-18 6:37 ` Terje Bergström
2012-12-20 9:17 ` Terje Bergström
2012-12-20 17:14 ` Stephen Warren
2012-12-20 17:46 ` Terje Bergström
2012-12-20 17:55 ` Stephen Warren
2012-12-20 18:01 ` Terje Bergström
2012-12-20 20:30 ` Thierry Reding
2012-12-20 21:34 ` Terje Bergström
2012-12-20 21:50 ` Thierry Reding
2012-12-20 22:29 ` Stephen Warren
2012-12-20 22:28 ` Stephen Warren
2012-12-21 6:31 ` Terje Bergström
2012-12-21 8:57 ` Arto Merilainen
2012-12-21 21:19 ` Stephen Warren
2013-01-02 5:41 ` Terje Bergström
2013-01-04 10:09 ` Terje Bergström
2013-01-04 20:25 ` Stephen Warren
2013-01-07 8:20 ` Terje Bergström
2013-01-07 17:07 ` Stephen Warren
2013-01-15 11:30 ` Thierry Reding
2013-01-15 11:41 ` Terje Bergström
2012-11-26 13:19 ` [RFC v2 7/8] gpu: drm: tegra: Prime support Terje Bergstrom
2012-11-26 13:19 ` [RFC v2 8/8] drm: tegra: Add gr2d device Terje Bergstrom
2012-11-26 21:59 ` Rob Clark
2012-11-26 22:15 ` Dave Airlie
2012-11-27 6:52 ` Terje Bergström
2012-11-27 7:33 ` Dave Airlie
2012-11-27 8:16 ` Terje Bergström
2012-11-27 8:32 ` Dave Airlie
2012-11-27 8:45 ` Terje Bergström
2012-11-27 10:22 ` Lucas Stach
2012-11-27 10:37 ` Thierry Reding
2012-11-27 11:31 ` Terje Bergström
2012-11-27 11:47 ` Lucas Stach
2012-11-27 12:59 ` Terje Bergström
2012-11-27 23:00 ` Dave Airlie
2012-11-28 13:17 ` Terje Bergström
2012-11-28 13:33 ` Lucas Stach
2012-11-28 13:57 ` Terje Bergström
2012-11-28 14:06 ` Lucas Stach
2012-11-28 14:45 ` Terje Bergström
2012-11-28 15:13 ` Lucas Stach
2012-11-28 16:23 ` Terje Bergström
2012-11-28 18:46 ` Lucas Stach
2012-11-29 8:17 ` Terje Bergström
2012-11-29 9:09 ` Lucas Stach
2012-11-29 12:14 ` Thierry Reding
2012-11-30 7:44 ` Terje Bergström
2012-11-30 7:53 ` Lucas Stach
2012-11-29 13:36 ` Terje Bergström
2012-11-28 16:24 ` Stephen Warren
2012-11-28 20:53 ` Thomas Hellstrom
2012-12-03 9:30 ` Mark Zhang
2012-12-03 9:40 ` Daniel Vetter
2012-12-04 1:49 ` Mark Zhang
2012-11-29 7:37 ` [RFC,v2,8/8] " Mark Zhang
2012-12-01 14:45 ` [RFC v2 0/8] Support for Tegra 2D hardware Thierry Reding
2012-12-01 17:08 ` Terje Bergström
2012-12-01 19:29 ` Thierry Reding
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=50CDF8C4.4070108@nvidia.com \
--to=tbergstrom@nvidia.com \
--cc=amerilainen@nvidia.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-tegra@vger.kernel.org \
--cc=swarren@wwwdotorg.org \
--cc=thierry.reding@avionic-design.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).