diff options
Diffstat (limited to 'docs/chibios_upgrade_instructions.md')
-rw-r--r-- | docs/chibios_upgrade_instructions.md | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/docs/chibios_upgrade_instructions.md b/docs/chibios_upgrade_instructions.md new file mode 100644 index 000000000..40c2faafc --- /dev/null +++ b/docs/chibios_upgrade_instructions.md | |||
@@ -0,0 +1,56 @@ | |||
1 | # ChibiOS Upgrade Procedure | ||
2 | |||
3 | ChibiOS and ChibiOS-Contrib need to be updated in tandem -- the latter has a branch tied to the ChibiOS version in use and should not be mixed with different versions. | ||
4 | |||
5 | ## Getting ChibiOS | ||
6 | |||
7 | * `svn` Initialisation: | ||
8 | * Only needed to be done once | ||
9 | * You might need to separately install `git-svn` package in your OS's package manager | ||
10 | * `git svn init --stdlayout --prefix='svn/' http://svn.osdn.net/svnroot/chibios/` | ||
11 | * `git remote add qmk git@github.com:qmk/ChibiOS.git` | ||
12 | * Updating: | ||
13 | * `git svn fetch` | ||
14 | * First time around this will take several hours | ||
15 | * Subsequent updates will be incremental only | ||
16 | * Tagging example (work out which version first!): | ||
17 | * `git tag -a ver20.3.3 -m ver20.3.3 svn/tags/ver20.3.3` | ||
18 | * `git push qmk ver20.3.3` | ||
19 | * `git tag -a breaking_YYYY_qN -m breaking_YYYY_qN svn/tags/ver20.3.3` | ||
20 | * `git push qmk breaking_YYYY_qN` | ||
21 | |||
22 | ## Getting ChibiOS-Contrib | ||
23 | |||
24 | * `git` Initialisation: | ||
25 | * `git clone git@github.com:qmk/ChibiOS-Contrib` | ||
26 | * `git remote add upstream https://github.com/ChibiOS/ChibiOS-Contrib` | ||
27 | * `git checkout -b chibios-20.3.x upstream/chibios-20.3.x` | ||
28 | * Updating: | ||
29 | * `git fetch --all --tags --prune` | ||
30 | * `git checkout chibios-20.3.x` | ||
31 | * `git pull --ff-only` | ||
32 | * `git push origin chibios-20.3.x` | ||
33 | * `git tag -a breaking_YYYY_qN -m breaking_YYYY_qN chibios-20.3.x` | ||
34 | * `git push origin breaking_YYYY_qN` | ||
35 | |||
36 | ## Updating submodules | ||
37 | |||
38 | * Update the submodules | ||
39 | * `cd $QMK_FIRMWARE` | ||
40 | * `git checkout develop` | ||
41 | * `git pull --ff-only` | ||
42 | * `git checkout -b chibios-version-bump` | ||
43 | * `cd lib/chibios` | ||
44 | * `git fetch --all --tags --prune` | ||
45 | * `git checkout breaking_YYYY_qN` | ||
46 | * `cd ../chibios-contrib` | ||
47 | * `git fetch --all --tags --prune` | ||
48 | * `git checkout breaking_YYYY_qN` | ||
49 | * Build everything | ||
50 | * `cd $QMK_FIRMWARE` | ||
51 | * `qmk multibuild -j4` | ||
52 | * Make sure there are no errors | ||
53 | * Push to the repo | ||
54 | * `git commit -am 'Update ChibiOS to XXXXXXXXX'` | ||
55 | * `git push --set-upstream origin chibios-version-bump` | ||
56 | * Make a PR to qmk_firmware with the new branch \ No newline at end of file | ||