Various fixes and improvements (#515)
* Optional internal pull-ups for SD/MMC pins in DTS * Selectable on‑chip LDO channel for SD/MMC power (can be disabled) * Added several sensor/driver modules to generic ESP32 device configurations so that they become part of the SDKs * SD card mount now prints card information for clearer diagnostics * Fix for bug DTS boolean parsing. Improved tests to catch these issues. * Expanded SDK integration test to include new modules and headers * Modularized packaging to generate per‑module build files and include driver assets
This commit is contained in:
committed by
GitHub
parent
be2cdc0b90
commit
4170b86137
@@ -0,0 +1,16 @@
|
||||
description: Boolean test device binding
|
||||
compatible: "test,bool-device"
|
||||
properties:
|
||||
binding-default-true-setting-implied:
|
||||
type: boolean
|
||||
default: true
|
||||
binding-default-false-setting-implied:
|
||||
type: boolean
|
||||
default: false
|
||||
binding-default-false-setting-direct:
|
||||
type: boolean
|
||||
default: false
|
||||
binding-implied-true-setting-direct:
|
||||
type: boolean
|
||||
binding-implied-true-setting-implied:
|
||||
type: boolean
|
||||
+2
-4
@@ -1,11 +1,9 @@
|
||||
description: Test device binding
|
||||
compatible: "test,device"
|
||||
description: Generic test device binding
|
||||
compatible: "test,generic-device"
|
||||
properties:
|
||||
reg:
|
||||
type: int
|
||||
required: true
|
||||
boolean-prop:
|
||||
type: boolean
|
||||
int-prop:
|
||||
type: int
|
||||
string-prop:
|
||||
@@ -0,0 +1,57 @@
|
||||
// Default headers
|
||||
#include <tactility/device.h>
|
||||
#include <tactility/dts.h>
|
||||
#include <tactility/module.h>
|
||||
// DTS headers
|
||||
#include <test_include.h>
|
||||
|
||||
static const root_config_dt root_config = {
|
||||
"Test Model"
|
||||
};
|
||||
|
||||
static struct Device root = {
|
||||
.name = "/",
|
||||
.config = &root_config,
|
||||
.parent = NULL,
|
||||
.internal = NULL
|
||||
};
|
||||
|
||||
static const generic_device_config_dt test_device@0_config = {
|
||||
0,
|
||||
42,
|
||||
"hello"
|
||||
};
|
||||
|
||||
static struct Device test_device@0 = {
|
||||
.name = "test-device@0",
|
||||
.config = &test_device@0_config,
|
||||
.parent = &root,
|
||||
.internal = NULL
|
||||
};
|
||||
|
||||
static const bool_device_config_dt bool_test_device_config = {
|
||||
true,
|
||||
false,
|
||||
true,
|
||||
true,
|
||||
true
|
||||
};
|
||||
|
||||
static struct Device bool_test_device = {
|
||||
.name = "bool-test-device",
|
||||
.config = &bool_test_device_config,
|
||||
.parent = &root,
|
||||
.internal = NULL
|
||||
};
|
||||
|
||||
struct DtsDevice dts_devices[] = {
|
||||
{ &root, "test,root", DTS_DEVICE_STATUS_OKAY },
|
||||
{ &test_device@0, "test,generic-device", DTS_DEVICE_STATUS_OKAY },
|
||||
{ &bool_test_device, "test,bool-device", DTS_DEVICE_STATUS_OKAY },
|
||||
DTS_DEVICE_TERMINATOR
|
||||
};
|
||||
|
||||
|
||||
struct Module* dts_modules[] = {
|
||||
NULL
|
||||
};
|
||||
@@ -0,0 +1,17 @@
|
||||
#pragma once
|
||||
#include <tactility/error.h>
|
||||
#include <tactility/dts.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
// Array of device tree modules terminated with DTS_MODULE_TERMINATOR
|
||||
extern struct DtsDevice dts_devices[];
|
||||
|
||||
// Array of module symbols terminated with NULL
|
||||
extern struct Module* dts_modules[];
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
@@ -7,11 +7,16 @@
|
||||
model = "Test Model";
|
||||
|
||||
test_device1: test-device@0 {
|
||||
compatible = "test,device";
|
||||
compatible = "test,generic-device";
|
||||
reg = <0>;
|
||||
status = "okay";
|
||||
boolean-prop;
|
||||
int-prop = <42>;
|
||||
string-prop = "hello";
|
||||
};
|
||||
|
||||
bool-test-device {
|
||||
compatible = "test,bool-device";
|
||||
binding-default-false-setting-direct;
|
||||
binding-implied-true-setting-direct;
|
||||
};
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user