/* Hmm. These constants vary a bit between systems. */
/* (__sh__ includes both sh and sh64) */
-#if defined(__i386__) || defined(__sh__)
+#if defined(__alpha__) || defined(__sparc__) || defined(__mips__) || defined(__ppc__) || defined(__ppc64__) || defined(__sparc64__)
#define CHRONY_IOC_NRBITS 8
#define CHRONY_IOC_TYPEBITS 8
-#define CHRONY_IOC_SIZEBITS 14
+#define CHRONY_IOC_SIZEBITS 13
#define CHRONY_IOC_DIRBITS 2
-#define CHRONY_IOC_NONE 0U
-#define CHRONY_IOC_WRITE 1U
-#define CHRONY_IOC_READ 2U
-#elif defined(__alpha__) || defined(__sparc__)
+#define CHRONY_IOC_NONE 1U
+#define CHRONY_IOC_READ 2U
+#define CHRONY_IOC_WRITE 4U
+#else
#define CHRONY_IOC_NRBITS 8
#define CHRONY_IOC_TYPEBITS 8
-#define CHRONY_IOC_SIZEBITS 13
+#define CHRONY_IOC_SIZEBITS 14
#define CHRONY_IOC_DIRBITS 2
-#define CHRONY_IOC_NONE 1U
-#define CHRONY_IOC_READ 2U
-#define CHRONY_IOC_WRITE 4U
-#else
-#error "I don't know the values of the _IOC_* constants for your architecture"
+#define CHRONY_IOC_NONE 0U
+#define CHRONY_IOC_WRITE 1U
+#define CHRONY_IOC_READ 2U
#endif
#define CHRONY_IOC_NRMASK ((1 << CHRONY_IOC_NRBITS)-1)