OpenBIC
OpenSource Bridge-IC
All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
plat_pwm.h
Go to the documentation of this file.
1/*
2 * Copyright (c) Meta Platforms, Inc. and affiliates.
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17#define PWM_PORT0 0
18
42};
43
49};
50
52 // group pwm dev
56 // single pwm dev
65};
66
67void init_pwm_dev(void);
68int ast_pwm_set(int duty);
69uint8_t plat_pwm_ctrl(enum PWM_DEVICE_E dev, uint8_t duty);
70uint8_t ctl_all_pwm_dev(uint8_t duty);
71uint8_t set_pwm_group(uint8_t group, uint8_t duty);
72uint8_t get_pwm_group_cache(uint8_t group);
73uint8_t get_pwm_cache(uint8_t idx);
74uint8_t manual_pwm_idx_to_pwm_idx(uint8_t idx);
75uint8_t get_manual_pwm_flag(uint8_t idx);
76void set_manual_pwm_flag(uint8_t idx, uint8_t flag);
77uint8_t get_manual_pwm_cache(uint8_t idx);
78void set_manual_pwm_cache(uint8_t idx, uint8_t duty);
uint8_t idx
Definition: plat_util.c:39
const struct device * dev
Definition: hal_peci.c:28
uint8_t nct7363_wdt_all_disable()
Definition: plat_pwm.c:113
uint8_t plat_pwm_ctrl(enum PWM_DEVICE_E dev, uint8_t duty)
Definition: plat_pwm.c:185
void init_pwm_dev(void)
Definition: plat_pwm.c:383
uint8_t manual_pwm_idx_to_pwm_idx(uint8_t idx)
Definition: plat_pwm.c:327
uint8_t get_pwm_cache(uint8_t idx)
Definition: plat_pwm.c:319
uint8_t get_pwm_group_cache(uint8_t group)
Definition: plat_pwm.c:311
PWM_DEVICE_E
Definition: plat_pwm.h:19
@ PWM_DEVICE_E_FB_FAN_14
Definition: plat_pwm.h:33
@ PWM_DEVICE_E_FB_FAN_2
Definition: plat_pwm.h:21
@ PWM_DEVICE_E_PB_PUMB_FAN_1
Definition: plat_pwm.h:37
@ PWM_DEVICE_E_PB_PUMB_FAN_2
Definition: plat_pwm.h:38
@ PWM_DEVICE_E_FB_FAN_3
Definition: plat_pwm.h:22
@ PWM_DEVICE_E_FB_FAN_8
Definition: plat_pwm.h:27
@ PWM_DEVICE_E_PB_PUMB_FAN_3
Definition: plat_pwm.h:39
@ PWM_DEVICE_E_FB_FAN_4
Definition: plat_pwm.h:23
@ PWM_DEVICE_E_FB_FAN_5
Definition: plat_pwm.h:24
@ PWM_DEVICE_E_FB_FAN_7
Definition: plat_pwm.h:26
@ PWM_DEVICE_E_PB_PUMB_3
Definition: plat_pwm.h:36
@ PWM_DEVICE_E_PB_PUMB_2
Definition: plat_pwm.h:35
@ PWM_DEVICE_E_FB_FAN_12
Definition: plat_pwm.h:31
@ PWM_DEVICE_E_FB_FAN_9
Definition: plat_pwm.h:28
@ PWM_DEVICE_E_FB_FAN_1
Definition: plat_pwm.h:20
@ PWM_DEVICE_E_FB_FAN_10
Definition: plat_pwm.h:29
@ PWM_DEVICE_E_FB_FAN_6
Definition: plat_pwm.h:25
@ PWM_DEVICE_E_MAX
Definition: plat_pwm.h:41
@ PWM_DEVICE_E_FB_FAN_11
Definition: plat_pwm.h:30
@ PWM_DEVICE_E_PB_PUMB_1
Definition: plat_pwm.h:34
@ PWM_DEVICE_E_FB_FAN_13
Definition: plat_pwm.h:32
@ PWM_DEVICE_E_BB_FAN
Definition: plat_pwm.h:40
PWM_GROUP_E
Definition: plat_pwm.h:44
@ PWM_GROUP_E_MAX
Definition: plat_pwm.h:48
@ PWM_GROUP_E_HEX_FAN
Definition: plat_pwm.h:45
@ PWM_GROUP_E_RPU_FAN
Definition: plat_pwm.h:47
@ PWM_GROUP_E_PUMP
Definition: plat_pwm.h:46
uint8_t set_pwm_group(uint8_t group, uint8_t duty)
Definition: plat_pwm.c:287
uint8_t get_manual_pwm_cache(uint8_t idx)
Definition: plat_pwm.c:355
uint8_t ctl_all_pwm_dev(uint8_t duty)
Definition: plat_pwm.c:278
int ast_pwm_set(int duty)
Definition: plat_pwm.c:165
uint8_t nct7363_wdt_all_enable()
Definition: plat_pwm.c:136
MANUAL_PWM_E
Definition: plat_pwm.h:51
@ MANUAL_PWM_E_MAX
Definition: plat_pwm.h:64
@ MANUAL_PWM_E_PUMP_3
Definition: plat_pwm.h:59
@ MANUAL_PWM_E_PUMP
Definition: plat_pwm.h:54
@ MANUAL_PWM_E_HEX_FAN
Definition: plat_pwm.h:53
@ MANUAL_PWM_E_RPU_FAN
Definition: plat_pwm.h:55
@ MANUAL_PWM_E_PUMP_FAN_1
Definition: plat_pwm.h:60
@ MANUAL_PWM_E_PUMP_2
Definition: plat_pwm.h:58
@ MANUAL_PWM_E_PUMP_FAN_2
Definition: plat_pwm.h:61
@ MANUAL_PWM_E_PUMP_FAN_3
Definition: plat_pwm.h:62
@ MANUAL_PWM_E_PUMP_1
Definition: plat_pwm.h:57
@ MANUAL_PWM_E_RPU_PCB_FAN
Definition: plat_pwm.h:63
void set_manual_pwm_cache_to_default(void)
Definition: plat_pwm.c:371
uint8_t get_manual_pwm_flag(uint8_t idx)
Definition: plat_pwm.c:339
void set_manual_pwm_cache_to_zero(void)
Definition: plat_pwm.c:377
void set_manual_pwm_cache(uint8_t idx, uint8_t duty)
Definition: plat_pwm.c:363
void set_manual_pwm_flag(uint8_t idx, uint8_t flag)
Definition: plat_pwm.c:347