Skip to content

RFC: Unify the HAL #446

Closed
Closed
@jessebraham

Description

@jessebraham

From its inception, the esp-hal repository has contained separate packages for each supported device. The thought early on was that there would be enough device-specific code to justify putting it in these packages rather than esp-hal-common. As time went on and additional devices were supported, it has been increasingly clear that this is not really the case.

Thanks to some recent refactoring, there is actually very little in each of these device-specific HAL packages now. It wouldn't require a lot of work to unify all of these packages into simply the esp-hal package. This additionall reduces duplicated code in the form of linker scripts. Making these changes (and as the repo stands now) this would leave us with the esp-hal, esp-hal-procmacros, and esp-hal-smartled packages in this repository.

This approach greatly simplifies the release process, and may make maintaining this repository easier overall. This would, unfortunately, put us in a position where the esp-hal package has a large number of features, not all of which play nicely together. I'm sure this could be solved with documentation and the build script with little work, though.

I would like to begin some conversation regarding these changes, and am mostly interested if there's any reason not to make these changes at this point.


It's time to begin the unification:

Metadata

Metadata

Assignees

Labels

RFCRequest for commentstatus:in-progressThis task is currently being worked on

Type

No type

Projects

Status

Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions