summaryrefslogtreecommitdiff
path: root/libc/kernel/uapi/linux/fd.h
diff options
context:
space:
mode:
Diffstat (limited to 'libc/kernel/uapi/linux/fd.h')
-rw-r--r--libc/kernel/uapi/linux/fd.h17
1 files changed, 13 insertions, 4 deletions
diff --git a/libc/kernel/uapi/linux/fd.h b/libc/kernel/uapi/linux/fd.h
index f3c2d50ef..4d72d6954 100644
--- a/libc/kernel/uapi/linux/fd.h
+++ b/libc/kernel/uapi/linux/fd.h
@@ -84,7 +84,8 @@ struct floppy_drive_params {
#define FD_SILENT_DCL_CLEAR 0x4
#define FD_INVERTED_DCL 0x80
char read_track;
- short autodetect[8];
+#define FD_AUTODETECT_SIZE 8
+ short autodetect[FD_AUTODETECT_SIZE];
int checkfreq;
int native_format;
};
@@ -181,10 +182,18 @@ struct floppy_raw_cmd {
long phys_length;
int buffer_length;
unsigned char rate;
+#define FD_RAW_CMD_SIZE 16
+#define FD_RAW_REPLY_SIZE 16
+#define FD_RAW_CMD_FULLSIZE (FD_RAW_CMD_SIZE + 1 + FD_RAW_REPLY_SIZE)
unsigned char cmd_count;
- unsigned char cmd[16];
- unsigned char reply_count;
- unsigned char reply[16];
+ union {
+ struct {
+ unsigned char cmd[FD_RAW_CMD_SIZE];
+ unsigned char reply_count;
+ unsigned char reply[FD_RAW_REPLY_SIZE];
+ };
+ unsigned char fullcmd[FD_RAW_CMD_FULLSIZE];
+ };
int track;
int resultcode;
int reserved1;