usb: typec: Fix unchecked return value
Subsystems (2)
PATCH 1/1 usb: typec: Fix unchecked return value
Currently there is no check on platform_get_irq() return value in case it fails, hence never actually reporting any errors and causing unexpected behavior when using such value as argument for function regmap_irq_get_virq().
Fix this by adding a proper check, a message error and return *irq* in case platform_get_irq() fails.
Addresses-Coverity-ID: 1443899 ("Improper use of negative value")
--- drivers/usb/typec/tcpm/wcove.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-)
drivers/usb/typec/tcpm/wcove.c +7 -2
@@ -615,8 +615,13 @@ static int wcove_typec_probe(struct platform_device *pdev) wcove->dev = &pdev->dev; wcove->regmap = pmic->regmap; - irq =regmap_irq_get_virq (pmic->irq_chip_data_chgr, -platform_get_irq (pdev,0 )); + irq =platform_get_irq (pdev,0 ); +if (irq <0 ) { +dev_err (&pdev->dev,"Failed to get IRQ: %d\n" , irq); +return irq; + } + + irq =regmap_irq_get_virq (pmic->irq_chip_data_chgr, irq);if (irq <0 )return irq;
Quoted 5 lines · Gustavo A. R. Silva
Currently there is no check on
platform_get_irq()return value in case it fails, hence never actually reporting any errors and causing unexpected behavior when using such value as argument for functionregmap_irq_get_virq().
Quoted 7 lines
Fix this by adding a proper check, a message error and return *irq* in case
platform_get_irq()fails.Addresses-Coverity-ID: 1443899 ("Improper use of negative value")
Fixes d2061f9cc32d ("usb: typec: add driver for Intel Whiskey Cove PMIC USB Type-C PHY")Signed-off-by Gustavo A. R. Silva <[email protected]>
Quoted 27 lines
--- drivers/usb/typec/tcpm/wcove.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-)drivers/usb/typec/tcpm/wcove.c +7
-2@@ -615,8 +615,13 @@ static int wcove_typec_probe(struct platform_device *pdev) wcove->dev = &pdev->dev; wcove->regmap = pmic->regmap; - irq =regmap_irq_get_virq (pmic->irq_chip_data_chgr, -platform_get_irq (pdev,0 )); + irq =platform_get_irq (pdev,0 ); +if (irq <0 ) { +dev_err (&pdev->dev,"Failed to get IRQ: %d\n" , irq); +return irq; + } + + irq =regmap_irq_get_virq (pmic->irq_chip_data_chgr, irq);if (irq <0 )return irq;Signature · 1 line
2.21.0
Quoted 5 lines · Gustavo A. R. Silva
Currently there is no check on
platform_get_irq()return value in case it fails, hence never actually reporting any errors and causing unexpected behavior when using such value as argument for functionregmap_irq_get_virq().
Quoted 7 lines
Fix this by adding a proper check, a message error and return *irq* in case
platform_get_irq()fails.Addresses-Coverity-ID: 1443899 ("Improper use of negative value")
Fixes d2061f9cc32d ("usb: typec: add driver for Intel Whiskey Cove PMIC USB Type-C PHY")Signed-off-by Gustavo A. R. Silva <[email protected]>
Quoted 26 lines
--- drivers/usb/typec/tcpm/wcove.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-)drivers/usb/typec/tcpm/wcove.c +7
-2@@ -615,8 +615,13 @@ static int wcove_typec_probe(struct platform_device *pdev) wcove->dev = &pdev->dev; wcove->regmap = pmic->regmap; - irq =regmap_irq_get_virq (pmic->irq_chip_data_chgr, -platform_get_irq (pdev,0 )); + irq =platform_get_irq (pdev,0 ); +if (irq <0 ) { +dev_err (&pdev->dev,"Failed to get IRQ: %d\n" , irq); +return irq; + } + + irq =regmap_irq_get_virq (pmic->irq_chip_data_chgr, irq);if (irq <0 )return irq;Signature · 1 line
2.21.0
thanks,