fix ci/cd error (#195)

* fix ci/cd error

* update copyright year

* Modify remaining years

* solve ci report settings.json code style

* update .prettierrc.json

* prettierrc fix code style

* fix rb file i.to_s and code style

* fix error Line is too long. [101/100]

* Modify the Ruby file format and restore other file formats

* update makefile and readme file space
pull/196/head
James Zow 8 months ago committed by GitHub
parent 49a25275e6
commit 52b7ac9b2f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -3,7 +3,7 @@
# SPDX-License-Identifier: MIT OR Apache-2.0 # SPDX-License-Identifier: MIT OR Apache-2.0
# #
# Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> # Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
require_relative '../utils/devtool/copyright' require_relative '../utils/devtool/copyright'
@ -23,9 +23,9 @@ def copyright_check(staged_files)
copyright_check_files(staged_files) copyright_check_files(staged_files)
end end
##-------------------------------------------------------------------------------------------------- ## -------------------------------------------------------------------------------------------------
## Execution starts here ## Execution starts here
##-------------------------------------------------------------------------------------------------- ## -------------------------------------------------------------------------------------------------
staged_files = `git --no-pager diff --name-only --cached --diff-filter=d`.split(/\n/) staged_files = `git --no-pager diff --name-only --cached --diff-filter=d`.split(/\n/)
root_dir = `git rev-parse --show-toplevel`.strip root_dir = `git rev-parse --show-toplevel`.strip

@ -1,40 +1,40 @@
name: BSP-RPi3 name: BSP-RPi3
on: on:
push: push:
branches: branches:
- master - master
paths-ignore: paths-ignore:
- "utils/**" - "utils/**"
- "doc/**" - "doc/**"
- "docker/**" - "docker/**"
pull_request: pull_request:
branches: branches:
- master - master
paths-ignore: paths-ignore:
- "utils/**" - "utils/**"
- "doc/**" - "doc/**"
- "docker/**" - "docker/**"
schedule: schedule:
- cron: "0 5 * * *" - cron: "0 5 * * *"
jobs: jobs:
build: build:
name: Build kernels name: Build kernels
runs-on: ubuntu-22.04 runs-on: ubuntu-22.04
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v3
- name: Set up Ruby - name: Set up Ruby
uses: ruby/setup-ruby@v1 uses: ruby/setup-ruby@v1
- name: Set up Rust nightly - name: Set up Rust nightly
run: | run: |
cargo install cargo-binutils rustfilt cargo install cargo-binutils rustfilt
- name: Set up Ruby - name: Set up Ruby
run: | run: |
gem install bundler gem install bundler
bundle config set without 'uart' bundle config set without 'uart'
bundle install --retry 3 bundle install --retry 3
- name: Run - name: Run
run: | run: |
BSP=rpi3 bundle exec ruby utils/devtool.rb make BSP=rpi3 bundle exec ruby utils/devtool.rb make

@ -1,40 +1,40 @@
name: BSP-RPi4 name: BSP-RPi4
on: on:
push: push:
branches: branches:
- master - master
paths-ignore: paths-ignore:
- "utils/**" - "utils/**"
- "doc/**" - "doc/**"
- "docker/**" - "docker/**"
pull_request: pull_request:
branches: branches:
- master - master
paths-ignore: paths-ignore:
- "utils/**" - "utils/**"
- "doc/**" - "doc/**"
- "docker/**" - "docker/**"
schedule: schedule:
- cron: "0 5 * * *" - cron: "0 5 * * *"
jobs: jobs:
build: build:
name: Build kernels name: Build kernels
runs-on: ubuntu-22.04 runs-on: ubuntu-22.04
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v3
- name: Set up Ruby - name: Set up Ruby
uses: ruby/setup-ruby@v1 uses: ruby/setup-ruby@v1
- name: Set up Rust nightly - name: Set up Rust nightly
run: | run: |
cargo install cargo-binutils rustfilt cargo install cargo-binutils rustfilt
- name: Set up Ruby - name: Set up Ruby
run: | run: |
gem install bundler gem install bundler
bundle config set without 'uart' bundle config set without 'uart'
bundle install --retry 3 bundle install --retry 3
- name: Run - name: Run
run: | run: |
BSP=rpi4 bundle exec ruby utils/devtool.rb make BSP=rpi4 bundle exec ruby utils/devtool.rb make

@ -1,46 +1,46 @@
name: Various Sanity Checks name: Various Sanity Checks
on: on:
push: push:
branches: branches:
- master - master
pull_request: pull_request:
branches: branches:
- master - master
jobs: jobs:
build: build:
name: Various Sanity Checks name: Various Sanity Checks
runs-on: ubuntu-22.04 runs-on: ubuntu-22.04
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v3
- name: Set up Node - name: Set up Node
uses: actions/setup-node@v1 uses: actions/setup-node@v1
with: with:
node-version: "16" node-version: "16"
- name: Set up Ruby - name: Set up Ruby
uses: ruby/setup-ruby@v1 uses: ruby/setup-ruby@v1
- name: Set up Rust nightly - name: Set up Rust nightly
run: | run: |
rustup component add clippy rustup component add clippy
- name: Set up Bundler - name: Set up Bundler
run: | run: |
gem install bundler gem install bundler
bundle config set without 'uart' bundle config set without 'uart'
bundle install --retry 3 bundle install --retry 3
- name: Set up Prettier - name: Set up Prettier
run: | run: |
npm install prettier npm install prettier
- name: Setup misspell - name: Setup misspell
run: | run: |
curl -L -o ./install-misspell.sh https://raw.githubusercontent.com/client9/misspell/master/install-misspell.sh curl -L -o ./install-misspell.sh https://raw.githubusercontent.com/client9/misspell/master/install-misspell.sh
sh ./install-misspell.sh -b .vendor sh ./install-misspell.sh -b .vendor
- name: Run checks - name: Run checks
run: | run: |
BSP=rpi3 bundle exec ruby utils/devtool.rb clippy BSP=rpi3 bundle exec ruby utils/devtool.rb clippy
BSP=rpi4 bundle exec ruby utils/devtool.rb clippy BSP=rpi4 bundle exec ruby utils/devtool.rb clippy
bundle exec ruby utils/devtool.rb copyright bundle exec ruby utils/devtool.rb copyright
bundle exec ruby utils/devtool.rb fmt_check bundle exec ruby utils/devtool.rb fmt_check
bundle exec ruby utils/devtool.rb misspell bundle exec ruby utils/devtool.rb misspell
bundle exec ruby utils/devtool.rb rubocop bundle exec ruby utils/devtool.rb rubocop

@ -1,40 +1,40 @@
name: Integration-Tests name: Integration-Tests
on: on:
push: push:
branches: branches:
- master - master
paths-ignore: paths-ignore:
- "utils/**" - "utils/**"
- "doc/**" - "doc/**"
- "docker/**" - "docker/**"
pull_request: pull_request:
branches: branches:
- master - master
paths-ignore: paths-ignore:
- "utils/**" - "utils/**"
- "doc/**" - "doc/**"
- "docker/**" - "docker/**"
schedule: schedule:
- cron: "0 5 * * *" - cron: "0 5 * * *"
jobs: jobs:
build: build:
name: Run integration tests name: Run integration tests
runs-on: ubuntu-22.04 runs-on: ubuntu-22.04
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v3
- name: Set up Ruby - name: Set up Ruby
uses: ruby/setup-ruby@v1 uses: ruby/setup-ruby@v1
- name: Set up Rust nightly - name: Set up Rust nightly
run: | run: |
cargo install cargo-binutils rustfilt cargo install cargo-binutils rustfilt
- name: Set up Ruby - name: Set up Ruby
run: | run: |
gem install bundler gem install bundler
bundle config set without 'uart' bundle config set without 'uart'
bundle install --retry 3 bundle install --retry 3
- name: Run - name: Run
run: | run: |
bundle exec ruby utils/devtool.rb test_integration bundle exec ruby utils/devtool.rb test_integration

@ -1,41 +1,41 @@
name: Boot-and-Unit-Tests name: Boot-and-Unit-Tests
on: on:
push: push:
branches: branches:
- master - master
paths-ignore: paths-ignore:
- "utils/**" - "utils/**"
- "doc/**" - "doc/**"
- "docker/**" - "docker/**"
pull_request: pull_request:
branches: branches:
- master - master
paths-ignore: paths-ignore:
- "utils/**" - "utils/**"
- "doc/**" - "doc/**"
- "docker/**" - "docker/**"
schedule: schedule:
- cron: "0 5 * * *" - cron: "0 5 * * *"
jobs: jobs:
build: build:
name: Run boot and unit tests name: Run boot and unit tests
runs-on: ubuntu-22.04 runs-on: ubuntu-22.04
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v3
- name: Set up Ruby - name: Set up Ruby
uses: ruby/setup-ruby@v1 uses: ruby/setup-ruby@v1
- name: Set up Rust nightly - name: Set up Rust nightly
run: | run: |
cargo install cargo-binutils rustfilt cargo install cargo-binutils rustfilt
- name: Set up Ruby - name: Set up Ruby
run: | run: |
gem install bundler gem install bundler
bundle config set without 'uart' bundle config set without 'uart'
bundle install --retry 3 bundle install --retry 3
- name: Run - name: Run
run: | run: |
bundle exec ruby utils/devtool.rb test_boot bundle exec ruby utils/devtool.rb test_boot
bundle exec ruby utils/devtool.rb test_unit bundle exec ruby utils/devtool.rb test_unit

@ -1,40 +1,40 @@
name: Xtra-Tests name: Xtra-Tests
on: on:
push: push:
branches: branches:
- master - master
paths-ignore: paths-ignore:
- "utils/**" - "utils/**"
- "doc/**" - "doc/**"
- "docker/**" - "docker/**"
pull_request: pull_request:
branches: branches:
- master - master
paths-ignore: paths-ignore:
- "utils/**" - "utils/**"
- "doc/**" - "doc/**"
- "docker/**" - "docker/**"
schedule: schedule:
- cron: "0 5 * * *" - cron: "0 5 * * *"
jobs: jobs:
build: build:
name: Run xtra tests name: Run xtra tests
runs-on: ubuntu-22.04 runs-on: ubuntu-22.04
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v3
- name: Set up Ruby - name: Set up Ruby
uses: ruby/setup-ruby@v1 uses: ruby/setup-ruby@v1
- name: Set up Rust nightly - name: Set up Rust nightly
run: | run: |
cargo install cargo-binutils cargo install cargo-binutils
- name: Set up Ruby - name: Set up Ruby
run: | run: |
gem install bundler gem install bundler
bundle config set without 'uart' bundle config set without 'uart'
bundle install --retry 3 bundle install --retry 3
- name: Run - name: Run
run: | run: |
bundle exec ruby utils/devtool.rb make_xtra bundle exec ruby utils/devtool.rb make_xtra

@ -1 +1,35 @@
{} {
"printWidth": 100,
"tabWidth": 4,
"useTabs": false,
"semi": true,
"singleQuote": false,
"trailingComma": "es5",
"bracketSpacing": true,
"jsxBracketSameLine": false,
"arrowParens": "always",
"requirePragma": false,
"insertPragma": false,
"proseWrap": "preserve",
"endOfLine": "auto",
"overrides": [
{
"files": "*.rs",
"options": {
"printWidth": 100,
"tabWidth": 4,
"useTabs": false,
"semi": true,
"singleQuote": false,
"trailingComma": "es5",
"bracketSpacing": true,
"jsxBracketSameLine": false,
"arrowParens": "always",
"requirePragma": false,
"insertPragma": false,
"proseWrap": "preserve",
"endOfLine": "auto"
}
}
]
}

@ -10,23 +10,23 @@
# See https://github.com/rubocop-hq/rubocop/blob/master/manual/configuration.md # See https://github.com/rubocop-hq/rubocop/blob/master/manual/configuration.md
Layout/IndentationWidth: Layout/IndentationWidth:
Width: 4 Width: 4
AllowedPatterns: ['^\s*module'] AllowedPatterns: ['^\s*module']
Layout/LineLength: Layout/LineLength:
Max: 100 Max: 100
Lint/UnusedMethodArgument: Lint/UnusedMethodArgument:
AutoCorrect: False AutoCorrect: False
Metrics/AbcSize: Metrics/AbcSize:
Max: 25 Max: 25
Metrics/ClassLength: Metrics/ClassLength:
Enabled: false Enabled: false
Metrics/MethodLength: Metrics/MethodLength:
Max: 20 Max: 20
AllCops: AllCops:
NewCops: enable NewCops: enable

@ -1,10 +1,10 @@
{ {
"editor.formatOnSave": true, "editor.formatOnSave": true,
"editor.rulers": [100], "editor.rulers": [100],
"rust-analyzer.cargo.target": "aarch64-unknown-none-softfloat", "rust-analyzer.cargo.target": "aarch64-unknown-none-softfloat",
"rust-analyzer.cargo.features": ["bsp_rpi3"], "rust-analyzer.cargo.features": ["bsp_rpi3"],
"rust-analyzer.checkOnSave.allTargets": false, "rust-analyzer.checkOnSave.allTargets": false,
"rust-analyzer.checkOnSave.extraArgs": ["--lib", "--bins"], "rust-analyzer.checkOnSave.extraArgs": ["--lib", "--bins"],
"rust-analyzer.lens.debug": false, "rust-analyzer.lens.debug": false,
"rust-analyzer.lens.run": false "rust-analyzer.lens.run": false
} }

@ -1,10 +1,10 @@
{ {
"editor.formatOnSave": true, "editor.formatOnSave": true,
"editor.rulers": [100], "editor.rulers": [100],
"rust-analyzer.cargo.target": "aarch64-unknown-none-softfloat", "rust-analyzer.cargo.target": "aarch64-unknown-none-softfloat",
"rust-analyzer.cargo.features": ["bsp_rpi3"], "rust-analyzer.cargo.features": ["bsp_rpi3"],
"rust-analyzer.checkOnSave.allTargets": false, "rust-analyzer.checkOnSave.allTargets": false,
"rust-analyzer.checkOnSave.extraArgs": ["--bins"], "rust-analyzer.checkOnSave.extraArgs": ["--bins"],
"rust-analyzer.lens.debug": false, "rust-analyzer.lens.debug": false,
"rust-analyzer.lens.run": false "rust-analyzer.lens.run": false
} }

@ -20,4 +20,4 @@ path = "src/main.rs"
## Dependencies ## Dependencies
##-------------------------------------------------------------------------------------------------- ##--------------------------------------------------------------------------------------------------
[dependencies] [dependencies]

@ -1,6 +1,6 @@
## SPDX-License-Identifier: MIT OR Apache-2.0 ## SPDX-License-Identifier: MIT OR Apache-2.0
## ##
## Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> ## Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
include ../common/docker.mk include ../common/docker.mk
include ../common/format.mk include ../common/format.mk

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2021-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2021-2023 Andre Richter <andre.o.richter@gmail.com>
//! Architectural boot code. //! Architectural boot code.
//! //!

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2021-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2021-2023 Andre Richter <andre.o.richter@gmail.com>
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
// Public Code // Public Code

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! Conditional reexporting of Board Support Packages. //! Conditional reexporting of Board Support Packages.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! Top-level BSP file for the Raspberry Pi 3 and 4. //! Top-level BSP file for the Raspberry Pi 3 and 4.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2020-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2020-2023 Andre Richter <andre.o.richter@gmail.com>
//! Processor code. //! Processor code.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2021-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2021-2023 Andre Richter <andre.o.richter@gmail.com>
//! Boot code. //! Boot code.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
// Rust embedded logo for `make doc`. // Rust embedded logo for `make doc`.
#![doc( #![doc(

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! A panic handler that infinitely waits. //! A panic handler that infinitely waits.

@ -1,10 +1,10 @@
{ {
"editor.formatOnSave": true, "editor.formatOnSave": true,
"editor.rulers": [100], "editor.rulers": [100],
"rust-analyzer.cargo.target": "aarch64-unknown-none-softfloat", "rust-analyzer.cargo.target": "aarch64-unknown-none-softfloat",
"rust-analyzer.cargo.features": ["bsp_rpi3"], "rust-analyzer.cargo.features": ["bsp_rpi3"],
"rust-analyzer.checkOnSave.allTargets": false, "rust-analyzer.checkOnSave.allTargets": false,
"rust-analyzer.checkOnSave.extraArgs": ["--bins"], "rust-analyzer.checkOnSave.extraArgs": ["--bins"],
"rust-analyzer.lens.debug": false, "rust-analyzer.lens.debug": false,
"rust-analyzer.lens.run": false "rust-analyzer.lens.run": false
} }

@ -1,6 +1,6 @@
## SPDX-License-Identifier: MIT OR Apache-2.0 ## SPDX-License-Identifier: MIT OR Apache-2.0
## ##
## Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> ## Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
include ../common/docker.mk include ../common/docker.mk
include ../common/format.mk include ../common/format.mk

@ -58,7 +58,6 @@ diff -uNr 01_wait_forever/Makefile 02_runtime_init/Makefile
--section .text \ --section .text \
+ --section .rodata \ + --section .rodata \
$(KERNEL_ELF) | rustfilt $(KERNEL_ELF) | rustfilt
##------------------------------------------------------------------------------ ##------------------------------------------------------------------------------
diff -uNr 01_wait_forever/src/_arch/aarch64/cpu/boot.rs 02_runtime_init/src/_arch/aarch64/cpu/boot.rs diff -uNr 01_wait_forever/src/_arch/aarch64/cpu/boot.rs 02_runtime_init/src/_arch/aarch64/cpu/boot.rs
@ -90,7 +89,7 @@ diff -uNr 01_wait_forever/src/_arch/aarch64/cpu/boot.s 02_runtime_init/src/_arch
--- 01_wait_forever/src/_arch/aarch64/cpu/boot.s --- 01_wait_forever/src/_arch/aarch64/cpu/boot.s
+++ 02_runtime_init/src/_arch/aarch64/cpu/boot.s +++ 02_runtime_init/src/_arch/aarch64/cpu/boot.s
@@ -3,6 +3,22 @@ @@ -3,6 +3,22 @@
// Copyright (c) 2021-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2021-2023 Andre Richter <andre.o.richter@gmail.com>
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
+// Definitions +// Definitions
@ -154,7 +153,7 @@ diff -uNr 01_wait_forever/src/_arch/aarch64/cpu.rs 02_runtime_init/src/_arch/aar
@@ -0,0 +1,26 @@ @@ -0,0 +1,26 @@
+// SPDX-License-Identifier: MIT OR Apache-2.0 +// SPDX-License-Identifier: MIT OR Apache-2.0
+// +//
+// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> +// Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
+ +
+//! Architectural processor code. +//! Architectural processor code.
+//! +//!
@ -185,7 +184,7 @@ diff -uNr 01_wait_forever/src/bsp/raspberrypi/cpu.rs 02_runtime_init/src/bsp/ras
@@ -0,0 +1,14 @@ @@ -0,0 +1,14 @@
+// SPDX-License-Identifier: MIT OR Apache-2.0 +// SPDX-License-Identifier: MIT OR Apache-2.0
+// +//
+// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> +// Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
+ +
+//! BSP Processor code. +//! BSP Processor code.
+ +
@ -202,7 +201,7 @@ diff -uNr 01_wait_forever/src/bsp/raspberrypi/kernel.ld 02_runtime_init/src/bsp/
--- 01_wait_forever/src/bsp/raspberrypi/kernel.ld --- 01_wait_forever/src/bsp/raspberrypi/kernel.ld
+++ 02_runtime_init/src/bsp/raspberrypi/kernel.ld +++ 02_runtime_init/src/bsp/raspberrypi/kernel.ld
@@ -3,6 +3,8 @@ @@ -3,6 +3,8 @@
* Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> * Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
*/ */
+__rpi_phys_dram_start_addr = 0; +__rpi_phys_dram_start_addr = 0;

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! Architectural processor code. //! Architectural processor code.
//! //!

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2021-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2021-2023 Andre Richter <andre.o.richter@gmail.com>
//! Architectural boot code. //! Architectural boot code.
//! //!

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! Conditional reexporting of Board Support Packages. //! Conditional reexporting of Board Support Packages.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! Top-level BSP file for the Raspberry Pi 3 and 4. //! Top-level BSP file for the Raspberry Pi 3 and 4.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! BSP Processor code. //! BSP Processor code.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2020-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2020-2023 Andre Richter <andre.o.richter@gmail.com>
//! Processor code. //! Processor code.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2021-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2021-2023 Andre Richter <andre.o.richter@gmail.com>
//! Boot code. //! Boot code.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
// Rust embedded logo for `make doc`. // Rust embedded logo for `make doc`.
#![doc( #![doc(

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! A panic handler that infinitely waits. //! A panic handler that infinitely waits.

@ -1,10 +1,10 @@
{ {
"editor.formatOnSave": true, "editor.formatOnSave": true,
"editor.rulers": [100], "editor.rulers": [100],
"rust-analyzer.cargo.target": "aarch64-unknown-none-softfloat", "rust-analyzer.cargo.target": "aarch64-unknown-none-softfloat",
"rust-analyzer.cargo.features": ["bsp_rpi3"], "rust-analyzer.cargo.features": ["bsp_rpi3"],
"rust-analyzer.checkOnSave.allTargets": false, "rust-analyzer.checkOnSave.allTargets": false,
"rust-analyzer.checkOnSave.extraArgs": ["--bins"], "rust-analyzer.checkOnSave.extraArgs": ["--bins"],
"rust-analyzer.lens.debug": false, "rust-analyzer.lens.debug": false,
"rust-analyzer.lens.run": false "rust-analyzer.lens.run": false
} }

@ -1,6 +1,6 @@
## SPDX-License-Identifier: MIT OR Apache-2.0 ## SPDX-License-Identifier: MIT OR Apache-2.0
## ##
## Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> ## Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
include ../common/docker.mk include ../common/docker.mk
include ../common/format.mk include ../common/format.mk

@ -130,7 +130,7 @@ diff -uNr 02_runtime_init/src/bsp/raspberrypi/console.rs 03_hacky_hello_world/sr
@@ -0,0 +1,47 @@ @@ -0,0 +1,47 @@
+// SPDX-License-Identifier: MIT OR Apache-2.0 +// SPDX-License-Identifier: MIT OR Apache-2.0
+// +//
+// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> +// Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
+ +
+//! BSP console facilities. +//! BSP console facilities.
+ +
@ -192,7 +192,7 @@ diff -uNr 02_runtime_init/src/console.rs 03_hacky_hello_world/src/console.rs
@@ -0,0 +1,32 @@ @@ -0,0 +1,32 @@
+// SPDX-License-Identifier: MIT OR Apache-2.0 +// SPDX-License-Identifier: MIT OR Apache-2.0
+// +//
+// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> +// Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
+ +
+//! System console. +//! System console.
+ +
@ -327,7 +327,7 @@ diff -uNr 02_runtime_init/src/print.rs 03_hacky_hello_world/src/print.rs
@@ -0,0 +1,38 @@ @@ -0,0 +1,38 @@
+// SPDX-License-Identifier: MIT OR Apache-2.0 +// SPDX-License-Identifier: MIT OR Apache-2.0
+// +//
+// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> +// Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
+ +
+//! Printing. +//! Printing.
+ +

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! Architectural processor code. //! Architectural processor code.
//! //!

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2021-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2021-2023 Andre Richter <andre.o.richter@gmail.com>
//! Architectural boot code. //! Architectural boot code.
//! //!

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! Conditional reexporting of Board Support Packages. //! Conditional reexporting of Board Support Packages.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! Top-level BSP file for the Raspberry Pi 3 and 4. //! Top-level BSP file for the Raspberry Pi 3 and 4.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! BSP console facilities. //! BSP console facilities.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! BSP Processor code. //! BSP Processor code.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! System console. //! System console.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2020-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2020-2023 Andre Richter <andre.o.richter@gmail.com>
//! Processor code. //! Processor code.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2021-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2021-2023 Andre Richter <andre.o.richter@gmail.com>
//! Boot code. //! Boot code.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
// Rust embedded logo for `make doc`. // Rust embedded logo for `make doc`.
#![doc( #![doc(

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! A panic handler that infinitely waits. //! A panic handler that infinitely waits.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! Printing. //! Printing.

@ -1,10 +1,10 @@
{ {
"editor.formatOnSave": true, "editor.formatOnSave": true,
"editor.rulers": [100], "editor.rulers": [100],
"rust-analyzer.cargo.target": "aarch64-unknown-none-softfloat", "rust-analyzer.cargo.target": "aarch64-unknown-none-softfloat",
"rust-analyzer.cargo.features": ["bsp_rpi3"], "rust-analyzer.cargo.features": ["bsp_rpi3"],
"rust-analyzer.checkOnSave.allTargets": false, "rust-analyzer.checkOnSave.allTargets": false,
"rust-analyzer.checkOnSave.extraArgs": ["--bins"], "rust-analyzer.checkOnSave.extraArgs": ["--bins"],
"rust-analyzer.lens.debug": false, "rust-analyzer.lens.debug": false,
"rust-analyzer.lens.run": false "rust-analyzer.lens.run": false
} }

@ -1,6 +1,6 @@
## SPDX-License-Identifier: MIT OR Apache-2.0 ## SPDX-License-Identifier: MIT OR Apache-2.0
## ##
## Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> ## Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
include ../common/docker.mk include ../common/docker.mk
include ../common/format.mk include ../common/format.mk

@ -287,7 +287,7 @@ diff -uNr 03_hacky_hello_world/src/synchronization.rs 04_safe_globals/src/synchr
@@ -0,0 +1,77 @@ @@ -0,0 +1,77 @@
+// SPDX-License-Identifier: MIT OR Apache-2.0 +// SPDX-License-Identifier: MIT OR Apache-2.0
+// +//
+// Copyright (c) 2020-2022 Andre Richter <andre.o.richter@gmail.com> +// Copyright (c) 2020-2023 Andre Richter <andre.o.richter@gmail.com>
+ +
+//! Synchronization primitives. +//! Synchronization primitives.
+//! +//!

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! Architectural processor code. //! Architectural processor code.
//! //!

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2021-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2021-2023 Andre Richter <andre.o.richter@gmail.com>
//! Architectural boot code. //! Architectural boot code.
//! //!

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! Conditional reexporting of Board Support Packages. //! Conditional reexporting of Board Support Packages.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! Top-level BSP file for the Raspberry Pi 3 and 4. //! Top-level BSP file for the Raspberry Pi 3 and 4.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! BSP console facilities. //! BSP console facilities.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! BSP Processor code. //! BSP Processor code.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! System console. //! System console.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2020-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2020-2023 Andre Richter <andre.o.richter@gmail.com>
//! Processor code. //! Processor code.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2021-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2021-2023 Andre Richter <andre.o.richter@gmail.com>
//! Boot code. //! Boot code.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
// Rust embedded logo for `make doc`. // Rust embedded logo for `make doc`.
#![doc( #![doc(

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! A panic handler that infinitely waits. //! A panic handler that infinitely waits.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! Printing. //! Printing.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2020-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2020-2023 Andre Richter <andre.o.richter@gmail.com>
//! Synchronization primitives. //! Synchronization primitives.
//! //!

@ -1,10 +1,10 @@
{ {
"editor.formatOnSave": true, "editor.formatOnSave": true,
"editor.rulers": [100], "editor.rulers": [100],
"rust-analyzer.cargo.target": "aarch64-unknown-none-softfloat", "rust-analyzer.cargo.target": "aarch64-unknown-none-softfloat",
"rust-analyzer.cargo.features": ["bsp_rpi3"], "rust-analyzer.cargo.features": ["bsp_rpi3"],
"rust-analyzer.checkOnSave.allTargets": false, "rust-analyzer.checkOnSave.allTargets": false,
"rust-analyzer.checkOnSave.extraArgs": ["--bins"], "rust-analyzer.checkOnSave.extraArgs": ["--bins"],
"rust-analyzer.lens.debug": false, "rust-analyzer.lens.debug": false,
"rust-analyzer.lens.run": false "rust-analyzer.lens.run": false
} }

@ -1,6 +1,6 @@
## SPDX-License-Identifier: MIT OR Apache-2.0 ## SPDX-License-Identifier: MIT OR Apache-2.0
## ##
## Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> ## Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
include ../common/docker.mk include ../common/docker.mk
include ../common/format.mk include ../common/format.mk
@ -150,7 +150,7 @@ $(KERNEL_BIN): $(KERNEL_ELF)
##------------------------------------------------------------------------------ ##------------------------------------------------------------------------------
## Generate the documentation ## Generate the documentation
##------------------------------------------------------------------------------ ##-----------------------------------------------------------------------------
doc: doc:
$(call color_header, "Generating docs") $(call color_header, "Generating docs")
@$(DOC_CMD) --document-private-items --open @$(DOC_CMD) --document-private-items --open

@ -278,7 +278,7 @@ diff -uNr 04_safe_globals/src/bsp/device_driver/bcm/bcm2xxx_gpio.rs 05_drivers_g
@@ -0,0 +1,228 @@ @@ -0,0 +1,228 @@
+// SPDX-License-Identifier: MIT OR Apache-2.0 +// SPDX-License-Identifier: MIT OR Apache-2.0
+// +//
+// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> +// Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
+ +
+//! GPIO Driver. +//! GPIO Driver.
+ +
@ -511,7 +511,7 @@ diff -uNr 04_safe_globals/src/bsp/device_driver/bcm/bcm2xxx_pl011_uart.rs 05_dri
@@ -0,0 +1,407 @@ @@ -0,0 +1,407 @@
+// SPDX-License-Identifier: MIT OR Apache-2.0 +// SPDX-License-Identifier: MIT OR Apache-2.0
+// +//
+// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> +// Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
+ +
+//! PL011 UART driver. +//! PL011 UART driver.
+//! +//!
@ -923,7 +923,7 @@ diff -uNr 04_safe_globals/src/bsp/device_driver/bcm.rs 05_drivers_gpio_uart/src/
@@ -0,0 +1,11 @@ @@ -0,0 +1,11 @@
+// SPDX-License-Identifier: MIT OR Apache-2.0 +// SPDX-License-Identifier: MIT OR Apache-2.0
+// +//
+// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> +// Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
+ +
+//! BCM driver top level. +//! BCM driver top level.
+ +
@ -939,7 +939,7 @@ diff -uNr 04_safe_globals/src/bsp/device_driver/common.rs 05_drivers_gpio_uart/s
@@ -0,0 +1,38 @@ @@ -0,0 +1,38 @@
+// SPDX-License-Identifier: MIT OR Apache-2.0 +// SPDX-License-Identifier: MIT OR Apache-2.0
+// +//
+// Copyright (c) 2020-2022 Andre Richter <andre.o.richter@gmail.com> +// Copyright (c) 2020-2023 Andre Richter <andre.o.richter@gmail.com>
+ +
+//! Common device driver code. +//! Common device driver code.
+ +
@ -982,7 +982,7 @@ diff -uNr 04_safe_globals/src/bsp/device_driver.rs 05_drivers_gpio_uart/src/bsp/
@@ -0,0 +1,12 @@ @@ -0,0 +1,12 @@
+// SPDX-License-Identifier: MIT OR Apache-2.0 +// SPDX-License-Identifier: MIT OR Apache-2.0
+// +//
+// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> +// Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
+ +
+//! Device driver. +//! Device driver.
+ +
@ -1121,7 +1121,7 @@ diff -uNr 04_safe_globals/src/bsp/raspberrypi/driver.rs 05_drivers_gpio_uart/src
@@ -0,0 +1,71 @@ @@ -0,0 +1,71 @@
+// SPDX-License-Identifier: MIT OR Apache-2.0 +// SPDX-License-Identifier: MIT OR Apache-2.0
+// +//
+// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> +// Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
+ +
+//! BSP driver support. +//! BSP driver support.
+ +
@ -1197,7 +1197,7 @@ diff -uNr 04_safe_globals/src/bsp/raspberrypi/memory.rs 05_drivers_gpio_uart/src
@@ -0,0 +1,37 @@ @@ -0,0 +1,37 @@
+// SPDX-License-Identifier: MIT OR Apache-2.0 +// SPDX-License-Identifier: MIT OR Apache-2.0
+// +//
+// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> +// Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
+ +
+//! BSP Memory Management. +//! BSP Memory Management.
+ +
@ -1281,7 +1281,7 @@ diff -uNr 04_safe_globals/src/console/null_console.rs 05_drivers_gpio_uart/src/c
@@ -0,0 +1,41 @@ @@ -0,0 +1,41 @@
+// SPDX-License-Identifier: MIT OR Apache-2.0 +// SPDX-License-Identifier: MIT OR Apache-2.0
+// +//
+// Copyright (c) 2022 Andre Richter <andre.o.richter@gmail.com> +// Copyright (c) 2022-2023 Andre Richter <andre.o.richter@gmail.com>
+ +
+//! Null console. +//! Null console.
+ +
@ -1422,7 +1422,7 @@ diff -uNr 04_safe_globals/src/driver.rs 05_drivers_gpio_uart/src/driver.rs
@@ -0,0 +1,167 @@ @@ -0,0 +1,167 @@
+// SPDX-License-Identifier: MIT OR Apache-2.0 +// SPDX-License-Identifier: MIT OR Apache-2.0
+// +//
+// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> +// Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
+ +
+//! Driver support. +//! Driver support.
+ +

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! Architectural processor code. //! Architectural processor code.
//! //!

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2021-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2021-2023 Andre Richter <andre.o.richter@gmail.com>
//! Architectural boot code. //! Architectural boot code.
//! //!

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! Conditional reexporting of Board Support Packages. //! Conditional reexporting of Board Support Packages.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! Device driver. //! Device driver.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! BCM driver top level. //! BCM driver top level.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! GPIO Driver. //! GPIO Driver.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! PL011 UART driver. //! PL011 UART driver.
//! //!

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2020-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2020-2023 Andre Richter <andre.o.richter@gmail.com>
//! Common device driver code. //! Common device driver code.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! Top-level BSP file for the Raspberry Pi 3 and 4. //! Top-level BSP file for the Raspberry Pi 3 and 4.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! BSP console facilities. //! BSP console facilities.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! BSP Processor code. //! BSP Processor code.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! BSP driver support. //! BSP driver support.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! BSP Memory Management. //! BSP Memory Management.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! System console. //! System console.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2022-2023 Andre Richter <andre.o.richter@gmail.com>
//! Null console. //! Null console.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2020-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2020-2023 Andre Richter <andre.o.richter@gmail.com>
//! Processor code. //! Processor code.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2021-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2021-2023 Andre Richter <andre.o.richter@gmail.com>
//! Boot code. //! Boot code.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! Driver support. //! Driver support.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
// Rust embedded logo for `make doc`. // Rust embedded logo for `make doc`.
#![doc( #![doc(

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! A panic handler that infinitely waits. //! A panic handler that infinitely waits.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! Printing. //! Printing.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2020-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2020-2023 Andre Richter <andre.o.richter@gmail.com>
//! Synchronization primitives. //! Synchronization primitives.
//! //!

@ -1,10 +1,10 @@
{ {
"editor.formatOnSave": true, "editor.formatOnSave": true,
"editor.rulers": [100], "editor.rulers": [100],
"rust-analyzer.cargo.target": "aarch64-unknown-none-softfloat", "rust-analyzer.cargo.target": "aarch64-unknown-none-softfloat",
"rust-analyzer.cargo.features": ["bsp_rpi3"], "rust-analyzer.cargo.features": ["bsp_rpi3"],
"rust-analyzer.checkOnSave.allTargets": false, "rust-analyzer.checkOnSave.allTargets": false,
"rust-analyzer.checkOnSave.extraArgs": ["--bins"], "rust-analyzer.checkOnSave.extraArgs": ["--bins"],
"rust-analyzer.lens.debug": false, "rust-analyzer.lens.debug": false,
"rust-analyzer.lens.run": false "rust-analyzer.lens.run": false
} }

@ -1,6 +1,6 @@
## SPDX-License-Identifier: MIT OR Apache-2.0 ## SPDX-License-Identifier: MIT OR Apache-2.0
## ##
## Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> ## Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
include ../common/docker.mk include ../common/docker.mk
include ../common/format.mk include ../common/format.mk

@ -237,7 +237,6 @@ diff -uNr 05_drivers_gpio_uart/Makefile 06_uart_chainloader/Makefile
+ @$(DOCKER_QEMU) $(EXEC_QEMU) $(QEMU_RELEASE_ARGS) -kernel $(KERNEL_BIN) -d in_asm + @$(DOCKER_QEMU) $(EXEC_QEMU) $(QEMU_RELEASE_ARGS) -kernel $(KERNEL_BIN) -d in_asm
+ +
endif endif
##------------------------------------------------------------------------------ ##------------------------------------------------------------------------------
-## Connect to the target's serial -## Connect to the target's serial
+## Push the kernel to the real HW target +## Push the kernel to the real HW target
@ -375,7 +374,7 @@ diff -uNr 05_drivers_gpio_uart/src/bsp/raspberrypi/console.rs 06_uart_chainloade
@@ -1,16 +0,0 @@ @@ -1,16 +0,0 @@
-// SPDX-License-Identifier: MIT OR Apache-2.0 -// SPDX-License-Identifier: MIT OR Apache-2.0
-// -//
-// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> -// Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
- -
-//! BSP console facilities. -//! BSP console facilities.
- -
@ -394,7 +393,7 @@ diff -uNr 05_drivers_gpio_uart/src/bsp/raspberrypi/kernel.ld 06_uart_chainloader
--- 05_drivers_gpio_uart/src/bsp/raspberrypi/kernel.ld --- 05_drivers_gpio_uart/src/bsp/raspberrypi/kernel.ld
+++ 06_uart_chainloader/src/bsp/raspberrypi/kernel.ld +++ 06_uart_chainloader/src/bsp/raspberrypi/kernel.ld
@@ -3,8 +3,6 @@ @@ -3,8 +3,6 @@
* Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> * Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
*/ */
-__rpi_phys_dram_start_addr = 0; -__rpi_phys_dram_start_addr = 0;
@ -580,7 +579,7 @@ diff -uNr 05_drivers_gpio_uart/tests/chainboot_test.rb 06_uart_chainloader/tests
+ +
+# SPDX-License-Identifier: MIT OR Apache-2.0 +# SPDX-License-Identifier: MIT OR Apache-2.0
+# +#
+# Copyright (c) 2020-2022 Andre Richter <andre.o.richter@gmail.com> +# Copyright (c) 2020-2023 Andre Richter <andre.o.richter@gmail.com>
+ +
+require_relative '../../common/serial/minipush' +require_relative '../../common/serial/minipush'
+require_relative '../../common/tests/boot_test' +require_relative '../../common/tests/boot_test'

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! Architectural processor code. //! Architectural processor code.
//! //!

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2021-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2021-2023 Andre Richter <andre.o.richter@gmail.com>
//! Architectural boot code. //! Architectural boot code.
//! //!

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! Conditional reexporting of Board Support Packages. //! Conditional reexporting of Board Support Packages.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! Device driver. //! Device driver.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! BCM driver top level. //! BCM driver top level.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! GPIO Driver. //! GPIO Driver.

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2018-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2018-2023 Andre Richter <andre.o.richter@gmail.com>
//! PL011 UART driver. //! PL011 UART driver.
//! //!

@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT OR Apache-2.0 // SPDX-License-Identifier: MIT OR Apache-2.0
// //
// Copyright (c) 2020-2022 Andre Richter <andre.o.richter@gmail.com> // Copyright (c) 2020-2023 Andre Richter <andre.o.richter@gmail.com>
//! Common device driver code. //! Common device driver code.

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save