i2c: Use rwsem instead of mutex for board info
By using rwsem we can easily manage recursive calls of i2c_scan_static_board_info() function without breaking the locking. Signed-off-by: Rodolfo Giometti <giometti@linux.it> Signed-off-by: Jean Delvare <khali@linux-fr.org>
This commit is contained in:
committed by
Jean Delvare
parent
99cd8e2587
commit
f18c41daea
@@ -16,6 +16,8 @@
|
||||
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
*/
|
||||
|
||||
#include <linux/rwsem.h>
|
||||
|
||||
struct i2c_devinfo {
|
||||
struct list_head list;
|
||||
int busnum;
|
||||
@@ -25,7 +27,7 @@ struct i2c_devinfo {
|
||||
/* board_lock protects board_list and first_dynamic_bus_num.
|
||||
* only i2c core components are allowed to use these symbols.
|
||||
*/
|
||||
extern struct mutex __i2c_board_lock;
|
||||
extern struct rw_semaphore __i2c_board_lock;
|
||||
extern struct list_head __i2c_board_list;
|
||||
extern int __i2c_first_dynamic_bus_num;
|
||||
|
||||
|
Reference in New Issue
Block a user