summaryrefslogtreecommitdiff
path: root/board
diff options
context:
space:
mode:
authormartin yan <martin.yan@microchip.corp-partner.google.com>2021-08-17 14:52:47 -0400
committerCommit Bot <commit-bot@chromium.org>2021-08-20 01:10:44 +0000
commitf50a100dc917dcfd6674774d071493f1587500c2 (patch)
tree0c09e8361ffa94770059476bf33e81ad3195632e /board
parenta269059c192811be0ec56120398ad31917c7a18a (diff)
downloadchrome-ec-f50a100dc917dcfd6674774d071493f1587500c2.tar.gz
mchp: Support RPM-PWM Fan control
Support RPM based Fan Control Algorithm via RPM-PWM hardware block BUG=none BRANCH=none TEST=Tested on ADL RVP and MCHP1727 MECC system via UART console faninfo, fanduty and fanset 1: Verify fan RPM from 3000 to 9000; 2: Verify 2-pole fan expected tach output (100Hz~300Hz) per RPM setting; 3: Verify expected PWM duty (3%~100%) per PWM duty setting; 4: Limit: can not reach 10000 RPM since RPM reaches 9000 in max as PWM duty is set as 100%; Signed-off-by: martin yan <martin.yan@microchip.corp-partner.google.com> Change-Id: Ib41a06a734821c9f70a45e25e2020c6492c61563 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3100926 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org>
Diffstat (limited to 'board')
-rw-r--r--board/adlrvpp_mchp1727/gpio.inc13
1 files changed, 10 insertions, 3 deletions
diff --git a/board/adlrvpp_mchp1727/gpio.inc b/board/adlrvpp_mchp1727/gpio.inc
index 47231e0a4d..1eea86462c 100644
--- a/board/adlrvpp_mchp1727/gpio.inc
+++ b/board/adlrvpp_mchp1727/gpio.inc
@@ -185,9 +185,16 @@ ALTERNATE(PIN_MASK(3, 0x00003001), 1, MODULE_I2C, GPIO_ODR_HIGH)
*/
ALTERNATE(PIN_MASK(4, 0x0039), 1, MODULE_ADC, GPIO_ANALOG)
-/* Alternate pins for FAN */
-/* mchp_todo: GPIO053/GPWM0 for RPM-FAN */
-/* mchp_todo: GPIO050/GTACH0 for RPM-FAN */
+/*
+ * Alternate pins for RPM-FAN control
+ *
+ * GPIO050/GTACH0 = CPU_TACHO_FAN
+ * GPIO053/GPWM0 = CPU_PWM_FAN
+ * GTACH0 = GPIO_050(Bank=1, bit=8) Func2
+ * GPWM0 = GPIO_053(Bank=1, bit=11) Func3
+ */
+ALTERNATE(PIN_MASK(1, 0x0100), 2, MODULE_PWM, GPIO_FLAG_NONE)
+ALTERNATE(PIN_MASK(1, 0x0800), 3, MODULE_PWM, GPIO_FLAG_NONE)
/* Keyboard pins */
#define GPIO_KB_INPUT (GPIO_INPUT | GPIO_PULL_UP)