Lines Matching refs:supplies

31 	struct gb_power_supplies	*supplies;
312 return gbpsy->supplies->connection;
858 static void _gb_power_supplies_release(struct gb_power_supplies *supplies)
862 if (!supplies->supply)
865 mutex_lock(&supplies->supplies_lock);
866 for (i = 0; i < supplies->supplies_count; i++)
867 _gb_power_supply_release(&supplies->supply[i]);
868 kfree(supplies->supply);
869 mutex_unlock(&supplies->supplies_lock);
870 kfree(supplies);
873 static int gb_power_supplies_get_count(struct gb_power_supplies *supplies)
878 ret = gb_operation_sync(supplies->connection,
887 supplies->supplies_count = resp.supplies_count;
892 static int gb_power_supply_config(struct gb_power_supplies *supplies, int id)
894 struct gb_power_supply *gbpsy = &supplies->supply[id];
897 gbpsy->supplies = supplies;
933 static int gb_power_supplies_setup(struct gb_power_supplies *supplies)
935 struct gb_connection *connection = supplies->connection;
939 mutex_lock(&supplies->supplies_lock);
941 ret = gb_power_supplies_get_count(supplies);
945 supplies->supply = kcalloc(supplies->supplies_count,
949 if (!supplies->supply) {
954 for (i = 0; i < supplies->supplies_count; i++) {
955 ret = gb_power_supply_config(supplies, i);
958 "Fail to configure supplies devices\n");
963 mutex_unlock(&supplies->supplies_lock);
967 static int gb_power_supplies_register(struct gb_power_supplies *supplies)
969 struct gb_connection *connection = supplies->connection;
973 mutex_lock(&supplies->supplies_lock);
975 for (i = 0; i < supplies->supplies_count; i++) {
976 ret = gb_power_supply_enable(&supplies->supply[i]);
979 "Fail to enable supplies devices\n");
984 mutex_unlock(&supplies->supplies_lock);
991 struct gb_power_supplies *supplies = gb_connection_get_data(connection);
1016 mutex_lock(&supplies->supplies_lock);
1017 if (psy_id >= supplies->supplies_count ||
1018 !supplies->supply[psy_id].registered) {
1031 gbpsy = &supplies->supply[psy_id];
1048 mutex_unlock(&supplies->supplies_lock);
1057 struct gb_power_supplies *supplies;
1067 supplies = kzalloc(sizeof(*supplies), GFP_KERNEL);
1068 if (!supplies)
1078 supplies->connection = connection;
1079 gb_connection_set_data(connection, supplies);
1081 mutex_init(&supplies->supplies_lock);
1083 greybus_set_drvdata(bundle, supplies);
1090 ret = gb_power_supplies_setup(supplies);
1099 ret = gb_power_supplies_register(supplies);
1111 _gb_power_supplies_release(supplies);
1117 struct gb_power_supplies *supplies = greybus_get_drvdata(bundle);
1119 gb_connection_disable(supplies->connection);
1120 gb_connection_destroy(supplies->connection);
1122 _gb_power_supplies_release(supplies);