Lines Matching refs:client

57 	struct i2c_client *client[8];  member
64 struct i2c_client *client = s35390a->client[reg]; in s35390a_set_reg() local
67 .addr = client->addr, in s35390a_set_reg()
73 if ((i2c_transfer(client->adapter, msg, 1)) != 1) in s35390a_set_reg()
81 struct i2c_client *client = s35390a->client[reg]; in s35390a_get_reg() local
84 .addr = client->addr, in s35390a_get_reg()
91 if ((i2c_transfer(client->adapter, msg, 1)) != 1) in s35390a_get_reg()
151 static int s35390a_set_datetime(struct i2c_client *client, struct rtc_time *tm) in s35390a_set_datetime() argument
153 struct s35390a *s35390a = i2c_get_clientdata(client); in s35390a_set_datetime()
157 dev_dbg(&client->dev, "%s: tm is secs=%d, mins=%d, hours=%d mday=%d, " in s35390a_set_datetime()
179 static int s35390a_get_datetime(struct i2c_client *client, struct rtc_time *tm) in s35390a_get_datetime() argument
181 struct s35390a *s35390a = i2c_get_clientdata(client); in s35390a_get_datetime()
201 dev_dbg(&client->dev, "%s: tm is secs=%d, mins=%d, hours=%d, mday=%d, " in s35390a_get_datetime()
209 static int s35390a_set_alarm(struct i2c_client *client, struct rtc_wkalrm *alm) in s35390a_set_alarm() argument
211 struct s35390a *s35390a = i2c_get_clientdata(client); in s35390a_set_alarm()
215 dev_dbg(&client->dev, "%s: alm is secs=%d, mins=%d, hours=%d mday=%d, "\ in s35390a_set_alarm()
262 static int s35390a_read_alarm(struct i2c_client *client, struct rtc_wkalrm *alm) in s35390a_read_alarm() argument
264 struct s35390a *s35390a = i2c_get_clientdata(client); in s35390a_read_alarm()
290 dev_dbg(&client->dev, "%s: alm is mins=%d, hours=%d, wday=%d\n", in s35390a_read_alarm()
327 static int s35390a_probe(struct i2c_client *client, in s35390a_probe() argument
336 if (!i2c_check_functionality(client->adapter, I2C_FUNC_I2C)) { in s35390a_probe()
341 s35390a = devm_kzalloc(&client->dev, sizeof(struct s35390a), in s35390a_probe()
348 s35390a->client[0] = client; in s35390a_probe()
349 i2c_set_clientdata(client, s35390a); in s35390a_probe()
353 s35390a->client[i] = i2c_new_dummy(client->adapter, in s35390a_probe()
354 client->addr + i); in s35390a_probe()
355 if (!s35390a->client[i]) { in s35390a_probe()
356 dev_err(&client->dev, "Address %02x unavailable\n", in s35390a_probe()
357 client->addr + i); in s35390a_probe()
365 dev_err(&client->dev, "error resetting chip\n"); in s35390a_probe()
371 dev_err(&client->dev, "error disabling test mode\n"); in s35390a_probe()
377 dev_err(&client->dev, "error checking 12/24 hour mode\n"); in s35390a_probe()
385 if (s35390a_get_datetime(client, &tm) < 0) in s35390a_probe()
386 dev_warn(&client->dev, "clock needs to be set\n"); in s35390a_probe()
388 device_set_wakeup_capable(&client->dev, 1); in s35390a_probe()
390 s35390a->rtc = devm_rtc_device_register(&client->dev, in s35390a_probe()
402 if (s35390a->client[i]) in s35390a_probe()
403 i2c_unregister_device(s35390a->client[i]); in s35390a_probe()
409 static int s35390a_remove(struct i2c_client *client) in s35390a_remove() argument
412 struct s35390a *s35390a = i2c_get_clientdata(client); in s35390a_remove()
415 if (s35390a->client[i]) in s35390a_remove()
416 i2c_unregister_device(s35390a->client[i]); in s35390a_remove()