New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
V2.0.0 #39
Merged
Merged
V2.0.0 #39
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Codecov ReportAttention:
Additional details and impacted files@@ Coverage Diff @@
## master #39 +/- ##
==========================================
- Coverage 64.79% 64.75% -0.04%
==========================================
Files 58 58
Lines 2843 2846 +3
==========================================
+ Hits 1842 1843 +1
- Misses 1001 1003 +2 ☔ View full report in Codecov by Sentry. |
jonasblixt
force-pushed
the
v2.0.0-cleanup1
branch
from
February 18, 2024 19:27
521c6b7
to
64e9dcf
Compare
This is useful for other functions as well.
That lists all the USB attached Punchboot devices.
A device can be selected by setting the environment variable PB_DEVICE_UUID.
So we don't end up with negative numbers.
Trig the tools CI flow on PR, push and workflow_dispatch.
And apply ruff fixes.
And apply fixes.
And update platform file with relevant defines.
We want to report the minimum erase block size as the block size for NOR devices. This is needed to make sure write's are aligned to an erase an erase block.
If first_lba is not set, the static partition map driver will take the next available lba as start for the next partition.
Erasing a whole partition (or device) might take significant amount of time. NOR devices are pretty slow so erasing a whole device must be done in chunks otherwise the transport will timeout and/or WDT will trip.
With this change the erase function takes start lba and count arguments and also selects the optimal erase command depending on how much we want to erase.
This hardware block is generally known as "ChipIdea" USB.
On smaller systems the various 4k alignments are pretty expensive. With this change the alignment is configured per arch and for armv7a, armv8a it remains the same, 4k, since that is typpicale the page granualrity for the mmu (and we want it to be 4k). But for MCU's this is excessive and this commit adjusts the section alignment to 8 bytes.
This is one step in the direction to removing the common 'platform_defs.h' define that each platform has.
A small helper to generate C defines for register bit fields.
This was reused for imx8x. And we'll change the one for imx6ul.
To match argument order of the 'write' command.
- Removes a lot of hardcoded values - Add defines for clocks, fuesbox, pins and more - Read the speed grade from fuses and correctly configure core freq
Add initial support for the imxrt1060evk. This is not complete. Currently these things work: - uSDHC eMMC driver - NOR SPI driver - UDC driver It's possible to read/write partitions and interact with the bootloader using the punchboot tool. Some of the things that are missing: - Fusebox configuration for secure boot - HAB integration - SLC / RoT
Configuration is now supplied through defines in platform makefiles.
Arch config is now supplied through plat/board level makefiles.
- Add the standard clock.h, pins.h and mm.h headers - Drop platform_defs.h and board_defs.h(for jiffy board) - Use defines for base addresses - Select CPU core frequence based on speed grade fuse
This is not activly maintained
This is not activly maintained.
Some USB hardware can't accept configuring one endpoint at a time, namly DWC3. The api has changed so that the endpoint part of the USB descriptor is passed to the 'set_configuration' API to allow for more flexibility.
The platform_defs headers from platforms have been retired. Relevant parameters are instead passed to the compiler from the platform make files.
If there is no partitions PB won't write anything so we should not try to read an empty partition table.
Using the async hash API we can hash chunk's while the next is being transferd from storage (On platforms that support the async API)
If the 'slc_read_status' fails we should exit early. The punchboot tooling does not expect to get more than one result message.
This has been broken for a while. This commit also includes - Various missing registers and bit defines - Splits the core DWC3 stuff and the IMX8M PHY into two modules
This has moved to the various platform make files
This has been broken for a while. Now it boots again. Some highlights beyond unborking the code: - Way fewer hardcoded addresses and bits - Pin/Pad mux defines - Uses the new style include setup (clock/mm/pins etc) - Build parameters like which dram firmware to use has been moved from Kconfig/plat to board level to allow for more flexibility There is still work to do on this platform. There is so far not a complete example for enabling secure boot.
Move these things to platform level makefile.
Add 'mm.h' to match the setup in the other platforms.
This is needed now since we've enabled garbage collection. With GC on this would otherwise be stripped.
To match other platforms.
To pins.h where they belong.
Put these things in the board makefile instead to be consistend with other boards and platforms.
cibuildwheel had issues with newer versions of power shell. Full details: pypa/cibuildwheel#1740
jonasblixt
force-pushed
the
v2.0.0-cleanup1
branch
from
February 18, 2024 19:42
64e9dcf
to
a0c0b11
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.