mirror of
https://github.com/esphome/esphome.git
synced 2026-09-18 10:38:38 +00:00
Merge remote-tracking branch 'upstream/dev' into integration
This commit is contained in:
@@ -8,11 +8,13 @@ namespace esphome::esp8266 {
|
||||
static const char *const TAG = "esp8266";
|
||||
|
||||
static int flags_to_mode(gpio::Flags flags, uint8_t pin) {
|
||||
if (flags == gpio::FLAG_INPUT) { // NOLINT(bugprone-branch-clone)
|
||||
return INPUT;
|
||||
} else if (flags == gpio::FLAG_OUTPUT) {
|
||||
if (flags == gpio::FLAG_OUTPUT || flags == (gpio::FLAG_OUTPUT | gpio::FLAG_INPUT)) {
|
||||
return OUTPUT;
|
||||
} else if (flags == (gpio::FLAG_INPUT | gpio::FLAG_PULLUP)) {
|
||||
}
|
||||
if (flags == gpio::FLAG_INPUT) {
|
||||
return INPUT;
|
||||
}
|
||||
if (flags == (gpio::FLAG_INPUT | gpio::FLAG_PULLUP)) {
|
||||
if (pin == 16) {
|
||||
// GPIO16 doesn't have a pullup, so pinMode would fail.
|
||||
// However, sometimes this method is called with pullup mode anyway
|
||||
@@ -21,13 +23,14 @@ static int flags_to_mode(gpio::Flags flags, uint8_t pin) {
|
||||
return INPUT;
|
||||
}
|
||||
return INPUT_PULLUP;
|
||||
} else if (flags == (gpio::FLAG_INPUT | gpio::FLAG_PULLDOWN)) {
|
||||
return INPUT_PULLDOWN_16;
|
||||
} else if (flags == (gpio::FLAG_OUTPUT | gpio::FLAG_OPEN_DRAIN)) {
|
||||
return OUTPUT_OPEN_DRAIN;
|
||||
} else {
|
||||
return 0;
|
||||
}
|
||||
if (flags == (gpio::FLAG_INPUT | gpio::FLAG_PULLDOWN)) {
|
||||
return INPUT_PULLDOWN_16;
|
||||
}
|
||||
if (flags == (gpio::FLAG_OUTPUT | gpio::FLAG_OPEN_DRAIN)) {
|
||||
return OUTPUT_OPEN_DRAIN;
|
||||
}
|
||||
return INPUT;
|
||||
}
|
||||
|
||||
struct ISRPinArg {
|
||||
|
||||
@@ -55,6 +55,7 @@ from esphome.const import (
|
||||
PLATFORM_BK72XX,
|
||||
PLATFORM_ESP32,
|
||||
PLATFORM_ESP8266,
|
||||
PLATFORM_RTL87XX,
|
||||
PlatformFramework,
|
||||
)
|
||||
from esphome.core import CORE, CoroPriority, coroutine_with_priority
|
||||
@@ -316,7 +317,7 @@ CONFIG_SCHEMA = cv.All(
|
||||
}
|
||||
),
|
||||
validate_config,
|
||||
cv.only_on([PLATFORM_ESP32, PLATFORM_ESP8266, PLATFORM_BK72XX]),
|
||||
cv.only_on([PLATFORM_ESP32, PLATFORM_ESP8266, PLATFORM_BK72XX, PLATFORM_RTL87XX]),
|
||||
_consume_mqtt_sockets,
|
||||
)
|
||||
|
||||
|
||||
+10
-2
@@ -630,7 +630,12 @@ def get_all_dependencies(component_names: set[str]) -> set[str]:
|
||||
Returns:
|
||||
Set of all components including dependencies and auto-loaded components
|
||||
"""
|
||||
from esphome.const import KEY_CORE
|
||||
from esphome.const import (
|
||||
KEY_CORE,
|
||||
KEY_TARGET_FRAMEWORK,
|
||||
KEY_TARGET_PLATFORM,
|
||||
PLATFORM_HOST,
|
||||
)
|
||||
from esphome.core import CORE
|
||||
from esphome.loader import get_component
|
||||
|
||||
@@ -642,7 +647,10 @@ def get_all_dependencies(component_names: set[str]) -> set[str]:
|
||||
# Set up fake config path for component loading
|
||||
root = Path(__file__).parent.parent
|
||||
CORE.config_path = root
|
||||
CORE.data[KEY_CORE] = {}
|
||||
CORE.data[KEY_CORE] = {
|
||||
KEY_TARGET_PLATFORM: PLATFORM_HOST,
|
||||
KEY_TARGET_FRAMEWORK: "host-native",
|
||||
}
|
||||
|
||||
# Keep finding dependencies until no new ones are found
|
||||
while True:
|
||||
|
||||
@@ -0,0 +1,2 @@
|
||||
packages:
|
||||
common: !include common.yaml
|
||||
@@ -0,0 +1,15 @@
|
||||
esphome:
|
||||
name: componenttestesprtl87xx
|
||||
friendly_name: $component_name
|
||||
|
||||
rtl87xx:
|
||||
board: generic-rtl8710bn-2mb-788k
|
||||
|
||||
logger:
|
||||
level: VERY_VERBOSE
|
||||
|
||||
packages:
|
||||
component_under_test: !include
|
||||
file: $component_test_file
|
||||
vars:
|
||||
component_test_file: $component_test_file
|
||||
Reference in New Issue
Block a user