diff options
author | David Gwynne <dlg@cvs.openbsd.org> | 2012-08-17 11:31:35 +0000 |
---|---|---|
committer | David Gwynne <dlg@cvs.openbsd.org> | 2012-08-17 11:31:35 +0000 |
commit | 0faccd2bbf8a8fdebfaf24bfec2826371612f248 (patch) | |
tree | df9802d95fcaf6394cc7ec91759ceeb710631190 /sys/dev/ic/mfireg.h | |
parent | c21b73b25f2f60e99b42caf9c6e259778dfec73f (diff) |
add support for "physical devices" on skinny controllers.
these controllers let you specify disks that should be accessed directly
rather than be part of logical volumes. apparently you can plug in things
like tape drives too.
anyway, physical devices are exposed via a separate scsibus attached to
mfi.
ok mikeb@
Diffstat (limited to 'sys/dev/ic/mfireg.h')
-rw-r--r-- | sys/dev/ic/mfireg.h | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/sys/dev/ic/mfireg.h b/sys/dev/ic/mfireg.h index b32d4f6523b..182f4f70771 100644 --- a/sys/dev/ic/mfireg.h +++ b/sys/dev/ic/mfireg.h @@ -1,4 +1,4 @@ -/* $OpenBSD: mfireg.h,v 1.32 2012/08/13 06:19:15 dlg Exp $ */ +/* $OpenBSD: mfireg.h,v 1.33 2012/08/17 11:31:34 dlg Exp $ */ /* * Copyright (c) 2006 Marco Peereboom <marco@peereboom.us> * @@ -251,7 +251,7 @@ typedef enum { #define MFI_MAX_LD 64 #define MFI_MAX_SPAN 8 #define MFI_MAX_ARRAY_DEDICATED 16 -#define MFI_MAX_PHYSDISK 256 +#define MFI_MAX_PD 256 /* sense buffer */ struct mfi_sense { @@ -812,9 +812,8 @@ struct mfi_pd_address { struct mfi_pd_list { uint32_t mpl_size; uint32_t mpl_no_pd; - struct mfi_pd_address mpl_address[1]; + struct mfi_pd_address mpl_address[MFI_MAX_PD]; } __packed; -#define MFI_PD_LIST_SIZE (MFI_MAX_PHYSDISK * sizeof(struct mfi_pd_address) + 8) struct mfi_pd { uint16_t mfp_id; @@ -913,7 +912,7 @@ struct mfi_pd_details { struct mfi_pd_allowedops_list { uint32_t mpo_no_entries; uint32_t mpo_res; - uint32_t mpo_allowedops_list[MFI_MAX_PHYSDISK]; + uint32_t mpo_allowedops_list[MFI_MAX_PD]; } __packed; /* array configuration from MD_DCMD_CONF_GET */ @@ -933,6 +932,8 @@ struct mfi_array { #define MFI_PD_FAILED 0x11 #define MFI_PD_REBUILD 0x14 #define MFI_PD_ONLINE 0x18 +#define MFI_PD_COPYBACK 0x20 +#define MFI_PD_SYSTEM 0x40 uint8_t mar_enc_pd; uint8_t mar_enc_slot; } pd[MFI_MAX_PD_ARRAY]; |