OpenEmbedded/Yocto BSP layer for Aspeed's platforms
======================================================================

This layer provides support for Aspeed's platforms for use with OpenEmbedded
and/or Yocto.

```
This layer depends on:

URI: git://git.openembedded.org/openembedded-core
layers: meta
branch: master
revision: HEAD
```

Contributing
------------

meta-aspeed patches are reviewed using the Gerrit instance at
https://gerrit.openbmc.org.

Please submit patches to Gerrit.  More information on using Gerrit can be found
[here](https://github.com/openbmc/docs/blob/master/CONTRIBUTING.md#submitting-changes-via-gerrit-server).
https://github.com/openbmc/meta-aspeed is a hosting mirror only and GitHub
pull requests are not monitored and will not be accepted.

Patch checklist.  Please ensure patches adhere to the following guidelines:

 - meta-aspeed uses the [OE style
   guidelines](https://www.openembedded.org/wiki/Styleguide).
 - follow [the seven rules of a great git commit
   message](https://chris.beams.io/posts/git-commit/#seven-rules)

For questions or help please come join us on the [mailing
list](https://lists.ozlabs.org/listinfo/openbmc) or on
[Discord](https://discord.gg/69Km47zH98).
