|  | /* | 
|  | * Copyright (c) 2017 Linaro Limited | 
|  | * | 
|  | * SPDX-License-Identifier: Apache-2.0 | 
|  | */ | 
|  |  | 
|  | #ifndef ZEPHYR_DRIVERS_I2C_I2C_PRIV_H_ | 
|  | #define ZEPHYR_DRIVERS_I2C_I2C_PRIV_H_ | 
|  |  | 
|  | #include <zephyr/drivers/i2c.h> | 
|  | #include <zephyr/dt-bindings/i2c/i2c.h> | 
|  | #include <zephyr/logging/log.h> | 
|  |  | 
|  | #ifdef __cplusplus | 
|  | extern "C" { | 
|  | #endif | 
|  |  | 
|  | static inline uint32_t i2c_map_dt_bitrate(uint32_t bitrate) | 
|  | { | 
|  | switch (bitrate) { | 
|  | case I2C_BITRATE_STANDARD: | 
|  | return I2C_SPEED_STANDARD << I2C_SPEED_SHIFT; | 
|  | case I2C_BITRATE_FAST: | 
|  | return I2C_SPEED_FAST << I2C_SPEED_SHIFT; | 
|  | case I2C_BITRATE_FAST_PLUS: | 
|  | return I2C_SPEED_FAST_PLUS << I2C_SPEED_SHIFT; | 
|  | case I2C_BITRATE_HIGH: | 
|  | return I2C_SPEED_HIGH << I2C_SPEED_SHIFT; | 
|  | case I2C_BITRATE_ULTRA: | 
|  | return I2C_SPEED_ULTRA << I2C_SPEED_SHIFT; | 
|  | } | 
|  |  | 
|  | LOG_ERR("Invalid I2C bit rate value"); | 
|  |  | 
|  | return 0; | 
|  | } | 
|  |  | 
|  | #ifdef __cplusplus | 
|  | } | 
|  | #endif | 
|  |  | 
|  | #endif /* ZEPHYR_DRIVERS_I2C_I2C_PRIV_H_ */ |