Lines Matching +full:scl +full:- +full:output +full:- +full:only

1 // SPDX-License-Identifier: GPL-2.0-only
3 * Copyright © 2006-2007 Intel Corporation
11 #include <linux/i2c-algo-bit.h>
26 struct drm_device *dev = chan->drm_dev; in get_clock()
29 val = REG_READ(chan->reg); in get_clock()
36 struct drm_device *dev = chan->drm_dev; in get_data()
39 val = REG_READ(chan->reg); in get_data()
46 struct drm_device *dev = chan->drm_dev; in set_clock()
51 REG_READ(chan->reg) & (GPIO_DATA_PULLUP_DISABLE | in set_clock()
59 REG_WRITE(chan->reg, reserved | clock_bits); in set_clock()
66 struct drm_device *dev = chan->drm_dev; in set_data()
71 REG_READ(chan->reg) & (GPIO_DATA_PULLUP_DISABLE | in set_data()
81 REG_WRITE(chan->reg, reserved | data_bits); in set_data()
86 * psb_intel_i2c_create - instantiate an Intel i2c bus using the specified GPIO reg
88 * @output: driver specific output device
93 * in output probing and control (e.g. DDC or SDVO control functions).
115 chan->drm_dev = dev; in psb_intel_i2c_create()
116 chan->reg = reg; in psb_intel_i2c_create()
117 snprintf(chan->adapter.name, I2C_NAME_SIZE, "intel drm %s", name); in psb_intel_i2c_create()
118 chan->adapter.owner = THIS_MODULE; in psb_intel_i2c_create()
119 chan->adapter.algo_data = &chan->algo; in psb_intel_i2c_create()
120 chan->adapter.dev.parent = &dev->pdev->dev; in psb_intel_i2c_create()
121 chan->algo.setsda = set_data; in psb_intel_i2c_create()
122 chan->algo.setscl = set_clock; in psb_intel_i2c_create()
123 chan->algo.getsda = get_data; in psb_intel_i2c_create()
124 chan->algo.getscl = get_clock; in psb_intel_i2c_create()
125 chan->algo.udelay = 20; in psb_intel_i2c_create()
126 chan->algo.timeout = usecs_to_jiffies(2200); in psb_intel_i2c_create()
127 chan->algo.data = chan; in psb_intel_i2c_create()
129 i2c_set_adapdata(&chan->adapter, chan); in psb_intel_i2c_create()
131 if (i2c_bit_add_bus(&chan->adapter)) in psb_intel_i2c_create()
134 /* JJJ: raise SCL and SDA? */ in psb_intel_i2c_create()
147 * psb_intel_i2c_destroy - unregister and free i2c bus resources
148 * @output: channel to free
157 i2c_del_adapter(&chan->adapter); in psb_intel_i2c_destroy()