diff --git a/cmake/modules/dts.cmake b/cmake/modules/dts.cmake index eef504d37aa..e84bd0e2ee1 100644 --- a/cmake/modules/dts.cmake +++ b/cmake/modules/dts.cmake @@ -214,7 +214,6 @@ if(SUPPORTS_DTS) --dtc-flags '${EXTRA_DTC_FLAGS_RAW}' --bindings-dirs ${DTS_ROOT_BINDINGS} --header-out ${DEVICETREE_GENERATED_H}.new - --device-header-out ${DEVICE_EXTERN_H}.new --dts-out ${ZEPHYR_DTS}.new # for debugging and dtc --edt-pickle-out ${EDT_PICKLE} ${EXTRA_GEN_DEFINES_ARGS} @@ -231,11 +230,11 @@ if(SUPPORTS_DTS) else() zephyr_file_copy(${ZEPHYR_DTS}.new ${ZEPHYR_DTS} ONLY_IF_DIFFERENT) zephyr_file_copy(${DEVICETREE_GENERATED_H}.new ${DEVICETREE_GENERATED_H} ONLY_IF_DIFFERENT) - zephyr_file_copy(${DEVICE_EXTERN_H}.new ${DEVICE_EXTERN_H}) - file(REMOVE ${ZEPHYR_DTS}.new ${DEVICETREE_GENERATED_H}.new ${DEVICE_EXTERN_H}.new) + file(WRITE ${DEVICE_EXTERN_H} +"#error The contents of this file are now implemented directly in zephyr/device.h.") + file(REMOVE ${ZEPHYR_DTS}.new ${DEVICETREE_GENERATED_H}.new) message(STATUS "Generated zephyr.dts: ${ZEPHYR_DTS}") message(STATUS "Generated devicetree_generated.h: ${DEVICETREE_GENERATED_H}") - message(STATUS "Generated device_extern.h: ${DEVICE_EXTERN_H}") endif() @@ -310,5 +309,4 @@ if(SUPPORTS_DTS) else() set(header_template ${ZEPHYR_BASE}/misc/generated/generated_header.template) zephyr_file_copy(${header_template} ${DEVICETREE_GENERATED_H} ONLY_IF_DIFFERENT) - zephyr_file_copy(${header_template} ${DEVICE_EXTERN_H} ONLY_IF_DIFFERENT) endif(SUPPORTS_DTS) diff --git a/scripts/dts/gen_defines.py b/scripts/dts/gen_defines.py index 7c8db726500..c3a50e87ae4 100755 --- a/scripts/dts/gen_defines.py +++ b/scripts/dts/gen_defines.py @@ -146,36 +146,10 @@ def main(): write_chosen(edt) write_global_macros(edt) - write_device_extern_header(args.device_header_out, edt) - if args.edt_pickle_out: write_pickled_edt(edt, args.edt_pickle_out) -def write_device_extern_header(device_header_out, edt): - # Generate header that will extern devicetree struct device's - - with open(device_header_out, "w", encoding="utf-8") as dev_header_file: - print("#ifndef DEVICE_EXTERN_GEN_H", file=dev_header_file) - print("#define DEVICE_EXTERN_GEN_H", file=dev_header_file) - print("", file=dev_header_file) - print("#ifdef __cplusplus", file=dev_header_file) - print('extern "C" {', file=dev_header_file) - print("#endif", file=dev_header_file) - print("", file=dev_header_file) - - for node in sorted(edt.nodes, key=lambda node: node.dep_ordinal): - print(f"extern const struct device DEVICE_DT_NAME_GET(DT_{node.z_path_id}); /* dts_ord_{node.dep_ordinal} */", - file=dev_header_file) - - print("", file=dev_header_file) - print("#ifdef __cplusplus", file=dev_header_file) - print("}", file=dev_header_file) - print("#endif", file=dev_header_file) - print("", file=dev_header_file) - print("#endif /* DEVICE_EXTERN_GEN_H */", file=dev_header_file) - - def setup_edtlib_logging(): # The edtlib module emits logs using the standard 'logging' module. # Configure it so that warnings and above are printed to stderr, @@ -222,8 +196,6 @@ def parse_args(): parser.add_argument("--dts-out", required=True, help="path to write merged DTS source code to (e.g. " "as a debugging aid)") - parser.add_argument("--device-header-out", required=True, - help="path to write device struct extern header to") parser.add_argument("--edt-pickle-out", help="path to write pickled edtlib.EDT object to") parser.add_argument("--vendor-prefixes", action='append', default=[],