Skip to content
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

Refactoring and maintenance for new drivers #255

Merged
merged 11 commits into from
Aug 6, 2024
Merged

Refactoring and maintenance for new drivers #255

merged 11 commits into from
Aug 6, 2024

Conversation

rexut
Copy link
Member

@rexut rexut commented Aug 4, 2024

This is more an improvements for last PR #248 and #249 then new feature set.

Copy link

github-actions bot commented Aug 4, 2024

You can find the documentation preview for this PR at this link. It will be updated about 10 minutes after the documentation build succeeds.

Note: This comment is automatically posted by the Documentation Publishing GitHub Action.

Copy link
Contributor

@Irockasingranite Irockasingranite left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just a couple of things I found while testing these drivers. The change to treating a missing reset pin on an SC18IS604 is slightly different to the one I made locally, but it looks good.

drivers/mfd/mfd_sc18is604.c Show resolved Hide resolved
drivers/mfd/mfd_sc18is604.c Show resolved Hide resolved
drivers/i2c/i2c_sc18is604.c Outdated Show resolved Hide resolved
rexut added 11 commits August 5, 2024 08:57
A chip reset via a hardware wire is only performed when the
specified GPIO pin could also be configured without errors.
Otherwise, the core driver will be attempted to work with the
chip without a chip reset, apply register default values and
alse clear all interrupt sources (simulate hardware reset).

The result code is now logged out in all top level functions
when an error occurs. The actual chip version is also logged
out as information.

The line length and indentation have been improved and a few
variables have been renamed to shorter lines.

Regarding a possible contribution to the Zephyr RTOS project,
all typedef constructs for structured data types have been
removed. This design pattern is not welcomed in source code
for Zephyr and could already lead to a formal rejection.

Signed-off-by: Stephan Linz <[email protected]>
The result code is now logged out in all top level functions when
an error occurs. The line length and indentation have been improved.

Regarding a possible contribution to the Zephyr RTOS project, all
typedef constructs for structured data types have been removed. This
design pattern is not welcomed in source code for Zephyr and could
already lead to a formal rejection.

Signed-off-by: Stephan Linz <[email protected]>
Swap the order of calling gpio_sc18is604_pin_write_config()
and gpio_sc18is604_pin_write_state().

Apply pin state before pin configuration in order to avoid
signal interference (glitches) due to delays caused by the
asynchronous communication principle with the bridge.

Signed-off-by: Stephan Linz <[email protected]>
On interrupt callback registration the complete 32-bit mask should
be used.

The result code is now logged out in all top level functions when
an error occurs. The line length and indentation have been improved
and a few variables have been renamed to shorter lines.

Regarding a possible contribution to the Zephyr RTOS project, all
typedef constructs for structured data types have been removed. This
design pattern is not welcomed in source code for Zephyr and could
already lead to a formal rejection.

Signed-off-by: Stephan Linz <[email protected]>
From the init-function, duplicate code for the configuration
of GPIO pins was converted into a universal auxiliary function.
The same procedure was applied to the hardware reset sequence
and the interrupt binding. The result code is now logged out in
all top level functions when an error occurs.

The line length and indentation have been improved.

Signed-off-by: Stephan Linz <[email protected]>
The result code is now logged out in all top level functions
when an error occurs.

Signed-off-by: Stephan Linz <[email protected]>
The result code is now logged out in all top level functions
when an error occurs.

Signed-off-by: Stephan Linz <[email protected]>
Uses mikepenz/action-junit-report@v4 to annotate the compliance
report on GitHub summary page.

Signed-off-by: Stephan Linz <[email protected]>
Uses actions/upload-artifact@v4 to upload test logging files too.
Also disable platform and size reporting for Twister, not used.

Signed-off-by: Stephan Linz <[email protected]>
Add 3.6.1 tag to release list to be shown on documentation side bar.

Signed-off-by: Stephan Linz <[email protected]>
Create the new RST file release notes and add to TOC.

Signed-off-by: Stephan Linz <[email protected]>
@rexut rexut merged commit bbc9ace into main Aug 6, 2024
13 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants