Zephyr API Documentation 3.7.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
pinctrl.h
Go to the documentation of this file.
1/*
2 * Copyright 2024 NXP
3 *
4 * SPDX-License-Identifier: Apache-2.0
5 */
6
12#ifndef _INCLUDE_ZEPHYR_DRIVERS_FIRMWARE_SCMI_PINCTRL_H_
13#define _INCLUDE_ZEPHYR_DRIVERS_FIRMWARE_SCMI_PINCTRL_H_
14
16
17#define ARM_SCMI_PINCTRL_MAX_CONFIG_SIZE (10 * 2)
18
19#define SCMI_PINCTRL_NO_FUNCTION 0xFFFFFFFF
20
21#define SCMI_PINCTRL_CONFIG_ATTRIBUTES(fid_valid, cfg_num, selector) \
22 (SCMI_FIELD_MAKE(fid_valid, BIT(1), 10) | \
23 SCMI_FIELD_MAKE(cfg_num, GENMASK(7, 0), 2) | \
24 SCMI_FIELD_MAKE(selector, GENMASK(1, 0), 0))
25
26#define SCMI_PINCTRL_SELECTOR_PIN 0x0
27#define SCMI_PINCTRL_SELECTOR_GROUP 0x1
28
29#define SCMI_PINCTRL_ATTRIBUTES_CONFIG_NUM(attributes)\
30 (((attributes) & GENMASK(9, 2)) >> 2)
31
49
79
92
102
103#endif /* _INCLUDE_ZEPHYR_DRIVERS_FIRMWARE_SCMI_PINCTRL_H_ */
scmi_pinctrl_message
Pinctrl protocol command message IDs.
Definition pinctrl.h:35
@ SCMI_PINCTRL_MSG_PINCTRL_SETTINGS_GET
Definition pinctrl.h:41
@ SCMI_PINCTRL_MSG_PROTOCOL_MESSAGE_ATTRIBUTES
Definition pinctrl.h:38
@ SCMI_PINCTRL_MSG_PINCTRL_SET_PERMISSIONS
Definition pinctrl.h:46
@ SCMI_PINCTRL_MSG_PINCTRL_RELEASE
Definition pinctrl.h:44
@ SCMI_PINCTRL_MSG_PINCTRL_ATTRIBUTES
Definition pinctrl.h:39
@ SCMI_PINCTRL_MSG_PROTOCOL_ATTRIBUTES
Definition pinctrl.h:37
@ SCMI_PINCTRL_MSG_PINCTRL_NAME_GET
Definition pinctrl.h:45
@ SCMI_PINCTRL_MSG_PINCTRL_LIST_ASSOCIATIONS
Definition pinctrl.h:40
@ SCMI_PINCTRL_MSG_PROTOCOL_VERSION
Definition pinctrl.h:36
@ SCMI_PINCTRL_MSG_NEGOTIATE_PROTOCOL_VERSION
Definition pinctrl.h:47
@ SCMI_PINCTRL_MSG_PINCTRL_REQUEST
Definition pinctrl.h:43
@ SCMI_PINCTRL_MSG_PINCTRL_SETTINGS_CONFIGURE
Definition pinctrl.h:42
#define ARM_SCMI_PINCTRL_MAX_CONFIG_SIZE
Definition pinctrl.h:17
scmi_pinctrl_config
Pinctrl configurations.
Definition pinctrl.h:53
@ SCMI_PINCTRL_BIAS_PULL_DEFAULT
Definition pinctrl.h:59
@ SCMI_PINCTRL_RESERVED_START
Definition pinctrl.h:75
@ SCMI_PINCTRL_VENDOR_START
Definition pinctrl.h:77
@ SCMI_PINCTRL_BIAS_HIGH_Z
Definition pinctrl.h:57
@ SCMI_PINCTRL_INPUT_MODE
Definition pinctrl.h:66
@ SCMI_PINCTRL_INPUT_VALUE
Definition pinctrl.h:68
@ SCMI_PINCTRL_RESERVED_END
Definition pinctrl.h:76
@ SCMI_PINCTRL_DEFAULT
Definition pinctrl.h:54
@ SCMI_PINCTRL_BIAS_BUS_HOLD
Definition pinctrl.h:55
@ SCMI_PINCTRL_POWER_SOURCE
Definition pinctrl.h:73
@ SCMI_PINCTRL_OUTPUT_MODE
Definition pinctrl.h:71
@ SCMI_PINCTRL_INPUT_DEBOUNCE
Definition pinctrl.h:65
@ SCMI_PINCTRL_LP_MODE
Definition pinctrl.h:70
@ SCMI_PINCTRL_BIAS_PULL_UP
Definition pinctrl.h:58
@ SCMI_PINCTRL_BIAS_DISABLE
Definition pinctrl.h:56
@ SCMI_PINCTRL_DRIVE_OPEN_SOURCE
Definition pinctrl.h:62
@ SCMI_PINCTRL_INPUT_SCHMITT
Definition pinctrl.h:69
@ SCMI_PINCTRL_OUTPUT_VALUE
Definition pinctrl.h:72
@ SCMI_PINCTRL_PULL_MODE
Definition pinctrl.h:67
@ SCMI_PINCTRL_BIAS_PULL_DOWN
Definition pinctrl.h:60
@ SCMI_PINCTRL_DRIVE_OPEN_DRAIN
Definition pinctrl.h:61
@ SCMI_PINCTRL_SLEW_RATE
Definition pinctrl.h:74
@ SCMI_PCINTRL_DRIVE_STRENGTH
Definition pinctrl.h:64
@ SCMI_PCINTRL_DRIVE_PUSH_PULL
Definition pinctrl.h:63
int scmi_pinctrl_settings_configure(struct scmi_pinctrl_settings *settings)
Send the PINCTRL_SETTINGS_CONFIGURE command and get its reply.
SCMI protocol generic functions and structures.
__UINT32_TYPE__ uint32_t
Definition stdint.h:90
Describes the parameters for the PINCTRL_SETTINGS_CONFIGURE command.
Definition pinctrl.h:86
uint32_t id
Definition pinctrl.h:87
uint32_t config[(10 *2)]
Definition pinctrl.h:90
uint32_t attributes
Definition pinctrl.h:89
uint32_t function
Definition pinctrl.h:88