aboutsummaryrefslogtreecommitdiff
path: root/arch/sparc/include/asm/vio.h
diff options
context:
space:
mode:
authorMark Brown <broonie@kernel.org>2014-11-22 11:15:34 +0000
committerMark Brown <broonie@kernel.org>2014-11-22 12:51:05 +0000
commit28aa2be47924f6b971a6d323b3b4083228c8214f (patch)
tree0a8b1ee3d68f262338fb2e9e17badc3557f4f8c4 /arch/sparc/include/asm/vio.h
parenta6b8ad1106ba7e875e1ea94657f19eb0636ce0b2 (diff)
parent1f0f80ecae848b0ca2ca632e94568721494f09f0 (diff)
Merge branch 'linux-linaro-lsk-v3.14' into linux-linaro-lsk-v3.14-rtlsk-v3.14-rt-14.11
Conflicts: include/linux/radix-tree.h kernel/rcu/tree.c mm/filemap.c mm/page_alloc.c
Diffstat (limited to 'arch/sparc/include/asm/vio.h')
-rw-r--r--arch/sparc/include/asm/vio.h14
1 files changed, 10 insertions, 4 deletions
diff --git a/arch/sparc/include/asm/vio.h b/arch/sparc/include/asm/vio.h
index 432afa838861..55841c184e6d 100644
--- a/arch/sparc/include/asm/vio.h
+++ b/arch/sparc/include/asm/vio.h
@@ -118,12 +118,18 @@ struct vio_disk_attr_info {
u8 vdisk_type;
#define VD_DISK_TYPE_SLICE 0x01 /* Slice in block device */
#define VD_DISK_TYPE_DISK 0x02 /* Entire block device */
- u16 resv1;
+ u8 vdisk_mtype; /* v1.1 */
+#define VD_MEDIA_TYPE_FIXED 0x01 /* Fixed device */
+#define VD_MEDIA_TYPE_CD 0x02 /* CD Device */
+#define VD_MEDIA_TYPE_DVD 0x03 /* DVD Device */
+ u8 resv1;
u32 vdisk_block_size;
u64 operations;
- u64 vdisk_size;
+ u64 vdisk_size; /* v1.1 */
u64 max_xfer_size;
- u64 resv2[2];
+ u32 phys_block_size; /* v1.2 */
+ u32 resv2;
+ u64 resv3[1];
};
struct vio_disk_desc {
@@ -259,7 +265,7 @@ static inline u32 vio_dring_avail(struct vio_dring_state *dr,
unsigned int ring_size)
{
return (dr->pending -
- ((dr->prod - dr->cons) & (ring_size - 1)));
+ ((dr->prod - dr->cons) & (ring_size - 1)) - 1);
}
#define VIO_MAX_TYPE_LEN 32