]> rtime.felk.cvut.cz Git - linux-imx.git/blob - drivers/gpu/drm/exynos/exynos_ddc.c
Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi
[linux-imx.git] / drivers / gpu / drm / exynos / exynos_ddc.c
1 /*
2  * Copyright (C) 2011 Samsung Electronics Co.Ltd
3  * Authors:
4  *      Seung-Woo Kim <sw0312.kim@samsung.com>
5  *      Inki Dae <inki.dae@samsung.com>
6  *
7  * This program is free software; you can redistribute  it and/or modify it
8  * under  the terms of  the GNU General  Public License as published by the
9  * Free Software Foundation;  either version 2 of the  License, or (at your
10  * option) any later version.
11  *
12  */
13
14 #include <drm/drmP.h>
15
16 #include <linux/kernel.h>
17 #include <linux/i2c.h>
18
19
20 #include "exynos_drm_drv.h"
21 #include "exynos_hdmi.h"
22
23 static int s5p_ddc_probe(struct i2c_client *client,
24                         const struct i2c_device_id *dev_id)
25 {
26         hdmi_attach_ddc_client(client);
27
28         dev_info(&client->adapter->dev,
29                 "attached %s into i2c adapter successfully\n",
30                 client->name);
31
32         return 0;
33 }
34
35 static int s5p_ddc_remove(struct i2c_client *client)
36 {
37         dev_info(&client->adapter->dev,
38                 "detached %s from i2c adapter successfully\n",
39                 client->name);
40
41         return 0;
42 }
43
44 static struct i2c_device_id ddc_idtable[] = {
45         {"s5p_ddc", 0},
46         {"exynos5-hdmiddc", 0},
47         { },
48 };
49
50 #ifdef CONFIG_OF
51 static struct of_device_id hdmiddc_match_types[] = {
52         {
53                 .compatible = "samsung,exynos5-hdmiddc",
54         }, {
55                 .compatible = "samsung,exynos4210-hdmiddc",
56         }, {
57                 /* end node */
58         }
59 };
60 #endif
61
62 struct i2c_driver ddc_driver = {
63         .driver = {
64                 .name = "exynos-hdmiddc",
65                 .owner = THIS_MODULE,
66                 .of_match_table = of_match_ptr(hdmiddc_match_types),
67         },
68         .id_table       = ddc_idtable,
69         .probe          = s5p_ddc_probe,
70         .remove         = s5p_ddc_remove,
71         .command                = NULL,
72 };