[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL v2 2/8] block: Support providing LCHS from user
From: |
John Snow |
Subject: |
[PULL v2 2/8] block: Support providing LCHS from user |
Date: |
Thu, 3 Oct 2019 15:32:39 -0400 |
From: Sam Eiderman <address@hidden>
Add logical geometry variables to BlockConf.
A user can now supply "lcyls", "lheads" & "lsecs" for any HD device
that supports CHS ("cyls", "heads", "secs").
These devices include:
* ide-hd
* scsi-hd
* virtio-blk-pci
In future commits we will use the provided LCHS and pass it to the BIOS
through fw_cfg to be supplied using INT13 routines.
Reviewed-by: Karl Heubaum <address@hidden>
Reviewed-by: Arbel Moshe <address@hidden>
Signed-off-by: Sam Eiderman <address@hidden>
Message-id: address@hidden
Signed-off-by: John Snow <address@hidden>
---
include/hw/block/block.h | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/include/hw/block/block.h b/include/hw/block/block.h
index fd55a30bca..d7246f3862 100644
--- a/include/hw/block/block.h
+++ b/include/hw/block/block.h
@@ -26,6 +26,7 @@ typedef struct BlockConf {
uint32_t discard_granularity;
/* geometry, not all devices use this */
uint32_t cyls, heads, secs;
+ uint32_t lcyls, lheads, lsecs;
OnOffAuto wce;
bool share_rw;
BlockdevOnError rerror;
@@ -65,7 +66,10 @@ static inline unsigned int get_physical_block_exp(BlockConf
*conf)
#define DEFINE_BLOCK_CHS_PROPERTIES(_state, _conf) \
DEFINE_PROP_UINT32("cyls", _state, _conf.cyls, 0), \
DEFINE_PROP_UINT32("heads", _state, _conf.heads, 0), \
- DEFINE_PROP_UINT32("secs", _state, _conf.secs, 0)
+ DEFINE_PROP_UINT32("secs", _state, _conf.secs, 0), \
+ DEFINE_PROP_UINT32("lcyls", _state, _conf.lcyls, 0), \
+ DEFINE_PROP_UINT32("lheads", _state, _conf.lheads, 0), \
+ DEFINE_PROP_UINT32("lsecs", _state, _conf.lsecs, 0)
#define DEFINE_BLOCK_ERROR_PROPERTIES(_state, _conf) \
DEFINE_PROP_BLOCKDEV_ON_ERROR("rerror", _state, _conf.rerror, \
--
2.21.0
- [PULL v2 0/8] Ide patches, John Snow, 2019/10/03
- [PULL v2 1/8] block: Refactor macros - fix tabbing, John Snow, 2019/10/03
- [PULL v2 2/8] block: Support providing LCHS from user,
John Snow <=
- [PULL v2 3/8] bootdevice: Add interface to gather LCHS, John Snow, 2019/10/03
- [PULL v2 4/8] scsi: Propagate unrealize() callback to scsi-hd, John Snow, 2019/10/03
- [PULL v2 5/8] bootdevice: Gather LCHS from all relevant devices, John Snow, 2019/10/03
- [PULL v2 6/8] bootdevice: Refactor get_boot_devices_list, John Snow, 2019/10/03
- [PULL v2 7/8] bootdevice: FW_CFG interface for LCHS values, John Snow, 2019/10/03
- [PULL v2 8/8] hd-geo-test: Add tests for lchs override, John Snow, 2019/10/03
- Re: [PULL v2 0/8] Ide patches, no-reply, 2019/10/03
- Re: [PULL v2 0/8] Ide patches, Peter Maydell, 2019/10/07