diff options
author | Roman Kiryanov <rkir@google.com> | 2018-11-13 16:47:15 -0800 |
---|---|---|
committer | Roman Kiryanov <rkir@google.com> | 2018-11-14 10:01:27 -0800 |
commit | e1b1fe16409b9509e628e2dca6286f577408ce73 (patch) | |
tree | 8cf6f9c7eab52d641b1e7728b8e143fd1385fa6c | |
parent | 041eaf6fcea81f22122381f3c114bb7376c52a7c (diff) | |
download | goldfish-e1b1fe16409b9509e628e2dca6286f577408ce73.tar.gz |
Tell the HW guest's PAGE_SIZE
PAGE_SIZE will be used by HW for alignment.
Bug: 116046430
Change-Id: I035b929747e9e45826420e57b784e7b964628fde
Signed-off-by: Roman Kiryanov <rkir@google.com>
-rw-r--r-- | drivers/misc/goldfish_address_space.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/drivers/misc/goldfish_address_space.c b/drivers/misc/goldfish_address_space.c index c7de1ef4a273..81679463c221 100644 --- a/drivers/misc/goldfish_address_space.c +++ b/drivers/misc/goldfish_address_space.c @@ -25,10 +25,11 @@ MODULE_LICENSE("GPLv2"); enum address_space_register_id { ADDRESS_SPACE_REGISTER_COMMAND = 0, ADDRESS_SPACE_REGISTER_STATUS = 4, - ADDRESS_SPACE_REGISTER_BLOCK_SIZE_LOW = 8, - ADDRESS_SPACE_REGISTER_BLOCK_SIZE_HIGH = 12, - ADDRESS_SPACE_REGISTER_BLOCK_OFFSET_LOW = 16, - ADDRESS_SPACE_REGISTER_BLOCK_OFFSET_HIGH = 20, + ADDRESS_SPACE_REGISTER_GUEST_PAGE_SIZE = 8, + ADDRESS_SPACE_REGISTER_BLOCK_SIZE_LOW = 12, + ADDRESS_SPACE_REGISTER_BLOCK_SIZE_HIGH = 16, + ADDRESS_SPACE_REGISTER_BLOCK_OFFSET_LOW = 20, + ADDRESS_SPACE_REGISTER_BLOCK_OFFSET_HIGH = 24, }; enum address_space_command_id { @@ -397,6 +398,10 @@ static int __must_check create_address_space_device(struct pci_dev *dev, goto out_memunmap; } + address_space_write_register(state->io_registers, + ADDRESS_SPACE_REGISTER_GUEST_PAGE_SIZE, + PAGE_SIZE); + state->magic = ADDRESS_SPACE_MAGIC_U32; state->dev = dev; state->driver_state = driver_state; |