compat: backport pcmcia_{read,write}_config byte from v2.6.36
authorKshitij Kulshreshtha <kkhere.geo@gmail.com>
Wed, 4 Aug 2010 14:18:35 +0000 (16:18 +0200)
committerLuis R. Rodriguez <lrodriguez@atheros.com>
Thu, 5 Aug 2010 18:26:06 +0000 (11:26 -0700)
Signed-off-by: Kshitij Kulshreshtha <kkhere.geo@gmail.com>
include/pcmcia/ds.h [new file with mode: 0644]

diff --git a/include/pcmcia/ds.h b/include/pcmcia/ds.h
new file mode 100644 (file)
index 0000000..fc43703
--- /dev/null
@@ -0,0 +1,36 @@
+#ifndef _COMPAT_PCMCIA_DS_H
+#define _COMPAT_PCMCIA_DS_H
+#include <linux/version.h>
+
+#include_next <pcmcia/ds.h>
+
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,36)
+/**
+ * pcmcia_read_config_byte() - read a byte from a card configuration register
+ *
+ * pcmcia_read_config_byte() reads a byte from a configuration register in
+ * attribute memory.
+ */
+static inline int pcmcia_read_config_byte(struct pcmcia_device *p_dev, off_t where, u8 *val)
+{
+        int ret;
+        conf_reg_t reg = { 0, CS_READ, where, 0 };
+        ret = pcmcia_access_configuration_register(p_dev, &reg);
+        *val = reg.Value;
+        return ret;
+}
+
+/**
+ * pcmcia_write_config_byte() - write a byte to a card configuration register
+ *
+ * pcmcia_write_config_byte() writes a byte to a configuration register in
+ * attribute memory.
+ */
+static inline int pcmcia_write_config_byte(struct pcmcia_device *p_dev, off_t where, u8 val)
+{
+       conf_reg_t reg = { 0, CS_WRITE, where, val };
+       return pcmcia_access_configuration_register(p_dev, &reg);
+}
+#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(2,6,36) */
+
+#endif