forked from mirrors/linux
		
	 a39bd92e92
			
		
	
	
		a39bd92e92
		
	
	
	
	
		
			
			Add notification to inform caller that mux objects array has been created. It allows to user, invoked platform device registration for "i2c-mux-mlxcpld" driver, to be notified that mux infrastructure is available, and thus some devices could be connected to this infrastructure. Signed-off-by: Vadim Pasternak <vadimp@nvidia.com> Acked-by: Peter Rosin <peda@axentia.se> Signed-off-by: Wolfram Sang <wsa@kernel.org>
		
			
				
	
	
		
			31 lines
		
	
	
	
		
			885 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			31 lines
		
	
	
	
		
			885 B
		
	
	
	
		
			C
		
	
	
	
	
	
| /* SPDX-License-Identifier: BSD-3-Clause OR GPL-2.0 */
 | |
| /*
 | |
|  * Mellanox I2C multiplexer support in CPLD
 | |
|  *
 | |
|  * Copyright (C) 2016-2020 Mellanox Technologies
 | |
|  */
 | |
| 
 | |
| #ifndef _LINUX_I2C_MLXCPLD_H
 | |
| #define _LINUX_I2C_MLXCPLD_H
 | |
| 
 | |
| /* Platform data for the CPLD I2C multiplexers */
 | |
| 
 | |
| /* mlxcpld_mux_plat_data - per mux data, used with i2c_register_board_info
 | |
|  * @chan_ids - channels array
 | |
|  * @num_adaps - number of adapters
 | |
|  * @sel_reg_addr - mux select register offset in CPLD space
 | |
|  * @reg_size: register size in bytes
 | |
|  * @handle: handle to be passed by callback
 | |
|  * @completion_notify: callback to notify when all the adapters are created
 | |
|  */
 | |
| struct mlxcpld_mux_plat_data {
 | |
| 	int *chan_ids;
 | |
| 	int num_adaps;
 | |
| 	int sel_reg_addr;
 | |
| 	u8 reg_size;
 | |
| 	void *handle;
 | |
| 	int (*completion_notify)(void *handle, struct i2c_adapter *parent,
 | |
| 				 struct i2c_adapter *adapters[]);
 | |
| };
 | |
| 
 | |
| #endif /* _LINUX_I2C_MLXCPLD_H */
 |