summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkettenis <kettenis@openbsd.org>2017-07-14 11:18:04 +0000
committerkettenis <kettenis@openbsd.org>2017-07-14 11:18:04 +0000
commit7bf64a6a0594fea1ef2d89ca74b6e5108495fcf5 (patch)
treeaf4272ff1cacb8f5693979c7c7b146e897d2433e
parentAdd regression tests for ifstated. (diff)
downloadwireguard-openbsd-7bf64a6a0594fea1ef2d89ca74b6e5108495fcf5.tar.xz
wireguard-openbsd-7bf64a6a0594fea1ef2d89ca74b6e5108495fcf5.zip
Add some more i2c glue to reduce the diffs to Linux.
-rw-r--r--sys/dev/pci/drm/drm_dp_helper.c6
-rw-r--r--sys/dev/pci/drm/drm_dp_mst_topology.c4
-rw-r--r--sys/dev/pci/drm/drm_linux.h99
-rw-r--r--sys/dev/pci/drm/i915/intel_sdvo.c4
-rw-r--r--sys/dev/pci/drm/radeon/atombios_i2c.c5
-rw-r--r--sys/dev/pci/drm/radeon/radeon_i2c.c10
6 files changed, 56 insertions, 72 deletions
diff --git a/sys/dev/pci/drm/drm_dp_helper.c b/sys/dev/pci/drm/drm_dp_helper.c
index 048a98645df..790bc4a194d 100644
--- a/sys/dev/pci/drm/drm_dp_helper.c
+++ b/sys/dev/pci/drm/drm_dp_helper.c
@@ -426,8 +426,6 @@ EXPORT_SYMBOL(drm_dp_link_configure);
* I2C-over-AUX implementation
*/
-#ifdef notyet
-
static u32 drm_dp_i2c_functionality(struct i2c_adapter *adapter)
{
return I2C_FUNC_I2C | I2C_FUNC_SMBUS_EMUL |
@@ -436,8 +434,6 @@ static u32 drm_dp_i2c_functionality(struct i2c_adapter *adapter)
I2C_FUNC_10BIT_ADDR;
}
-#endif
-
static void drm_dp_i2c_msg_write_status_update(struct drm_dp_aux_msg *msg)
{
/*
@@ -758,9 +754,7 @@ static int drm_dp_i2c_xfer(struct i2c_adapter *adapter, struct i2c_msg *msgs,
}
static const struct i2c_algorithm drm_dp_i2c_algo = {
-#ifdef notyet
.functionality = drm_dp_i2c_functionality,
-#endif
.master_xfer = drm_dp_i2c_xfer,
};
diff --git a/sys/dev/pci/drm/drm_dp_mst_topology.c b/sys/dev/pci/drm/drm_dp_mst_topology.c
index 93d7bca8dfa..361964eb13d 100644
--- a/sys/dev/pci/drm/drm_dp_mst_topology.c
+++ b/sys/dev/pci/drm/drm_dp_mst_topology.c
@@ -3030,7 +3030,6 @@ out:
return ret;
}
-#ifdef notyet
static u32 drm_dp_mst_i2c_functionality(struct i2c_adapter *adapter)
{
return I2C_FUNC_I2C | I2C_FUNC_SMBUS_EMUL |
@@ -3038,12 +3037,9 @@ static u32 drm_dp_mst_i2c_functionality(struct i2c_adapter *adapter)
I2C_FUNC_SMBUS_BLOCK_PROC_CALL |
I2C_FUNC_10BIT_ADDR;
}
-#endif
static const struct i2c_algorithm drm_dp_mst_i2c_algo = {
-#ifdef notyet
.functionality = drm_dp_mst_i2c_functionality,
-#endif
.master_xfer = drm_dp_mst_i2c_xfer,
};
diff --git a/sys/dev/pci/drm/drm_linux.h b/sys/dev/pci/drm/drm_linux.h
index 1d6c739b151..9eb4029e013 100644
--- a/sys/dev/pci/drm/drm_linux.h
+++ b/sys/dev/pci/drm/drm_linux.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: drm_linux.h,v 1.55 2017/07/12 20:12:19 kettenis Exp $ */
+/* $OpenBSD: drm_linux.h,v 1.56 2017/07/14 11:18:04 kettenis Exp $ */
/*
* Copyright (c) 2013, 2014, 2015 Mark Kettenis
*
@@ -50,51 +50,6 @@
#pragma clang diagnostic ignored "-Wunused-const-variable"
#endif
-struct i2c_algorithm;
-
-struct i2c_adapter {
- struct i2c_controller ic;
-
- char name[48];
- const struct i2c_algorithm *algo;
- void *algo_data;
- int retries;
-
- void *data;
-};
-
-#define I2C_NAME_SIZE 20
-
-struct i2c_msg {
- uint16_t addr;
- uint16_t flags;
- uint16_t len;
- uint8_t *buf;
-};
-
-#define I2C_M_RD 0x0001
-#define I2C_M_NOSTART 0x0002
-
-struct i2c_algorithm {
- int (*master_xfer)(struct i2c_adapter *, struct i2c_msg *, int);
-};
-
-int i2c_transfer(struct i2c_adapter *, struct i2c_msg *, int);
-#define i2c_add_adapter(x) 0
-#define i2c_del_adapter(x)
-
-static inline void *
-i2c_get_adapdata(struct i2c_adapter *adap)
-{
- return adap->data;
-}
-
-static inline void
-i2c_set_adapdata(struct i2c_adapter *adap, void *data)
-{
- adap->data = data;
-}
-
typedef int irqreturn_t;
enum irqreturn {
IRQ_NONE = 0,
@@ -1565,6 +1520,58 @@ vga_client_register(struct pci_dev *a, void *b, void *c, void *d)
#endif
+struct i2c_algorithm;
+
+#define I2C_FUNC_I2C 0
+#define I2C_FUNC_SMBUS_EMUL 0
+#define I2C_FUNC_SMBUS_READ_BLOCK_DATA 0
+#define I2C_FUNC_SMBUS_BLOCK_PROC_CALL 0
+#define I2C_FUNC_10BIT_ADDR 0
+
+struct i2c_adapter {
+ struct i2c_controller ic;
+
+ char name[48];
+ const struct i2c_algorithm *algo;
+ void *algo_data;
+ int retries;
+
+ void *data;
+};
+
+#define I2C_NAME_SIZE 20
+
+struct i2c_msg {
+ uint16_t addr;
+ uint16_t flags;
+ uint16_t len;
+ uint8_t *buf;
+};
+
+#define I2C_M_RD 0x0001
+#define I2C_M_NOSTART 0x0002
+
+struct i2c_algorithm {
+ u32 (*functionality)(struct i2c_adapter *);
+ int (*master_xfer)(struct i2c_adapter *, struct i2c_msg *, int);
+};
+
+int i2c_transfer(struct i2c_adapter *, struct i2c_msg *, int);
+#define i2c_add_adapter(x) 0
+#define i2c_del_adapter(x)
+
+static inline void *
+i2c_get_adapdata(struct i2c_adapter *adap)
+{
+ return adap->data;
+}
+
+static inline void
+i2c_set_adapdata(struct i2c_adapter *adap, void *data)
+{
+ adap->data = data;
+}
+
#define memcpy_toio(d, s, n) memcpy(d, s, n)
#define memcpy_fromio(d, s, n) memcpy(d, s, n)
#define memset_io(d, b, n) memset(d, b, n)
diff --git a/sys/dev/pci/drm/i915/intel_sdvo.c b/sys/dev/pci/drm/i915/intel_sdvo.c
index 20ee6a03a0b..9f97064dff3 100644
--- a/sys/dev/pci/drm/i915/intel_sdvo.c
+++ b/sys/dev/pci/drm/i915/intel_sdvo.c
@@ -2920,19 +2920,15 @@ static int intel_sdvo_ddc_proxy_xfer(struct i2c_adapter *adapter,
return sdvo->i2c->algo->master_xfer(sdvo->i2c, msgs, num);
}
-#ifdef notyet
static u32 intel_sdvo_ddc_proxy_func(struct i2c_adapter *adapter)
{
struct intel_sdvo *sdvo = adapter->algo_data;
return sdvo->i2c->algo->functionality(sdvo->i2c);
}
-#endif
static const struct i2c_algorithm intel_sdvo_ddc_proxy = {
.master_xfer = intel_sdvo_ddc_proxy_xfer,
-#ifdef notyet
.functionality = intel_sdvo_ddc_proxy_func
-#endif
};
static bool
diff --git a/sys/dev/pci/drm/radeon/atombios_i2c.c b/sys/dev/pci/drm/radeon/atombios_i2c.c
index 17abedfe0d5..ba234c2a9d2 100644
--- a/sys/dev/pci/drm/radeon/atombios_i2c.c
+++ b/sys/dev/pci/drm/radeon/atombios_i2c.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: atombios_i2c.c,v 1.6 2017/07/01 16:14:10 kettenis Exp $ */
+/* $OpenBSD: atombios_i2c.c,v 1.7 2017/07/14 11:18:04 kettenis Exp $ */
/*
* Copyright 2011 Advanced Micro Devices, Inc.
*
@@ -144,10 +144,7 @@ int radeon_atom_hw_i2c_xfer(struct i2c_adapter *i2c_adap,
return num;
}
-#ifdef notyet
u32 radeon_atom_hw_i2c_func(struct i2c_adapter *adap)
{
return I2C_FUNC_I2C | I2C_FUNC_SMBUS_EMUL;
}
-#endif
-
diff --git a/sys/dev/pci/drm/radeon/radeon_i2c.c b/sys/dev/pci/drm/radeon/radeon_i2c.c
index 33a942b4ab4..68b3fb7c3bc 100644
--- a/sys/dev/pci/drm/radeon/radeon_i2c.c
+++ b/sys/dev/pci/drm/radeon/radeon_i2c.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: radeon_i2c.c,v 1.6 2017/07/01 16:14:10 kettenis Exp $ */
+/* $OpenBSD: radeon_i2c.c,v 1.7 2017/07/14 11:18:04 kettenis Exp $ */
/*
* Copyright 2007-8 Advanced Micro Devices, Inc.
* Copyright 2008 Red Hat Inc.
@@ -975,25 +975,19 @@ static int radeon_hw_i2c_xfer(struct i2c_adapter *i2c_adap,
return ret;
}
-#ifdef notyet
-static u32 radeon_hw_i2c_func(struct i2c_controller *adap)
+static u32 radeon_hw_i2c_func(struct i2c_adapter *adap)
{
return I2C_FUNC_I2C | I2C_FUNC_SMBUS_EMUL;
}
-#endif
static const struct i2c_algorithm radeon_i2c_algo = {
.master_xfer = radeon_hw_i2c_xfer,
-#ifdef notyet
.functionality = radeon_hw_i2c_func,
-#endif
};
static const struct i2c_algorithm radeon_atom_i2c_algo = {
.master_xfer = radeon_atom_hw_i2c_xfer,
-#ifdef notyet
.functionality = radeon_atom_hw_i2c_func,
-#endif
};
struct radeon_i2c_chan *radeon_i2c_create(struct drm_device *dev,