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
doc/porting-boards.md: improve with porting graph and reference section #15981
Conversation
Can we either drop the todos and add them in a tracking issue or just implement them? Whenever I read todo in others documentation I always get scared off. |
Other than that I think it is helpful. |
when i click on the rectangles, i get an error message. maybe this is because of CircleID? rest looks good to me! |
Yeah, seems like a problem of CircleCI specifically in this case. Since I link it statically, CircleCI seems to try to access its static store for that link, so that might be the problem here. But I can have a look, if one can reference a page dynamically from a dot file. As the name of the output HTML might change (and it also won't work for a LaTeX-generated PDF) this might be desirable anyway. |
Will remove the |
Using |
Done that and also did some style fixes to the dot file. Now, if |
Can you have another look @waehlisch, please, once CircleCI is done building the artifact? |
I thought the long-term plan was to get rid of the |
That makes it even more funny, because then the graph would literally end in a "Hello" ;-). |
Ending on a "Hello World" sounds cool but making a board print hello world over serial might take more time than blinking the LED's which is pretty straight forward , doesn't event need timers :) |
Mhhh, the porting guide mentions the LED macros within |
Links still don't work I just noticed :-/. But they do locally when build with |
Done |
- [In her blog][martines-blog], Martine Lenders documented her approach of | ||
porting the @ref boards_feather-nrf52840 in February 2020. |
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.
BTW feel free to provide more examples that I could integrate here. Feels a bit pretentious to only cite my own blog here ;-).
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 think it is great!
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.
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.
why not adding this documentation as a concrete example for porting to the doxygen?
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.
@akshaim I can link your guide. How would you prefer it to be cited here?
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.
You can have it as an additional reference for quick help.
On a side note, I was trying to document the process of board port for other platforms but it seems like there is no easy way to do it. The above example I cited is an easy "dirty" way to port the CPU but not the "recommended" method as different maintainers use different processes. Which do you think makes sense to document the easy method or recommended method?
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.
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.
Which do you think makes sense to document the easy method or recommended method?
I never ported a CPU, so I can't really tell what methods are there and which are preferred by whom. Me in your place would go for what you think is the best method first and then ask for input by other maintainers in the PR.
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.
Okay. That sounds good to me :)
Alternatively, I could delete the reference to it for now. |
+1 let's move this forward. |
Done. I removed the |
Please squash! |
8569d52
to
aaa9512
Compare
Done |
Contribution description
The main objective of this PR is to provide a porting flowchart similar to the one AWS FreeRTOS provides (but way simpler, since we have a HAL). For the color scheme I oriented myself on other graphs (like the
netdev
description or the one on thegnrc
main page).Since we lack some guides however ("How to port a CPU?", "How to make a network device compatible with a network stack?") I added some TODO notes for those to the be provided so I have something to link to.
Regarding the "How to port a CPU?" part @akshaim has already something in the pipeline AFAIK, @jia200x, @fjmolinas should we look into the "How to make a network device compatible with a network stack?" part?
Testing procedure
Read the doc generated by CircleCI. When clicking the rectangle action nodes in the graph, you will be lead to the corresponding guide.
Issues/PRs references
None.