Lines Matching refs:client
68 struct i2c_client *client; member
114 static int ssd1307fb_write_array(struct i2c_client *client, in ssd1307fb_write_array() argument
121 ret = i2c_master_send(client, (u8 *)array, len); in ssd1307fb_write_array()
123 dev_err(&client->dev, "Couldn't send I2C command.\n"); in ssd1307fb_write_array()
130 static inline int ssd1307fb_write_cmd(struct i2c_client *client, u8 cmd) in ssd1307fb_write_cmd() argument
141 ret = ssd1307fb_write_array(client, array, 1); in ssd1307fb_write_cmd()
202 ssd1307fb_write_array(par->client, array, par->width * par->height / 8); in ssd1307fb_update_display()
243 return ssd1307fb_write_cmd(par->client, SSD1307FB_DISPLAY_OFF); in ssd1307fb_blank()
245 return ssd1307fb_write_cmd(par->client, SSD1307FB_DISPLAY_ON); in ssd1307fb_blank()
291 par->pwm = pwm_get(&par->client->dev, NULL); in ssd1307fb_init()
293 dev_err(&par->client->dev, "Could not get PWM from device tree!\n"); in ssd1307fb_init()
302 dev_dbg(&par->client->dev, "Using PWM%d with a %dns period.\n", in ssd1307fb_init()
307 ret = ssd1307fb_write_cmd(par->client, SSD1307FB_CONTRAST); in ssd1307fb_init()
311 ret = ssd1307fb_write_cmd(par->client, par->contrast); in ssd1307fb_init()
317 ret = ssd1307fb_write_cmd(par->client, SSD1307FB_SEG_REMAP_ON); in ssd1307fb_init()
324 ret = ssd1307fb_write_cmd(par->client, com_invdir); in ssd1307fb_init()
329 ret = ssd1307fb_write_cmd(par->client, SSD1307FB_SET_MULTIPLEX_RATIO); in ssd1307fb_init()
333 ret = ssd1307fb_write_cmd(par->client, par->height - 1); in ssd1307fb_init()
338 ret = ssd1307fb_write_cmd(par->client, SSD1307FB_SET_DISPLAY_OFFSET); in ssd1307fb_init()
342 ret = ssd1307fb_write_cmd(par->client, par->com_offset); in ssd1307fb_init()
347 ret = ssd1307fb_write_cmd(par->client, SSD1307FB_SET_CLOCK_FREQ); in ssd1307fb_init()
352 ret = ssd1307fb_write_cmd(par->client, dclk); in ssd1307fb_init()
357 ret = ssd1307fb_write_cmd(par->client, SSD1307FB_SET_PRECHARGE_PERIOD); in ssd1307fb_init()
362 ret = ssd1307fb_write_cmd(par->client, precharge); in ssd1307fb_init()
367 ret = ssd1307fb_write_cmd(par->client, SSD1307FB_SET_COM_PINS_CONFIG); in ssd1307fb_init()
373 ret = ssd1307fb_write_cmd(par->client, compins); in ssd1307fb_init()
378 ret = ssd1307fb_write_cmd(par->client, SSD1307FB_SET_VCOMH); in ssd1307fb_init()
382 ret = ssd1307fb_write_cmd(par->client, par->vcomh); in ssd1307fb_init()
387 ret = ssd1307fb_write_cmd(par->client, SSD1307FB_CHARGE_PUMP); in ssd1307fb_init()
391 ret = ssd1307fb_write_cmd(par->client, in ssd1307fb_init()
397 ret = ssd1307fb_write_cmd(par->client, SSD1307FB_SET_ADDRESS_MODE); in ssd1307fb_init()
401 ret = ssd1307fb_write_cmd(par->client, in ssd1307fb_init()
407 ret = ssd1307fb_write_cmd(par->client, SSD1307FB_SET_COL_RANGE); in ssd1307fb_init()
411 ret = ssd1307fb_write_cmd(par->client, 0x0); in ssd1307fb_init()
415 ret = ssd1307fb_write_cmd(par->client, par->width - 1); in ssd1307fb_init()
420 ret = ssd1307fb_write_cmd(par->client, SSD1307FB_SET_PAGE_RANGE); in ssd1307fb_init()
424 ret = ssd1307fb_write_cmd(par->client, 0x0); in ssd1307fb_init()
428 ret = ssd1307fb_write_cmd(par->client, in ssd1307fb_init()
434 ret = ssd1307fb_write_cmd(par->client, SSD1307FB_DISPLAY_ON); in ssd1307fb_init()
449 ret = ssd1307fb_write_cmd(par->client, SSD1307FB_CONTRAST); in ssd1307fb_update_bl()
452 ret = ssd1307fb_write_cmd(par->client, par->contrast); in ssd1307fb_update_bl()
525 static int ssd1307fb_probe(struct i2c_client *client, in ssd1307fb_probe() argument
531 struct device_node *node = client->dev.of_node; in ssd1307fb_probe()
539 dev_err(&client->dev, "No device tree data found!\n"); in ssd1307fb_probe()
543 info = framebuffer_alloc(sizeof(struct ssd1307fb_par), &client->dev); in ssd1307fb_probe()
545 dev_err(&client->dev, "Couldn't allocate framebuffer.\n"); in ssd1307fb_probe()
551 par->client = client; in ssd1307fb_probe()
554 ssd1307fb_of_match, &client->dev)->data; in ssd1307fb_probe()
556 par->reset = of_get_named_gpio(client->dev.of_node, in ssd1307fb_probe()
598 dev_err(&client->dev, "Couldn't allocate graphical memory.\n"); in ssd1307fb_probe()
603 ssd1307fb_defio = devm_kzalloc(&client->dev, sizeof(struct fb_deferred_io), GFP_KERNEL); in ssd1307fb_probe()
605 dev_err(&client->dev, "Couldn't allocate deferred io.\n"); in ssd1307fb_probe()
637 ret = devm_gpio_request_one(&client->dev, par->reset, in ssd1307fb_probe()
641 dev_err(&client->dev, in ssd1307fb_probe()
647 i2c_set_clientdata(client, info); in ssd1307fb_probe()
661 dev_err(&client->dev, "Couldn't register the framebuffer\n"); in ssd1307fb_probe()
666 bl = backlight_device_register(bl_name, &client->dev, par, in ssd1307fb_probe()
670 dev_err(&client->dev, "unable to register backlight device: %d\n", in ssd1307fb_probe()
679 …dev_info(&client->dev, "fb%d: %s framebuffer device registered, using %d bytes of video memory\n",… in ssd1307fb_probe()
697 static int ssd1307fb_remove(struct i2c_client *client) in ssd1307fb_remove() argument
699 struct fb_info *info = i2c_get_clientdata(client); in ssd1307fb_remove()
702 ssd1307fb_write_cmd(par->client, SSD1307FB_DISPLAY_OFF); in ssd1307fb_remove()