linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/2] usb: host: ehci-platform: add ignore-oc DT support
@ 2021-02-23 15:50 Álvaro Fernández Rojas
  2021-02-23 15:50 ` [PATCH 1/2] dt-bindings: usb: generic-ehci: document ignore-oc flag Álvaro Fernández Rojas
                   ` (3 more replies)
  0 siblings, 4 replies; 18+ messages in thread
From: Álvaro Fernández Rojas @ 2021-02-23 15:50 UTC (permalink / raw)
  To: f.fainelli, jonas.gorski, Greg Kroah-Hartman, Rob Herring,
	Alan Stern, Tony Prisk, linux-usb, devicetree, linux-kernel,
	linux-arm-kernel
  Cc: Álvaro Fernández Rojas

Over-current reporting isn't supported on some platforms such as bcm63xx.
These devices will incorrectly report over-current if this flag isn't properly
activated.

Álvaro Fernández Rojas (2):
  dt-bindings: usb: generic-ehci: document ignore-oc flag
  usb: host: ehci-platform: add ignore-oc DT support

 Documentation/devicetree/bindings/usb/generic-ehci.yaml | 5 +++++
 drivers/usb/host/ehci-platform.c                        | 3 +++
 2 files changed, 8 insertions(+)

-- 
2.20.1


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

* [PATCH 1/2] dt-bindings: usb: generic-ehci: document ignore-oc flag
  2021-02-23 15:50 [PATCH 0/2] usb: host: ehci-platform: add ignore-oc DT support Álvaro Fernández Rojas
@ 2021-02-23 15:50 ` Álvaro Fernández Rojas
  2021-02-23 15:54   ` Alan Stern
  2021-02-23 15:50 ` [PATCH 2/2] usb: host: ehci-platform: add ignore-oc DT support Álvaro Fernández Rojas
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 18+ messages in thread
From: Álvaro Fernández Rojas @ 2021-02-23 15:50 UTC (permalink / raw)
  To: f.fainelli, jonas.gorski, Greg Kroah-Hartman, Rob Herring,
	Alan Stern, Tony Prisk, linux-usb, devicetree, linux-kernel,
	linux-arm-kernel
  Cc: Álvaro Fernández Rojas

Over-current reporting isn't supported on some platforms such as bcm63xx.
These devices will incorrectly report over-current if this flag isn't properly
activated.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
---
 Documentation/devicetree/bindings/usb/generic-ehci.yaml | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/Documentation/devicetree/bindings/usb/generic-ehci.yaml b/Documentation/devicetree/bindings/usb/generic-ehci.yaml
index cf83f2d9afac..294bbf02399e 100644
--- a/Documentation/devicetree/bindings/usb/generic-ehci.yaml
+++ b/Documentation/devicetree/bindings/usb/generic-ehci.yaml
@@ -117,6 +117,11 @@ properties:
       Set this flag if EHCI has a Transaction Translator built into
       the root hub.
 
+  ignore-oc:
+    $ref: /schemas/types.yaml#/definitions/flag
+    description:
+      Set this flag for HCDs without over-current reporting support.
+
   needs-reset-on-resume:
     $ref: /schemas/types.yaml#/definitions/flag
     description:
-- 
2.20.1


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

* [PATCH 2/2] usb: host: ehci-platform: add ignore-oc DT support
  2021-02-23 15:50 [PATCH 0/2] usb: host: ehci-platform: add ignore-oc DT support Álvaro Fernández Rojas
  2021-02-23 15:50 ` [PATCH 1/2] dt-bindings: usb: generic-ehci: document ignore-oc flag Álvaro Fernández Rojas
@ 2021-02-23 15:50 ` Álvaro Fernández Rojas
  2021-02-23 17:37   ` kernel test robot
  2021-02-23 19:22   ` kernel test robot
  2021-02-23 16:16 ` [PATCH v2 0/2] " Álvaro Fernández Rojas
  2021-02-23 17:44 ` [PATCH v3 0/3] usb: host: ehci-platform: add spurious-oc support Álvaro Fernández Rojas
  3 siblings, 2 replies; 18+ messages in thread
From: Álvaro Fernández Rojas @ 2021-02-23 15:50 UTC (permalink / raw)
  To: f.fainelli, jonas.gorski, Greg Kroah-Hartman, Rob Herring,
	Alan Stern, Tony Prisk, linux-usb, devicetree, linux-kernel,
	linux-arm-kernel
  Cc: Álvaro Fernández Rojas

Over-current reporting isn't supported on some platforms such as bcm63xx.
These devices will incorrectly report over-current if this flag isn't properly
activated.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
---
 drivers/usb/host/ehci-platform.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/usb/host/ehci-platform.c b/drivers/usb/host/ehci-platform.c
index a48dd3fac153..f8e58372f7fe 100644
--- a/drivers/usb/host/ehci-platform.c
+++ b/drivers/usb/host/ehci-platform.c
@@ -286,6 +286,9 @@ static int ehci_platform_probe(struct platform_device *dev)
 		if (of_property_read_bool(dev->dev.of_node, "big-endian"))
 			ehci->big_endian_mmio = ehci->big_endian_desc = 1;
 
+		if (of_property_read_bool(dev->dev.of_node, "ignore-oc"))
+			ehci->ignore_oc = 1;
+
 		if (of_property_read_bool(dev->dev.of_node,
 					  "needs-reset-on-resume"))
 			priv->reset_on_resume = true;
-- 
2.20.1


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

* Re: [PATCH 1/2] dt-bindings: usb: generic-ehci: document ignore-oc flag
  2021-02-23 15:50 ` [PATCH 1/2] dt-bindings: usb: generic-ehci: document ignore-oc flag Álvaro Fernández Rojas
@ 2021-02-23 15:54   ` Alan Stern
  2021-02-23 16:04     ` Álvaro Fernández Rojas
  0 siblings, 1 reply; 18+ messages in thread
From: Alan Stern @ 2021-02-23 15:54 UTC (permalink / raw)
  To: Álvaro Fernández Rojas
  Cc: f.fainelli, jonas.gorski, Greg Kroah-Hartman, Rob Herring,
	Tony Prisk, linux-usb, devicetree, linux-kernel,
	linux-arm-kernel

On Tue, Feb 23, 2021 at 04:50:04PM +0100, Álvaro Fernández Rojas wrote:
> Over-current reporting isn't supported on some platforms such as bcm63xx.
> These devices will incorrectly report over-current if this flag isn't properly
> activated.
> 
> Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
> ---
>  Documentation/devicetree/bindings/usb/generic-ehci.yaml | 5 +++++
>  1 file changed, 5 insertions(+)
> 
> diff --git a/Documentation/devicetree/bindings/usb/generic-ehci.yaml b/Documentation/devicetree/bindings/usb/generic-ehci.yaml
> index cf83f2d9afac..294bbf02399e 100644
> --- a/Documentation/devicetree/bindings/usb/generic-ehci.yaml
> +++ b/Documentation/devicetree/bindings/usb/generic-ehci.yaml
> @@ -117,6 +117,11 @@ properties:
>        Set this flag if EHCI has a Transaction Translator built into
>        the root hub.
>  
> +  ignore-oc:
> +    $ref: /schemas/types.yaml#/definitions/flag
> +    description:
> +      Set this flag for HCDs without over-current reporting support.

This is not a good description of a device property.  DT entries are 
supposed to described the hardware, not talk about how to use it.

When you say that the bcm63xx doesn't support over-current reporting, 
what exactly do you mean?  Do you mean that sometimes the hardware turns 
on the over-current bit when an over-current isn't actually present?  Or 
do you mean something else?

Alan Stern

> +
>    needs-reset-on-resume:
>      $ref: /schemas/types.yaml#/definitions/flag
>      description:
> -- 
> 2.20.1
> 

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

* Re: [PATCH 1/2] dt-bindings: usb: generic-ehci: document ignore-oc flag
  2021-02-23 15:54   ` Alan Stern
@ 2021-02-23 16:04     ` Álvaro Fernández Rojas
  2021-02-23 16:09       ` Alan Stern
  0 siblings, 1 reply; 18+ messages in thread
From: Álvaro Fernández Rojas @ 2021-02-23 16:04 UTC (permalink / raw)
  To: Alan Stern
  Cc: Florian Fainelli, Jonas Gorski, Greg Kroah-Hartman, Rob Herring,
	Tony Prisk, linux-usb, devicetree, linux-kernel,
	linux-arm-kernel

Hi Alan,

> El 23 feb 2021, a las 16:54, Alan Stern <stern@rowland.harvard.edu> escribió:
> 
> On Tue, Feb 23, 2021 at 04:50:04PM +0100, Álvaro Fernández Rojas wrote:
>> Over-current reporting isn't supported on some platforms such as bcm63xx.
>> These devices will incorrectly report over-current if this flag isn't properly
>> activated.
>> 
>> Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
>> ---
>> Documentation/devicetree/bindings/usb/generic-ehci.yaml | 5 +++++
>> 1 file changed, 5 insertions(+)
>> 
>> diff --git a/Documentation/devicetree/bindings/usb/generic-ehci.yaml b/Documentation/devicetree/bindings/usb/generic-ehci.yaml
>> index cf83f2d9afac..294bbf02399e 100644
>> --- a/Documentation/devicetree/bindings/usb/generic-ehci.yaml
>> +++ b/Documentation/devicetree/bindings/usb/generic-ehci.yaml
>> @@ -117,6 +117,11 @@ properties:
>>       Set this flag if EHCI has a Transaction Translator built into
>>       the root hub.
>> 
>> +  ignore-oc:
>> +    $ref: /schemas/types.yaml#/definitions/flag
>> +    description:
>> +      Set this flag for HCDs without over-current reporting support.
> 
> This is not a good description of a device property.  DT entries are 
> supposed to described the hardware, not talk about how to use it.

Any suggestions on a proper description?

> 
> When you say that the bcm63xx doesn't support over-current reporting, 
> what exactly do you mean?  Do you mean that sometimes the hardware turns 
> on the over-current bit when an over-current isn't actually present?  Or 
> do you mean something else?

Yes, the hardware turns on the over-current bit with no over-current present.

> 
> Alan Stern
> 
>> +
>>   needs-reset-on-resume:
>>     $ref: /schemas/types.yaml#/definitions/flag
>>     description:
>> -- 
>> 2.20.1

Best regards,
Álvaro.


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

* Re: [PATCH 1/2] dt-bindings: usb: generic-ehci: document ignore-oc flag
  2021-02-23 16:04     ` Álvaro Fernández Rojas
@ 2021-02-23 16:09       ` Alan Stern
  0 siblings, 0 replies; 18+ messages in thread
From: Alan Stern @ 2021-02-23 16:09 UTC (permalink / raw)
  To: Álvaro Fernández Rojas
  Cc: Florian Fainelli, Jonas Gorski, Greg Kroah-Hartman, Rob Herring,
	devicetree, linux-kernel, linux-arm-kernel

On Tue, Feb 23, 2021 at 05:04:57PM +0100, Álvaro Fernández Rojas wrote:
> Hi Alan,
> 
> > El 23 feb 2021, a las 16:54, Alan Stern <stern@rowland.harvard.edu> escribió:
> > 
> > On Tue, Feb 23, 2021 at 04:50:04PM +0100, Álvaro Fernández Rojas wrote:
> >> Over-current reporting isn't supported on some platforms such as bcm63xx.
> >> These devices will incorrectly report over-current if this flag isn't properly
> >> activated.
> >> 
> >> Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
> >> ---
> >> Documentation/devicetree/bindings/usb/generic-ehci.yaml | 5 +++++
> >> 1 file changed, 5 insertions(+)
> >> 
> >> diff --git a/Documentation/devicetree/bindings/usb/generic-ehci.yaml b/Documentation/devicetree/bindings/usb/generic-ehci.yaml
> >> index cf83f2d9afac..294bbf02399e 100644
> >> --- a/Documentation/devicetree/bindings/usb/generic-ehci.yaml
> >> +++ b/Documentation/devicetree/bindings/usb/generic-ehci.yaml
> >> @@ -117,6 +117,11 @@ properties:
> >>       Set this flag if EHCI has a Transaction Translator built into
> >>       the root hub.
> >> 
> >> +  ignore-oc:
> >> +    $ref: /schemas/types.yaml#/definitions/flag
> >> +    description:
> >> +      Set this flag for HCDs without over-current reporting support.
> > 
> > This is not a good description of a device property.  DT entries are 
> > supposed to described the hardware, not talk about how to use it.
> 
> Any suggestions on a proper description?
> 
> > 
> > When you say that the bcm63xx doesn't support over-current reporting, 
> > what exactly do you mean?  Do you mean that sometimes the hardware turns 
> > on the over-current bit when an over-current isn't actually present?  Or 
> > do you mean something else?
> 
> Yes, the hardware turns on the over-current bit with no over-current present.

Okay, in that case the property should be named something like 
"spurious_oc", and the description should say something like:

	Set this flag to indicate that the hardware sometimes turns on 
	the OC bit when an over-current isn't actually present.

Alan Stern

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

* [PATCH v2 0/2] usb: host: ehci-platform: add ignore-oc DT support
  2021-02-23 15:50 [PATCH 0/2] usb: host: ehci-platform: add ignore-oc DT support Álvaro Fernández Rojas
  2021-02-23 15:50 ` [PATCH 1/2] dt-bindings: usb: generic-ehci: document ignore-oc flag Álvaro Fernández Rojas
  2021-02-23 15:50 ` [PATCH 2/2] usb: host: ehci-platform: add ignore-oc DT support Álvaro Fernández Rojas
@ 2021-02-23 16:16 ` Álvaro Fernández Rojas
  2021-02-23 16:16   ` [PATCH v2 1/2] dt-bindings: usb: generic-ehci: document ignore-oc flag Álvaro Fernández Rojas
  2021-02-23 16:16   ` [PATCH v2 2/2] usb: host: ehci-platform: add ignore_oc DT support Álvaro Fernández Rojas
  2021-02-23 17:44 ` [PATCH v3 0/3] usb: host: ehci-platform: add spurious-oc support Álvaro Fernández Rojas
  3 siblings, 2 replies; 18+ messages in thread
From: Álvaro Fernández Rojas @ 2021-02-23 16:16 UTC (permalink / raw)
  To: f.fainelli, jonas.gorski, Greg Kroah-Hartman, Rob Herring,
	Alan Stern, Tony Prisk, linux-usb, devicetree, linux-kernel,
	linux-arm-kernel
  Cc: Álvaro Fernández Rojas

Over-current reporting isn't supported on some platforms such as bcm63xx.
These devices will incorrectly report over-current if this flag isn't properly
activated.

Álvaro Fernández Rojas (2):
  dt-bindings: usb: generic-ehci: document ignore-oc flag
  usb: host: ehci-platform: add ignore_oc DT support

 Documentation/devicetree/bindings/usb/generic-ehci.yaml | 6 ++++++
 drivers/usb/host/ehci-platform.c                        | 3 +++
 2 files changed, 9 insertions(+)

-- 
2.20.1


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

* [PATCH v2 1/2] dt-bindings: usb: generic-ehci: document ignore-oc flag
  2021-02-23 16:16 ` [PATCH v2 0/2] " Álvaro Fernández Rojas
@ 2021-02-23 16:16   ` Álvaro Fernández Rojas
  2021-02-23 16:16   ` [PATCH v2 2/2] usb: host: ehci-platform: add ignore_oc DT support Álvaro Fernández Rojas
  1 sibling, 0 replies; 18+ messages in thread
From: Álvaro Fernández Rojas @ 2021-02-23 16:16 UTC (permalink / raw)
  To: f.fainelli, jonas.gorski, Greg Kroah-Hartman, Rob Herring,
	Alan Stern, Tony Prisk, linux-usb, devicetree, linux-kernel,
	linux-arm-kernel
  Cc: Álvaro Fernández Rojas

Over-current reporting isn't supported on some platforms such as bcm63xx.
These devices will incorrectly report over-current if this flag isn't properly
activated.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
---
 v2: change flag name and improve documentation as suggested by Alan Stern.

 Documentation/devicetree/bindings/usb/generic-ehci.yaml | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/Documentation/devicetree/bindings/usb/generic-ehci.yaml b/Documentation/devicetree/bindings/usb/generic-ehci.yaml
index cf83f2d9afac..8089dc956ba3 100644
--- a/Documentation/devicetree/bindings/usb/generic-ehci.yaml
+++ b/Documentation/devicetree/bindings/usb/generic-ehci.yaml
@@ -122,6 +122,12 @@ properties:
     description:
       Set this flag to force EHCI reset after resume.
 
+  spurious-oc:
+    $ref: /schemas/types.yaml#/definitions/flag
+    description:
+      Set this flag to indicate that the hardware sometimes turns on
+      the OC bit when an over-current isn't actually present.
+
   companion:
     $ref: /schemas/types.yaml#/definitions/phandle
     description:
-- 
2.20.1


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

* [PATCH v2 2/2] usb: host: ehci-platform: add ignore_oc DT support
  2021-02-23 16:16 ` [PATCH v2 0/2] " Álvaro Fernández Rojas
  2021-02-23 16:16   ` [PATCH v2 1/2] dt-bindings: usb: generic-ehci: document ignore-oc flag Álvaro Fernández Rojas
@ 2021-02-23 16:16   ` Álvaro Fernández Rojas
  2021-02-23 16:55     ` Alan Stern
  1 sibling, 1 reply; 18+ messages in thread
From: Álvaro Fernández Rojas @ 2021-02-23 16:16 UTC (permalink / raw)
  To: f.fainelli, jonas.gorski, Greg Kroah-Hartman, Rob Herring,
	Alan Stern, Tony Prisk, linux-usb, devicetree, linux-kernel,
	linux-arm-kernel
  Cc: Álvaro Fernández Rojas

Over-current reporting isn't supported on some platforms such as bcm63xx.
These devices will incorrectly report over-current if this flag isn't properly
activated.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
---
 v2: change flag name and improve documentation as suggested by Alan Stern.

 drivers/usb/host/ehci-platform.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/usb/host/ehci-platform.c b/drivers/usb/host/ehci-platform.c
index a48dd3fac153..2c587e31d010 100644
--- a/drivers/usb/host/ehci-platform.c
+++ b/drivers/usb/host/ehci-platform.c
@@ -286,6 +286,9 @@ static int ehci_platform_probe(struct platform_device *dev)
 		if (of_property_read_bool(dev->dev.of_node, "big-endian"))
 			ehci->big_endian_mmio = ehci->big_endian_desc = 1;
 
+		if (of_property_read_bool(dev->dev.of_node, "spurious-oc"))
+			ehci->ignore_oc = 1;
+
 		if (of_property_read_bool(dev->dev.of_node,
 					  "needs-reset-on-resume"))
 			priv->reset_on_resume = true;
-- 
2.20.1


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

* Re: [PATCH v2 2/2] usb: host: ehci-platform: add ignore_oc DT support
  2021-02-23 16:16   ` [PATCH v2 2/2] usb: host: ehci-platform: add ignore_oc DT support Álvaro Fernández Rojas
@ 2021-02-23 16:55     ` Alan Stern
  0 siblings, 0 replies; 18+ messages in thread
From: Alan Stern @ 2021-02-23 16:55 UTC (permalink / raw)
  To: Álvaro Fernández Rojas
  Cc: f.fainelli, jonas.gorski, Greg Kroah-Hartman, Rob Herring,
	Tony Prisk, linux-usb, devicetree, linux-kernel,
	linux-arm-kernel

On Tue, Feb 23, 2021 at 05:16:44PM +0100, Álvaro Fernández Rojas wrote:
> Over-current reporting isn't supported on some platforms such as bcm63xx.
> These devices will incorrectly report over-current if this flag isn't properly
> activated.
> 
> Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
> ---
>  v2: change flag name and improve documentation as suggested by Alan Stern.
> 
>  drivers/usb/host/ehci-platform.c | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/drivers/usb/host/ehci-platform.c b/drivers/usb/host/ehci-platform.c
> index a48dd3fac153..2c587e31d010 100644
> --- a/drivers/usb/host/ehci-platform.c
> +++ b/drivers/usb/host/ehci-platform.c
> @@ -286,6 +286,9 @@ static int ehci_platform_probe(struct platform_device *dev)
>  		if (of_property_read_bool(dev->dev.of_node, "big-endian"))
>  			ehci->big_endian_mmio = ehci->big_endian_desc = 1;
>  
> +		if (of_property_read_bool(dev->dev.of_node, "spurious-oc"))
> +			ehci->ignore_oc = 1;
> +
>  		if (of_property_read_bool(dev->dev.of_node,
>  					  "needs-reset-on-resume"))
>  			priv->reset_on_resume = true;

Acked-by: Alan Stern <stern@rowland.harvard.edu>

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

* Re: [PATCH 2/2] usb: host: ehci-platform: add ignore-oc DT support
  2021-02-23 15:50 ` [PATCH 2/2] usb: host: ehci-platform: add ignore-oc DT support Álvaro Fernández Rojas
@ 2021-02-23 17:37   ` kernel test robot
  2021-02-23 19:22   ` kernel test robot
  1 sibling, 0 replies; 18+ messages in thread
From: kernel test robot @ 2021-02-23 17:37 UTC (permalink / raw)
  To: Álvaro Fernández Rojas, f.fainelli, jonas.gorski,
	Greg Kroah-Hartman, Rob Herring, Alan Stern, Tony Prisk,
	linux-usb, devicetree, linux-kernel, linux-arm-kernel
  Cc: kbuild-all

[-- Attachment #1: Type: text/plain, Size: 6139 bytes --]

Hi "Álvaro,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on usb/usb-testing]
[also build test ERROR on v5.11 next-20210223]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]

url:    https://github.com/0day-ci/linux/commits/lvaro-Fern-ndez-Rojas/usb-host-ehci-platform-add-ignore-oc-DT-support/20210223-235717
base:   https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing
config: m68k-randconfig-s031-20210223 (attached as .config)
compiler: m68k-linux-gcc (GCC) 9.3.0
reproduce:
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # apt-get install sparse
        # sparse version: v0.6.3-229-g60c1f270-dirty
        # https://github.com/0day-ci/linux/commit/cb5cc55cab35476258f04e40cac0a9dd02271475
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review lvaro-Fern-ndez-Rojas/usb-host-ehci-platform-add-ignore-oc-DT-support/20210223-235717
        git checkout cb5cc55cab35476258f04e40cac0a9dd02271475
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=m68k 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All errors (new ones prefixed by >>):

   In file included from include/linux/build_bug.h:5,
                    from include/linux/bits.h:22,
                    from include/linux/ioport.h:13,
                    from include/linux/acpi.h:12,
                    from drivers/usb/host/ehci-platform.c:21:
   include/linux/scatterlist.h: In function 'sg_set_buf':
   arch/m68k/include/asm/page_no.h:33:50: warning: ordered comparison of pointer with null pointer [-Wextra]
      33 | #define virt_addr_valid(kaddr) (((void *)(kaddr) >= (void *)PAGE_OFFSET) && \
         |                                                  ^~
   include/linux/compiler.h:78:42: note: in definition of macro 'unlikely'
      78 | # define unlikely(x) __builtin_expect(!!(x), 0)
         |                                          ^
   include/linux/scatterlist.h:137:2: note: in expansion of macro 'BUG_ON'
     137 |  BUG_ON(!virt_addr_valid(buf));
         |  ^~~~~~
   include/linux/scatterlist.h:137:10: note: in expansion of macro 'virt_addr_valid'
     137 |  BUG_ON(!virt_addr_valid(buf));
         |          ^~~~~~~~~~~~~~~
   drivers/usb/host/ehci-platform.c: In function 'ehci_platform_probe':
>> drivers/usb/host/ehci-platform.c:290:8: error: 'struct ehci_hcd' has no member named 'ignore_oc'
     290 |    ehci->ignore_oc = 1;
         |        ^~


vim +290 drivers/usb/host/ehci-platform.c

   238	
   239	static int ehci_platform_probe(struct platform_device *dev)
   240	{
   241		struct usb_hcd *hcd;
   242		struct resource *res_mem;
   243		struct usb_ehci_pdata *pdata = dev_get_platdata(&dev->dev);
   244		struct ehci_platform_priv *priv;
   245		struct ehci_hcd *ehci;
   246		int err, irq, clk = 0;
   247	
   248		if (usb_disabled())
   249			return -ENODEV;
   250	
   251		/*
   252		 * Use reasonable defaults so platforms don't have to provide these
   253		 * with DT probing on ARM.
   254		 */
   255		if (!pdata)
   256			pdata = &ehci_platform_defaults;
   257	
   258		err = dma_coerce_mask_and_coherent(&dev->dev,
   259			pdata->dma_mask_64 ? DMA_BIT_MASK(64) : DMA_BIT_MASK(32));
   260		if (err) {
   261			dev_err(&dev->dev, "Error: DMA mask configuration failed\n");
   262			return err;
   263		}
   264	
   265		irq = platform_get_irq(dev, 0);
   266		if (irq < 0)
   267			return irq;
   268	
   269		hcd = usb_create_hcd(&ehci_platform_hc_driver, &dev->dev,
   270				     dev_name(&dev->dev));
   271		if (!hcd)
   272			return -ENOMEM;
   273	
   274		platform_set_drvdata(dev, hcd);
   275		dev->dev.platform_data = pdata;
   276		priv = hcd_to_ehci_priv(hcd);
   277		ehci = hcd_to_ehci(hcd);
   278	
   279		if (pdata == &ehci_platform_defaults && dev->dev.of_node) {
   280			if (of_property_read_bool(dev->dev.of_node, "big-endian-regs"))
   281				ehci->big_endian_mmio = 1;
   282	
   283			if (of_property_read_bool(dev->dev.of_node, "big-endian-desc"))
   284				ehci->big_endian_desc = 1;
   285	
   286			if (of_property_read_bool(dev->dev.of_node, "big-endian"))
   287				ehci->big_endian_mmio = ehci->big_endian_desc = 1;
   288	
   289			if (of_property_read_bool(dev->dev.of_node, "ignore-oc"))
 > 290				ehci->ignore_oc = 1;
   291	
   292			if (of_property_read_bool(dev->dev.of_node,
   293						  "needs-reset-on-resume"))
   294				priv->reset_on_resume = true;
   295	
   296			if (of_property_read_bool(dev->dev.of_node,
   297						  "has-transaction-translator"))
   298				hcd->has_tt = 1;
   299	
   300			if (soc_device_match(quirk_poll_match))
   301				priv->quirk_poll = true;
   302	
   303			for (clk = 0; clk < EHCI_MAX_CLKS; clk++) {
   304				priv->clks[clk] = of_clk_get(dev->dev.of_node, clk);
   305				if (IS_ERR(priv->clks[clk])) {
   306					err = PTR_ERR(priv->clks[clk]);
   307					if (err == -EPROBE_DEFER)
   308						goto err_put_clks;
   309					priv->clks[clk] = NULL;
   310					break;
   311				}
   312			}
   313		}
   314	
   315		priv->rsts = devm_reset_control_array_get_optional_shared(&dev->dev);
   316		if (IS_ERR(priv->rsts)) {
   317			err = PTR_ERR(priv->rsts);
   318			goto err_put_clks;
   319		}
   320	
   321		err = reset_control_deassert(priv->rsts);
   322		if (err)
   323			goto err_put_clks;
   324	
   325		if (pdata->big_endian_desc)
   326			ehci->big_endian_desc = 1;
   327		if (pdata->big_endian_mmio)
   328			ehci->big_endian_mmio = 1;
   329		if (pdata->has_tt)
   330			hcd->has_tt = 1;
   331		if (pdata->reset_on_resume)
   332			priv->reset_on_resume = true;
   333	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 19925 bytes --]

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

* [PATCH v3 0/3] usb: host: ehci-platform: add spurious-oc support
  2021-02-23 15:50 [PATCH 0/2] usb: host: ehci-platform: add ignore-oc DT support Álvaro Fernández Rojas
                   ` (2 preceding siblings ...)
  2021-02-23 16:16 ` [PATCH v2 0/2] " Álvaro Fernández Rojas
@ 2021-02-23 17:44 ` Álvaro Fernández Rojas
  2021-02-23 17:44   ` [PATCH v3 1/3] usb: ehci: add spurious flag to disable overcurrent checking Álvaro Fernández Rojas
                     ` (2 more replies)
  3 siblings, 3 replies; 18+ messages in thread
From: Álvaro Fernández Rojas @ 2021-02-23 17:44 UTC (permalink / raw)
  To: f.fainelli, jonas.gorski, Greg Kroah-Hartman, Rob Herring,
	Alan Stern, Tony Prisk, linux-usb, devicetree, linux-kernel,
	linux-arm-kernel
  Cc: Álvaro Fernández Rojas

Over-current reporting isn't supported on some platforms such as bcm63xx.
These devices will incorrectly report over-current if this flag isn't properly
activated.

v3: add missing patch from Florian Fainelli.
v2: change flag name and improve documentation as suggested by Alan Stern.

Florian Fainelli (1):
  usb: ehci: add spurious flag to disable overcurrent checking

Álvaro Fernández Rojas (2):
  dt-bindings: usb: generic-ehci: document spurious-oc flag
  usb: host: ehci-platform: add spurious_oc DT support

 Documentation/devicetree/bindings/usb/generic-ehci.yaml | 6 ++++++
 drivers/usb/host/ehci-hcd.c                             | 2 +-
 drivers/usb/host/ehci-hub.c                             | 4 ++--
 drivers/usb/host/ehci-platform.c                        | 5 +++++
 drivers/usb/host/ehci.h                                 | 1 +
 include/linux/usb/ehci_pdriver.h                        | 1 +
 6 files changed, 16 insertions(+), 3 deletions(-)

-- 
2.20.1


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

* [PATCH v3 1/3] usb: ehci: add spurious flag to disable overcurrent checking
  2021-02-23 17:44 ` [PATCH v3 0/3] usb: host: ehci-platform: add spurious-oc support Álvaro Fernández Rojas
@ 2021-02-23 17:44   ` Álvaro Fernández Rojas
  2021-02-23 17:44   ` [PATCH v3 2/3] dt-bindings: usb: generic-ehci: document spurious-oc flag Álvaro Fernández Rojas
  2021-02-23 17:44   ` [PATCH v3 3/3] usb: host: ehci-platform: add spurious_oc DT support Álvaro Fernández Rojas
  2 siblings, 0 replies; 18+ messages in thread
From: Álvaro Fernández Rojas @ 2021-02-23 17:44 UTC (permalink / raw)
  To: f.fainelli, jonas.gorski, Greg Kroah-Hartman, Rob Herring,
	Alan Stern, Tony Prisk, linux-usb, devicetree, linux-kernel,
	linux-arm-kernel
  Cc: Florian Fainelli, Álvaro Fernández Rojas

From: Florian Fainelli <florian@openwrt.org>

This patch adds an ignore_oc flag which can be set by EHCI controller
not supporting or wanting to disable overcurrent checking. The EHCI
platform data in include/linux/usb/ehci_pdriver.h is also augmented to
take advantage of this new flag.

Signed-off-by: Florian Fainelli <florian@openwrt.org>
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
---
 drivers/usb/host/ehci-hcd.c      | 2 +-
 drivers/usb/host/ehci-hub.c      | 4 ++--
 drivers/usb/host/ehci-platform.c | 2 ++
 drivers/usb/host/ehci.h          | 1 +
 include/linux/usb/ehci_pdriver.h | 1 +
 5 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/drivers/usb/host/ehci-hcd.c b/drivers/usb/host/ehci-hcd.c
index 1926b328b6aa..2237d22d292a 100644
--- a/drivers/usb/host/ehci-hcd.c
+++ b/drivers/usb/host/ehci-hcd.c
@@ -651,7 +651,7 @@ static int ehci_run (struct usb_hcd *hcd)
 		"USB %x.%x started, EHCI %x.%02x%s\n",
 		((ehci->sbrn & 0xf0)>>4), (ehci->sbrn & 0x0f),
 		temp >> 8, temp & 0xff,
-		ignore_oc ? ", overcurrent ignored" : "");
+		(ignore_oc || ehci->spurious_oc) ? ", overcurrent ignored" : "");
 
 	ehci_writel(ehci, INTR_MASK,
 		    &ehci->regs->intr_enable); /* Turn On Interrupts */
diff --git a/drivers/usb/host/ehci-hub.c b/drivers/usb/host/ehci-hub.c
index 9f9ab5ccea88..159cc27b1a36 100644
--- a/drivers/usb/host/ehci-hub.c
+++ b/drivers/usb/host/ehci-hub.c
@@ -643,7 +643,7 @@ ehci_hub_status_data (struct usb_hcd *hcd, char *buf)
 	 * always set, seem to clear PORT_OCC and PORT_CSC when writing to
 	 * PORT_POWER; that's surprising, but maybe within-spec.
 	 */
-	if (!ignore_oc)
+	if (!ignore_oc && !ehci->spurious_oc)
 		mask = PORT_CSC | PORT_PEC | PORT_OCC;
 	else
 		mask = PORT_CSC | PORT_PEC;
@@ -1013,7 +1013,7 @@ int ehci_hub_control(
 		if (temp & PORT_PEC)
 			status |= USB_PORT_STAT_C_ENABLE << 16;
 
-		if ((temp & PORT_OCC) && !ignore_oc){
+		if ((temp & PORT_OCC) && (!ignore_oc && !ehci->spurious_oc)){
 			status |= USB_PORT_STAT_C_OVERCURRENT << 16;
 
 			/*
diff --git a/drivers/usb/host/ehci-platform.c b/drivers/usb/host/ehci-platform.c
index a48dd3fac153..4d7b17f4f82b 100644
--- a/drivers/usb/host/ehci-platform.c
+++ b/drivers/usb/host/ehci-platform.c
@@ -327,6 +327,8 @@ static int ehci_platform_probe(struct platform_device *dev)
 		hcd->has_tt = 1;
 	if (pdata->reset_on_resume)
 		priv->reset_on_resume = true;
+	if (pdata->spurious_oc)
+		ehci->spurious_oc = 1;
 
 #ifndef CONFIG_USB_EHCI_BIG_ENDIAN_MMIO
 	if (ehci->big_endian_mmio) {
diff --git a/drivers/usb/host/ehci.h b/drivers/usb/host/ehci.h
index eabf22a78eae..80bb823aa9fe 100644
--- a/drivers/usb/host/ehci.h
+++ b/drivers/usb/host/ehci.h
@@ -218,6 +218,7 @@ struct ehci_hcd {			/* one per controller */
 	unsigned		frame_index_bug:1; /* MosChip (AKA NetMos) */
 	unsigned		need_oc_pp_cycle:1; /* MPC834X port power */
 	unsigned		imx28_write_fix:1; /* For Freescale i.MX28 */
+	unsigned		spurious_oc:1;
 
 	/* required for usb32 quirk */
 	#define OHCI_CTRL_HCFS          (3 << 6)
diff --git a/include/linux/usb/ehci_pdriver.h b/include/linux/usb/ehci_pdriver.h
index dd742afdc03f..89fc901e778f 100644
--- a/include/linux/usb/ehci_pdriver.h
+++ b/include/linux/usb/ehci_pdriver.h
@@ -50,6 +50,7 @@ struct usb_ehci_pdata {
 	unsigned	no_io_watchdog:1;
 	unsigned	reset_on_resume:1;
 	unsigned	dma_mask_64:1;
+	unsigned	spurious_oc:1;
 
 	/* Turn on all power and clocks */
 	int (*power_on)(struct platform_device *pdev);
-- 
2.20.1


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

* [PATCH v3 2/3] dt-bindings: usb: generic-ehci: document spurious-oc flag
  2021-02-23 17:44 ` [PATCH v3 0/3] usb: host: ehci-platform: add spurious-oc support Álvaro Fernández Rojas
  2021-02-23 17:44   ` [PATCH v3 1/3] usb: ehci: add spurious flag to disable overcurrent checking Álvaro Fernández Rojas
@ 2021-02-23 17:44   ` Álvaro Fernández Rojas
  2021-02-24  7:20     ` Álvaro Fernández Rojas
  2021-03-06 20:02     ` Rob Herring
  2021-02-23 17:44   ` [PATCH v3 3/3] usb: host: ehci-platform: add spurious_oc DT support Álvaro Fernández Rojas
  2 siblings, 2 replies; 18+ messages in thread
From: Álvaro Fernández Rojas @ 2021-02-23 17:44 UTC (permalink / raw)
  To: f.fainelli, jonas.gorski, Greg Kroah-Hartman, Rob Herring,
	Alan Stern, Tony Prisk, linux-usb, devicetree, linux-kernel,
	linux-arm-kernel
  Cc: Álvaro Fernández Rojas

Over-current reporting isn't supported on some platforms such as bcm63xx.
These devices will incorrectly report over-current if this flag isn't properly
activated.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
---
 v3: no changes.
 v2: change flag name and improve documentation as suggested by Alan Stern.

 Documentation/devicetree/bindings/usb/generic-ehci.yaml | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/Documentation/devicetree/bindings/usb/generic-ehci.yaml b/Documentation/devicetree/bindings/usb/generic-ehci.yaml
index cf83f2d9afac..8089dc956ba3 100644
--- a/Documentation/devicetree/bindings/usb/generic-ehci.yaml
+++ b/Documentation/devicetree/bindings/usb/generic-ehci.yaml
@@ -122,6 +122,12 @@ properties:
     description:
       Set this flag to force EHCI reset after resume.
 
+  spurious-oc:
+    $ref: /schemas/types.yaml#/definitions/flag
+    description:
+      Set this flag to indicate that the hardware sometimes turns on
+      the OC bit when an over-current isn't actually present.
+
   companion:
     $ref: /schemas/types.yaml#/definitions/phandle
     description:
-- 
2.20.1


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

* [PATCH v3 3/3] usb: host: ehci-platform: add spurious_oc DT support
  2021-02-23 17:44 ` [PATCH v3 0/3] usb: host: ehci-platform: add spurious-oc support Álvaro Fernández Rojas
  2021-02-23 17:44   ` [PATCH v3 1/3] usb: ehci: add spurious flag to disable overcurrent checking Álvaro Fernández Rojas
  2021-02-23 17:44   ` [PATCH v3 2/3] dt-bindings: usb: generic-ehci: document spurious-oc flag Álvaro Fernández Rojas
@ 2021-02-23 17:44   ` Álvaro Fernández Rojas
  2 siblings, 0 replies; 18+ messages in thread
From: Álvaro Fernández Rojas @ 2021-02-23 17:44 UTC (permalink / raw)
  To: f.fainelli, jonas.gorski, Greg Kroah-Hartman, Rob Herring,
	Alan Stern, Tony Prisk, linux-usb, devicetree, linux-kernel,
	linux-arm-kernel
  Cc: Álvaro Fernández Rojas

Over-current reporting isn't supported on some platforms such as bcm63xx.
These devices will incorrectly report over-current if this flag isn't properly
activated.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
---
 v3: no changes.

 drivers/usb/host/ehci-platform.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/usb/host/ehci-platform.c b/drivers/usb/host/ehci-platform.c
index 4d7b17f4f82b..c70f2d0b4aaf 100644
--- a/drivers/usb/host/ehci-platform.c
+++ b/drivers/usb/host/ehci-platform.c
@@ -286,6 +286,9 @@ static int ehci_platform_probe(struct platform_device *dev)
 		if (of_property_read_bool(dev->dev.of_node, "big-endian"))
 			ehci->big_endian_mmio = ehci->big_endian_desc = 1;
 
+		if (of_property_read_bool(dev->dev.of_node, "spurious-oc"))
+			ehci->spurious_oc = 1;
+
 		if (of_property_read_bool(dev->dev.of_node,
 					  "needs-reset-on-resume"))
 			priv->reset_on_resume = true;
-- 
2.20.1


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

* Re: [PATCH 2/2] usb: host: ehci-platform: add ignore-oc DT support
  2021-02-23 15:50 ` [PATCH 2/2] usb: host: ehci-platform: add ignore-oc DT support Álvaro Fernández Rojas
  2021-02-23 17:37   ` kernel test robot
@ 2021-02-23 19:22   ` kernel test robot
  1 sibling, 0 replies; 18+ messages in thread
From: kernel test robot @ 2021-02-23 19:22 UTC (permalink / raw)
  To: Álvaro Fernández Rojas, f.fainelli, jonas.gorski,
	Greg Kroah-Hartman, Rob Herring, Alan Stern, Tony Prisk,
	linux-usb, devicetree, linux-kernel, linux-arm-kernel
  Cc: kbuild-all, clang-built-linux

[-- Attachment #1: Type: text/plain, Size: 5580 bytes --]

Hi "Álvaro,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on usb/usb-testing]
[also build test ERROR on v5.11 next-20210223]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]

url:    https://github.com/0day-ci/linux/commits/lvaro-Fern-ndez-Rojas/usb-host-ehci-platform-add-ignore-oc-DT-support/20210223-235717
base:   https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing
config: mips-randconfig-r022-20210223 (attached as .config)
compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project c9439ca36342fb6013187d0a69aef92736951476)
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # install mips cross compiling tool for clang build
        # apt-get install binutils-mips-linux-gnu
        # https://github.com/0day-ci/linux/commit/cb5cc55cab35476258f04e40cac0a9dd02271475
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review lvaro-Fern-ndez-Rojas/usb-host-ehci-platform-add-ignore-oc-DT-support/20210223-235717
        git checkout cb5cc55cab35476258f04e40cac0a9dd02271475
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=mips 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All error/warnings (new ones prefixed by >>):

>> drivers/usb/host/ehci-platform.c:290:10: error: no member named 'ignore_oc' in 'struct ehci_hcd'
                           ehci->ignore_oc = 1;
                           ~~~~  ^
>> drivers/usb/host/ehci-platform.c:259:24: warning: shift count >= width of type [-Wshift-count-overflow]
                   pdata->dma_mask_64 ? DMA_BIT_MASK(64) : DMA_BIT_MASK(32));
                                        ^~~~~~~~~~~~~~~~
   include/linux/dma-mapping.h:76:54: note: expanded from macro 'DMA_BIT_MASK'
   #define DMA_BIT_MASK(n) (((n) == 64) ? ~0ULL : ((1ULL<<(n))-1))
                                                        ^ ~~~
   1 warning and 1 error generated.


vim +290 drivers/usb/host/ehci-platform.c

   238	
   239	static int ehci_platform_probe(struct platform_device *dev)
   240	{
   241		struct usb_hcd *hcd;
   242		struct resource *res_mem;
   243		struct usb_ehci_pdata *pdata = dev_get_platdata(&dev->dev);
   244		struct ehci_platform_priv *priv;
   245		struct ehci_hcd *ehci;
   246		int err, irq, clk = 0;
   247	
   248		if (usb_disabled())
   249			return -ENODEV;
   250	
   251		/*
   252		 * Use reasonable defaults so platforms don't have to provide these
   253		 * with DT probing on ARM.
   254		 */
   255		if (!pdata)
   256			pdata = &ehci_platform_defaults;
   257	
   258		err = dma_coerce_mask_and_coherent(&dev->dev,
 > 259			pdata->dma_mask_64 ? DMA_BIT_MASK(64) : DMA_BIT_MASK(32));
   260		if (err) {
   261			dev_err(&dev->dev, "Error: DMA mask configuration failed\n");
   262			return err;
   263		}
   264	
   265		irq = platform_get_irq(dev, 0);
   266		if (irq < 0)
   267			return irq;
   268	
   269		hcd = usb_create_hcd(&ehci_platform_hc_driver, &dev->dev,
   270				     dev_name(&dev->dev));
   271		if (!hcd)
   272			return -ENOMEM;
   273	
   274		platform_set_drvdata(dev, hcd);
   275		dev->dev.platform_data = pdata;
   276		priv = hcd_to_ehci_priv(hcd);
   277		ehci = hcd_to_ehci(hcd);
   278	
   279		if (pdata == &ehci_platform_defaults && dev->dev.of_node) {
   280			if (of_property_read_bool(dev->dev.of_node, "big-endian-regs"))
   281				ehci->big_endian_mmio = 1;
   282	
   283			if (of_property_read_bool(dev->dev.of_node, "big-endian-desc"))
   284				ehci->big_endian_desc = 1;
   285	
   286			if (of_property_read_bool(dev->dev.of_node, "big-endian"))
   287				ehci->big_endian_mmio = ehci->big_endian_desc = 1;
   288	
   289			if (of_property_read_bool(dev->dev.of_node, "ignore-oc"))
 > 290				ehci->ignore_oc = 1;
   291	
   292			if (of_property_read_bool(dev->dev.of_node,
   293						  "needs-reset-on-resume"))
   294				priv->reset_on_resume = true;
   295	
   296			if (of_property_read_bool(dev->dev.of_node,
   297						  "has-transaction-translator"))
   298				hcd->has_tt = 1;
   299	
   300			if (soc_device_match(quirk_poll_match))
   301				priv->quirk_poll = true;
   302	
   303			for (clk = 0; clk < EHCI_MAX_CLKS; clk++) {
   304				priv->clks[clk] = of_clk_get(dev->dev.of_node, clk);
   305				if (IS_ERR(priv->clks[clk])) {
   306					err = PTR_ERR(priv->clks[clk]);
   307					if (err == -EPROBE_DEFER)
   308						goto err_put_clks;
   309					priv->clks[clk] = NULL;
   310					break;
   311				}
   312			}
   313		}
   314	
   315		priv->rsts = devm_reset_control_array_get_optional_shared(&dev->dev);
   316		if (IS_ERR(priv->rsts)) {
   317			err = PTR_ERR(priv->rsts);
   318			goto err_put_clks;
   319		}
   320	
   321		err = reset_control_deassert(priv->rsts);
   322		if (err)
   323			goto err_put_clks;
   324	
   325		if (pdata->big_endian_desc)
   326			ehci->big_endian_desc = 1;
   327		if (pdata->big_endian_mmio)
   328			ehci->big_endian_mmio = 1;
   329		if (pdata->has_tt)
   330			hcd->has_tt = 1;
   331		if (pdata->reset_on_resume)
   332			priv->reset_on_resume = true;
   333	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 40006 bytes --]

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

* Re: [PATCH v3 2/3] dt-bindings: usb: generic-ehci: document spurious-oc flag
  2021-02-23 17:44   ` [PATCH v3 2/3] dt-bindings: usb: generic-ehci: document spurious-oc flag Álvaro Fernández Rojas
@ 2021-02-24  7:20     ` Álvaro Fernández Rojas
  2021-03-06 20:02     ` Rob Herring
  1 sibling, 0 replies; 18+ messages in thread
From: Álvaro Fernández Rojas @ 2021-02-24  7:20 UTC (permalink / raw)
  To: Florian Fainelli, Jonas Gorski, Greg Kroah-Hartman, Rob Herring,
	Alan Stern, Tony Prisk, linux-usb, devicetree, linux-kernel,
	linux-arm-kernel

I didn’t change this, but I missed Alan’s Acked-by, so:
Acked-by: Alan Stern <stern@rowland.harvard.edu>

> El 23 feb 2021, a las 18:44, Álvaro Fernández Rojas <noltari@gmail.com> escribió:
> 
> Over-current reporting isn't supported on some platforms such as bcm63xx.
> These devices will incorrectly report over-current if this flag isn't properly
> activated.
> 
> Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
> ---
> v3: no changes.
> v2: change flag name and improve documentation as suggested by Alan Stern.
> 
> Documentation/devicetree/bindings/usb/generic-ehci.yaml | 6 ++++++
> 1 file changed, 6 insertions(+)
> 
> diff --git a/Documentation/devicetree/bindings/usb/generic-ehci.yaml b/Documentation/devicetree/bindings/usb/generic-ehci.yaml
> index cf83f2d9afac..8089dc956ba3 100644
> --- a/Documentation/devicetree/bindings/usb/generic-ehci.yaml
> +++ b/Documentation/devicetree/bindings/usb/generic-ehci.yaml
> @@ -122,6 +122,12 @@ properties:
>     description:
>       Set this flag to force EHCI reset after resume.
> 
> +  spurious-oc:
> +    $ref: /schemas/types.yaml#/definitions/flag
> +    description:
> +      Set this flag to indicate that the hardware sometimes turns on
> +      the OC bit when an over-current isn't actually present.
> +
>   companion:
>     $ref: /schemas/types.yaml#/definitions/phandle
>     description:
> -- 
> 2.20.1
> 


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

* Re: [PATCH v3 2/3] dt-bindings: usb: generic-ehci: document spurious-oc flag
  2021-02-23 17:44   ` [PATCH v3 2/3] dt-bindings: usb: generic-ehci: document spurious-oc flag Álvaro Fernández Rojas
  2021-02-24  7:20     ` Álvaro Fernández Rojas
@ 2021-03-06 20:02     ` Rob Herring
  1 sibling, 0 replies; 18+ messages in thread
From: Rob Herring @ 2021-03-06 20:02 UTC (permalink / raw)
  To: Álvaro Fernández Rojas
  Cc: devicetree, linux-arm-kernel, jonas.gorski, f.fainelli,
	linux-usb, Alan Stern, Tony Prisk, Greg Kroah-Hartman,
	linux-kernel, Rob Herring

On Tue, 23 Feb 2021 18:44:54 +0100, Álvaro Fernández Rojas wrote:
> Over-current reporting isn't supported on some platforms such as bcm63xx.
> These devices will incorrectly report over-current if this flag isn't properly
> activated.
> 
> Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
> ---
>  v3: no changes.
>  v2: change flag name and improve documentation as suggested by Alan Stern.
> 
>  Documentation/devicetree/bindings/usb/generic-ehci.yaml | 6 ++++++
>  1 file changed, 6 insertions(+)
> 

Acked-by: Rob Herring <robh@kernel.org>

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

end of thread, other threads:[~2021-03-06 20:03 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-02-23 15:50 [PATCH 0/2] usb: host: ehci-platform: add ignore-oc DT support Álvaro Fernández Rojas
2021-02-23 15:50 ` [PATCH 1/2] dt-bindings: usb: generic-ehci: document ignore-oc flag Álvaro Fernández Rojas
2021-02-23 15:54   ` Alan Stern
2021-02-23 16:04     ` Álvaro Fernández Rojas
2021-02-23 16:09       ` Alan Stern
2021-02-23 15:50 ` [PATCH 2/2] usb: host: ehci-platform: add ignore-oc DT support Álvaro Fernández Rojas
2021-02-23 17:37   ` kernel test robot
2021-02-23 19:22   ` kernel test robot
2021-02-23 16:16 ` [PATCH v2 0/2] " Álvaro Fernández Rojas
2021-02-23 16:16   ` [PATCH v2 1/2] dt-bindings: usb: generic-ehci: document ignore-oc flag Álvaro Fernández Rojas
2021-02-23 16:16   ` [PATCH v2 2/2] usb: host: ehci-platform: add ignore_oc DT support Álvaro Fernández Rojas
2021-02-23 16:55     ` Alan Stern
2021-02-23 17:44 ` [PATCH v3 0/3] usb: host: ehci-platform: add spurious-oc support Álvaro Fernández Rojas
2021-02-23 17:44   ` [PATCH v3 1/3] usb: ehci: add spurious flag to disable overcurrent checking Álvaro Fernández Rojas
2021-02-23 17:44   ` [PATCH v3 2/3] dt-bindings: usb: generic-ehci: document spurious-oc flag Álvaro Fernández Rojas
2021-02-24  7:20     ` Álvaro Fernández Rojas
2021-03-06 20:02     ` Rob Herring
2021-02-23 17:44   ` [PATCH v3 3/3] usb: host: ehci-platform: add spurious_oc DT support Álvaro Fernández Rojas

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).