]> git.kernelconcepts.de Git - karo-tx-redboot.git/blobdiff - packages/devs/wallclock/i386/pc/v2_0/include/devices_wallclock_i386_pc.inl
unified MX27, MX25, MX37 trees
[karo-tx-redboot.git] / packages / devs / wallclock / i386 / pc / v2_0 / include / devices_wallclock_i386_pc.inl
index fc4671cb013961a5fbf98ad3a9a456c5212cef41..3fed6d510fd67ffe494e48d031fd656e0aaa9389 100644 (file)
 #define DS_ADDR CYGDAT_DEVS_WALLCLOCK_I386_PC_RTC_ADDRESS_PORT
 #define DS_DATA    CYGDAT_DEVS_WALLCLOCK_I386_PC_RTC_DATA_PORT
 
+#ifndef DS_LINEAR
+#define DS_READ(offset, data)                               \
+CYG_MACRO_START                                             \
+    register CYG_BYTE btval;                                \
+    DS_READ_UINT8( DS_ADDR, (btval));                       \
+    DS_WRITE_UINT8(DS_ADDR, ((offset)&0x7F)|(btval&0x80));  \
+    DS_READ_UINT8( DS_DATA, (data));                        \
+CYG_MACRO_END
+#define DS_WRITE(offset, data)                              \
+CYG_MACRO_START                                             \
+    register CYG_BYTE btval;                                \
+    DS_READ_UINT8( DS_ADDR, (btval));                       \
+    DS_WRITE_UINT8(DS_ADDR, ((offset)&0x7F)|(btval&0x80));  \
+    DS_WRITE_UINT8(DS_DATA, (data));                        \
+CYG_MACRO_END
+#endif
+
+
 // EOF devs_wallclock_i386_pc.inl