mirror of
				https://github.com/Ysurac/openmptcprouter.git
				synced 2025-03-09 15:40:20 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			40 lines
		
	
	
	
		
			1.5 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			40 lines
		
	
	
	
		
			1.5 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
| From b1e638709325dda4e31d0af978ea9b8622cb0a79 Mon Sep 17 00:00:00 2001
 | |
| From: Phil Elwell <phil@raspberrypi.org>
 | |
| Date: Tue, 20 Feb 2018 10:07:27 +0000
 | |
| Subject: [PATCH 124/432] i2c-gpio: Also set bus numbers from reg property
 | |
| 
 | |
| I2C busses can be assigned specific bus numbers using aliases in
 | |
| Device Tree - string properties where the name is the alias and the
 | |
| value is the path to the node. The current DT parameter mechanism
 | |
| does not allow property names to be derived from a parameter value
 | |
| in any way, so it isn't possible to generate unique or matching
 | |
| aliases for nodes from an overlay that can generate multiple
 | |
| instances, e.g. i2c-gpio.
 | |
| 
 | |
| Work around this limitation (at least temporarily) by allowing
 | |
| the i2c adapter number to be initialised from the "reg" property
 | |
| if present.
 | |
| 
 | |
| Signed-off-by: Phil Elwell <phil@raspberrypi.org>
 | |
| ---
 | |
|  drivers/i2c/busses/i2c-gpio.c | 4 +++-
 | |
|  1 file changed, 3 insertions(+), 1 deletion(-)
 | |
| 
 | |
| diff --git a/drivers/i2c/busses/i2c-gpio.c b/drivers/i2c/busses/i2c-gpio.c
 | |
| index c008d209f0b8..09dc54364eb0 100644
 | |
| --- a/drivers/i2c/busses/i2c-gpio.c
 | |
| +++ b/drivers/i2c/busses/i2c-gpio.c
 | |
| @@ -350,7 +350,9 @@ static int i2c_gpio_probe(struct platform_device *pdev)
 | |
|  	adap->dev.parent = dev;
 | |
|  	adap->dev.of_node = np;
 | |
|  
 | |
| -	adap->nr = pdev->id;
 | |
| +	if (pdev->id != PLATFORM_DEVID_NONE || !pdev->dev.of_node ||
 | |
| +	    of_property_read_u32(pdev->dev.of_node, "reg", &adap->nr))
 | |
| +		adap->nr = pdev->id;
 | |
|  	ret = i2c_bit_add_numbered_bus(adap);
 | |
|  	if (ret)
 | |
|  		return ret;
 | |
| -- 
 | |
| 2.19.1
 | |
| 
 |