i2c: imx: switch to using gpiod for bus recovery gpios
Change the driver to use the gpio descriptors for the bus recovery information instead of the deprecated integer interface. Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Signed-off-by: Phil Reid <preid@electromag.com.au> Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
This commit is contained in:
		
							parent
							
								
									ca382f5b38
								
							
						
					
					
						commit
						ad36a27959
					
				| @ -1006,26 +1006,26 @@ static int i2c_imx_init_recovery_info(struct imx_i2c_struct *i2c_imx, | |||||||
| 			PINCTRL_STATE_DEFAULT); | 			PINCTRL_STATE_DEFAULT); | ||||||
| 	i2c_imx->pinctrl_pins_gpio = pinctrl_lookup_state(i2c_imx->pinctrl, | 	i2c_imx->pinctrl_pins_gpio = pinctrl_lookup_state(i2c_imx->pinctrl, | ||||||
| 			"gpio"); | 			"gpio"); | ||||||
| 	rinfo->sda_gpio = of_get_named_gpio(pdev->dev.of_node, "sda-gpios", 0); | 	rinfo->sda_gpiod = devm_gpiod_get(&pdev->dev, "sda", GPIOD_OUT_HIGH); | ||||||
| 	rinfo->scl_gpio = of_get_named_gpio(pdev->dev.of_node, "scl-gpios", 0); | 	rinfo->scl_gpiod = devm_gpiod_get(&pdev->dev, "scl", GPIOD_IN); | ||||||
| 
 | 
 | ||||||
| 	if (rinfo->sda_gpio == -EPROBE_DEFER || | 	if (PTR_ERR(rinfo->sda_gpiod) == -EPROBE_DEFER || | ||||||
| 	    rinfo->scl_gpio == -EPROBE_DEFER) { | 	    PTR_ERR(rinfo->scl_gpiod) == -EPROBE_DEFER) { | ||||||
| 		return -EPROBE_DEFER; | 		return -EPROBE_DEFER; | ||||||
| 	} else if (!gpio_is_valid(rinfo->sda_gpio) || | 	} else if (IS_ERR(rinfo->sda_gpiod) || | ||||||
| 		   !gpio_is_valid(rinfo->scl_gpio) || | 		   IS_ERR(rinfo->scl_gpiod) || | ||||||
| 		   IS_ERR(i2c_imx->pinctrl_pins_default) || | 		   IS_ERR(i2c_imx->pinctrl_pins_default) || | ||||||
| 		   IS_ERR(i2c_imx->pinctrl_pins_gpio)) { | 		   IS_ERR(i2c_imx->pinctrl_pins_gpio)) { | ||||||
| 		dev_dbg(&pdev->dev, "recovery information incomplete\n"); | 		dev_dbg(&pdev->dev, "recovery information incomplete\n"); | ||||||
| 		return 0; | 		return 0; | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	dev_dbg(&pdev->dev, "using scl-gpio %d and sda-gpio %d for recovery\n", | 	dev_dbg(&pdev->dev, "using scl%s for recovery\n", | ||||||
| 			rinfo->scl_gpio, rinfo->sda_gpio); | 		rinfo->sda_gpiod ? ",sda" : ""); | ||||||
| 
 | 
 | ||||||
| 	rinfo->prepare_recovery = i2c_imx_prepare_recovery; | 	rinfo->prepare_recovery = i2c_imx_prepare_recovery; | ||||||
| 	rinfo->unprepare_recovery = i2c_imx_unprepare_recovery; | 	rinfo->unprepare_recovery = i2c_imx_unprepare_recovery; | ||||||
| 	rinfo->recover_bus = i2c_generic_gpio_recovery; | 	rinfo->recover_bus = i2c_generic_scl_recovery; | ||||||
| 	i2c_imx->adapter.bus_recovery_info = rinfo; | 	i2c_imx->adapter.bus_recovery_info = rinfo; | ||||||
| 
 | 
 | ||||||
| 	return 0; | 	return 0; | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user