Revision fea20995976f4b2e8968f852a18e280487d42f0d authored by Paul Kocialkowski on 10 July 2017, 19:33:05 UTC, committed by Thierry Reding on 27 July 2017, 14:57:34 UTC
When there is no device to attach to the IOMMU domain, as may be the
case when the device-tree does not contain the proper iommu node, it is
best to keep going without IOMMU support rather than failing.
This allows the driver to probe and function instead of taking down
all of the tegra drm driver, leading to missing display support.

Signed-off-by: Paul Kocialkowski <contact@paulk.fr>
Fixes: 404bfb78daf3 ("gpu: host1x: Add IOMMU support")
Reviewed-by: Mikko Perttunen <mperttunen@nvidia.com>
Tested-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20170710193305.5987-1-contact@paulk.fr
1 parent b9670ca
Raw File
boolinit.cocci
/// Bool initializations should use true and false.  Bool tests don't need
/// comparisons.  Based on contributions from Joe Perches, Rusty Russell
/// and Bruce W Allan.
///
// Confidence: High
// Copyright: (C) 2012 Julia Lawall, INRIA/LIP6.  GPLv2.
// Copyright: (C) 2012 Gilles Muller, INRIA/LiP6.  GPLv2.
// URL: http://coccinelle.lip6.fr/
// Options: --include-headers

virtual patch
virtual context
virtual org
virtual report

@depends on patch@
bool t;
symbol true;
symbol false;
@@

(
- t == true
+ t
|
- true == t
+ t
|
- t != true
+ !t
|
- true != t
+ !t
|
- t == false
+ !t
|
- false == t
+ !t
|
- t != false
+ t
|
- false != t
+ t
)

@depends on patch disable is_zero, isnt_zero@
bool t;
@@

(
- t == 1
+ t
|
- t != 1
+ !t
|
- t == 0
+ !t
|
- t != 0
+ t
)

@depends on patch@
bool b;
@@
(
 b =
- 0
+ false
|
 b =
- 1
+ true
)

// ---------------------------------------------------------------------

@r1 depends on !patch@
bool t;
position p;
@@

(
* t@p == true
|
* true == t@p
|
* t@p != true
|
* true != t@p
|
* t@p == false
|
* false == t@p
|
* t@p != false
|
* false != t@p
)

@r2 depends on !patch disable is_zero, isnt_zero@
bool t;
position p;
@@

(
* t@p == 1
|
* t@p != 1
|
* t@p == 0
|
* t@p != 0
)

@r3 depends on !patch@
bool b;
position p1,p2;
constant c;
@@
(
*b@p1 = 0
|
*b@p1 = 1
|
*b@p2 = c
)

@script:python depends on org@
p << r1.p;
@@

cocci.print_main("WARNING: Comparison to bool",p)

@script:python depends on org@
p << r2.p;
@@

cocci.print_main("WARNING: Comparison of bool to 0/1",p)

@script:python depends on org@
p1 << r3.p1;
@@

cocci.print_main("WARNING: Assignment of bool to 0/1",p1)

@script:python depends on org@
p2 << r3.p2;
@@

cocci.print_main("ERROR: Assignment of bool to non-0/1 constant",p2)

@script:python depends on report@
p << r1.p;
@@

coccilib.report.print_report(p[0],"WARNING: Comparison to bool")

@script:python depends on report@
p << r2.p;
@@

coccilib.report.print_report(p[0],"WARNING: Comparison of bool to 0/1")

@script:python depends on report@
p1 << r3.p1;
@@

coccilib.report.print_report(p1[0],"WARNING: Assignment of bool to 0/1")

@script:python depends on report@
p2 << r3.p2;
@@

coccilib.report.print_report(p2[0],"ERROR: Assignment of bool to non-0/1 constant")
back to top