]> rtime.felk.cvut.cz Git - linux-imx.git/blob - drivers/gpu/drm/exynos/exynos_hdmiphy.c
Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux
[linux-imx.git] / drivers / gpu / drm / exynos / exynos_hdmiphy.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 #include "exynos_drm_drv.h"
20 #include "exynos_hdmi.h"
21
22
23 static int hdmiphy_probe(struct i2c_client *client,
24         const struct i2c_device_id *id)
25 {
26         hdmi_attach_hdmiphy_client(client);
27
28         dev_info(&client->adapter->dev, "attached s5p_hdmiphy "
29                 "into i2c adapter successfully\n");
30
31         return 0;
32 }
33
34 static int hdmiphy_remove(struct i2c_client *client)
35 {
36         dev_info(&client->adapter->dev, "detached s5p_hdmiphy "
37                 "from i2c adapter successfully\n");
38
39         return 0;
40 }
41
42 static const struct i2c_device_id hdmiphy_id[] = {
43         { "s5p_hdmiphy", 0 },
44         { "exynos5-hdmiphy", 0 },
45         { },
46 };
47
48 #ifdef CONFIG_OF
49 static struct of_device_id hdmiphy_match_types[] = {
50         {
51                 .compatible = "samsung,exynos5-hdmiphy",
52         }, {
53                 .compatible = "samsung,exynos4210-hdmiphy",
54         }, {
55                 .compatible = "samsung,exynos4212-hdmiphy",
56         }, {
57                 /* end node */
58         }
59 };
60 #endif
61
62 struct i2c_driver hdmiphy_driver = {
63         .driver = {
64                 .name   = "exynos-hdmiphy",
65                 .owner  = THIS_MODULE,
66                 .of_match_table = of_match_ptr(hdmiphy_match_types),
67         },
68         .id_table = hdmiphy_id,
69         .probe          = hdmiphy_probe,
70         .remove         = hdmiphy_remove,
71         .command                = NULL,
72 };
73 EXPORT_SYMBOL(hdmiphy_driver);