Skip to content

cyw43439: gpio_put only sets pins and can't clear them #961

@kapypara

Description

@kapypara

The gpio_put function in drivers/wireless/cyw43439/wifi.zig currently only uses OR when updating the output register. which mean values can't be cleared from the output

reg = reg | @as(u32, value) << pin;

Instead, it should mask the original register value first:

reg = (reg & ~(@as(u32, 1) << pin)) | (@as(u32, value) << pin);

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions