summaryrefslogtreecommitdiff
path: root/content.tex
AgeCommit message (Collapse)Author
2014-02-12PCI: minor wording changemstsirkin
Since access width requirement is a confirmance clause, make it explicit that it applies to 4,2 and 1 byte fields. Also explain what happens to fields of other widths (such as the 6 byte MAC). Signed-off-by: Michael S. Tsirkin <mst@redhat.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@248 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-02-12content: more strict confirmance languagemstsirkin
Correct new language to explicitly use MAY/SHOULD/MUST in more places or simply drop the somewhat vague "can" where we are describing the only way to operate the device. Most of the changes are in the PCI section. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@247 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-02-12VIRTIO-55: Add a reserved ID for GPU devicesrusty
As existing work on virtio-gpu is using device ID 16, reflect this in the spec. This closes out VIRTIO-55. As per minutes: https://lists.oasis-open.org/archives/virtio/201402/msg00121.html Signed-off-by: Paul Mundt <paul.mundt@huawei.com> Signed-off-by: Rusty Russell <rusty@au1.ibm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@244 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-02-12ccw: Further use of RFC2119 language.rusty
Some more instances of MAY and SHOULD, as reported in TAB comments TAB-548 and TAB-550. As per minutes: https://lists.oasis-open.org/archives/virtio/201402/msg00121.html Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: Rusty Russell <rusty@au1.ibm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@242 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-02-12PCI: explicitly document ISR status fieldrusty
Feedback on ISR status register: It would be helpful if this section provided the meaning of each bit in the register. ISR use is scattered all around the place. Add a section describing the format and semantics. [ Merged to combine with new ISR-specific section --RR ] As per minutes: https://lists.oasis-open.org/archives/virtio/201402/msg00121.html Cc: Arun Subbarao <asubbarao@lnxw.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Rusty Russell <rusty@au1.ibm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@241 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-02-12PCI: consistent device/PCI configuration spacerusty
Re section: 4.1.3.4 Notification of Device Configuration Changes Feedback: Please use "PCI configuration space" and "device configuration state" consistently, without abbreviation. For example, from the first sentence it looks like "device configuration state" can be changed, but the first bullet claims it's "configuration space". So, which one? Does "configuration space" mean "PCI configuration space" or is it a synonym for "device configuration state"? Because those are two different things; the driver needs to know what exactly to rescan. As per minutes: https://lists.oasis-open.org/archives/virtio/201402/msg00121.html Cc: Arun Subbarao <asubbarao@lnxw.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Rusty Russell <rusty@au1.ibm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@240 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-02-12Feedback #8: Applied.rusty
[ Includes fixup! removing MSI-X ] As per minutes: https://lists.oasis-open.org/archives/virtio/201402/msg00121.html Signed-off-by: Rusty Russell <rusty@au1.ibm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@239 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-02-12Feedback #7: Appliedrusty
Some minor merging required. As per minutes: https://lists.oasis-open.org/archives/virtio/201402/msg00121.html Signed-off-by: Rusty Russell <rusty@au1.ibm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@238 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-02-12Feedback #6: Appliedrusty
As per minutes: https://lists.oasis-open.org/archives/virtio/201402/msg00121.html Signed-off-by: Rusty Russell <rusty@au1.ibm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@237 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-02-12Feedback #4: applied.rusty
As per minutes: https://lists.oasis-open.org/archives/virtio/201402/msg00121.html Signed-off-by: Rusty Russell <rusty@au1.ibm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@235 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-02-12PCI: minor changes for previous patch.rusty
Signed-off-by: Rusty Russell <rusty@au1.ibm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@234 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-02-12PCI: rearrange it allrusty
This is the re-arrangement originally suggested by Rusty, except I made some fixes and also tweaked a couple of places where behaviour changes where suggested - if we want these, they should go in separately. Rearrange discovery section to make it clearer what goes on. Wording changes MUST/MAY/etc. Clarify cfg gateway use. No behavioural changes. [ Merged "fixup! PCI: rearrange it all" --RR ] As per minutes: https://lists.oasis-open.org/archives/virtio/201402/msg00121.html Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Rusty Russell <rusty@au1.ibm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@233 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-02-12PCI: rearrange it allrusty
This is the re-arrangement originally suggested by Rusty, except I made some fixes and also tweaked a couple of places where behaviour changes where suggested - if we want these, they should go in separately. Rearrange discovery section to make it clearer what goes on. Wording changes MUST/MAY/etc. Clarify cfg gateway use. No behavioural changes. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@232 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-02-12C struct specifications.rusty
Explicitly specify that our C struct specifications are without padding, and add some definitions for our integer data types. [ Rusty - added /* comments */ and removed redundant old le* explanation ] Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@231 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-02-10REVERT LAST 15 JUNK COMMITS.rusty
Back to r211. It's been a long day. Signed-off-by: Rusty Russell <rusty@au1.ibm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@225 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-02-10patch feedback-8-9.patchrusty
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@224 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-02-10patch feedback-8-7.patchrusty
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@223 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-02-10patch feedback-8-6.patchrusty
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@222 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-02-10patch feedback-8-5.patchrusty
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@221 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-02-10feedback: s/virtio header/virtio common configuration/rusty
While most places now sat virtio common configuration structure, some places still use the term virtio header. Since it's not necessarily before the common configuration anymore, rename it to virtio common configuration structure for consistency. Cc: Arun Subbarao <asubbarao@lnxw.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@220 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-02-10We'll add more non-normative sections with hints forrusty
implementing registers such as PCI class, status and command registers. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@219 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-02-10example code does not have to be optimal but itrusty
seems cleaner to disable interrupts after we recheck the ring empty state. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@218 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-02-10patch feedback-7-orig.patchrusty
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@217 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-02-10patch feedback-6.patchrusty
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@216 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-02-10patch feedback-4.patchrusty
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@214 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-02-10PCI Section Reworkrusty
1) Minor changes from must to MUST etc. 2) More references using \ref. 3) Move section on capabilities first, before we talk about the common config layout. The previous order made sense for legacy. 4) Make explicit subsections for each type of capability and move more information into them. 5) Make it clear that there must be one or more. 6) Include 'struct virtio_pci_cap cap;' in struct virtio_pci_cfg_cap to match virtio_pci_notify_cap. 7) Explicitly note there's no way to negotiate the queue size for a legacy device. 8) Fix old language on config change event: config is not in the pci configuration space. 9) Explicitly state what the driver should do to use virtio_pci_cfg_cap. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@213 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-02-10C struct specifications.rusty
Explicitly specify that our C struct specifications are without padding, and add some definitions for our integer data types. [ Rusty - added /* comments */ and removed redundant old le* explanation ] Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@212 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-02-07Cleanup and setup clarificationsrusty
1) Explicitly allow drivers to read config space during feature negotiation. 2) Add the concept of a "live" virtqueue, and explicitly disallow moving it backwards or changing descriptors. Signed-off-by: Rusty Russell <rusty@au1.ibm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@207 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-02-07block: legacy SCSI command fix.rusty
When describing the historical layout requirements, it says "status field is a separate read-only buffer of size 1 byte, by itself." That's clearly wrong, as it says above "The final status byte is written by the device" Signed-off-by: Rusty Russell <rusty@au1.ibm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@204 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-02-06whitespace: make all examples unindented, and avoid tabs.rusty
This makes the formatting far nicer. Applying now as it touches almost all examples and layouts, so we can rebase future changes on top of common ground. (Based on feedback from Thomas Huth for one example, and generalized). Signed-off-by: Rusty Russell <rusty@au1.ibm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@203 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-01-313.2.1: Language tightening.rusty
1) Lots of "we", replace with "the driver". 2) Use MAY and MUST NOT for spurious notifications. 3) Don't refer to PCI configuration space for notification. Signed-off-by: Rusty Russell <rusty@au1.ibm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@201 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-01-294.1.2.5: Legacy: PCI Device Layout: fix PCI header fields orderhornet
The order of the fields in the legacy PCI header seems to get messed up in the new spec, with the "Queue Address" moved behind "Queue Notify". According to the 0.9.5 version of the spec it should be: * Device Features 32 * Driver Features 32 * Queue Address 32 * Queue Size 16 * Queue Select 16 * Queue Notify 16 * Device Status 8 * ISR Status 8 Signed-off-by: Pawel Moll <pawel.moll@arm.com> -- 1.8.3.2 git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@198 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-01-29Feedback #3: Feedback from Pranavkumar Sawargaonkar ↵rusty
(VIRTIO_CONSOLE_F_EMERG_WRITE) Document: virtio-v1.0-csprd01 Number: 3 Date: Tue, 21 Jan 2014 15:09:54 +0530 Link to Mail: https://lists.oasis-open.org/archives/virtio-comment/201401/msg00037.html Commenter name: Pranavkumar Sawargaonkar <pranavkumar@linaro.org> Approved at meeting 2014-01-28: https://lists.oasis-open.org/archives/virtio/201401/msg00054.html Signed-off-by: Rusty Russell <rusty@au1.ibm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@197 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-01-29Feedback #2: More feedback from Thomas Huthrusty
Document: virtio-v1.0-csprd01 Number: 2 Date: Fri, 10 Jan 2014 13:49:49 +0100 Link to Mail: https://lists.oasis-open.org/archives/virtio-comment/201401/msg00001.html Commenter name: Thomas Huth <thuth@linux.vnet.ibm.com> Approved at meeting 2014-01-28: https://lists.oasis-open.org/archives/virtio/201401/msg00054.html Signed-off-by: Rusty Russell <rusty@au1.ibm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@196 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-01-29Feedback #1: fixes from Thomas Huthrusty
Document: virtio-v1.0-csprd01 Number: 1 Date: Fri, 10 Jan 2014 11:01:44 +0100 Link to Mail: https://lists.oasis-open.org/archives/virtio-comment/201401/msg00000.html Commenter name: Thomas Huth <thuth@linux.vnet.ibm.com> Approved at meeting: 2014-01-28 https://lists.oasis-open.org/archives/virtio/201401/msg00054.html Signed-off-by: Rusty Russell <rusty@au1.ibm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@195 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-01-28mmio: Move QueueReady register from offset 0x03c to 0x044hornet
Legacy devices have QueueAlign register at 0x03c. To stay on the safe side and avoid any potential clashes (also to be able to abort any wrong writes), move it to previously unused offset 0x044. Signed-off-by: Pawel Moll <pawel.moll@arm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@194 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-01-23virtio-ccw: fix set_revision payload definitioncornelia.huck
The members of struct virtio_rev_info are big endian: use be16 types. Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@193 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-01-23Formatting: fix feature bits for console device.rusty
Make them a description list like every other device. Signed-off-by: Rusty Russell <rusty@au1.ibm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@191 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-01-23Michael's patch adding MQ support added some u16s; they are u16 inrusty
legacy mode but should be le16 for modern devices. Signed-off-by: Rusty Russell <rusty@au1.ibm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@190 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-01-17net/multiqueue: tighten wordingrusty
Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: Rusty Russell <rusty@au1.ibm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@185 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2014-01-03mmio: Obviously wrong notification register namehornet
The "4.2.3.3 Notifying The Device" section said "writing the index of the updated queue to the QueueNum". This is obviously wrong - should read "QueueNotify". Signed-off-by: Pawel Moll <pawel.moll@arm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@179 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2013-12-162.3.2 MMIO: Configuration space offset correctedhornet
The offset in the MMIO configuration space description (table 4.1) became wrong at some time (0x0fff). Fixed. Signed-off-by: Pawel Moll <pawel.moll@arm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@177 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2013-12-122.3.2 MMIO: Notifications & interrupts clarificationshornet
(Hopefully) clarified the way notifications are being passed between the device and the driver and about the meaning of the interrupt registers. Signed-off-by: Pawel Moll <pawel.moll@arm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@176 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2013-12-122.3.2 MMIO: Further clarificationshornet
Clarified driver behaviour for out-of-spec MagicValue, Version and DeviceID values. Signed-off-by: Pawel Moll <pawel.moll@arm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@174 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2013-12-12ccw: feature bit endiannesscornelia.huck
In contrast to the other values transmitted in ccw payload, feature bits are little endian. Fix it in the structure definition. Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@173 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2013-12-12ccw: clarify passing of subchannel idcornelia.huck
Make clear that the upper half of the register must be ignored, just like normal I/O instructions do. Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@172 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2013-12-12ccw: Tighten specification language.cornelia.huck
must -> MUST changes, removed inappropriate mays. Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@171 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2013-12-092.3.2 MMIO: LaTeXisationhornet
Converter the register layout descriptions into tables. Also hardened the specification language, using MUSTs and MUST NOTs. Signed-off-by: Pawel Moll <pawel.moll@arm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@170 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2013-12-08net: document VIRTIO_NET_F_MAC_ADDRmstsirkin
VIRTIO-50 commit f058954d131e3dc73058778ad23b241a235ae8e1 virtio-spec: set mac address by a new vq command Approved Dec 3, 2013 Reported-by: Francesco Fusco <ffusco@redhat.com> Signed-off-by: Amos Kong <akong@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@167 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2013-12-08net: add _F_MQ supportmstsirkin
VIRTIO-49 Includes git commits: 3c600996f641614d3720c94dd52155aaaba670fa virtio-spec: fix two typos commit 67023431c8796bc430ec0a79b15bab57e2e0f1f6 virtio-spec: virtio network device multiqueue support commit a02d91f8729b4a333d525015d22138a86ce9b644 net: add note that you can defer rx queue init until mq enable. Approved Dec 3, 2013 Reported-by: Francesco Fusco <ffusco@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio@166 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652