How to contribute to the RISC-V SW ecosystem
OSS contribution requirements are managed by the upstream projects. So in order to contribute changes to an OSS project the corresponding requirements of that project remain valid.
The link list below provides pointers to the contribution requirements for a few OSS projects:
As a short summary, keep in mind to have the following correct (details are all project-specific):
license agreements is valid (between developer/employer and project)
coding style matches (many projects have scripts that can be used to check a patch)
patch size is appropriate and not too large (use more patches of smaller size instead of a single large patch)
commit messages (headline, body with what? and why?, additional information as needed by project)
tests (all code must be tested to save your future self and other time)
Additionally, please consider this for each community to which you wish to submit a patch:
how/where the community communicates (email list, IRC, Slack, Discord, ...)
how the community is governed (who is the maintainer? are there sub-maintainers? are there key experts not in leadership positions but who have influence?)
what personality does the community have (is it friendly and welcoming? can it be harsh? what are their sensitive topics which generate lots of discussion?)
who represents RISC-V in the community (do you know this person? how can they help your patch?)
RISC-V International