diff options
Diffstat (limited to 'chip/it83xx/dac.c')
-rw-r--r-- | chip/it83xx/dac.c | 90 |
1 files changed, 0 insertions, 90 deletions
diff --git a/chip/it83xx/dac.c b/chip/it83xx/dac.c deleted file mode 100644 index 695d1cbc68..0000000000 --- a/chip/it83xx/dac.c +++ /dev/null @@ -1,90 +0,0 @@ -/* Copyright 2020 The Chromium OS Authors. All rights reserved. - * Use of this source code is governed by a BSD-style license that can be - * found in the LICENSE file. - */ - -/* IT83xx DAC module for Chrome EC */ - -#include "console.h" -#include "dac_chip.h" -#include "gpio.h" -#include "hooks.h" -#include "registers.h" -#include "util.h" - -/* DAC module enable */ -void dac_enable_channel(enum chip_dac_channel ch) -{ - IT83XX_DAC_DACPDREG &= ~IT83XX_DAC_POWDN(ch); -} - -/* DAC module disable */ -void dac_disable_channel(enum chip_dac_channel ch) -{ - IT83XX_DAC_DACPDREG |= IT83XX_DAC_POWDN(ch); -} - -/* Set DAC output voltage */ -void dac_set_output_voltage(enum chip_dac_channel ch, int mv) -{ - IT83XX_DAC_DACDAT(ch) = mv * DAC_RAW_DATA / DAC_AVCC; -} - -/* Get DAC output voltage */ -int dac_get_output_voltage(enum chip_dac_channel ch) -{ - return IT83XX_DAC_DACDAT(ch) * DAC_AVCC / DAC_RAW_DATA; -} - -/* DAC module Initialization */ -static void dac_init(void) -{ - /* Configure GPIOs */ - gpio_config_module(MODULE_DAC, 1); -} -DECLARE_HOOK(HOOK_INIT, dac_init, HOOK_PRIO_INIT_DAC); - -static int command_dac(int argc, char **argv) -{ - char *e; - int ch, mv, rv; - - if (argc < 2) - return EC_ERROR_PARAM_COUNT; - - ch = strtoi(argv[1], &e, 0); - if (*e) - return EC_ERROR_PARAM1; - if (ch < 2 || ch > 5) { - ccprintf("ch%d is not supported\n", ch); - return EC_ERROR_PARAM1; - } - - if (argc == 2) { - if (!(IT83XX_DAC_DACPDREG & IT83XX_DAC_POWDN(ch))) { - /* Get DAC output voltage */ - rv = dac_get_output_voltage(ch); - ccprintf("DAC ch%d VOLT=%dmV\n", ch, rv); - } else - ccprintf("The DAC ch%d is powered down.\n", ch); - } else { - /* - * DAC data register raw data - * 0 ~ 0xFF(8-bit) = voltage 0 ~ 3300mV - */ - mv = strtoi(argv[2], &e, 0); - if (*e) - return EC_ERROR_PARAM2; - if (mv) { - /* Set DAC output voltage */ - dac_set_output_voltage(ch, mv); - dac_enable_channel(ch); - } else - dac_disable_channel(ch); - } - - return EC_SUCCESS; -} -DECLARE_CONSOLE_COMMAND(dac, command_dac, - "[ch2-5] [0-3300mV]", - "Enable or disable(0mV) DAC output voltage."); |