Skip to content

RFC: Introduce Zephyr driver for Local Interconnect Network (LIN) #95977

@thenguyenyf

Description

@thenguyenyf

Problem Description

Currently, Zephyr doesn't support any Local Interconnect Network (LIN) software stack. We are trying to add a LIN communication stack following the OSI model, referring to LIN Specification Pack Rev2.1 (published by LIN CiA). The first step is to add the LIN physical layer and part of the data link layer as a Zephyr device driver.

Proposed Change (Summary)

Introduce the LIN driver subsystem, under include/zephyr/drivers/lin.h and drivers/lin

Proposed Change (Detailed)

See #95975.
Introduce the following APIs

__subsystem struct lin_driver_api {
	lin_start_t start;
	lin_stop_t stop;
	lin_configure_t configure;
	lin_get_config_t get_config;
	lin_set_rx_filter_t set_rx_filter;
	lin_send_t send;
	lin_receive_t receive;
	lin_response_t response;
	lin_read_t read;
	lin_wakeup_send_t wakeup_send;
	lin_enter_sleep_t enter_sleep;
	lin_set_callback_t set_callback;
};

Dependencies

No response

Concerns and Unresolved Questions

No response

Alternatives Considered

No response

Metadata

Metadata

Assignees

Labels

RFCRequest For Comments: want input from the community

Type

Projects

Status

No status

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions