--- /dev/null
+#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, ®);
+ *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, ®);
+}
+#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(2,6,36) */
+
+#endif