mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-25 05:34:00 +08:00
drm/tegra: Changes for v4.4-rc1
Just a couple of minor fixes and cleanups for this cycle. -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQIcBAABCAAGBQJWM6wLAAoJEN0jrNd/PrOh/HwP/23WEi/j4lBC8NMIOuxg9Eg5 xfEN7hD3VLS3a/wzqCsM5UK9d8hSftCSKrYggKFL1NWsb3XIIyDHTc40dHl3MFMA r8WVk01XJhdpmSxhc0To1/a0HaKWfKlti2tZNTTYRa2w3pWMLSL/TVKmtAnebv9Z s15ISWzyjsV6hIMwl3AdvawLDy+u/j3kvwXw/XnSJYRvjDvsFQb0msIu7lGEIWfO /kabMKJAWUt/cdllWUbPbQdDZv2cY4m3MnSv3NLjOeyHqoZbnHvnx1zNMCYs/3+f tAzIgpPaMRVNA2vvXINqs7GA3oqks9JmqPysBfUoXD3uiewCzSHXV5fC39kwdhSh BntCBtL8PTbmVbX7dsgFEFHRx99Lvs37Jrk+4TTzO50L8nTtkXg8UsA/dpL/Ww5B jlNe/ZAXCOvlEpnmLjmH7Y2N+kbaV7yQmYv/7YKDb1hkQ3mEnv2kwbM9WdN9emyG pHdXWNGeb72Q8+fBAF1h47M40Zeebkfa6issx8uesTJj1smBwIqxIr3r8f3yShKt YbMre/K5C+X3xbX9uV79A2k9QqCgWhGkdxSmpGfivOZSzfVNZ3e81fgIeF7f3bbs uMLs2dpo46XSAOa+fl7GEKIt72824TiQSve+HpqqUv+qt2F5QcBldlwbqv0eJdF+ VmfERYXWM8sgLSLru7L7 =c0/4 -----END PGP SIGNATURE----- Merge tag 'drm/tegra/for-4.4-rc1' of git://anongit.freedesktop.org/tegra/linux into drm-next drm/tegra: Changes for v4.4-rc1 Just a couple of minor fixes and cleanups for this cycle. * tag 'drm/tegra/for-4.4-rc1' of git://anongit.freedesktop.org/tegra/linux: drm/tegra: dc: Request/free syncpoint at init/exit drm/tegra: fb: Remove gratuituous blank line gpu: host1x: Fix MLOCK's debug info
This commit is contained in:
commit
596a1d32bb
@ -1694,6 +1694,7 @@ static int tegra_dc_debugfs_exit(struct tegra_dc *dc)
|
||||
static int tegra_dc_init(struct host1x_client *client)
|
||||
{
|
||||
struct drm_device *drm = dev_get_drvdata(client->parent);
|
||||
unsigned long flags = HOST1X_SYNCPT_CLIENT_MANAGED;
|
||||
struct tegra_dc *dc = host1x_client_to_dc(client);
|
||||
struct tegra_drm *tegra = drm->dev_private;
|
||||
struct drm_plane *primary = NULL;
|
||||
@ -1701,6 +1702,10 @@ static int tegra_dc_init(struct host1x_client *client)
|
||||
u32 value;
|
||||
int err;
|
||||
|
||||
dc->syncpt = host1x_syncpt_request(dc->dev, flags);
|
||||
if (!dc->syncpt)
|
||||
dev_warn(dc->dev, "failed to allocate syncpoint\n");
|
||||
|
||||
if (tegra->domain) {
|
||||
err = iommu_attach_device(tegra->domain, dc->dev);
|
||||
if (err < 0) {
|
||||
@ -1847,6 +1852,8 @@ static int tegra_dc_exit(struct host1x_client *client)
|
||||
dc->domain = NULL;
|
||||
}
|
||||
|
||||
host1x_syncpt_free(dc->syncpt);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -1959,7 +1966,6 @@ static int tegra_dc_parse_dt(struct tegra_dc *dc)
|
||||
|
||||
static int tegra_dc_probe(struct platform_device *pdev)
|
||||
{
|
||||
unsigned long flags = HOST1X_SYNCPT_CLIENT_MANAGED;
|
||||
const struct of_device_id *id;
|
||||
struct resource *regs;
|
||||
struct tegra_dc *dc;
|
||||
@ -2034,10 +2040,6 @@ static int tegra_dc_probe(struct platform_device *pdev)
|
||||
return -ENXIO;
|
||||
}
|
||||
|
||||
dc->syncpt = host1x_syncpt_request(&pdev->dev, flags);
|
||||
if (!dc->syncpt)
|
||||
dev_warn(&pdev->dev, "failed to allocate syncpoint\n");
|
||||
|
||||
INIT_LIST_HEAD(&dc->client.list);
|
||||
dc->client.ops = &dc_client_ops;
|
||||
dc->client.dev = &pdev->dev;
|
||||
@ -2065,8 +2067,6 @@ static int tegra_dc_remove(struct platform_device *pdev)
|
||||
struct tegra_dc *dc = platform_get_drvdata(pdev);
|
||||
int err;
|
||||
|
||||
host1x_syncpt_free(dc->syncpt);
|
||||
|
||||
err = host1x_client_unregister(&dc->client);
|
||||
if (err < 0) {
|
||||
dev_err(&pdev->dev, "failed to unregister host1x client: %d\n",
|
||||
|
@ -341,7 +341,6 @@ fini:
|
||||
|
||||
static void tegra_fbdev_exit(struct tegra_fbdev *fbdev)
|
||||
{
|
||||
|
||||
drm_fb_helper_unregister_fbi(&fbdev->base);
|
||||
drm_fb_helper_release_fbi(&fbdev->base);
|
||||
|
||||
|
@ -298,7 +298,7 @@ static void host1x_debug_show_mlocks(struct host1x *host, struct output *o)
|
||||
host1x_sync_readl(host, HOST1X_SYNC_MLOCK_OWNER(i));
|
||||
if (HOST1X_SYNC_MLOCK_OWNER_CH_OWNS_V(owner))
|
||||
host1x_debug_output(o, "%d: locked by channel %d\n",
|
||||
i, HOST1X_SYNC_MLOCK_OWNER_CHID_F(owner));
|
||||
i, HOST1X_SYNC_MLOCK_OWNER_CHID_V(owner));
|
||||
else if (HOST1X_SYNC_MLOCK_OWNER_CPU_OWNS_V(owner))
|
||||
host1x_debug_output(o, "%d: locked by cpu\n", i);
|
||||
else
|
||||
|
@ -131,12 +131,12 @@ static inline u32 host1x_sync_mlock_owner_r(unsigned int id)
|
||||
}
|
||||
#define HOST1X_SYNC_MLOCK_OWNER(id) \
|
||||
host1x_sync_mlock_owner_r(id)
|
||||
static inline u32 host1x_sync_mlock_owner_chid_f(u32 v)
|
||||
static inline u32 host1x_sync_mlock_owner_chid_v(u32 v)
|
||||
{
|
||||
return (v & 0xf) << 8;
|
||||
return (v >> 8) & 0xf;
|
||||
}
|
||||
#define HOST1X_SYNC_MLOCK_OWNER_CHID_F(v) \
|
||||
host1x_sync_mlock_owner_chid_f(v)
|
||||
#define HOST1X_SYNC_MLOCK_OWNER_CHID_V(v) \
|
||||
host1x_sync_mlock_owner_chid_v(v)
|
||||
static inline u32 host1x_sync_mlock_owner_cpu_owns_v(u32 r)
|
||||
{
|
||||
return (r >> 1) & 0x1;
|
||||
|
@ -131,12 +131,12 @@ static inline u32 host1x_sync_mlock_owner_r(unsigned int id)
|
||||
}
|
||||
#define HOST1X_SYNC_MLOCK_OWNER(id) \
|
||||
host1x_sync_mlock_owner_r(id)
|
||||
static inline u32 host1x_sync_mlock_owner_chid_f(u32 v)
|
||||
static inline u32 host1x_sync_mlock_owner_chid_v(u32 v)
|
||||
{
|
||||
return (v & 0xf) << 8;
|
||||
return (v >> 8) & 0xf;
|
||||
}
|
||||
#define HOST1X_SYNC_MLOCK_OWNER_CHID_F(v) \
|
||||
host1x_sync_mlock_owner_chid_f(v)
|
||||
#define HOST1X_SYNC_MLOCK_OWNER_CHID_V(v) \
|
||||
host1x_sync_mlock_owner_chid_v(v)
|
||||
static inline u32 host1x_sync_mlock_owner_cpu_owns_v(u32 r)
|
||||
{
|
||||
return (r >> 1) & 0x1;
|
||||
|
@ -131,12 +131,12 @@ static inline u32 host1x_sync_mlock_owner_r(unsigned int id)
|
||||
}
|
||||
#define HOST1X_SYNC_MLOCK_OWNER(id) \
|
||||
host1x_sync_mlock_owner_r(id)
|
||||
static inline u32 host1x_sync_mlock_owner_chid_f(u32 v)
|
||||
static inline u32 host1x_sync_mlock_owner_chid_v(u32 v)
|
||||
{
|
||||
return (v & 0xf) << 8;
|
||||
return (v >> 8) & 0xf;
|
||||
}
|
||||
#define HOST1X_SYNC_MLOCK_OWNER_CHID_F(v) \
|
||||
host1x_sync_mlock_owner_chid_f(v)
|
||||
#define HOST1X_SYNC_MLOCK_OWNER_CHID_V(v) \
|
||||
host1x_sync_mlock_owner_chid_v(v)
|
||||
static inline u32 host1x_sync_mlock_owner_cpu_owns_v(u32 r)
|
||||
{
|
||||
return (r >> 1) & 0x1;
|
||||
|
Loading…
Reference in New Issue
Block a user