-
Notifications
You must be signed in to change notification settings - Fork 10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Documentation Update and Restructure #37
base: main
Are you sure you want to change the base?
Conversation
Provide a succinct introduction to AMP with comparison to SMP to lead into a new section detailing the 'Fundamental' parts that OpenAMP is addressing with the intent of leading into which parts are implemented by what part of OpenAMP architecture which is the next section. Parts taken from 'System Wide Considerations'.
provide a high level architecture and diagram of a chained topology and reference components to the amp fundamentals they serve.
restructure and reword with aim of flowing from intro, to architectural overview through to project and member info.
images were not rendering correctly
adjust after review from readthedocs rendering
to help the reader locate the components repeat the diagrams highlighting the references components per section.
so we can reference the endpoint information from other pages, add a reference in the rpmsg doc file
in migrating demo documentation start a new section via an index page which will hold a top down architectural description of the demos.
use the architecture overview diagram to exemplify the demo and the components used.
To allow for restructure of demos to have example explanations and then links to implementation on reference boards, create new document to link to reference boards.
use source for code, and implementation for reference boards in headings.
Reference boards have move to own section so remove from original index. Leave the other sections in situ still as they have not been captured elsewhere yet.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi @spike
I started to look at your updates. Please find a few comments. I know that the work is ongoing so feel free to ignore them if they are not relevant.
@@ -53,6 +59,8 @@ This diagram details the Resource Assignment using a different color for each ** | |||
|
|||
The yellow colored boxes are the Linux **runtime domain** as the master running on a single processor, utilizing the two cores in a `Symmetric Multiprocessing <https://en.wikipedia.org/wiki/Symmetric_multiprocessing>`_ setup, and the green and blue colored boxes details the RTOS and Bare Metal slave applications each running on a single core of a remote processor as their own **runtime domain**. The Linux system shares memory with both slaves, but the slave applications do not share memory. Each domain owns independent peripherals in the system. Although the Linux domain is `SMP <https://en.wikipedia.org/wiki/Symmetric_multiprocessing>`_, all three **runtime domains** together make up an `AMP <https://en.wikipedia.org/wiki/Asymmetric_multiprocessing>`_ system. | |||
|
|||
.. _runtime-control-work-label: | |||
|
|||
Runtime Control |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
not fan of this name as it not obvious to understand what is behind this term.
what about "remote processor life cycle management" or something similar?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If you mean runtime domain, Its introduced in the Elevator Pitch (https://www.openampproject.org/docs/presentations/OpenAMP-Elevator-Pitch-2024-Q1.pdf) so this was an attempt to tie that through. It is different to LCM, as I think it is trying to emphasize how to share resources?
Happy to clarify or change direction...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I propose that we have a discussion to clarify this chapter in the next meeting.
Standardization of the IPC is promoted by the OpenAMP project through the use of :ref:`RPMsg <rpmsg-protocol-work-label>`, using `Open Standard Virtio devices <https://docs.oasis-open.org/virtio/virtio/v1.3/virtio-v1.3.html>`_ as the HW abstraction or MAC layer. The abstraction using Virtio means that the implementer can optionally use :ref:`Resource Isolation<resource-isolation-work-label>` via a hypervisor, which is exemplified by the first processor in the architecture diagram. The other two processors are in what is referred to as a hypervisorless-virtio setup because they are using virtio (virtual io) as an abstraction layer but without a hypervisor. | ||
Standardization of the IPC is promoted by the OpenAMP project through the use of :ref:`RPMsg <rpmsg-protocol-work-label>`, using `Open Standard Virtio devices <https://docs.oasis-open.org/virtio/virtio/v1.3/virtio-v1.3.html>`_ as a HW abstraction or MAC layer. The abstraction using Virtio means that the implementer can optionally use :ref:`Resource Isolation<resource-isolation-work-label>` via a hypervisor, which is exemplified by the first processor in the architecture diagram. The other two processors are in what is referred to as a hypervisorless-virtio setup because they are using virtio (virtual io) as an abstraction layer but without a hypervisor. | ||
|
||
The OpenAMP Proxy and RPC Service are higher level IPC components. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
to discuss in meeting if we keep this in the global archi are if we should have a dedicated page. for me it is part of the application not the library
demos/echo.rst
Outdated
This Echo Test Sample is demonstrated in the following reference implementations. | ||
|
||
* :ref:`Docker Images<docker-images-label>` as demo1A | ||
* :ref:`AMD-Xilinx platforms<demos-AMD--work-label>` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It is also possible to run this test on a linux PC between 2 processes as described here:
https://github.com/OpenAMP/open-amp/blob/main/README.md#example-to-compile-openamp-for-communication-between-linux-processes
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
added a todo for later addition
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
done
demos/matrix_multiply.rst
Outdated
This Matrix Multiply Sample is demonstrated in the following reference implementations. | ||
|
||
* :ref:`Docker Images<docker-images-label>` as demo1B | ||
* :ref:`AMD-Xilinx platforms<demos-AMD--work-label>` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
same it is available using Linux processes
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
done
add intro diagram and initial introduction for sample client for the RPMsg multi services demo.
Change name to design rather than protocol details as this section covers both. Also add short introductory sentence with link to architecture intro.
restructure design sections to have sub-sections dependent on capability.
to match the summary, reverse the order of the table of contents headings
as we added a toc to link to the lower level pages, change the introductory paragraphs to be in a table for visual clarity.
some references to what looks like older implementations exist, so fix the link or remove the reference.
the design docs are a deeper level set of design and located in the source repositories, so make mention of this as intro.
In 11th Dec 2024 System Reference working group call, we discussed that we should put this on the January 8th call agenda (when more folks are on) to discuss how to divide up the reviews or if we should have a docs review sprint. Finishing up end of year is busy for those on the call today. |
Restructure Project Overview section and add higher level architecture and associated diagrams and add more links to underlying pages.
Some changes are anticipated in future as new content is added and we wish to maintain consistency across pages.