diff options
author | Jack Rosenthal <jrosenth@chromium.org> | 2021-11-04 12:11:58 -0600 |
---|---|---|
committer | Commit Bot <commit-bot@chromium.org> | 2021-11-05 04:22:34 +0000 |
commit | 252457d4b21f46889eebad61d4c0a65331919cec (patch) | |
tree | 01856c4d31d710b20e85a74c8d7b5836e35c3b98 /zephyr/test/drivers/src/temp_sensor.c | |
parent | 08f5a1e6fc2c9467230444ac9b582dcf4d9f0068 (diff) | |
download | chrome-ec-stabilize-14695.85.B-ish.tar.gz |
ish: Trim down the release branchstabilize-wristpin-14469.59.B-ishstabilize-voshyr-14637.B-ishstabilize-quickfix-14695.187.B-ishstabilize-quickfix-14695.124.B-ishstabilize-quickfix-14526.91.B-ishstabilize-14695.85.B-ishstabilize-14695.107.B-ishstabilize-14682.B-ishstabilize-14633.B-ishstabilize-14616.B-ishstabilize-14589.B-ishstabilize-14588.98.B-ishstabilize-14588.14.B-ishstabilize-14588.123.B-ishstabilize-14536.B-ishstabilize-14532.B-ishstabilize-14528.B-ishstabilize-14526.89.B-ishstabilize-14526.84.B-ishstabilize-14526.73.B-ishstabilize-14526.67.B-ishstabilize-14526.57.B-ishstabilize-14498.B-ishstabilize-14496.B-ishstabilize-14477.B-ishstabilize-14469.9.B-ishstabilize-14469.8.B-ishstabilize-14469.58.B-ishstabilize-14469.41.B-ishstabilize-14442.B-ishstabilize-14438.B-ishstabilize-14411.B-ishstabilize-14396.B-ishstabilize-14395.B-ishstabilize-14388.62.B-ishstabilize-14388.61.B-ishstabilize-14388.52.B-ishstabilize-14385.B-ishstabilize-14345.B-ishstabilize-14336.B-ishstabilize-14333.B-ishrelease-R99-14469.B-ishrelease-R98-14388.B-ishrelease-R102-14695.B-ishrelease-R101-14588.B-ishrelease-R100-14526.B-ishfirmware-cherry-14454.B-ishfirmware-brya-14505.B-ishfirmware-brya-14505.71.B-ishfactory-kukui-14374.B-ishfactory-guybrush-14600.B-ishfactory-cherry-14455.B-ishfactory-brya-14517.B-ish
In the interest of making long-term branch maintenance incur as little
technical debt on us as possible, we should not maintain any files on
the branch we are not actually using.
This has the added effect of making it extremely clear when merging CLs
from the main branch when changes have the possibility to affect us.
The follow-on CL adds a convenience script to actually pull updates from
the main branch and generate a CL for the update.
BUG=b:204206272
BRANCH=ish
TEST=make BOARD=arcada_ish && make BOARD=drallion_ish
Signed-off-by: Jack Rosenthal <jrosenth@chromium.org>
Change-Id: I17e4694c38219b5a0823e0a3e55a28d1348f4b18
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3262038
Reviewed-by: Jett Rink <jettrink@chromium.org>
Reviewed-by: Tom Hughes <tomhughes@chromium.org>
Diffstat (limited to 'zephyr/test/drivers/src/temp_sensor.c')
-rw-r--r-- | zephyr/test/drivers/src/temp_sensor.c | 139 |
1 files changed, 0 insertions, 139 deletions
diff --git a/zephyr/test/drivers/src/temp_sensor.c b/zephyr/test/drivers/src/temp_sensor.c deleted file mode 100644 index 83a343e572..0000000000 --- a/zephyr/test/drivers/src/temp_sensor.c +++ /dev/null @@ -1,139 +0,0 @@ -/* Copyright 2021 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. - */ - -#include <zephyr.h> -#include <ztest.h> -#include <drivers/adc.h> -#include <drivers/adc/adc_emul.h> -#include <drivers/gpio.h> -#include <drivers/gpio/gpio_emul.h> - -#include <math.h> - -#include "common.h" -#include "temp_sensor.h" -#include "temp_sensor/temp_sensor.h" - -#define GPIO_PG_EC_DSW_PWROK_PATH DT_PATH(named_gpios, pg_ec_dsw_pwrok) -#define GPIO_PG_EC_DSW_PWROK_PORT DT_GPIO_PIN(GPIO_PG_EC_DSW_PWROK_PATH, gpios) - -#define ADC_DEVICE_NODE DT_NODELABEL(adc0) -#define ADC_CHANNELS_NUM DT_PROP(DT_NODELABEL(adc0), nchannels) - -/** Test error code when invalid sensor is passed to temp_sensor_read() */ -static void test_temp_sensor_wrong_id(void) -{ - int temp; - - zassert_equal(EC_ERROR_INVAL, temp_sensor_read(TEMP_SENSOR_COUNT, - &temp), - NULL); -} - -/** Test error code when temp_sensor_read() is called with powered off ADC */ -static void test_temp_sensor_adc_error(void) -{ - const struct device *gpio_dev = - DEVICE_DT_GET(DT_GPIO_CTLR(GPIO_PG_EC_DSW_PWROK_PATH, gpios)); - int temp; - - zassert_not_null(gpio_dev, "Cannot get GPIO device"); - - /* - * pg_ec_dsw_pwrok = 0 means ADC is not powered. - * adc_read will return error - */ - zassert_ok(gpio_emul_input_set(gpio_dev, GPIO_PG_EC_DSW_PWROK_PORT, 0), - NULL); - - zassert_equal(EC_ERROR_NOT_POWERED, - temp_sensor_read(TEMP_SENSOR_CHARGER, &temp), NULL); - zassert_equal(EC_ERROR_NOT_POWERED, - temp_sensor_read(TEMP_SENSOR_DDR_SOC, &temp), NULL); - zassert_equal(EC_ERROR_NOT_POWERED, - temp_sensor_read(TEMP_SENSOR_FAN, &temp), NULL); - zassert_equal(EC_ERROR_NOT_POWERED, - temp_sensor_read(TEMP_SENSOR_PP3300_REGULATOR, &temp), - NULL); - - /* power ADC */ - zassert_ok(gpio_emul_input_set(gpio_dev, GPIO_PG_EC_DSW_PWROK_PORT, 1), - NULL); -} - -/** Simple ADC emulator custom function which always return error */ -static int adc_error_func(const struct device *dev, unsigned int channel, - void *param, uint32_t *result) -{ - return -EINVAL; -} - -/** - * Set valid response only for ADC channel connected with tested sensor. - * Check if temp_sensor_read() from tested sensor returns EC_SUCCESS and - * valid temperature. Set invalid response on ADC channel for next test. - */ -static void check_valid_temperature(const struct device *adc_dev, int sensor) -{ - int temp; - - /* ADC channel of tested sensor return valid value */ - zassert_ok(adc_emul_const_value_set(adc_dev, temp_sensors[sensor].idx, - 1000), - "adc_emul_const_value_set() failed (sensor %d)", sensor); - zassert_equal(EC_SUCCESS, temp_sensor_read(sensor, &temp), NULL); - zassert_within(temp, 273 + 50, 51, - "Expected temperature in 0*C-100*C, got %d*C (sensor %d)", - temp - 273, sensor); - /* Return error on ADC channel of tested sensor */ - zassert_ok(adc_emul_value_func_set(adc_dev, temp_sensors[sensor].idx, - adc_error_func, NULL), - "adc_emul_value_func_set() failed (sensor %d)", sensor); -} - -/** Test if temp_sensor_read() returns temperature on success */ -static void test_temp_sensor_read(void) -{ - const struct device *adc_dev = DEVICE_DT_GET(ADC_DEVICE_NODE); - int chan; - - zassert_not_null(adc_dev, "Cannot get ADC device"); - - /* Return error on all ADC channels */ - for (chan = 0; chan < ADC_CHANNELS_NUM; chan++) { - zassert_ok(adc_emul_value_func_set(adc_dev, chan, - adc_error_func, NULL), - "channel %d adc_emul_value_func_set() failed", chan); - } - - check_valid_temperature(adc_dev, TEMP_SENSOR_CHARGER); - check_valid_temperature(adc_dev, TEMP_SENSOR_DDR_SOC); - check_valid_temperature(adc_dev, TEMP_SENSOR_FAN); - check_valid_temperature(adc_dev, TEMP_SENSOR_PP3300_REGULATOR); - - /* Return correct value on all ADC channels */ - for (chan = 0; chan < ADC_CHANNELS_NUM; chan++) { - zassert_ok(adc_emul_const_value_set(adc_dev, chan, 1000), - "channel %d adc_emul_const_value_set() failed", - chan); - } -} - -void test_suite_temp_sensor(void) -{ - const struct device *dev = - DEVICE_DT_GET(DT_GPIO_CTLR(GPIO_PG_EC_DSW_PWROK_PATH, gpios)); - - zassert_not_null(dev, NULL); - /* Before tests make sure that power pin is set. */ - zassert_ok(gpio_emul_input_set(dev, GPIO_PG_EC_DSW_PWROK_PORT, 1), - NULL); - - ztest_test_suite(temp_sensor, - ztest_user_unit_test(test_temp_sensor_wrong_id), - ztest_user_unit_test(test_temp_sensor_adc_error), - ztest_user_unit_test(test_temp_sensor_read)); - ztest_run_test_suite(temp_sensor); -} |