42c3ace1fa 
								
							 
						 
						
							
							
								
								Merge pull-request  #39  from metta-systems:fix/bootup-cleanup to develop  
							
							... 
							
							
							
							Fix/bootup cleanup
[close  #39 ] 
							
						 
						
							2020-11-20 04:01:57 +02:00  
				
					
						
							
							
								 
						
							
								b4205f5ce6 
								
							 
						 
						
							
							
								
								Revert “Adjust for nightly rustfmt bug”  
							
							... 
							
							
							
							367ad5bbb2https://github.com/rust-lang/rustfmt/issues/4528 
is now fixed. 
						
							2020-11-20 03:09:43 +02:00  
				
					
						
							
							
								 
						
							
								d85d824bfd 
								
							 
						 
						
							
							
								
								Switch on MMU immediately to avoid unaligned access  
							
							... 
							
							
							
							Since enabling armv6 unaligned access bit U in CP15 C1
requires AArch32 assembly and I don't want to introduce
yet another boot stub, I'll just initialize MMU right away
- this causes CPU to treat SCTLR_EL1.A differently and not
cause any alignment faults.
In the future, a small AArch32 boot stub that uses
now commented out fn enable_armv6_unaligned_access()
should be used to set U=1 and A=0 for full unaligned
access even when MMU is off. See ARM documentation
linked from that fn. 
							
						 
						
							2020-11-20 03:09:43 +02:00  
				
					
						
							
							
								 
						
							
								1de52fa109 
								
							 
						 
						
							
							
								
								Disable stack align checks  
							
							... 
							
							
							
							As with data align checks lets not fault on this yet. 
							
						 
						
							2020-11-20 03:09:00 +02:00  
				
					
						
							
							
								 
						
							
								696307f30c 
								
							 
						 
						
							
							
								
								Improve traps printing  
							
							
							
						 
						
							2020-11-20 03:08:40 +02:00  
				
					
						
							
							
								 
						
							
								4cb6f29e0d 
								
							 
						 
						
							
							
								
								Clean up boot-order  
							
							... 
							
							
							
							Extract shared code, fix comments. 
							
						 
						
							2020-11-20 03:08:40 +02:00  
				
					
						
							
							
								 
						
							
								8265b06474 
								
							 
						 
						
							
							
								
								Merge pull-request  #38  from metta-systems:feature/display-output to develop  
							
							... 
							
							
							
							Feature/display output
[close  #38 ] 
							
						 
						
							2020-11-19 15:19:39 +02:00  
				
					
						
							
							
								 
						
							
								43d5e4ea21 
								
							 
						 
						
							
							
								
								Suppress clippy warning  
							
							... 
							
							
							
							For now, no api change. 
							
						 
						
							2020-11-19 14:50:52 +02:00  
				
					
						
							
							
								 
						
							
								3147e5327a 
								
							 
						 
						
							
							
								
								Add display demo in main  
							
							
							
						 
						
							2020-11-19 04:05:52 +02:00  
				
					
						
							
							
								 
						
							
								e72fac01b0 
								
							 
						 
						
							
							
								
								Add Display output  
							
							
							
						 
						
							2020-11-19 04:05:52 +02:00  
				
					
						
							
							
								 
						
							
								6896b7a1cc 
								
							 
						 
						
							
							
								
								Merge pull-request  #34  from metta-systems:feature/power-management to develop  
							
							... 
							
							
							
							Add minimal RPi power management
* Turn the board off
* Reboot the board
[close  #34 ] 
							
						 
						
							2020-11-18 23:03:47 +02:00  
				
					
						
							
							
								 
						
							
								2ac804793b 
								
							 
						 
						
							
							
								
								Add minimal RPi power management  
							
							... 
							
							
							
							* Turn the board off
* Reboot the board 
							
						 
						
							2020-11-18 02:29:09 +02:00  
				
					
						
							
							
								 
						
							
								6127b5d940 
								
							 
						 
						
							
							
								
								Merge pull-request  #33  from metta-systems:fix/implement-gitpod-workspace to develop  
							
							... 
							
							
							
							Implement working gitpod workspace
For online development.
[close  #33 ] 
							
						 
						
							2020-11-18 02:27:52 +02:00  
				
					
						
							
							
								 
						
							
								6050ca9e9d 
								
							 
						 
						
							
							
								
								Update gitpod configuration  
							
							... 
							
							
							
							* Build from proper image
* Add vscode extensions 
							
						 
						
							2020-11-18 02:27:05 +02:00  
				
					
						
							
							
								 
						
							
								4e45358339 
								
							 
						 
						
							
							
								
								Merge pull-request  #37  from metta-systems:fix/github-actions-upgrade to develop  
							
							... 
							
							
							
							Switch PATH setting to new environment files
According to github update https://github.blog/changelog/2020-10-01-github-actions-deprecating-set-env-and-add-path-commands/ 
[close  #37 ] 
							
						 
						
							2020-11-17 23:09:53 +02:00  
				
					
						
							
							
								 
						
							
								367ad5bbb2 
								
							 
						 
						
							
							
								
								Adjust for nightly rustfmt bug  
							
							... 
							
							
							
							See https://github.com/rust-lang/rustfmt/issues/4528 
for the bug description, namely rustfmt removes
this comment completely if it's left in the
extern block. 
							
						 
						
							2020-11-17 22:56:56 +02:00  
				
					
						
							
							
								 
						
							
								53e68bf7b3 
								
							 
						 
						
							
							
								
								Switch PATH setting to new environment files  
							
							... 
							
							
							
							According to github update https://github.blog/changelog/2020-10-01-github-actions-deprecating-set-env-and-add-path-commands/  
							
						 
						
							2020-11-17 22:56:56 +02:00  
				
					
						
							
							
								 
						
							
								02124ed342 
								
							 
						 
						
							
							
								
								Merge pull-request  #30  from metta-systems:feature/add-pl011-uart to develop  
							
							... 
							
							
							
							Feature/add pl011 uart
[close  #30 ] 
							
						 
						
							2020-11-14 23:55:42 +02:00  
				
					
						
							
							
								 
						
							
								5dffa9eb8e 
								
							 
						 
						
							
							
								
								Add PL011 UART  
							
							
							
						 
						
							2020-11-14 22:15:52 +02:00  
				
					
						
							
							
								 
						
							
								d124b02e7c 
								
							 
						 
						
							
							
								
								Add set_clock_rate mailbox command  
							
							
							
						 
						
							2020-11-14 22:15:52 +02:00  
				
					
						
							
							
								 
						
							
								de8b24d504 
								
							 
						 
						
							
							
								
								Merge pull-request  #32  from metta-systems:feature/add-qemu-gdb-target to develop  
							
							... 
							
							
							
							Add qemu-gdb target
Refactor QEMU runners.
[close  #32 ] 
							
						 
						
							2020-11-14 22:15:18 +02:00  
				
					
						
							
							
								 
						
							
								e8da38e04f 
								
							 
						 
						
							
							
								
								Add qemu-gdb target  
							
							... 
							
							
							
							Refactor QEMU runners. 
							
						 
						
							2020-11-14 17:59:50 +02:00  
				
					
						
							
							
								 
						
							
								91e8652abc 
								
							 
						 
						
							
							
								
								Merge pull-request  #31  from metta-systems:fix/code-cleanup to develop  
							
							... 
							
							
							
							Fix/code cleanup
* Set stack pointer immediately upon entry
* Disable alignment checks before enabling MMU (rust core lib likes to do unaligned half-word accesses from its fmt_u64 routine, which we use a lot)
* Print more detailed reports in kernel exception handler
* Clean up makefiles
* Dry up boot code
* Move build-std flags to cargo config, as they apply to all of the cargo invocations
* Remove rlibc dependency, use compiler built-ins instead
[close  #31 ] 
							
						 
						
							2020-11-14 17:59:14 +02:00  
				
					
						
							
							
								 
						
							
								7604f7c166 
								
							 
						 
						
							
							
								
								Add cargo expand task  
							
							
							
						 
						
							2020-11-14 17:33:43 +02:00  
				
					
						
							
							
								 
						
							
								f07f130132 
								
							 
						 
						
							
							
								
								Add comments to justfile commands  
							
							
							
						 
						
							2020-11-14 17:33:43 +02:00  
				
					
						
							
							
								 
						
							
								09003a7da2 
								
							 
						 
						
							
							
								
								Traps: print more detailed exception report  
							
							
							
						 
						
							2020-11-14 17:33:43 +02:00  
				
					
						
							
							
								 
						
							
								373f4753dc 
								
							 
						 
						
							
							
								
								Disable alignment checks right on boot  
							
							... 
							
							
							
							Specifically, before we print any numbers - rust
core fmt_u64 uses a little optimisation that
ldrh/strh to unaligned addresses. 
							
						 
						
							2020-11-14 17:33:43 +02:00  
				
					
						
							
							
								 
						
							
								482c62d341 
								
							 
						 
						
							
							
								
								Change mmu detail printer formatting  
							
							... 
							
							
							
							Print mmu features before and after init. 
							
						 
						
							2020-11-14 17:33:43 +02:00  
				
					
						
							
							
								 
						
							
								df0510266e 
								
							 
						 
						
							
							
								
								Fix formatting  
							
							
							
						 
						
							2020-11-14 17:33:43 +02:00  
				
					
						
							
							
								 
						
							
								dc2a73f6c6 
								
							 
						 
						
							
							
								
								Provide memory intrinsics via compiler builtins  
							
							... 
							
							
							
							Use unstable feature to remove rlibc crate dependency. 
							
						 
						
							2020-11-14 17:33:43 +02:00  
				
					
						
							
							
								 
						
							
								bfba78118f 
								
							 
						 
						
							
							
								
								Move build-std flags to cargo config  
							
							
							
						 
						
							2020-11-14 17:33:43 +02:00  
				
					
						
							
							
								 
						
							
								aac05a8776 
								
							 
						 
						
							
							
								
								Increase stack print buffer size to print test panics  
							
							... 
							
							
							
							Tests may write pretty long messages in panic output. 
							
						 
						
							2020-11-14 17:33:43 +02:00  
				
					
						
							
							
								 
						
							
								50d9caa5f6 
								
							 
						 
						
							
							
								
								Set stack pointer immediately upon boot  
							
							
							
						 
						
							2020-11-14 17:33:43 +02:00  
				
					
						
							
							
								 
						
							
								20c7c8bd7e 
								
							 
						 
						
							
							
								
								Refactor non-DRY boot code  
							
							
							
						 
						
							2020-11-14 17:33:43 +02:00  
				
					
						
							
							
								 
						
							
								79028dba96 
								
							 
						 
						
							
							
								
								Add nm helper target  
							
							
							
						 
						
							2020-11-04 22:24:39 +02:00  
				
					
						
							
							
								 
						
							
								6da44a69ac 
								
							 
						 
						
							
							
								
								Improve gdb runner  
							
							
							
						 
						
							2020-11-04 22:24:34 +02:00  
				
					
						
							
							
								 
						
							
								1776dac439 
								
							 
						 
						
							
							
								
								Increase CI build timeout even more  
							
							... 
							
							
							
							Delays are growing! 
							
						 
						
							2020-11-04 22:24:30 +02:00  
				
					
						
							
							
								 
						
							
								a5eeacf19b 
								
							 
						 
						
							
							
								
								Merge pull-request  #29  from metta-systems:feature/jtag-debugging to develop  
							
							... 
							
							
							
							Feature/jtag debugging
Add JTAG setup docs and try running with probe.rs
[close  #29 ] 
							
						 
						
							2020-11-03 20:23:51 +02:00  
				
					
						
							
							
								 
						
							
								d4356434a0 
								
							 
						 
						
							
							
								
								Increase CI build timeout  
							
							
							
						 
						
							2020-11-03 19:49:39 +02:00  
				
					
						
							
							
								 
						
							
								d38661b63f 
								
							 
						 
						
							
							
								
								Add openocd/gdb targets to makefile  
							
							... 
							
							
							
							Refactor build system scripts a bit. 
							
						 
						
							2020-11-03 19:29:43 +02:00  
				
					
						
							
							
								 
						
							
								2a4eb20131 
								
							 
						 
						
							
							
								
								Add explicit noload flag to BSS section  
							
							
							
						 
						
							2020-11-03 14:03:22 +02:00  
				
					
						
							
							
								 
						
							
								3415ccd68c 
								
							 
						 
						
							
							
								
								Add JTAG helpers  
							
							
							
						 
						
							2020-11-03 14:03:22 +02:00  
				
					
						
							
							
								 
						
							
								c378250aba 
								
							 
						 
						
							
							
								
								Init serial before the rest  
							
							... 
							
							
							
							So we could see output from all modules. 
							
						 
						
							2020-11-02 20:55:18 +02:00  
				
					
						
							
							
								 
						
							
								1fedc95d42 
								
							 
						 
						
							
							
								
								Add JTAG documentation  
							
							... 
							
							
							
							This is old and tried docs from my RPi debugging setup with JTAG,
the next chapter with probe.rs is to be written. 
							
						 
						
							2020-11-02 20:55:18 +02:00  
				
					
						
							
							
								 
						
							
								ec27898830 
								
							 
						 
						
							
							
								
								Merge pull-request  #28  from metta-systems:feature/add-mini-uart to develop  
							
							... 
							
							
							
							Feature/add mini uart
[close  #28 ] 
							
						 
						
							2020-10-29 01:13:37 +02:00  
				
					
						
							
							
								 
						
							
								d342031331 
								
							 
						 
						
							
							
								
								Add kernel global CONSOLE  
							
							... 
							
							
							
							Init it with mini_uart - nothing else is implemented yet. 
							
						 
						
							2020-10-28 21:38:53 +02:00  
				
					
						
							
							
								 
						
							
								ab696eca8e 
								
							 
						 
						
							
							
								
								Implement Error type for traps module  
							
							... 
							
							
							
							Recommended by the clippy lint
https://rust-lang.github.io/rust-clippy/master/index.html#result_unit_err 
Using snafu because it already has a no_std feature
unlike thiserror. 
							
						 
						
							2020-10-28 21:38:53 +02:00  
				
					
						
							
							
								 
						
							
								fef66a0191 
								
							 
						 
						
							
							
								
								Bump cortex-a dependency to released version  
							
							
							
						 
						
							2020-10-28 21:38:53 +02:00  
				
					
						
							
							
								 
						
							
								cecddea41e 
								
							 
						 
						
							
							
								
								Add mini_uart implementation  
							
							
							
						 
						
							2020-10-27 19:33:23 +02:00  
				
					
						
							
							
								 
						
							
								7a46d7d993 
								
							 
						 
						
							
							
								
								Add a dummy Console device  
							
							
							
						 
						
							2020-10-27 19:32:54 +02:00