From cb5826e02b3002d3c800f4c947a5403cf27aac8b Mon Sep 17 00:00:00 2001 From: Jeroen Schweitzer Date: Wed, 15 Jul 2026 09:50:27 +0200 Subject: [PATCH] Fork fix: the SDIO wedge is FIXED (esp-hosted-mcu #167) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Root cause (verified against our exact IDF tree, not the community guess): the "258" in "sdio_write_task: Failed to send data: 258" is NOT a timeout (that is 263). 258 = 0x102 = ESP_ERR_INVALID_ARG. On the ESP32-P4, block- mode CMD53 writes require the SOURCE buffer to be 64-byte (cache-line) aligned; the IDF sdmmc driver rejects a misaligned source with INVALID_ARG BEFORE any bus activity. esp_hosts write loop then declares "Unrecoverable host sdio state" and reboots the whole P4. The audio TX payload is not 64-aligned, so streaming mic audio wedged on the very FIRST frame (which is exactly what we saw: listening -> instant Failed to send -> reboot). This also explains why buffer/queue/clock/retry tuning all did nothing: the write never reached the bus. And why our symptom was instant, not after ~100 writes (the community block-mode-desync theory) — it is the first misaligned buffer, every time. Fix: vendored esp_hosted 2.12.11 as an editable local component (overrides the registry copy) and bounce a misaligned TX payload through one aligned DMA scratch buffer in hosted_sdio_write_block (port_esp_hosted_host_sdio.c). TX is serialized by the bus lock so a single static bounce buffer is safe; freed in hosted_sdio_deinit. Host-only change — no C6 reflash. VERIFIED ON HARDWARE (autonomous self-test): 40s of continuous mic-audio upstream streaming — the traffic that previously wedged on the first frame — ran clean, zero timeouts, zero reboots. A guarded SDIO_TX_SELFTEST harness is kept (compiled out) for future SDIO stress testing. Credit: root cause + patch designed via multi-agent investigation; the precise 258=INVALID_ARG decode (correcting the upstream community timeout assumption) came from checking our actual esp_err.h. Co-Authored-By: Claude Fable 5 --- firmware/components/esp_hosted/.codespellrc | 4 + .../components/esp_hosted/.component_hash | 1 + firmware/components/esp_hosted/.editorconfig | 24 + firmware/components/esp_hosted/.gitignore | 5 + .../.gitlab-ci-override-idf-component.yml | 5 + .../esp_hosted/.gitlab/ci/pre_commit.yml | 31 + .../.gitlab/ci/regression_pipeline_jobs.yml | 354 + .../esp_hosted/.gitlab/ci/rules.yml | 26 + .../.gitlab/ci/sanity_pipeline_jobs.yml | 228 + .../esp_hosted/.gitlab/ci/templates.yml | 326 + firmware/components/esp_hosted/.gitmodules | 3 + .../esp_hosted/.idf_build_apps.toml | 1 + .../esp_hosted/.pre-commit-config.yaml | 46 + firmware/components/esp_hosted/CHANGELOG.md | 816 + firmware/components/esp_hosted/CHECKSUMS.json | 1 + firmware/components/esp_hosted/CMakeLists.txt | 184 + firmware/components/esp_hosted/Kconfig | 2502 ++ firmware/components/esp_hosted/LICENSE | 202 + firmware/components/esp_hosted/README.md | 285 + .../esp_hosted/common/esp_hosted_header.h | 44 + .../esp_hosted/common/esp_hosted_interface.h | 30 + .../common/esp_hosted_lwip_src_port_hook.h | 73 + .../esp_hosted/common/log/esp_hosted_log.h | 27 + .../common/mempool/include/mempool.h | 54 + .../esp_hosted/common/mempool/mempool.c | 202 + .../esp_hosted/common/mempool/mempool_ll.c | 516 + .../esp_hosted/common/mempool/mempool_ll.h | 217 + .../esp_hosted/common/proto/README.md | 53 + .../common/proto/esp_hosted_rpc.pb-c.c | 33160 ++++++++++++++++ .../common/proto/esp_hosted_rpc.pb-c.h | 12998 ++++++ .../common/proto/esp_hosted_rpc.proto | 2479 ++ .../common/protobuf-c/.commit_docs.sh | 75 + .../esp_hosted/common/protobuf-c/.gitignore | 43 + .../common/protobuf-c/CONTRIBUTING.md | 5 + .../esp_hosted/common/protobuf-c/ChangeLog | 564 + .../esp_hosted/common/protobuf-c/Doxyfile.in | 2312 ++ .../common/protobuf-c/DoxygenLayout.xml | 193 + .../esp_hosted/common/protobuf-c/LICENSE | 32 + .../esp_hosted/common/protobuf-c/Makefile.am | 382 + .../esp_hosted/common/protobuf-c/README.md | 73 + .../esp_hosted/common/protobuf-c/TODO | 82 + .../esp_hosted/common/protobuf-c/autogen.sh | 2 + .../common/protobuf-c/build-cmake/.gitignore | 3 + .../protobuf-c/build-cmake/CMakeLists.txt | 218 + .../esp_hosted/common/protobuf-c/configure.ac | 139 + .../common/protobuf-c/m4/.gitignore | 5 + .../protobuf-c/m4/ax_check_compile_flag.m4 | 74 + .../protobuf-c/m4/ax_cxx_compile_stdcxx.m4 | 948 + .../common/protobuf-c/m4/code_coverage.m4 | 158 + .../common/protobuf-c/m4/ld-version-script.m4 | 53 + .../esp_hosted/common/protobuf-c/m4/pkg.m4 | 214 + .../common/protobuf-c/m4/valgrind-tests.m4 | 35 + .../protobuf-c/protobuf-c/libprotobuf-c.pc.in | 13 + .../protobuf-c/protobuf-c/libprotobuf-c.sym | 28 + .../common/protobuf-c/protobuf-c/protobuf-c.c | 3672 ++ .../common/protobuf-c/protobuf-c/protobuf-c.h | 1110 + .../protobuf-c/protobuf-c/protobuf-c.proto | 86 + .../protobuf-c/protoc-c/c_bytes_field.cc | 163 + .../protobuf-c/protoc-c/c_bytes_field.h | 100 + .../common/protobuf-c/protoc-c/c_enum.cc | 334 + .../common/protobuf-c/protoc-c/c_enum.h | 118 + .../protobuf-c/protoc-c/c_enum_field.cc | 149 + .../common/protobuf-c/protoc-c/c_enum_field.h | 98 + .../common/protobuf-c/protoc-c/c_extension.cc | 90 + .../common/protobuf-c/protoc-c/c_extension.h | 110 + .../common/protobuf-c/protoc-c/c_field.cc | 241 + .../common/protobuf-c/protoc-c/c_field.h | 133 + .../common/protobuf-c/protoc-c/c_file.cc | 274 + .../common/protobuf-c/protoc-c/c_file.h | 115 + .../common/protobuf-c/protoc-c/c_generator.cc | 176 + .../common/protobuf-c/protoc-c/c_generator.h | 106 + .../common/protobuf-c/protoc-c/c_helpers.cc | 558 + .../common/protobuf-c/protoc-c/c_helpers.h | 186 + .../common/protobuf-c/protoc-c/c_message.cc | 633 + .../common/protobuf-c/protoc-c/c_message.h | 148 + .../protobuf-c/protoc-c/c_message_field.cc | 129 + .../protobuf-c/protoc-c/c_message_field.h | 97 + .../protobuf-c/protoc-c/c_primitive_field.cc | 211 + .../protobuf-c/protoc-c/c_primitive_field.h | 96 + .../common/protobuf-c/protoc-c/c_service.cc | 294 + .../common/protobuf-c/protoc-c/c_service.h | 112 + .../protobuf-c/protoc-c/c_string_field.cc | 160 + .../protobuf-c/protoc-c/c_string_field.h | 100 + .../common/protobuf-c/protoc-c/main.cc | 22 + .../esp_hosted/common/protobuf-c/t/README | 38 + .../t/generated-code/test-generated-code.c | 71 + .../t/generated-code2/common-test-arrays.h | 62 + .../cxx-generate-packed-data.cc | 1169 + .../t/generated-code2/test-generated-code2.c | 2383 ++ .../common/protobuf-c/t/issue204/.gitignore | 1 + .../common/protobuf-c/t/issue204/issue204.c | 48 + .../protobuf-c/t/issue204/issue204.proto | 15 + .../common/protobuf-c/t/issue220/.gitignore | 1 + .../common/protobuf-c/t/issue220/issue220.c | 13 + .../protobuf-c/t/issue220/issue220.proto | 20 + .../common/protobuf-c/t/issue251/.gitignore | 1 + .../common/protobuf-c/t/issue251/issue251.c | 12 + .../protobuf-c/t/issue251/issue251.proto | 11 + .../common/protobuf-c/t/issue330/.gitignore | 1 + .../common/protobuf-c/t/issue330/issue330.c | 25 + .../protobuf-c/t/issue330/issue330.proto | 5 + .../common/protobuf-c/t/issue375/.gitignore | 1 + .../common/protobuf-c/t/issue375/issue375.c | 24 + .../protobuf-c/t/issue375/issue375.proto | 7 + .../protobuf-c/t/issue389/issue389.proto | 12 + .../common/protobuf-c/t/issue440/.gitignore | 1 + .../common/protobuf-c/t/issue440/issue440.c | 30 + .../protobuf-c/t/issue440/issue440.proto | 9 + .../common/protobuf-c/t/test-full.proto | 423 + .../common/protobuf-c/t/test-optimized.proto | 13 + .../common/protobuf-c/t/test-proto3.proto | 40 + .../esp_hosted/common/protobuf-c/t/test.proto | 42 + .../common/protobuf-c/t/version/version.c | 56 + .../common/rpc/esp_hosted_bitmasks.h | 144 + .../esp_hosted/common/rpc/esp_hosted_rpc.h | 37 + .../common/transport/esp_hosted_transport.h | 73 + .../transport/esp_hosted_transport_init.h | 70 + .../transport/esp_hosted_transport_spi_hd.h | 41 + .../esp_hosted/common/utils/esp_hosted_cli.c | 507 + .../esp_hosted/common/utils/esp_hosted_cli.h | 34 + .../esp_hosted/docs/bluetooth_design.md | 574 + .../esp_hosted/docs/design_consideration.md | 195 + .../docs/esp32_p4_function_ev_board.md | 364 + .../docs/feature_host_power_save.md | 398 + .../esp_hosted/docs/feature_network_split.md | 229 + .../components/esp_hosted/docs/features.md | 34 + .../esp_hosted/docs/gpio_expander.md | 52 + .../docs/images/ESP-Hosted-FG-MCU_design.svg | 4 + .../docs/images/esp32-p4-esp-prog.jpg | Bin 0 -> 2843410 bytes .../esp32-p4-function-ev-board-esp-prog.jpg | Bin 0 -> 2489906 bytes .../images/esp32-p4-function-ev-board.jpg | Bin 0 -> 2794134 bytes .../docs/images/hosted_diagram-ditaa.svg | 53 + .../docs/images/hosted_diagram-ditaa.txt | 48 + .../docs/images/hosted_wifi_call.svg | 1 + .../docs/images/hosted_wifi_call.txt | 49 + .../docs/images/native_wifi_call.svg | 1 + .../docs/images/native_wifi_call.txt | 13 + .../docs/images/spi_hd_sequence_init.svg | 1 + .../docs/images/spi_hd_sequence_init.txt | 34 + .../docs/images/spi_hd_sequence_read.svg | 1 + .../docs/images/spi_hd_sequence_read.txt | 27 + .../docs/images/spi_hd_sequence_write.svg | 1 + .../docs/images/spi_hd_sequence_write.txt | 24 + .../docs/images/spi_hd_timing_2_lines.svg | 1 + .../docs/images/spi_hd_timing_2_lines.txt | 42 + .../docs/images/spi_hd_timing_4_lines.svg | 1 + .../docs/images/spi_hd_timing_4_lines.txt | 42 + .../esp_hosted/docs/implemented_rpcs.md | 150 + .../esp_hosted/docs/migration_guide.md | 282 + .../esp_hosted/docs/openthread_zigbee.md | 236 + .../docs/performance_optimization.md | 436 + firmware/components/esp_hosted/docs/sdio.md | 638 + ...p_esp_idf__latest_stable__linux_macos.fish | 65 + ...tup_esp_idf__latest_stable__linux_macos.sh | 62 + .../esp_hosted/docs/shield-box-test-setup.md | 123 + .../esp_hosted/docs/spi_full_duplex.md | 545 + .../esp_hosted/docs/spi_half_duplex.md | 809 + .../esp_hosted/docs/troubleshooting.md | 149 + firmware/components/esp_hosted/docs/uart.md | 433 + .../components/esp_hosted/docs/wifi_design.md | 79 + .../CMakeLists.txt | 8 + .../README.md | 62 + .../ble_compatibility_test_case.md | 180 + .../main/CMakeLists.txt | 3 + .../main/ble_compatibility_test.c | 752 + .../main/ble_compatibility_test.h | 31 + .../main/idf_component.yml | 9 + .../sdkconfig.defaults | 25 + .../CMakeLists.txt | 9 + .../README.md | 301 + .../main/CMakeLists.txt | 8 + .../main/Kconfig.projbuild | 15 + .../main/idf_component.yml | 10 + .../main/main.c | 500 + .../sdkconfig.defaults | 31 + .../sdkconfig.defaults.esp32h2 | 1 + .../sdkconfig.defaults.esp32p4 | 1 + .../host_bluedroid_host_only/CMakeLists.txt | 8 + .../host_bluedroid_host_only/README.md | 109 + .../main/CMakeLists.txt | 3 + .../main/idf_component.yml | 10 + .../host_bluedroid_host_only/main/main.c | 320 + .../sdkconfig.defaults | 26 + .../sdkconfig.defaults.esp32h2 | 1 + .../sdkconfig.defaults.esp32p4 | 1 + .../CMakeLists.txt | 6 + .../host_bt_controller_mac_addr/README.md | 178 + .../main/CMakeLists.txt | 4 + .../main/Kconfig.projbuild | 8 + .../main/idf_component.yml | 10 + .../host_bt_controller_mac_addr/main/main.c | 265 + .../sdkconfig.defaults | 27 + .../host_gpio_expander/CMakeLists.txt | 8 + .../examples/host_gpio_expander/README.md | 38 + .../host_gpio_expander/main/CMakeLists.txt | 3 + .../main/host_gpio_expander_example.c | 112 + .../host_gpio_expander/main/idf_component.yml | 10 + .../host_gpio_expander/sdkconfig.defaults | 4 + .../host_hosted_cp_meminfo/CMakeLists.txt | 6 + .../examples/host_hosted_cp_meminfo/README.md | 445 + .../main/CMakeLists.txt | 4 + .../main/Kconfig.projbuild | 121 + .../host_hosted_cp_meminfo/main/app_common.h | 14 + .../main/idf_component.yml | 10 + .../host_hosted_cp_meminfo/main/main.c | 258 + .../main/station_example.c | 223 + .../host_hosted_cp_meminfo/sdkconfig.defaults | 2 + .../host_hosted_events/CMakeLists.txt | 6 + .../examples/host_hosted_events/README.md | 287 + .../host_hosted_events/main/CMakeLists.txt | 4 + .../host_hosted_events/main/Kconfig.projbuild | 110 + .../host_hosted_events/main/app_common.h | 14 + .../host_hosted_events/main/idf_component.yml | 10 + .../examples/host_hosted_events/main/main.c | 332 + .../host_hosted_events/main/station_example.c | 240 + .../host_hosted_events/sdkconfig.defaults | 2 + .../host_manage_copro_ext_coex/CMakeLists.txt | 4 + .../host_manage_copro_ext_coex/README.md | 203 + .../main/CMakeLists.txt | 2 + .../main/idf_component.yml | 10 + .../host_manage_copro_ext_coex/main/main.c | 99 + .../sdkconfig.defaults | 3 + .../CMakeLists.txt | 8 + .../host_network_split__power_save/README.md | 219 + .../README_iperf.md | 119 + .../README_light_sleep.md | 201 + .../host_wakeup_demo_using_udp_packet.c | 60 + .../host_wakeup_demo_using_udp_packet.sh | 58 + .../main/CMakeLists.txt | 2 + .../main/idf_component.yml | 30 + .../main/iperf_example_main.c | 144 + .../sdkconfig.ci.common | 1 + .../sdkconfig.ci.sdio | 1 + .../sdkconfig.ci.spi | 1 + .../sdkconfig.ci.spi_hd | 2 + .../sdkconfig.ci.uart | 1 + .../sdkconfig.defaults | 24 + .../sdkconfig.defaults.esp32 | 20 + .../sdkconfig.defaults.esp32c2 | 23 + .../sdkconfig.defaults.esp32c3 | 23 + .../sdkconfig.defaults.esp32c5 | 37 + .../sdkconfig.defaults.esp32c6 | 26 + .../sdkconfig.defaults.esp32c61 | 37 + .../sdkconfig.defaults.esp32p4 | 22 + .../sdkconfig.defaults.esp32s2 | 27 + .../sdkconfig.defaults.esp32s3 | 24 + .../CMakeLists.txt | 8 + .../README.md | 238 + .../main/CMakeLists.txt | 6 + .../main/Kconfig.projbuild | 144 + .../main/bleprph.h | 35 + .../main/gatt_svr.c | 247 + .../main/idf_component.yml | 12 + .../main/main.c | 569 + .../main/uart_driver.c | 258 + .../main/uart_driver.h | 31 + .../sdkconfig.defaults | 13 + .../tutorial/bleprph_host_only_walkthrough.md | 83 + .../tutorial/hardware_setup.jpg | Bin 0 -> 495040 bytes .../CMakeLists.txt | 6 + .../README.md | 205 + .../main/CMakeLists.txt | 5 + .../main/Kconfig.projbuild | 80 + .../main/bleprph.h | 35 + .../main/gatt_svr.c | 247 + .../main/idf_component.yml | 12 + .../main/main.c | 576 + .../sdkconfig.defaults | 25 + .../CMakeLists.txt | 8 + .../host_openthread_border_router/README.md | 219 + .../main/CMakeLists.txt | 3 + .../main/esp_hosted_openthread_app.c | 74 + .../main/esp_hosted_openthread_app.h | 16 + .../main/esp_ot_br.c | 190 + .../main/esp_ot_config.h | 29 + .../main/idf_component.yml | 21 + .../partitions.csv | 6 + .../sdkconfig.defaults | 74 + .../sdkconfig.defaults.esp32p4 | 12 + .../host_openthread_cli/CMakeLists.txt | 8 + .../examples/host_openthread_cli/README.md | 278 + .../host_openthread_cli/main/CMakeLists.txt | 2 + .../main/esp_hosted_openthread_app.c | 74 + .../main/esp_hosted_openthread_app.h | 16 + .../host_openthread_cli/main/esp_ot_cli.c | 148 + .../host_openthread_cli/main/esp_ot_config.h | 29 + .../main/idf_component.yml | 18 + .../host_openthread_cli/partitions.csv | 5 + .../partitions.esp32p4.csv | 6 + .../host_openthread_cli/sdkconfig.defaults | 53 + .../sdkconfig.defaults.esp32p4 | 8 + .../host_peer_data_transfer/CMakeLists.txt | 9 + .../host_peer_data_transfer/README.md | 138 + .../main/CMakeLists.txt | 4 + .../main/idf_component.yml | 10 + .../main/peer_data_example.c | 375 + .../sdkconfig.defaults | 5 + .../host_performs_slave_ota/CMakeLists.txt | 7 + .../host_performs_slave_ota/README.md | 559 + .../find_newest_firmware.cmake | 64 + .../flash_selected_firmware.cmake | 61 + .../components/ota_https/CMakeLists.txt | 28 + .../components/ota_https/ota_https.c | 413 + .../components/ota_https/ota_https.h | 25 + .../components/ota_https/ota_https_wifi.c | 133 + .../ota_https/test_server/README.md | 58 + .../test_server/create_https_server.py | 79 + .../test_server/create_self_signed_certs.sh | 55 + .../components/ota_littlefs/CMakeLists.txt | 55 + .../components/ota_littlefs/ota_littlefs.c | 452 + .../components/ota_littlefs/ota_littlefs.h | 25 + .../ota_littlefs/slave_fw_bin/.gitkeep | 3 + .../ota_littlefs/slave_fw_bin/README.md | 29 + .../components/ota_partition/CMakeLists.txt | 86 + .../components/ota_partition/ota_partition.c | 336 + .../components/ota_partition/ota_partition.h | 25 + .../ota_partition/slave_fw_bin/.gitkeep | 3 + .../ota_partition/slave_fw_bin/README.md | 34 + .../main/CMakeLists.txt | 6 + .../main/Kconfig.projbuild | 130 + .../main/idf_component.yml | 16 + .../host_performs_slave_ota/main/main.c | 270 + .../host_performs_slave_ota/partitions.csv | 9 + .../sdkconfig.defaults | 17 + .../host_sdcard_with_hosted/CMakeLists.txt | 9 + .../host_sdcard_with_hosted/README.md | 164 + .../main/CMakeLists.txt | 14 + .../main/Kconfig.projbuild | 92 + .../main/esp_hosted_wifi.c | 56 + .../main/esp_hosted_wifi.h | 12 + .../main/idf_component.yml | 10 + .../main/sd_card_example_common.h | 14 + .../main/sd_card_example_main.c | 105 + .../main/sd_card_functions.c | 276 + .../main/sd_card_functions.h | 21 + .../pytest_sdmmc_card_example.py | 49 + .../host_sdcard_with_hosted/sdkconfig.ci | 4 + .../sdkconfig.defaults | 1 + .../sdkconfig.defaults.esp32p4 | 1 + .../CMakeLists.txt | 3 + .../README.md | 95 + .../main/CMakeLists.txt | 3 + .../main/idf_component.yml | 10 + .../main/main.c | 321 + .../main/memory_debug.c | 92 + .../main/memory_debug.h | 68 + .../sdkconfig.defaults | 14 + .../host_transport_config/CMakeLists.txt | 8 + .../examples/host_transport_config/README.md | 103 + .../host_transport_config/main/CMakeLists.txt | 3 + .../main/idf_component.yml | 10 + .../main/transport_config_main.c | 521 + .../host_transport_config/sdkconfig.defaults | 53 + .../CMakeLists.txt | 6 + .../README.md | 72 + .../main/CMakeLists.txt | 2 + .../main/Kconfig.projbuild | 17 + .../main/dpp_enrollee_main.c | 274 + .../main/idf_component.yml | 11 + .../sdkconfig.defaults | 7 + .../sdkconfig.defaults.esp32p4 | 6 + .../examples/host_wifi_itwt/CMakeLists.txt | 8 + .../examples/host_wifi_itwt/README.md | 31 + .../host_wifi_itwt/main/CMakeLists.txt | 5 + .../host_wifi_itwt/main/Kconfig.projbuild | 189 + .../host_wifi_itwt/main/idf_component.yml | 14 + .../examples/host_wifi_itwt/main/itwt_main.c | 386 + .../examples/host_wifi_itwt/main/wifi_cmd.h | 18 + .../host_wifi_itwt/main/wifi_itwt_cmd.c | 259 + .../host_wifi_itwt/main/wifi_stats_cmd.c | 584 + .../host_wifi_itwt/sdkconfig.defaults | 19 + .../host_wifi_itwt/sdkconfig.defaults.esp32p4 | 1 + .../host_zigbee_thermostat/CMakeLists.txt | 11 + .../examples/host_zigbee_thermostat/README.md | 95 + .../main/CMakeLists.txt | 3 + .../main/Kconfig.projbuild | 11 + .../host_zigbee_thermostat/main/alarm_timer.c | 69 + .../host_zigbee_thermostat/main/alarm_timer.h | 47 + .../main/esp_hosted_openthread_app.c | 74 + .../main/esp_hosted_openthread_app.h | 16 + .../main/idf_component.yml | 14 + .../main/switch_driver.c | 116 + .../main/switch_driver.h | 79 + .../host_zigbee_thermostat/main/thermostat.c | 574 + .../host_zigbee_thermostat/main/thermostat.h | 38 + .../host_zigbee_thermostat/partitions.csv | 8 + .../host_zigbee_thermostat/sdkconfig.defaults | 15 + .../sdkconfig.mbedtls_minimal | 50 + .../host/api/include/esp_hosted_api_types.h | 30 + .../host/api/include/esp_hosted_cp_ext_coex.h | 105 + .../host/api/include/esp_hosted_cp_gpio.h | 51 + .../host/api/include/esp_hosted_openthread.h | 61 + .../host/api/include/esp_hosted_ota.h | 82 + .../host/api/include/esp_hosted_power_save.h | 82 + .../api/include/esp_hosted_transport_config.h | 171 + .../api/include/esp_hosted_wifi_remote_glue.h | 44 + .../host/api/priv/esp_hosted_api_priv.h | 156 + .../esp_hosted/host/api/src/esp_hosted_api.c | 988 + .../host/api/src/esp_hosted_ota_api.c | 45 + .../api/src/esp_hosted_transport_config.c | 261 + .../esp_hosted/host/api/src/esp_wifi_weak.c | 505 + .../esp_hosted/host/drivers/bt/hci_drv.h | 16 + .../esp_hosted/host/drivers/bt/hci_stub_drv.c | 107 + .../esp_hosted/host/drivers/bt/vhci_drv.c | 283 + .../host/drivers/power_save/power_save_drv.c | 387 + .../host/drivers/power_save/power_save_drv.h | 37 + .../host/drivers/rpc/core/rpc_core.c | 1177 + .../host/drivers/rpc/core/rpc_core.h | 147 + .../host/drivers/rpc/core/rpc_evt.c | 505 + .../host/drivers/rpc/core/rpc_req.c | 993 + .../host/drivers/rpc/core/rpc_rsp.c | 918 + .../host/drivers/rpc/core/rpc_utils.c | 97 + .../host/drivers/rpc/core/rpc_utils.h | 19 + .../host/drivers/rpc/slaveif/rpc_slave_if.c | 744 + .../host/drivers/rpc/slaveif/rpc_slave_if.h | 924 + .../host/drivers/rpc/wrap/rpc_wrap.c | 2931 ++ .../host/drivers/rpc/wrap/rpc_wrap.h | 208 + .../host/drivers/serial/serial_drv.c | 265 + .../host/drivers/serial/serial_drv.h | 99 + .../host/drivers/serial/serial_ll_if.c | 417 + .../host/drivers/serial/serial_ll_if.h | 98 + .../host/drivers/transport/sdio/sdio_drv.c | 1742 + .../host/drivers/transport/sdio/sdio_drv.h | 23 + .../host/drivers/transport/sdio/sdio_reg.h | 102 + .../host/drivers/transport/spi/spi_drv.c | 1057 + .../host/drivers/transport/spi/spi_drv.h | 34 + .../drivers/transport/spi_hd/spi_hd_drv.c | 1044 + .../drivers/transport/spi_hd/spi_hd_drv.h | 11 + .../host/drivers/transport/transport_drv.c | 957 + .../host/drivers/transport/transport_drv.h | 176 + .../host/drivers/transport/transport_util.c | 32 + .../host/drivers/transport/transport_util.h | 43 + .../host/drivers/transport/uart/uart_drv.c | 807 + .../drivers/virtual_serial_if/serial_if.c | 217 + .../drivers/virtual_serial_if/serial_if.h | 50 + .../components/esp_hosted/host/esp_hosted.h | 65 + .../esp_hosted/host/esp_hosted_bluedroid.h | 23 + .../esp_hosted/host/esp_hosted_bt.h | 15 + .../esp_hosted/host/esp_hosted_event.h | 42 + .../esp_hosted/host/esp_hosted_host_fw_ver.h | 38 + .../esp_hosted/host/esp_hosted_misc.h | 179 + .../esp_hosted/host/esp_hosted_misc_types.h | 61 + .../host/esp_hosted_os_abstraction.h | 131 + .../include/port_esp_hosted_host_bt_config.h | 56 + .../include/port_esp_hosted_host_config.h | 714 + .../include/port_esp_hosted_host_log.h | 16 + .../include/port_esp_hosted_host_openthread.h | 44 + .../include/port_esp_hosted_host_os.h | 163 + .../include/port_esp_hosted_host_sdio.h | 44 + .../include/port_esp_hosted_host_spi.h | 23 + .../include/port_esp_hosted_host_spi_hd.h | 44 + .../include/port_esp_hosted_host_uart.h | 31 + .../port_esp_hosted_host_wifi_config.h | 142 + .../freertos/src/port_esp_hosted_host_init.c | 27 + .../freertos/src/port_esp_hosted_host_os.c | 1024 + .../src/port_esp_hosted_host_ot_util.c | 43 + .../freertos/src/port_esp_hosted_host_sdio.c | 628 + .../freertos/src/port_esp_hosted_host_spi.c | 140 + .../src/port_esp_hosted_host_spi_hd.c | 565 + .../port_esp_hosted_host_transport_defaults.c | 111 + .../freertos/src/port_esp_hosted_host_uart.c | 126 + .../components/esp_hosted/host/utils/stats.c | 241 + .../components/esp_hosted/host/utils/stats.h | 144 + .../components/esp_hosted/idf_component.yml | 11 + .../sdkconfig.ci.all_features_enabled | 11 + .../components/esp_hosted/sdkconfig.rename | 147 + .../esp_hosted/slave/CMakeLists.txt | 62 + .../components/esp_hosted/slave/README.md | 133 + .../esp_hosted/slave/main/CMakeLists.txt | 115 + .../esp_hosted/slave/main/Kconfig.light_sleep | 224 + .../esp_hosted/slave/main/Kconfig.openthread | 168 + .../esp_hosted/slave/main/Kconfig.projbuild | 1740 + .../slave/main/common/esp_hosted_header.h | 44 + .../slave/main/common/esp_hosted_interface.h | 30 + .../common/esp_hosted_lwip_src_port_hook.h | 73 + .../slave/main/common/log/esp_hosted_log.h | 27 + .../main/common/mempool/include/mempool.h | 54 + .../slave/main/common/mempool/mempool.c | 202 + .../slave/main/common/mempool/mempool_ll.c | 516 + .../slave/main/common/mempool/mempool_ll.h | 217 + .../slave/main/common/proto/README.md | 53 + .../main/common/proto/esp_hosted_rpc.pb-c.c | 33160 ++++++++++++++++ .../main/common/proto/esp_hosted_rpc.pb-c.h | 12998 ++++++ .../main/common/proto/esp_hosted_rpc.proto | 2479 ++ .../main/common/protobuf-c/.commit_docs.sh | 75 + .../slave/main/common/protobuf-c/.gitignore | 43 + .../main/common/protobuf-c/CONTRIBUTING.md | 5 + .../slave/main/common/protobuf-c/ChangeLog | 564 + .../slave/main/common/protobuf-c/Doxyfile.in | 2312 ++ .../main/common/protobuf-c/DoxygenLayout.xml | 193 + .../slave/main/common/protobuf-c/LICENSE | 32 + .../slave/main/common/protobuf-c/Makefile.am | 382 + .../slave/main/common/protobuf-c/README.md | 73 + .../slave/main/common/protobuf-c/TODO | 82 + .../slave/main/common/protobuf-c/autogen.sh | 2 + .../common/protobuf-c/build-cmake/.gitignore | 3 + .../protobuf-c/build-cmake/CMakeLists.txt | 218 + .../slave/main/common/protobuf-c/configure.ac | 139 + .../main/common/protobuf-c/m4/.gitignore | 5 + .../protobuf-c/m4/ax_check_compile_flag.m4 | 74 + .../protobuf-c/m4/ax_cxx_compile_stdcxx.m4 | 948 + .../common/protobuf-c/m4/code_coverage.m4 | 158 + .../common/protobuf-c/m4/ld-version-script.m4 | 53 + .../slave/main/common/protobuf-c/m4/pkg.m4 | 214 + .../common/protobuf-c/m4/valgrind-tests.m4 | 35 + .../protobuf-c/protobuf-c/libprotobuf-c.pc.in | 13 + .../protobuf-c/protobuf-c/libprotobuf-c.sym | 28 + .../common/protobuf-c/protobuf-c/protobuf-c.c | 3672 ++ .../common/protobuf-c/protobuf-c/protobuf-c.h | 1110 + .../protobuf-c/protobuf-c/protobuf-c.proto | 86 + .../protobuf-c/protoc-c/c_bytes_field.cc | 163 + .../protobuf-c/protoc-c/c_bytes_field.h | 100 + .../main/common/protobuf-c/protoc-c/c_enum.cc | 334 + .../main/common/protobuf-c/protoc-c/c_enum.h | 118 + .../protobuf-c/protoc-c/c_enum_field.cc | 149 + .../common/protobuf-c/protoc-c/c_enum_field.h | 98 + .../common/protobuf-c/protoc-c/c_extension.cc | 90 + .../common/protobuf-c/protoc-c/c_extension.h | 110 + .../common/protobuf-c/protoc-c/c_field.cc | 241 + .../main/common/protobuf-c/protoc-c/c_field.h | 133 + .../main/common/protobuf-c/protoc-c/c_file.cc | 274 + .../main/common/protobuf-c/protoc-c/c_file.h | 115 + .../common/protobuf-c/protoc-c/c_generator.cc | 176 + .../common/protobuf-c/protoc-c/c_generator.h | 106 + .../common/protobuf-c/protoc-c/c_helpers.cc | 558 + .../common/protobuf-c/protoc-c/c_helpers.h | 186 + .../common/protobuf-c/protoc-c/c_message.cc | 633 + .../common/protobuf-c/protoc-c/c_message.h | 148 + .../protobuf-c/protoc-c/c_message_field.cc | 129 + .../protobuf-c/protoc-c/c_message_field.h | 97 + .../protobuf-c/protoc-c/c_primitive_field.cc | 211 + .../protobuf-c/protoc-c/c_primitive_field.h | 96 + .../common/protobuf-c/protoc-c/c_service.cc | 294 + .../common/protobuf-c/protoc-c/c_service.h | 112 + .../protobuf-c/protoc-c/c_string_field.cc | 160 + .../protobuf-c/protoc-c/c_string_field.h | 100 + .../main/common/protobuf-c/protoc-c/main.cc | 22 + .../slave/main/common/protobuf-c/t/README | 38 + .../t/generated-code/test-generated-code.c | 71 + .../t/generated-code2/common-test-arrays.h | 62 + .../cxx-generate-packed-data.cc | 1169 + .../t/generated-code2/test-generated-code2.c | 2383 ++ .../common/protobuf-c/t/issue204/.gitignore | 1 + .../common/protobuf-c/t/issue204/issue204.c | 48 + .../protobuf-c/t/issue204/issue204.proto | 15 + .../common/protobuf-c/t/issue220/.gitignore | 1 + .../common/protobuf-c/t/issue220/issue220.c | 13 + .../protobuf-c/t/issue220/issue220.proto | 20 + .../common/protobuf-c/t/issue251/.gitignore | 1 + .../common/protobuf-c/t/issue251/issue251.c | 12 + .../protobuf-c/t/issue251/issue251.proto | 11 + .../common/protobuf-c/t/issue330/.gitignore | 1 + .../common/protobuf-c/t/issue330/issue330.c | 25 + .../protobuf-c/t/issue330/issue330.proto | 5 + .../common/protobuf-c/t/issue375/.gitignore | 1 + .../common/protobuf-c/t/issue375/issue375.c | 24 + .../protobuf-c/t/issue375/issue375.proto | 7 + .../protobuf-c/t/issue389/issue389.proto | 12 + .../common/protobuf-c/t/issue440/.gitignore | 1 + .../common/protobuf-c/t/issue440/issue440.c | 30 + .../protobuf-c/t/issue440/issue440.proto | 9 + .../main/common/protobuf-c/t/test-full.proto | 423 + .../common/protobuf-c/t/test-optimized.proto | 13 + .../common/protobuf-c/t/test-proto3.proto | 40 + .../slave/main/common/protobuf-c/t/test.proto | 42 + .../common/protobuf-c/t/version/version.c | 56 + .../main/common/rpc/esp_hosted_bitmasks.h | 144 + .../slave/main/common/rpc/esp_hosted_rpc.h | 37 + .../common/transport/esp_hosted_transport.h | 73 + .../transport/esp_hosted_transport_init.h | 70 + .../transport/esp_hosted_transport_spi_hd.h | 41 + .../slave/main/common/utils/esp_hosted_cli.c | 507 + .../slave/main/common/utils/esp_hosted_cli.h | 34 + .../slave/main/esp_hosted_coprocessor.c | 1309 + .../slave/main/esp_hosted_coprocessor.h | 27 + .../main/esp_hosted_coprocessor_fw_ver.h | 25 + .../slave/main/esp_hosted_peer_data.h | 49 + .../slave/main/example_http_client.c | 265 + .../slave/main/example_http_client.h | 23 + .../slave/main/example_light_sleep.c | 146 + .../slave/main/example_light_sleep.h | 40 + .../slave/main/example_mqtt_client.c | 279 + .../slave/main/example_mqtt_client.h | 23 + .../slave/main/example_peer_data_transfer.c | 203 + .../slave/main/example_peer_data_transfer.h | 31 + .../esp_hosted/slave/main/host_power_save.c | 501 + .../esp_hosted/slave/main/host_power_save.h | 110 + .../esp_hosted/slave/main/idf_component.yml | 27 + .../esp_hosted/slave/main/interface.h | 138 + .../esp_hosted/slave/main/memdump.h | 19 + .../esp_hosted/slave/main/nw_split_router.c | 527 + .../esp_hosted/slave/main/nw_split_router.h | 29 + .../esp_hosted/slave/main/protocomm_pserial.c | 342 + .../esp_hosted/slave/main/protocomm_pserial.h | 31 + .../esp_hosted/slave/main/sdio_slave_api.c | 934 + .../esp_hosted/slave/main/sdio_slave_api.h | 15 + .../esp_hosted/slave/main/slave_bt.c | 370 + .../esp_hosted/slave/main/slave_bt.h | 167 + .../esp_hosted/slave/main/slave_bt_uart.h | 16 + .../slave/main/slave_bt_uart_esp32.c | 33 + .../slave/main/slave_bt_uart_esp32c3_s3.c | 257 + .../slave/main/slave_bt_uart_esp32xx.c | 23 + .../esp_hosted/slave/main/slave_config.h | 48 + .../esp_hosted/slave/main/slave_control.c | 1907 + .../esp_hosted/slave/main/slave_control.h | 234 + .../esp_hosted/slave/main/slave_ext_coex.c | 104 + .../esp_hosted/slave/main/slave_ext_coex.h | 44 + .../slave/main/slave_gpio_expander.c | 181 + .../slave/main/slave_gpio_expander.h | 30 + .../esp_hosted/slave/main/slave_light_sleep.c | 168 + .../esp_hosted/slave/main/slave_light_sleep.h | 98 + .../slave/main/slave_network_split.c | 380 + .../slave/main/slave_network_split.h | 30 + .../esp_hosted/slave/main/slave_openthread.c | 182 + .../esp_hosted/slave/main/slave_openthread.h | 33 + .../main/slave_transport_gpio_pin_guard.c | 83 + .../main/slave_transport_gpio_pin_guard.h | 25 + .../esp_hosted/slave/main/slave_util.c | 33 + .../esp_hosted/slave/main/slave_util.h | 45 + .../esp_hosted/slave/main/slave_wifi_config.h | 120 + .../slave/main/slave_wifi_enterprise.c | 391 + .../slave/main/slave_wifi_enterprise.h | 61 + .../esp_hosted/slave/main/slave_wifi_std.c | 2788 ++ .../esp_hosted/slave/main/slave_wifi_std.h | 151 + .../esp_hosted/slave/main/spi_hd_slave_api.c | 985 + .../esp_hosted/slave/main/spi_slave_api.c | 998 + .../components/esp_hosted/slave/main/stats.c | 389 + .../components/esp_hosted/slave/main/stats.h | 246 + .../esp_hosted/slave/main/uart_slave_api.c | 687 + .../esp_hosted/slave/partitions.esp32.csv | 7 + .../esp_hosted/slave/partitions.esp32c2.csv | 7 + .../esp_hosted/slave/partitions.esp32c3.csv | 7 + .../esp_hosted/slave/partitions.esp32c5.csv | 11 + .../esp_hosted/slave/partitions.esp32c6.csv | 7 + .../esp_hosted/slave/partitions.esp32c61.csv | 7 + .../esp_hosted/slave/partitions.esp32h2.csv | 7 + .../esp_hosted/slave/partitions.esp32h4.csv | 7 + .../esp_hosted/slave/partitions.esp32s2.csv | 7 + .../esp_hosted/slave/partitions.esp32s3.csv | 7 + .../slave/sdkconfig.ci.all_features | 9 + .../esp_hosted/slave/sdkconfig.ci.dpp | 2 + .../slave/sdkconfig.ci.openthread_rcp | 13 + .../esp_hosted/slave/sdkconfig.ci.sdio | 1 + .../esp_hosted/slave/sdkconfig.ci.spi | 4 + .../esp_hosted/slave/sdkconfig.ci.spi_hd | 1 + .../esp_hosted/slave/sdkconfig.ci.uart | 5 + .../slave/sdkconfig.ci.wifi_enterprise | 1 + .../esp_hosted/slave/sdkconfig.defaults | 42 + .../esp_hosted/slave/sdkconfig.defaults.esp32 | 47 + .../slave/sdkconfig.defaults.esp32c2 | 107 + .../slave/sdkconfig.defaults.esp32c3 | 96 + .../slave/sdkconfig.defaults.esp32c5 | 127 + .../slave/sdkconfig.defaults.esp32c6 | 124 + .../slave/sdkconfig.defaults.esp32c61 | 16 + .../slave/sdkconfig.defaults.esp32h2 | 5 + .../slave/sdkconfig.defaults.esp32h4 | 5 + .../slave/sdkconfig.defaults.esp32s2 | 63 + .../slave/sdkconfig.defaults.esp32s3 | 39 + .../esp_hosted/slave/sdkconfig.rename | 5 + .../esp_hosted/tools/check_changelog.py | 68 + .../tools/check_copyright_config.yaml | 37 + .../esp_hosted/tools/check_fw_versions.py | 226 + .../esp_hosted/tools/check_rpc_calls.py | 115 + .../esp_hosted/tools/check_weak_functions.py | 223 + firmware/main/desklock_main.c | 29 + firmware/main/gw_client.c | 4 + 666 files changed, 216925 insertions(+) create mode 100644 firmware/components/esp_hosted/.codespellrc create mode 100644 firmware/components/esp_hosted/.component_hash create mode 100644 firmware/components/esp_hosted/.editorconfig create mode 100644 firmware/components/esp_hosted/.gitignore create mode 100644 firmware/components/esp_hosted/.gitlab-ci-override-idf-component.yml create mode 100644 firmware/components/esp_hosted/.gitlab/ci/pre_commit.yml create mode 100644 firmware/components/esp_hosted/.gitlab/ci/regression_pipeline_jobs.yml create mode 100644 firmware/components/esp_hosted/.gitlab/ci/rules.yml create mode 100644 firmware/components/esp_hosted/.gitlab/ci/sanity_pipeline_jobs.yml create mode 100644 firmware/components/esp_hosted/.gitlab/ci/templates.yml create mode 100644 firmware/components/esp_hosted/.gitmodules create mode 100644 firmware/components/esp_hosted/.idf_build_apps.toml create mode 100644 firmware/components/esp_hosted/.pre-commit-config.yaml create mode 100644 firmware/components/esp_hosted/CHANGELOG.md create mode 100644 firmware/components/esp_hosted/CHECKSUMS.json create mode 100644 firmware/components/esp_hosted/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/Kconfig create mode 100644 firmware/components/esp_hosted/LICENSE create mode 100644 firmware/components/esp_hosted/README.md create mode 100644 firmware/components/esp_hosted/common/esp_hosted_header.h create mode 100644 firmware/components/esp_hosted/common/esp_hosted_interface.h create mode 100644 firmware/components/esp_hosted/common/esp_hosted_lwip_src_port_hook.h create mode 100644 firmware/components/esp_hosted/common/log/esp_hosted_log.h create mode 100644 firmware/components/esp_hosted/common/mempool/include/mempool.h create mode 100644 firmware/components/esp_hosted/common/mempool/mempool.c create mode 100644 firmware/components/esp_hosted/common/mempool/mempool_ll.c create mode 100644 firmware/components/esp_hosted/common/mempool/mempool_ll.h create mode 100644 firmware/components/esp_hosted/common/proto/README.md create mode 100644 firmware/components/esp_hosted/common/proto/esp_hosted_rpc.pb-c.c create mode 100644 firmware/components/esp_hosted/common/proto/esp_hosted_rpc.pb-c.h create mode 100644 firmware/components/esp_hosted/common/proto/esp_hosted_rpc.proto create mode 100644 firmware/components/esp_hosted/common/protobuf-c/.commit_docs.sh create mode 100644 firmware/components/esp_hosted/common/protobuf-c/.gitignore create mode 100644 firmware/components/esp_hosted/common/protobuf-c/CONTRIBUTING.md create mode 100644 firmware/components/esp_hosted/common/protobuf-c/ChangeLog create mode 100644 firmware/components/esp_hosted/common/protobuf-c/Doxyfile.in create mode 100644 firmware/components/esp_hosted/common/protobuf-c/DoxygenLayout.xml create mode 100644 firmware/components/esp_hosted/common/protobuf-c/LICENSE create mode 100644 firmware/components/esp_hosted/common/protobuf-c/Makefile.am create mode 100644 firmware/components/esp_hosted/common/protobuf-c/README.md create mode 100644 firmware/components/esp_hosted/common/protobuf-c/TODO create mode 100644 firmware/components/esp_hosted/common/protobuf-c/autogen.sh create mode 100644 firmware/components/esp_hosted/common/protobuf-c/build-cmake/.gitignore create mode 100644 firmware/components/esp_hosted/common/protobuf-c/build-cmake/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/common/protobuf-c/configure.ac create mode 100644 firmware/components/esp_hosted/common/protobuf-c/m4/.gitignore create mode 100644 firmware/components/esp_hosted/common/protobuf-c/m4/ax_check_compile_flag.m4 create mode 100644 firmware/components/esp_hosted/common/protobuf-c/m4/ax_cxx_compile_stdcxx.m4 create mode 100644 firmware/components/esp_hosted/common/protobuf-c/m4/code_coverage.m4 create mode 100644 firmware/components/esp_hosted/common/protobuf-c/m4/ld-version-script.m4 create mode 100644 firmware/components/esp_hosted/common/protobuf-c/m4/pkg.m4 create mode 100644 firmware/components/esp_hosted/common/protobuf-c/m4/valgrind-tests.m4 create mode 100644 firmware/components/esp_hosted/common/protobuf-c/protobuf-c/libprotobuf-c.pc.in create mode 100644 firmware/components/esp_hosted/common/protobuf-c/protobuf-c/libprotobuf-c.sym create mode 100644 firmware/components/esp_hosted/common/protobuf-c/protobuf-c/protobuf-c.c create mode 100644 firmware/components/esp_hosted/common/protobuf-c/protobuf-c/protobuf-c.h create mode 100644 firmware/components/esp_hosted/common/protobuf-c/protobuf-c/protobuf-c.proto create mode 100644 firmware/components/esp_hosted/common/protobuf-c/protoc-c/c_bytes_field.cc create mode 100644 firmware/components/esp_hosted/common/protobuf-c/protoc-c/c_bytes_field.h create mode 100644 firmware/components/esp_hosted/common/protobuf-c/protoc-c/c_enum.cc create mode 100644 firmware/components/esp_hosted/common/protobuf-c/protoc-c/c_enum.h create mode 100644 firmware/components/esp_hosted/common/protobuf-c/protoc-c/c_enum_field.cc create mode 100644 firmware/components/esp_hosted/common/protobuf-c/protoc-c/c_enum_field.h create mode 100644 firmware/components/esp_hosted/common/protobuf-c/protoc-c/c_extension.cc create mode 100644 firmware/components/esp_hosted/common/protobuf-c/protoc-c/c_extension.h create mode 100644 firmware/components/esp_hosted/common/protobuf-c/protoc-c/c_field.cc create mode 100644 firmware/components/esp_hosted/common/protobuf-c/protoc-c/c_field.h create mode 100644 firmware/components/esp_hosted/common/protobuf-c/protoc-c/c_file.cc create mode 100644 firmware/components/esp_hosted/common/protobuf-c/protoc-c/c_file.h create mode 100644 firmware/components/esp_hosted/common/protobuf-c/protoc-c/c_generator.cc create mode 100644 firmware/components/esp_hosted/common/protobuf-c/protoc-c/c_generator.h create mode 100644 firmware/components/esp_hosted/common/protobuf-c/protoc-c/c_helpers.cc create mode 100644 firmware/components/esp_hosted/common/protobuf-c/protoc-c/c_helpers.h create mode 100644 firmware/components/esp_hosted/common/protobuf-c/protoc-c/c_message.cc create mode 100644 firmware/components/esp_hosted/common/protobuf-c/protoc-c/c_message.h create mode 100644 firmware/components/esp_hosted/common/protobuf-c/protoc-c/c_message_field.cc create mode 100644 firmware/components/esp_hosted/common/protobuf-c/protoc-c/c_message_field.h create mode 100644 firmware/components/esp_hosted/common/protobuf-c/protoc-c/c_primitive_field.cc create mode 100644 firmware/components/esp_hosted/common/protobuf-c/protoc-c/c_primitive_field.h create mode 100644 firmware/components/esp_hosted/common/protobuf-c/protoc-c/c_service.cc create mode 100644 firmware/components/esp_hosted/common/protobuf-c/protoc-c/c_service.h create mode 100644 firmware/components/esp_hosted/common/protobuf-c/protoc-c/c_string_field.cc create mode 100644 firmware/components/esp_hosted/common/protobuf-c/protoc-c/c_string_field.h create mode 100644 firmware/components/esp_hosted/common/protobuf-c/protoc-c/main.cc create mode 100644 firmware/components/esp_hosted/common/protobuf-c/t/README create mode 100644 firmware/components/esp_hosted/common/protobuf-c/t/generated-code/test-generated-code.c create mode 100644 firmware/components/esp_hosted/common/protobuf-c/t/generated-code2/common-test-arrays.h create mode 100644 firmware/components/esp_hosted/common/protobuf-c/t/generated-code2/cxx-generate-packed-data.cc create mode 100644 firmware/components/esp_hosted/common/protobuf-c/t/generated-code2/test-generated-code2.c create mode 100644 firmware/components/esp_hosted/common/protobuf-c/t/issue204/.gitignore create mode 100644 firmware/components/esp_hosted/common/protobuf-c/t/issue204/issue204.c create mode 100644 firmware/components/esp_hosted/common/protobuf-c/t/issue204/issue204.proto create mode 100644 firmware/components/esp_hosted/common/protobuf-c/t/issue220/.gitignore create mode 100644 firmware/components/esp_hosted/common/protobuf-c/t/issue220/issue220.c create mode 100644 firmware/components/esp_hosted/common/protobuf-c/t/issue220/issue220.proto create mode 100644 firmware/components/esp_hosted/common/protobuf-c/t/issue251/.gitignore create mode 100644 firmware/components/esp_hosted/common/protobuf-c/t/issue251/issue251.c create mode 100644 firmware/components/esp_hosted/common/protobuf-c/t/issue251/issue251.proto create mode 100644 firmware/components/esp_hosted/common/protobuf-c/t/issue330/.gitignore create mode 100644 firmware/components/esp_hosted/common/protobuf-c/t/issue330/issue330.c create mode 100644 firmware/components/esp_hosted/common/protobuf-c/t/issue330/issue330.proto create mode 100644 firmware/components/esp_hosted/common/protobuf-c/t/issue375/.gitignore create mode 100644 firmware/components/esp_hosted/common/protobuf-c/t/issue375/issue375.c create mode 100644 firmware/components/esp_hosted/common/protobuf-c/t/issue375/issue375.proto create mode 100644 firmware/components/esp_hosted/common/protobuf-c/t/issue389/issue389.proto create mode 100644 firmware/components/esp_hosted/common/protobuf-c/t/issue440/.gitignore create mode 100644 firmware/components/esp_hosted/common/protobuf-c/t/issue440/issue440.c create mode 100644 firmware/components/esp_hosted/common/protobuf-c/t/issue440/issue440.proto create mode 100644 firmware/components/esp_hosted/common/protobuf-c/t/test-full.proto create mode 100644 firmware/components/esp_hosted/common/protobuf-c/t/test-optimized.proto create mode 100644 firmware/components/esp_hosted/common/protobuf-c/t/test-proto3.proto create mode 100644 firmware/components/esp_hosted/common/protobuf-c/t/test.proto create mode 100644 firmware/components/esp_hosted/common/protobuf-c/t/version/version.c create mode 100644 firmware/components/esp_hosted/common/rpc/esp_hosted_bitmasks.h create mode 100644 firmware/components/esp_hosted/common/rpc/esp_hosted_rpc.h create mode 100644 firmware/components/esp_hosted/common/transport/esp_hosted_transport.h create mode 100644 firmware/components/esp_hosted/common/transport/esp_hosted_transport_init.h create mode 100644 firmware/components/esp_hosted/common/transport/esp_hosted_transport_spi_hd.h create mode 100644 firmware/components/esp_hosted/common/utils/esp_hosted_cli.c create mode 100644 firmware/components/esp_hosted/common/utils/esp_hosted_cli.h create mode 100644 firmware/components/esp_hosted/docs/bluetooth_design.md create mode 100644 firmware/components/esp_hosted/docs/design_consideration.md create mode 100644 firmware/components/esp_hosted/docs/esp32_p4_function_ev_board.md create mode 100644 firmware/components/esp_hosted/docs/feature_host_power_save.md create mode 100644 firmware/components/esp_hosted/docs/feature_network_split.md create mode 100644 firmware/components/esp_hosted/docs/features.md create mode 100644 firmware/components/esp_hosted/docs/gpio_expander.md create mode 100644 firmware/components/esp_hosted/docs/images/ESP-Hosted-FG-MCU_design.svg create mode 100644 firmware/components/esp_hosted/docs/images/esp32-p4-esp-prog.jpg create mode 100644 firmware/components/esp_hosted/docs/images/esp32-p4-function-ev-board-esp-prog.jpg create mode 100644 firmware/components/esp_hosted/docs/images/esp32-p4-function-ev-board.jpg create mode 100644 firmware/components/esp_hosted/docs/images/hosted_diagram-ditaa.svg create mode 100644 firmware/components/esp_hosted/docs/images/hosted_diagram-ditaa.txt create mode 100644 firmware/components/esp_hosted/docs/images/hosted_wifi_call.svg create mode 100644 firmware/components/esp_hosted/docs/images/hosted_wifi_call.txt create mode 100644 firmware/components/esp_hosted/docs/images/native_wifi_call.svg create mode 100644 firmware/components/esp_hosted/docs/images/native_wifi_call.txt create mode 100644 firmware/components/esp_hosted/docs/images/spi_hd_sequence_init.svg create mode 100644 firmware/components/esp_hosted/docs/images/spi_hd_sequence_init.txt create mode 100644 firmware/components/esp_hosted/docs/images/spi_hd_sequence_read.svg create mode 100644 firmware/components/esp_hosted/docs/images/spi_hd_sequence_read.txt create mode 100644 firmware/components/esp_hosted/docs/images/spi_hd_sequence_write.svg create mode 100644 firmware/components/esp_hosted/docs/images/spi_hd_sequence_write.txt create mode 100644 firmware/components/esp_hosted/docs/images/spi_hd_timing_2_lines.svg create mode 100644 firmware/components/esp_hosted/docs/images/spi_hd_timing_2_lines.txt create mode 100644 firmware/components/esp_hosted/docs/images/spi_hd_timing_4_lines.svg create mode 100644 firmware/components/esp_hosted/docs/images/spi_hd_timing_4_lines.txt create mode 100644 firmware/components/esp_hosted/docs/implemented_rpcs.md create mode 100644 firmware/components/esp_hosted/docs/migration_guide.md create mode 100644 firmware/components/esp_hosted/docs/openthread_zigbee.md create mode 100644 firmware/components/esp_hosted/docs/performance_optimization.md create mode 100644 firmware/components/esp_hosted/docs/sdio.md create mode 100644 firmware/components/esp_hosted/docs/setup_esp_idf__latest_stable__linux_macos.fish create mode 100644 firmware/components/esp_hosted/docs/setup_esp_idf__latest_stable__linux_macos.sh create mode 100644 firmware/components/esp_hosted/docs/shield-box-test-setup.md create mode 100644 firmware/components/esp_hosted/docs/spi_full_duplex.md create mode 100644 firmware/components/esp_hosted/docs/spi_half_duplex.md create mode 100644 firmware/components/esp_hosted/docs/troubleshooting.md create mode 100644 firmware/components/esp_hosted/docs/uart.md create mode 100644 firmware/components/esp_hosted/docs/wifi_design.md create mode 100644 firmware/components/esp_hosted/examples/host_bluedroid_ble_compatibility_test/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_bluedroid_ble_compatibility_test/README.md create mode 100644 firmware/components/esp_hosted/examples/host_bluedroid_ble_compatibility_test/ble_compatibility_test_case.md create mode 100644 firmware/components/esp_hosted/examples/host_bluedroid_ble_compatibility_test/main/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_bluedroid_ble_compatibility_test/main/ble_compatibility_test.c create mode 100644 firmware/components/esp_hosted/examples/host_bluedroid_ble_compatibility_test/main/ble_compatibility_test.h create mode 100644 firmware/components/esp_hosted/examples/host_bluedroid_ble_compatibility_test/main/idf_component.yml create mode 100644 firmware/components/esp_hosted/examples/host_bluedroid_ble_compatibility_test/sdkconfig.defaults create mode 100644 firmware/components/esp_hosted/examples/host_bluedroid_bt_hid_mouse_device/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_bluedroid_bt_hid_mouse_device/README.md create mode 100644 firmware/components/esp_hosted/examples/host_bluedroid_bt_hid_mouse_device/main/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_bluedroid_bt_hid_mouse_device/main/Kconfig.projbuild create mode 100644 firmware/components/esp_hosted/examples/host_bluedroid_bt_hid_mouse_device/main/idf_component.yml create mode 100644 firmware/components/esp_hosted/examples/host_bluedroid_bt_hid_mouse_device/main/main.c create mode 100644 firmware/components/esp_hosted/examples/host_bluedroid_bt_hid_mouse_device/sdkconfig.defaults create mode 100644 firmware/components/esp_hosted/examples/host_bluedroid_bt_hid_mouse_device/sdkconfig.defaults.esp32h2 create mode 100644 firmware/components/esp_hosted/examples/host_bluedroid_bt_hid_mouse_device/sdkconfig.defaults.esp32p4 create mode 100644 firmware/components/esp_hosted/examples/host_bluedroid_host_only/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_bluedroid_host_only/README.md create mode 100644 firmware/components/esp_hosted/examples/host_bluedroid_host_only/main/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_bluedroid_host_only/main/idf_component.yml create mode 100644 firmware/components/esp_hosted/examples/host_bluedroid_host_only/main/main.c create mode 100644 firmware/components/esp_hosted/examples/host_bluedroid_host_only/sdkconfig.defaults create mode 100644 firmware/components/esp_hosted/examples/host_bluedroid_host_only/sdkconfig.defaults.esp32h2 create mode 100644 firmware/components/esp_hosted/examples/host_bluedroid_host_only/sdkconfig.defaults.esp32p4 create mode 100644 firmware/components/esp_hosted/examples/host_bt_controller_mac_addr/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_bt_controller_mac_addr/README.md create mode 100644 firmware/components/esp_hosted/examples/host_bt_controller_mac_addr/main/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_bt_controller_mac_addr/main/Kconfig.projbuild create mode 100644 firmware/components/esp_hosted/examples/host_bt_controller_mac_addr/main/idf_component.yml create mode 100644 firmware/components/esp_hosted/examples/host_bt_controller_mac_addr/main/main.c create mode 100644 firmware/components/esp_hosted/examples/host_bt_controller_mac_addr/sdkconfig.defaults create mode 100644 firmware/components/esp_hosted/examples/host_gpio_expander/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_gpio_expander/README.md create mode 100644 firmware/components/esp_hosted/examples/host_gpio_expander/main/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_gpio_expander/main/host_gpio_expander_example.c create mode 100644 firmware/components/esp_hosted/examples/host_gpio_expander/main/idf_component.yml create mode 100644 firmware/components/esp_hosted/examples/host_gpio_expander/sdkconfig.defaults create mode 100644 firmware/components/esp_hosted/examples/host_hosted_cp_meminfo/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_hosted_cp_meminfo/README.md create mode 100644 firmware/components/esp_hosted/examples/host_hosted_cp_meminfo/main/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_hosted_cp_meminfo/main/Kconfig.projbuild create mode 100644 firmware/components/esp_hosted/examples/host_hosted_cp_meminfo/main/app_common.h create mode 100644 firmware/components/esp_hosted/examples/host_hosted_cp_meminfo/main/idf_component.yml create mode 100644 firmware/components/esp_hosted/examples/host_hosted_cp_meminfo/main/main.c create mode 100644 firmware/components/esp_hosted/examples/host_hosted_cp_meminfo/main/station_example.c create mode 100644 firmware/components/esp_hosted/examples/host_hosted_cp_meminfo/sdkconfig.defaults create mode 100644 firmware/components/esp_hosted/examples/host_hosted_events/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_hosted_events/README.md create mode 100644 firmware/components/esp_hosted/examples/host_hosted_events/main/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_hosted_events/main/Kconfig.projbuild create mode 100644 firmware/components/esp_hosted/examples/host_hosted_events/main/app_common.h create mode 100644 firmware/components/esp_hosted/examples/host_hosted_events/main/idf_component.yml create mode 100644 firmware/components/esp_hosted/examples/host_hosted_events/main/main.c create mode 100644 firmware/components/esp_hosted/examples/host_hosted_events/main/station_example.c create mode 100644 firmware/components/esp_hosted/examples/host_hosted_events/sdkconfig.defaults create mode 100644 firmware/components/esp_hosted/examples/host_manage_copro_ext_coex/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_manage_copro_ext_coex/README.md create mode 100644 firmware/components/esp_hosted/examples/host_manage_copro_ext_coex/main/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_manage_copro_ext_coex/main/idf_component.yml create mode 100644 firmware/components/esp_hosted/examples/host_manage_copro_ext_coex/main/main.c create mode 100644 firmware/components/esp_hosted/examples/host_manage_copro_ext_coex/sdkconfig.defaults create mode 100644 firmware/components/esp_hosted/examples/host_network_split__power_save/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_network_split__power_save/README.md create mode 100644 firmware/components/esp_hosted/examples/host_network_split__power_save/README_iperf.md create mode 100644 firmware/components/esp_hosted/examples/host_network_split__power_save/README_light_sleep.md create mode 100644 firmware/components/esp_hosted/examples/host_network_split__power_save/host_wakeup_demo_using_udp_packet/host_wakeup_demo_using_udp_packet.c create mode 100644 firmware/components/esp_hosted/examples/host_network_split__power_save/host_wakeup_demo_using_udp_packet/host_wakeup_demo_using_udp_packet.sh create mode 100644 firmware/components/esp_hosted/examples/host_network_split__power_save/main/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_network_split__power_save/main/idf_component.yml create mode 100644 firmware/components/esp_hosted/examples/host_network_split__power_save/main/iperf_example_main.c create mode 100644 firmware/components/esp_hosted/examples/host_network_split__power_save/sdkconfig.ci.common create mode 100644 firmware/components/esp_hosted/examples/host_network_split__power_save/sdkconfig.ci.sdio create mode 100644 firmware/components/esp_hosted/examples/host_network_split__power_save/sdkconfig.ci.spi create mode 100644 firmware/components/esp_hosted/examples/host_network_split__power_save/sdkconfig.ci.spi_hd create mode 100644 firmware/components/esp_hosted/examples/host_network_split__power_save/sdkconfig.ci.uart create mode 100644 firmware/components/esp_hosted/examples/host_network_split__power_save/sdkconfig.defaults create mode 100644 firmware/components/esp_hosted/examples/host_network_split__power_save/sdkconfig.defaults.esp32 create mode 100644 firmware/components/esp_hosted/examples/host_network_split__power_save/sdkconfig.defaults.esp32c2 create mode 100644 firmware/components/esp_hosted/examples/host_network_split__power_save/sdkconfig.defaults.esp32c3 create mode 100644 firmware/components/esp_hosted/examples/host_network_split__power_save/sdkconfig.defaults.esp32c5 create mode 100644 firmware/components/esp_hosted/examples/host_network_split__power_save/sdkconfig.defaults.esp32c6 create mode 100644 firmware/components/esp_hosted/examples/host_network_split__power_save/sdkconfig.defaults.esp32c61 create mode 100644 firmware/components/esp_hosted/examples/host_network_split__power_save/sdkconfig.defaults.esp32p4 create mode 100644 firmware/components/esp_hosted/examples/host_network_split__power_save/sdkconfig.defaults.esp32s2 create mode 100644 firmware/components/esp_hosted/examples/host_network_split__power_save/sdkconfig.defaults.esp32s3 create mode 100644 firmware/components/esp_hosted/examples/host_nimble_bleprph_host_only_uart_hci/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_nimble_bleprph_host_only_uart_hci/README.md create mode 100644 firmware/components/esp_hosted/examples/host_nimble_bleprph_host_only_uart_hci/main/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_nimble_bleprph_host_only_uart_hci/main/Kconfig.projbuild create mode 100644 firmware/components/esp_hosted/examples/host_nimble_bleprph_host_only_uart_hci/main/bleprph.h create mode 100644 firmware/components/esp_hosted/examples/host_nimble_bleprph_host_only_uart_hci/main/gatt_svr.c create mode 100644 firmware/components/esp_hosted/examples/host_nimble_bleprph_host_only_uart_hci/main/idf_component.yml create mode 100644 firmware/components/esp_hosted/examples/host_nimble_bleprph_host_only_uart_hci/main/main.c create mode 100644 firmware/components/esp_hosted/examples/host_nimble_bleprph_host_only_uart_hci/main/uart_driver.c create mode 100644 firmware/components/esp_hosted/examples/host_nimble_bleprph_host_only_uart_hci/main/uart_driver.h create mode 100644 firmware/components/esp_hosted/examples/host_nimble_bleprph_host_only_uart_hci/sdkconfig.defaults create mode 100644 firmware/components/esp_hosted/examples/host_nimble_bleprph_host_only_uart_hci/tutorial/bleprph_host_only_walkthrough.md create mode 100644 firmware/components/esp_hosted/examples/host_nimble_bleprph_host_only_uart_hci/tutorial/hardware_setup.jpg create mode 100644 firmware/components/esp_hosted/examples/host_nimble_bleprph_host_only_vhci/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_nimble_bleprph_host_only_vhci/README.md create mode 100644 firmware/components/esp_hosted/examples/host_nimble_bleprph_host_only_vhci/main/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_nimble_bleprph_host_only_vhci/main/Kconfig.projbuild create mode 100644 firmware/components/esp_hosted/examples/host_nimble_bleprph_host_only_vhci/main/bleprph.h create mode 100644 firmware/components/esp_hosted/examples/host_nimble_bleprph_host_only_vhci/main/gatt_svr.c create mode 100644 firmware/components/esp_hosted/examples/host_nimble_bleprph_host_only_vhci/main/idf_component.yml create mode 100644 firmware/components/esp_hosted/examples/host_nimble_bleprph_host_only_vhci/main/main.c create mode 100644 firmware/components/esp_hosted/examples/host_nimble_bleprph_host_only_vhci/sdkconfig.defaults create mode 100644 firmware/components/esp_hosted/examples/host_openthread_border_router/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_openthread_border_router/README.md create mode 100644 firmware/components/esp_hosted/examples/host_openthread_border_router/main/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_openthread_border_router/main/esp_hosted_openthread_app.c create mode 100644 firmware/components/esp_hosted/examples/host_openthread_border_router/main/esp_hosted_openthread_app.h create mode 100644 firmware/components/esp_hosted/examples/host_openthread_border_router/main/esp_ot_br.c create mode 100644 firmware/components/esp_hosted/examples/host_openthread_border_router/main/esp_ot_config.h create mode 100644 firmware/components/esp_hosted/examples/host_openthread_border_router/main/idf_component.yml create mode 100644 firmware/components/esp_hosted/examples/host_openthread_border_router/partitions.csv create mode 100644 firmware/components/esp_hosted/examples/host_openthread_border_router/sdkconfig.defaults create mode 100644 firmware/components/esp_hosted/examples/host_openthread_border_router/sdkconfig.defaults.esp32p4 create mode 100644 firmware/components/esp_hosted/examples/host_openthread_cli/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_openthread_cli/README.md create mode 100644 firmware/components/esp_hosted/examples/host_openthread_cli/main/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_openthread_cli/main/esp_hosted_openthread_app.c create mode 100644 firmware/components/esp_hosted/examples/host_openthread_cli/main/esp_hosted_openthread_app.h create mode 100644 firmware/components/esp_hosted/examples/host_openthread_cli/main/esp_ot_cli.c create mode 100644 firmware/components/esp_hosted/examples/host_openthread_cli/main/esp_ot_config.h create mode 100644 firmware/components/esp_hosted/examples/host_openthread_cli/main/idf_component.yml create mode 100644 firmware/components/esp_hosted/examples/host_openthread_cli/partitions.csv create mode 100644 firmware/components/esp_hosted/examples/host_openthread_cli/partitions.esp32p4.csv create mode 100644 firmware/components/esp_hosted/examples/host_openthread_cli/sdkconfig.defaults create mode 100644 firmware/components/esp_hosted/examples/host_openthread_cli/sdkconfig.defaults.esp32p4 create mode 100644 firmware/components/esp_hosted/examples/host_peer_data_transfer/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_peer_data_transfer/README.md create mode 100644 firmware/components/esp_hosted/examples/host_peer_data_transfer/main/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_peer_data_transfer/main/idf_component.yml create mode 100644 firmware/components/esp_hosted/examples/host_peer_data_transfer/main/peer_data_example.c create mode 100644 firmware/components/esp_hosted/examples/host_peer_data_transfer/sdkconfig.defaults create mode 100644 firmware/components/esp_hosted/examples/host_performs_slave_ota/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_performs_slave_ota/README.md create mode 100644 firmware/components/esp_hosted/examples/host_performs_slave_ota/components/common_ota_scripts/find_newest_firmware.cmake create mode 100644 firmware/components/esp_hosted/examples/host_performs_slave_ota/components/common_ota_scripts/flash_selected_firmware.cmake create mode 100644 firmware/components/esp_hosted/examples/host_performs_slave_ota/components/ota_https/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_performs_slave_ota/components/ota_https/ota_https.c create mode 100644 firmware/components/esp_hosted/examples/host_performs_slave_ota/components/ota_https/ota_https.h create mode 100644 firmware/components/esp_hosted/examples/host_performs_slave_ota/components/ota_https/ota_https_wifi.c create mode 100644 firmware/components/esp_hosted/examples/host_performs_slave_ota/components/ota_https/test_server/README.md create mode 100644 firmware/components/esp_hosted/examples/host_performs_slave_ota/components/ota_https/test_server/create_https_server.py create mode 100644 firmware/components/esp_hosted/examples/host_performs_slave_ota/components/ota_https/test_server/create_self_signed_certs.sh create mode 100644 firmware/components/esp_hosted/examples/host_performs_slave_ota/components/ota_littlefs/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_performs_slave_ota/components/ota_littlefs/ota_littlefs.c create mode 100644 firmware/components/esp_hosted/examples/host_performs_slave_ota/components/ota_littlefs/ota_littlefs.h create mode 100644 firmware/components/esp_hosted/examples/host_performs_slave_ota/components/ota_littlefs/slave_fw_bin/.gitkeep create mode 100644 firmware/components/esp_hosted/examples/host_performs_slave_ota/components/ota_littlefs/slave_fw_bin/README.md create mode 100644 firmware/components/esp_hosted/examples/host_performs_slave_ota/components/ota_partition/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_performs_slave_ota/components/ota_partition/ota_partition.c create mode 100644 firmware/components/esp_hosted/examples/host_performs_slave_ota/components/ota_partition/ota_partition.h create mode 100644 firmware/components/esp_hosted/examples/host_performs_slave_ota/components/ota_partition/slave_fw_bin/.gitkeep create mode 100644 firmware/components/esp_hosted/examples/host_performs_slave_ota/components/ota_partition/slave_fw_bin/README.md create mode 100644 firmware/components/esp_hosted/examples/host_performs_slave_ota/main/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_performs_slave_ota/main/Kconfig.projbuild create mode 100644 firmware/components/esp_hosted/examples/host_performs_slave_ota/main/idf_component.yml create mode 100644 firmware/components/esp_hosted/examples/host_performs_slave_ota/main/main.c create mode 100644 firmware/components/esp_hosted/examples/host_performs_slave_ota/partitions.csv create mode 100644 firmware/components/esp_hosted/examples/host_performs_slave_ota/sdkconfig.defaults create mode 100644 firmware/components/esp_hosted/examples/host_sdcard_with_hosted/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_sdcard_with_hosted/README.md create mode 100644 firmware/components/esp_hosted/examples/host_sdcard_with_hosted/main/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_sdcard_with_hosted/main/Kconfig.projbuild create mode 100644 firmware/components/esp_hosted/examples/host_sdcard_with_hosted/main/esp_hosted_wifi.c create mode 100644 firmware/components/esp_hosted/examples/host_sdcard_with_hosted/main/esp_hosted_wifi.h create mode 100644 firmware/components/esp_hosted/examples/host_sdcard_with_hosted/main/idf_component.yml create mode 100644 firmware/components/esp_hosted/examples/host_sdcard_with_hosted/main/sd_card_example_common.h create mode 100644 firmware/components/esp_hosted/examples/host_sdcard_with_hosted/main/sd_card_example_main.c create mode 100644 firmware/components/esp_hosted/examples/host_sdcard_with_hosted/main/sd_card_functions.c create mode 100644 firmware/components/esp_hosted/examples/host_sdcard_with_hosted/main/sd_card_functions.h create mode 100644 firmware/components/esp_hosted/examples/host_sdcard_with_hosted/pytest_sdmmc_card_example.py create mode 100644 firmware/components/esp_hosted/examples/host_sdcard_with_hosted/sdkconfig.ci create mode 100644 firmware/components/esp_hosted/examples/host_sdcard_with_hosted/sdkconfig.defaults create mode 100644 firmware/components/esp_hosted/examples/host_sdcard_with_hosted/sdkconfig.defaults.esp32p4 create mode 100644 firmware/components/esp_hosted/examples/host_shuts_down_slave_to_power_save/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_shuts_down_slave_to_power_save/README.md create mode 100644 firmware/components/esp_hosted/examples/host_shuts_down_slave_to_power_save/main/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_shuts_down_slave_to_power_save/main/idf_component.yml create mode 100644 firmware/components/esp_hosted/examples/host_shuts_down_slave_to_power_save/main/main.c create mode 100644 firmware/components/esp_hosted/examples/host_shuts_down_slave_to_power_save/main/memory_debug.c create mode 100644 firmware/components/esp_hosted/examples/host_shuts_down_slave_to_power_save/main/memory_debug.h create mode 100644 firmware/components/esp_hosted/examples/host_shuts_down_slave_to_power_save/sdkconfig.defaults create mode 100644 firmware/components/esp_hosted/examples/host_transport_config/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_transport_config/README.md create mode 100644 firmware/components/esp_hosted/examples/host_transport_config/main/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_transport_config/main/idf_component.yml create mode 100644 firmware/components/esp_hosted/examples/host_transport_config/main/transport_config_main.c create mode 100644 firmware/components/esp_hosted/examples/host_transport_config/sdkconfig.defaults create mode 100644 firmware/components/esp_hosted/examples/host_wifi_easy_connect_dpp_enrollee/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_wifi_easy_connect_dpp_enrollee/README.md create mode 100644 firmware/components/esp_hosted/examples/host_wifi_easy_connect_dpp_enrollee/main/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_wifi_easy_connect_dpp_enrollee/main/Kconfig.projbuild create mode 100644 firmware/components/esp_hosted/examples/host_wifi_easy_connect_dpp_enrollee/main/dpp_enrollee_main.c create mode 100644 firmware/components/esp_hosted/examples/host_wifi_easy_connect_dpp_enrollee/main/idf_component.yml create mode 100644 firmware/components/esp_hosted/examples/host_wifi_easy_connect_dpp_enrollee/sdkconfig.defaults create mode 100644 firmware/components/esp_hosted/examples/host_wifi_easy_connect_dpp_enrollee/sdkconfig.defaults.esp32p4 create mode 100644 firmware/components/esp_hosted/examples/host_wifi_itwt/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_wifi_itwt/README.md create mode 100644 firmware/components/esp_hosted/examples/host_wifi_itwt/main/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_wifi_itwt/main/Kconfig.projbuild create mode 100644 firmware/components/esp_hosted/examples/host_wifi_itwt/main/idf_component.yml create mode 100644 firmware/components/esp_hosted/examples/host_wifi_itwt/main/itwt_main.c create mode 100644 firmware/components/esp_hosted/examples/host_wifi_itwt/main/wifi_cmd.h create mode 100644 firmware/components/esp_hosted/examples/host_wifi_itwt/main/wifi_itwt_cmd.c create mode 100644 firmware/components/esp_hosted/examples/host_wifi_itwt/main/wifi_stats_cmd.c create mode 100644 firmware/components/esp_hosted/examples/host_wifi_itwt/sdkconfig.defaults create mode 100644 firmware/components/esp_hosted/examples/host_wifi_itwt/sdkconfig.defaults.esp32p4 create mode 100644 firmware/components/esp_hosted/examples/host_zigbee_thermostat/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_zigbee_thermostat/README.md create mode 100644 firmware/components/esp_hosted/examples/host_zigbee_thermostat/main/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/examples/host_zigbee_thermostat/main/Kconfig.projbuild create mode 100644 firmware/components/esp_hosted/examples/host_zigbee_thermostat/main/alarm_timer.c create mode 100644 firmware/components/esp_hosted/examples/host_zigbee_thermostat/main/alarm_timer.h create mode 100644 firmware/components/esp_hosted/examples/host_zigbee_thermostat/main/esp_hosted_openthread_app.c create mode 100644 firmware/components/esp_hosted/examples/host_zigbee_thermostat/main/esp_hosted_openthread_app.h create mode 100644 firmware/components/esp_hosted/examples/host_zigbee_thermostat/main/idf_component.yml create mode 100644 firmware/components/esp_hosted/examples/host_zigbee_thermostat/main/switch_driver.c create mode 100644 firmware/components/esp_hosted/examples/host_zigbee_thermostat/main/switch_driver.h create mode 100644 firmware/components/esp_hosted/examples/host_zigbee_thermostat/main/thermostat.c create mode 100644 firmware/components/esp_hosted/examples/host_zigbee_thermostat/main/thermostat.h create mode 100644 firmware/components/esp_hosted/examples/host_zigbee_thermostat/partitions.csv create mode 100644 firmware/components/esp_hosted/examples/host_zigbee_thermostat/sdkconfig.defaults create mode 100644 firmware/components/esp_hosted/examples/host_zigbee_thermostat/sdkconfig.mbedtls_minimal create mode 100644 firmware/components/esp_hosted/host/api/include/esp_hosted_api_types.h create mode 100644 firmware/components/esp_hosted/host/api/include/esp_hosted_cp_ext_coex.h create mode 100644 firmware/components/esp_hosted/host/api/include/esp_hosted_cp_gpio.h create mode 100644 firmware/components/esp_hosted/host/api/include/esp_hosted_openthread.h create mode 100644 firmware/components/esp_hosted/host/api/include/esp_hosted_ota.h create mode 100644 firmware/components/esp_hosted/host/api/include/esp_hosted_power_save.h create mode 100644 firmware/components/esp_hosted/host/api/include/esp_hosted_transport_config.h create mode 100644 firmware/components/esp_hosted/host/api/include/esp_hosted_wifi_remote_glue.h create mode 100644 firmware/components/esp_hosted/host/api/priv/esp_hosted_api_priv.h create mode 100644 firmware/components/esp_hosted/host/api/src/esp_hosted_api.c create mode 100644 firmware/components/esp_hosted/host/api/src/esp_hosted_ota_api.c create mode 100644 firmware/components/esp_hosted/host/api/src/esp_hosted_transport_config.c create mode 100644 firmware/components/esp_hosted/host/api/src/esp_wifi_weak.c create mode 100644 firmware/components/esp_hosted/host/drivers/bt/hci_drv.h create mode 100644 firmware/components/esp_hosted/host/drivers/bt/hci_stub_drv.c create mode 100644 firmware/components/esp_hosted/host/drivers/bt/vhci_drv.c create mode 100644 firmware/components/esp_hosted/host/drivers/power_save/power_save_drv.c create mode 100644 firmware/components/esp_hosted/host/drivers/power_save/power_save_drv.h create mode 100644 firmware/components/esp_hosted/host/drivers/rpc/core/rpc_core.c create mode 100644 firmware/components/esp_hosted/host/drivers/rpc/core/rpc_core.h create mode 100644 firmware/components/esp_hosted/host/drivers/rpc/core/rpc_evt.c create mode 100644 firmware/components/esp_hosted/host/drivers/rpc/core/rpc_req.c create mode 100644 firmware/components/esp_hosted/host/drivers/rpc/core/rpc_rsp.c create mode 100644 firmware/components/esp_hosted/host/drivers/rpc/core/rpc_utils.c create mode 100644 firmware/components/esp_hosted/host/drivers/rpc/core/rpc_utils.h create mode 100644 firmware/components/esp_hosted/host/drivers/rpc/slaveif/rpc_slave_if.c create mode 100644 firmware/components/esp_hosted/host/drivers/rpc/slaveif/rpc_slave_if.h create mode 100644 firmware/components/esp_hosted/host/drivers/rpc/wrap/rpc_wrap.c create mode 100644 firmware/components/esp_hosted/host/drivers/rpc/wrap/rpc_wrap.h create mode 100644 firmware/components/esp_hosted/host/drivers/serial/serial_drv.c create mode 100644 firmware/components/esp_hosted/host/drivers/serial/serial_drv.h create mode 100644 firmware/components/esp_hosted/host/drivers/serial/serial_ll_if.c create mode 100644 firmware/components/esp_hosted/host/drivers/serial/serial_ll_if.h create mode 100644 firmware/components/esp_hosted/host/drivers/transport/sdio/sdio_drv.c create mode 100644 firmware/components/esp_hosted/host/drivers/transport/sdio/sdio_drv.h create mode 100644 firmware/components/esp_hosted/host/drivers/transport/sdio/sdio_reg.h create mode 100644 firmware/components/esp_hosted/host/drivers/transport/spi/spi_drv.c create mode 100644 firmware/components/esp_hosted/host/drivers/transport/spi/spi_drv.h create mode 100644 firmware/components/esp_hosted/host/drivers/transport/spi_hd/spi_hd_drv.c create mode 100644 firmware/components/esp_hosted/host/drivers/transport/spi_hd/spi_hd_drv.h create mode 100644 firmware/components/esp_hosted/host/drivers/transport/transport_drv.c create mode 100644 firmware/components/esp_hosted/host/drivers/transport/transport_drv.h create mode 100644 firmware/components/esp_hosted/host/drivers/transport/transport_util.c create mode 100644 firmware/components/esp_hosted/host/drivers/transport/transport_util.h create mode 100644 firmware/components/esp_hosted/host/drivers/transport/uart/uart_drv.c create mode 100644 firmware/components/esp_hosted/host/drivers/virtual_serial_if/serial_if.c create mode 100644 firmware/components/esp_hosted/host/drivers/virtual_serial_if/serial_if.h create mode 100644 firmware/components/esp_hosted/host/esp_hosted.h create mode 100644 firmware/components/esp_hosted/host/esp_hosted_bluedroid.h create mode 100644 firmware/components/esp_hosted/host/esp_hosted_bt.h create mode 100644 firmware/components/esp_hosted/host/esp_hosted_event.h create mode 100644 firmware/components/esp_hosted/host/esp_hosted_host_fw_ver.h create mode 100644 firmware/components/esp_hosted/host/esp_hosted_misc.h create mode 100644 firmware/components/esp_hosted/host/esp_hosted_misc_types.h create mode 100644 firmware/components/esp_hosted/host/esp_hosted_os_abstraction.h create mode 100644 firmware/components/esp_hosted/host/port/esp/freertos/include/port_esp_hosted_host_bt_config.h create mode 100644 firmware/components/esp_hosted/host/port/esp/freertos/include/port_esp_hosted_host_config.h create mode 100644 firmware/components/esp_hosted/host/port/esp/freertos/include/port_esp_hosted_host_log.h create mode 100644 firmware/components/esp_hosted/host/port/esp/freertos/include/port_esp_hosted_host_openthread.h create mode 100644 firmware/components/esp_hosted/host/port/esp/freertos/include/port_esp_hosted_host_os.h create mode 100644 firmware/components/esp_hosted/host/port/esp/freertos/include/port_esp_hosted_host_sdio.h create mode 100644 firmware/components/esp_hosted/host/port/esp/freertos/include/port_esp_hosted_host_spi.h create mode 100644 firmware/components/esp_hosted/host/port/esp/freertos/include/port_esp_hosted_host_spi_hd.h create mode 100644 firmware/components/esp_hosted/host/port/esp/freertos/include/port_esp_hosted_host_uart.h create mode 100644 firmware/components/esp_hosted/host/port/esp/freertos/include/port_esp_hosted_host_wifi_config.h create mode 100644 firmware/components/esp_hosted/host/port/esp/freertos/src/port_esp_hosted_host_init.c create mode 100644 firmware/components/esp_hosted/host/port/esp/freertos/src/port_esp_hosted_host_os.c create mode 100644 firmware/components/esp_hosted/host/port/esp/freertos/src/port_esp_hosted_host_ot_util.c create mode 100644 firmware/components/esp_hosted/host/port/esp/freertos/src/port_esp_hosted_host_sdio.c create mode 100644 firmware/components/esp_hosted/host/port/esp/freertos/src/port_esp_hosted_host_spi.c create mode 100644 firmware/components/esp_hosted/host/port/esp/freertos/src/port_esp_hosted_host_spi_hd.c create mode 100644 firmware/components/esp_hosted/host/port/esp/freertos/src/port_esp_hosted_host_transport_defaults.c create mode 100644 firmware/components/esp_hosted/host/port/esp/freertos/src/port_esp_hosted_host_uart.c create mode 100644 firmware/components/esp_hosted/host/utils/stats.c create mode 100644 firmware/components/esp_hosted/host/utils/stats.h create mode 100644 firmware/components/esp_hosted/idf_component.yml create mode 100644 firmware/components/esp_hosted/sdkconfig.ci.all_features_enabled create mode 100644 firmware/components/esp_hosted/sdkconfig.rename create mode 100644 firmware/components/esp_hosted/slave/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/slave/README.md create mode 100644 firmware/components/esp_hosted/slave/main/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/slave/main/Kconfig.light_sleep create mode 100644 firmware/components/esp_hosted/slave/main/Kconfig.openthread create mode 100644 firmware/components/esp_hosted/slave/main/Kconfig.projbuild create mode 100644 firmware/components/esp_hosted/slave/main/common/esp_hosted_header.h create mode 100644 firmware/components/esp_hosted/slave/main/common/esp_hosted_interface.h create mode 100644 firmware/components/esp_hosted/slave/main/common/esp_hosted_lwip_src_port_hook.h create mode 100644 firmware/components/esp_hosted/slave/main/common/log/esp_hosted_log.h create mode 100644 firmware/components/esp_hosted/slave/main/common/mempool/include/mempool.h create mode 100644 firmware/components/esp_hosted/slave/main/common/mempool/mempool.c create mode 100644 firmware/components/esp_hosted/slave/main/common/mempool/mempool_ll.c create mode 100644 firmware/components/esp_hosted/slave/main/common/mempool/mempool_ll.h create mode 100644 firmware/components/esp_hosted/slave/main/common/proto/README.md create mode 100644 firmware/components/esp_hosted/slave/main/common/proto/esp_hosted_rpc.pb-c.c create mode 100644 firmware/components/esp_hosted/slave/main/common/proto/esp_hosted_rpc.pb-c.h create mode 100644 firmware/components/esp_hosted/slave/main/common/proto/esp_hosted_rpc.proto create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/.commit_docs.sh create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/.gitignore create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/CONTRIBUTING.md create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/ChangeLog create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/Doxyfile.in create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/DoxygenLayout.xml create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/LICENSE create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/Makefile.am create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/README.md create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/TODO create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/autogen.sh create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/build-cmake/.gitignore create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/build-cmake/CMakeLists.txt create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/configure.ac create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/m4/.gitignore create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/m4/ax_check_compile_flag.m4 create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/m4/ax_cxx_compile_stdcxx.m4 create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/m4/code_coverage.m4 create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/m4/ld-version-script.m4 create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/m4/pkg.m4 create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/m4/valgrind-tests.m4 create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/protobuf-c/libprotobuf-c.pc.in create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/protobuf-c/libprotobuf-c.sym create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/protobuf-c/protobuf-c.c create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/protobuf-c/protobuf-c.h create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/protobuf-c/protobuf-c.proto create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/protoc-c/c_bytes_field.cc create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/protoc-c/c_bytes_field.h create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/protoc-c/c_enum.cc create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/protoc-c/c_enum.h create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/protoc-c/c_enum_field.cc create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/protoc-c/c_enum_field.h create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/protoc-c/c_extension.cc create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/protoc-c/c_extension.h create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/protoc-c/c_field.cc create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/protoc-c/c_field.h create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/protoc-c/c_file.cc create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/protoc-c/c_file.h create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/protoc-c/c_generator.cc create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/protoc-c/c_generator.h create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/protoc-c/c_helpers.cc create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/protoc-c/c_helpers.h create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/protoc-c/c_message.cc create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/protoc-c/c_message.h create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/protoc-c/c_message_field.cc create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/protoc-c/c_message_field.h create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/protoc-c/c_primitive_field.cc create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/protoc-c/c_primitive_field.h create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/protoc-c/c_service.cc create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/protoc-c/c_service.h create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/protoc-c/c_string_field.cc create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/protoc-c/c_string_field.h create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/protoc-c/main.cc create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/t/README create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/t/generated-code/test-generated-code.c create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/t/generated-code2/common-test-arrays.h create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/t/generated-code2/cxx-generate-packed-data.cc create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/t/generated-code2/test-generated-code2.c create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/t/issue204/.gitignore create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/t/issue204/issue204.c create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/t/issue204/issue204.proto create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/t/issue220/.gitignore create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/t/issue220/issue220.c create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/t/issue220/issue220.proto create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/t/issue251/.gitignore create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/t/issue251/issue251.c create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/t/issue251/issue251.proto create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/t/issue330/.gitignore create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/t/issue330/issue330.c create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/t/issue330/issue330.proto create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/t/issue375/.gitignore create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/t/issue375/issue375.c create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/t/issue375/issue375.proto create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/t/issue389/issue389.proto create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/t/issue440/.gitignore create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/t/issue440/issue440.c create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/t/issue440/issue440.proto create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/t/test-full.proto create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/t/test-optimized.proto create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/t/test-proto3.proto create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/t/test.proto create mode 100644 firmware/components/esp_hosted/slave/main/common/protobuf-c/t/version/version.c create mode 100644 firmware/components/esp_hosted/slave/main/common/rpc/esp_hosted_bitmasks.h create mode 100644 firmware/components/esp_hosted/slave/main/common/rpc/esp_hosted_rpc.h create mode 100644 firmware/components/esp_hosted/slave/main/common/transport/esp_hosted_transport.h create mode 100644 firmware/components/esp_hosted/slave/main/common/transport/esp_hosted_transport_init.h create mode 100644 firmware/components/esp_hosted/slave/main/common/transport/esp_hosted_transport_spi_hd.h create mode 100644 firmware/components/esp_hosted/slave/main/common/utils/esp_hosted_cli.c create mode 100644 firmware/components/esp_hosted/slave/main/common/utils/esp_hosted_cli.h create mode 100644 firmware/components/esp_hosted/slave/main/esp_hosted_coprocessor.c create mode 100644 firmware/components/esp_hosted/slave/main/esp_hosted_coprocessor.h create mode 100644 firmware/components/esp_hosted/slave/main/esp_hosted_coprocessor_fw_ver.h create mode 100644 firmware/components/esp_hosted/slave/main/esp_hosted_peer_data.h create mode 100644 firmware/components/esp_hosted/slave/main/example_http_client.c create mode 100644 firmware/components/esp_hosted/slave/main/example_http_client.h create mode 100644 firmware/components/esp_hosted/slave/main/example_light_sleep.c create mode 100644 firmware/components/esp_hosted/slave/main/example_light_sleep.h create mode 100644 firmware/components/esp_hosted/slave/main/example_mqtt_client.c create mode 100644 firmware/components/esp_hosted/slave/main/example_mqtt_client.h create mode 100644 firmware/components/esp_hosted/slave/main/example_peer_data_transfer.c create mode 100644 firmware/components/esp_hosted/slave/main/example_peer_data_transfer.h create mode 100644 firmware/components/esp_hosted/slave/main/host_power_save.c create mode 100644 firmware/components/esp_hosted/slave/main/host_power_save.h create mode 100644 firmware/components/esp_hosted/slave/main/idf_component.yml create mode 100644 firmware/components/esp_hosted/slave/main/interface.h create mode 100644 firmware/components/esp_hosted/slave/main/memdump.h create mode 100644 firmware/components/esp_hosted/slave/main/nw_split_router.c create mode 100644 firmware/components/esp_hosted/slave/main/nw_split_router.h create mode 100644 firmware/components/esp_hosted/slave/main/protocomm_pserial.c create mode 100644 firmware/components/esp_hosted/slave/main/protocomm_pserial.h create mode 100644 firmware/components/esp_hosted/slave/main/sdio_slave_api.c create mode 100644 firmware/components/esp_hosted/slave/main/sdio_slave_api.h create mode 100644 firmware/components/esp_hosted/slave/main/slave_bt.c create mode 100644 firmware/components/esp_hosted/slave/main/slave_bt.h create mode 100644 firmware/components/esp_hosted/slave/main/slave_bt_uart.h create mode 100644 firmware/components/esp_hosted/slave/main/slave_bt_uart_esp32.c create mode 100644 firmware/components/esp_hosted/slave/main/slave_bt_uart_esp32c3_s3.c create mode 100644 firmware/components/esp_hosted/slave/main/slave_bt_uart_esp32xx.c create mode 100644 firmware/components/esp_hosted/slave/main/slave_config.h create mode 100644 firmware/components/esp_hosted/slave/main/slave_control.c create mode 100644 firmware/components/esp_hosted/slave/main/slave_control.h create mode 100644 firmware/components/esp_hosted/slave/main/slave_ext_coex.c create mode 100644 firmware/components/esp_hosted/slave/main/slave_ext_coex.h create mode 100644 firmware/components/esp_hosted/slave/main/slave_gpio_expander.c create mode 100644 firmware/components/esp_hosted/slave/main/slave_gpio_expander.h create mode 100644 firmware/components/esp_hosted/slave/main/slave_light_sleep.c create mode 100644 firmware/components/esp_hosted/slave/main/slave_light_sleep.h create mode 100644 firmware/components/esp_hosted/slave/main/slave_network_split.c create mode 100644 firmware/components/esp_hosted/slave/main/slave_network_split.h create mode 100644 firmware/components/esp_hosted/slave/main/slave_openthread.c create mode 100644 firmware/components/esp_hosted/slave/main/slave_openthread.h create mode 100644 firmware/components/esp_hosted/slave/main/slave_transport_gpio_pin_guard.c create mode 100644 firmware/components/esp_hosted/slave/main/slave_transport_gpio_pin_guard.h create mode 100644 firmware/components/esp_hosted/slave/main/slave_util.c create mode 100644 firmware/components/esp_hosted/slave/main/slave_util.h create mode 100644 firmware/components/esp_hosted/slave/main/slave_wifi_config.h create mode 100644 firmware/components/esp_hosted/slave/main/slave_wifi_enterprise.c create mode 100644 firmware/components/esp_hosted/slave/main/slave_wifi_enterprise.h create mode 100644 firmware/components/esp_hosted/slave/main/slave_wifi_std.c create mode 100644 firmware/components/esp_hosted/slave/main/slave_wifi_std.h create mode 100644 firmware/components/esp_hosted/slave/main/spi_hd_slave_api.c create mode 100644 firmware/components/esp_hosted/slave/main/spi_slave_api.c create mode 100644 firmware/components/esp_hosted/slave/main/stats.c create mode 100644 firmware/components/esp_hosted/slave/main/stats.h create mode 100644 firmware/components/esp_hosted/slave/main/uart_slave_api.c create mode 100644 firmware/components/esp_hosted/slave/partitions.esp32.csv create mode 100644 firmware/components/esp_hosted/slave/partitions.esp32c2.csv create mode 100644 firmware/components/esp_hosted/slave/partitions.esp32c3.csv create mode 100644 firmware/components/esp_hosted/slave/partitions.esp32c5.csv create mode 100644 firmware/components/esp_hosted/slave/partitions.esp32c6.csv create mode 100644 firmware/components/esp_hosted/slave/partitions.esp32c61.csv create mode 100644 firmware/components/esp_hosted/slave/partitions.esp32h2.csv create mode 100644 firmware/components/esp_hosted/slave/partitions.esp32h4.csv create mode 100644 firmware/components/esp_hosted/slave/partitions.esp32s2.csv create mode 100644 firmware/components/esp_hosted/slave/partitions.esp32s3.csv create mode 100644 firmware/components/esp_hosted/slave/sdkconfig.ci.all_features create mode 100644 firmware/components/esp_hosted/slave/sdkconfig.ci.dpp create mode 100644 firmware/components/esp_hosted/slave/sdkconfig.ci.openthread_rcp create mode 100644 firmware/components/esp_hosted/slave/sdkconfig.ci.sdio create mode 100644 firmware/components/esp_hosted/slave/sdkconfig.ci.spi create mode 100644 firmware/components/esp_hosted/slave/sdkconfig.ci.spi_hd create mode 100644 firmware/components/esp_hosted/slave/sdkconfig.ci.uart create mode 100644 firmware/components/esp_hosted/slave/sdkconfig.ci.wifi_enterprise create mode 100644 firmware/components/esp_hosted/slave/sdkconfig.defaults create mode 100644 firmware/components/esp_hosted/slave/sdkconfig.defaults.esp32 create mode 100644 firmware/components/esp_hosted/slave/sdkconfig.defaults.esp32c2 create mode 100644 firmware/components/esp_hosted/slave/sdkconfig.defaults.esp32c3 create mode 100644 firmware/components/esp_hosted/slave/sdkconfig.defaults.esp32c5 create mode 100644 firmware/components/esp_hosted/slave/sdkconfig.defaults.esp32c6 create mode 100644 firmware/components/esp_hosted/slave/sdkconfig.defaults.esp32c61 create mode 100644 firmware/components/esp_hosted/slave/sdkconfig.defaults.esp32h2 create mode 100644 firmware/components/esp_hosted/slave/sdkconfig.defaults.esp32h4 create mode 100644 firmware/components/esp_hosted/slave/sdkconfig.defaults.esp32s2 create mode 100644 firmware/components/esp_hosted/slave/sdkconfig.defaults.esp32s3 create mode 100644 firmware/components/esp_hosted/slave/sdkconfig.rename create mode 100644 firmware/components/esp_hosted/tools/check_changelog.py create mode 100644 firmware/components/esp_hosted/tools/check_copyright_config.yaml create mode 100644 firmware/components/esp_hosted/tools/check_fw_versions.py create mode 100644 firmware/components/esp_hosted/tools/check_rpc_calls.py create mode 100644 firmware/components/esp_hosted/tools/check_weak_functions.py diff --git a/firmware/components/esp_hosted/.codespellrc b/firmware/components/esp_hosted/.codespellrc new file mode 100644 index 0000000..a54a533 --- /dev/null +++ b/firmware/components/esp_hosted/.codespellrc @@ -0,0 +1,4 @@ +[codespell] +skip = build,*.drawio,*.svg,*.pdf,common/proto/esp_hosted_rpc.pb-c.*,slave/main/esp_hosted_coprocessor_fw_ver.h,host/esp_hosted_host_fw_ver.h +ignore-words-list = rsource,INDX,ans,aNULL,aci,DEACTIVE,OT,ot +write-changes = true diff --git a/firmware/components/esp_hosted/.component_hash b/firmware/components/esp_hosted/.component_hash new file mode 100644 index 0000000..4173cd7 --- /dev/null +++ b/firmware/components/esp_hosted/.component_hash @@ -0,0 +1 @@ +f970ce453bcd6e779e067de04488aa6212295f4a607f041d038844c8cf8edea3 \ No newline at end of file diff --git a/firmware/components/esp_hosted/.editorconfig b/firmware/components/esp_hosted/.editorconfig new file mode 100644 index 0000000..10b3843 --- /dev/null +++ b/firmware/components/esp_hosted/.editorconfig @@ -0,0 +1,24 @@ +# EditorConfig helps developers define and maintain consistent +# coding styles between different editors and IDEs +# http://editorconfig.org + +root = true + +# Default configuration for all files +# - tabs for indentation +[*] +indent_style = tab +indent_size = 4 +end_of_line = lf +charset = utf-8 +trim_trailing_whitespace = true +insert_final_newline = true + +# Some Mermaid diagram commands need to end with a trailing whitespace in Markdown files +[*.md] +trim_trailing_whitespace = false + +# Use two spaces for YAML files +[{*.yml,*.yaml}] +indent_style = space +indent_size = 2 diff --git a/firmware/components/esp_hosted/.gitignore b/firmware/components/esp_hosted/.gitignore new file mode 100644 index 0000000..030c24e --- /dev/null +++ b/firmware/components/esp_hosted/.gitignore @@ -0,0 +1,5 @@ +build +dependencies.lock +managed_components +sdkconfig +sdkconfig.old diff --git a/firmware/components/esp_hosted/.gitlab-ci-override-idf-component.yml b/firmware/components/esp_hosted/.gitlab-ci-override-idf-component.yml new file mode 100644 index 0000000..54e7717 --- /dev/null +++ b/firmware/components/esp_hosted/.gitlab-ci-override-idf-component.yml @@ -0,0 +1,5 @@ + espressif/esp_hosted: + version: ">=1.0" + override_path: "${OVERRIDE_PATH}" + rules: + - if: "target in [esp32p4, esp32h2]" diff --git a/firmware/components/esp_hosted/.gitlab/ci/pre_commit.yml b/firmware/components/esp_hosted/.gitlab/ci/pre_commit.yml new file mode 100644 index 0000000..a87ed4b --- /dev/null +++ b/firmware/components/esp_hosted/.gitlab/ci/pre_commit.yml @@ -0,0 +1,31 @@ +.check_pre_commit_template: + stage: pre + image: python:3.8 + tags: + - build + rules: + - if: $CI_PIPELINE_SOURCE == "merge_request_event" + script: + - python3 -m venv .venv + - source .venv/bin/activate + - pip install --upgrade pip + - pip install pre-commit + - git fetch origin $CI_MERGE_REQUEST_TARGET_BRANCH_NAME --depth=1 + - git fetch origin $CI_COMMIT_REF_NAME --depth=1 + - | + echo "Target branch: $CI_MERGE_REQUEST_TARGET_BRANCH_NAME" + echo "Source branch: $CI_COMMIT_REF_NAME" + + MODIFIED_FILES=$(git diff --name-only origin/$CI_MERGE_REQUEST_TARGET_BRANCH_NAME..origin/$CI_COMMIT_REF_NAME) + echo "Modified files to check:" + echo "$MODIFIED_FILES" + + if [ -n "$MODIFIED_FILES" ]; then + CI=true pre-commit run --files $MODIFIED_FILES + else + echo "No modified files to check." + fi + +check_pre_commit: + extends: + - .check_pre_commit_template diff --git a/firmware/components/esp_hosted/.gitlab/ci/regression_pipeline_jobs.yml b/firmware/components/esp_hosted/.gitlab/ci/regression_pipeline_jobs.yml new file mode 100644 index 0000000..abad196 --- /dev/null +++ b/firmware/components/esp_hosted/.gitlab/ci/regression_pipeline_jobs.yml @@ -0,0 +1,354 @@ +# Holds jobs that run before promoting to main branch + +### Notes: +# IDF v5.3 and v5.3.1 do not build for P4 +# - fix only merged for v5.3.2 and above +# - https://github.com/espressif/esp-idf/commit/1aec9e7df38bb7ccc9ec2fb846288910c329d77a + +### IDF master and v6.x don't build mqtt example with wifi-remote and ESP-Hosted +### so we only verify mqtt example against earlier IDF +regression_build_idf_v5.3_mqtt_h2: + variables: + EXAMPLE_CI_FILE: "sdkconfig.ci.p4_wifi" + tags: + - build + rules: + - !reference [.staging_branch_rules, rules] + extends: .build_template_example_mqtt + image: espressif/idf:${IDF_VER} + parallel: + matrix: + - IDF_VER: ["v5.3", "v5.3.1", "v5.3.2", "v5.3.3", "v5.3.4", "v5.3.5", "release-v5.3"] + IDF_TARGET: ["esp32h2"] + IDF_SLAVE_TARGET: ["esp32c6"] + +regression_build_idf_v5.3_mqtt_p4: + variables: + EXAMPLE_CI_FILE: "sdkconfig.ci.p4_wifi" + tags: + - build + rules: + - !reference [.staging_branch_rules, rules] + extends: .build_template_example_mqtt + image: espressif/idf:${IDF_VER} + parallel: + matrix: + - IDF_VER: ["v5.3.2", "v5.3.3", "v5.3.4", "v5.3.5", "release-v5.3"] + IDF_TARGET: ["esp32p4"] + IDF_SLAVE_TARGET: ["esp32c6"] + +regression_build_idf_v5.4_mqtt: + variables: + EXAMPLE_CI_FILE: "sdkconfig.ci.p4_wifi" + tags: + - build + rules: + - !reference [.staging_branch_rules, rules] + extends: .build_template_example_mqtt + image: espressif/idf:${IDF_VER} + parallel: + matrix: + - IDF_VER: ["v5.4", "v5.4.1", "v5.4.2", "v5.4.3", "v5.4.4", "release-v5.4"] + IDF_TARGET: ["esp32p4", "esp32h2"] + IDF_SLAVE_TARGET: ["esp32c6"] + +regression_build_idf_v5.5_iperf: + tags: + - build + rules: + - !reference [.staging_branch_rules, rules] + extends: .build_template + image: espressif/idf:${IDF_VER} + parallel: + matrix: + - IDF_VER: ["v5.5", "v5.5.1", "v5.5.2", "v5.5.3", "release-v5.5"] + IDF_TARGET: ["esp32p4", "esp32h2"] + IDF_SLAVE_TARGET: ["esp32", "esp32c2", "esp32c3", "esp32s3" ] + IDF_EXAMPLE_PATH: ["examples/wifi/iperf"] + +regression_build_idf_master_iperf: + tags: + - build + rules: + - !reference [.staging_branch_rules, rules] + extends: .build_template + image: espressif/idf:latest + parallel: + matrix: + - IDF_TARGET: ["esp32p4", "esp32h2"] + IDF_SLAVE_TARGET: ["esp32", "esp32c2", "esp32c3", "esp32s3" ] + IDF_EXAMPLE_PATH: ["examples/wifi/iperf"] + +regression_build_coprocessor_idf_v5.3_pt1: + tags: + - build + rules: + - !reference [.staging_branch_rules, rules] + extends: .build_template_coprocessor + image: espressif/idf:${IDF_VER} + parallel: + matrix: + - IDF_TARGET: ["esp32c6"] + IDF_VER: ["v5.3", "v5.3.1", "v5.3.2", "v5.3.3", "v5.3.4", "v5.3.5", "release-v5.3"] + SLAVE_CI_FILE: ["sdio", "spi", "spi_hd", "uart", "dpp"] + # override performance optimization to prevent build errors + CONFIG_OVERRIDE: "CONFIG_COMPILER_OPTIMIZATION_DEBUG=y" + +regression_build_coprocessor_idf_v5.3_pt2: + tags: + - build + rules: + - !reference [.staging_branch_rules, rules] + extends: .build_template_coprocessor + image: espressif/idf:${IDF_VER} + parallel: + matrix: + - IDF_TARGET: ["esp32c2", "esp32c3", "esp32s3"] + IDF_VER: ["v5.3", "v5.3.1", "v5.3.2", "v5.3.3", "v5.3.4", "v5.3.5", "release-v5.3"] + SLAVE_CI_FILE: ["spi", "spi_hd", "uart"] + # override performance optimization to prevent build errors + CONFIG_OVERRIDE: "CONFIG_COMPILER_OPTIMIZATION_DEBUG=y" + +regression_build_coprocessor_idf_v5.3_esp32: + tags: + - build + rules: + - !reference [.staging_branch_rules, rules] + extends: .build_template_coprocessor + image: espressif/idf:${IDF_VER} + parallel: + matrix: + - IDF_TARGET: ["esp32"] + IDF_VER: ["v5.3", "v5.3.1", "v5.3.2", "v5.3.3", "v5.3.4", "v5.3.5", "release-v5.3"] + SLAVE_CI_FILE: ["sdio", "spi", "uart"] + # override performance optimization to prevent build errors + CONFIG_OVERRIDE: "CONFIG_COMPILER_OPTIMIZATION_DEBUG=y" + +regression_build_coprocessor_idf_v5.4_pt1: + tags: + - build + rules: + - !reference [.staging_branch_rules, rules] + extends: .build_template_coprocessor + image: espressif/idf:${IDF_VER} + parallel: + matrix: + - IDF_TARGET: ["esp32c6"] + IDF_VER: ["v5.4", "v5.4.1", "v5.4.2", "v5.4.3", "v5.4.4", "release-v5.4"] + SLAVE_CI_FILE: ["sdio", "spi", "spi_hd", "uart", "dpp"] + +regression_build_coprocessor_idf_v5.4_pt2: + tags: + - build + rules: + - !reference [.staging_branch_rules, rules] + extends: .build_template_coprocessor + image: espressif/idf:${IDF_VER} + parallel: + matrix: + - IDF_TARGET: ["esp32c2", "esp32c3", "esp32s3"] + IDF_VER: ["v5.4", "v5.4.1", "v5.4.2", "v5.4.3", "v5.4.4", "release-v5.4"] + SLAVE_CI_FILE: ["spi", "spi_hd", "uart"] + +regression_build_coprocessor_idf_v5.4_esp32: + tags: + - build + rules: + - !reference [.staging_branch_rules, rules] + extends: .build_template_coprocessor + image: espressif/idf:${IDF_VER} + parallel: + matrix: + - IDF_TARGET: ["esp32"] + IDF_VER: ["v5.4", "v5.4.1", "v5.4.2", "v5.4.3", "v5.4.4", "release-v5.4"] + SLAVE_CI_FILE: ["sdio", "spi", "uart"] + +regression_build_coprocessor_idf_v5.5: + tags: + - build + rules: + - !reference [.staging_branch_rules, rules] + extends: .build_template_coprocessor + image: espressif/idf:${IDF_VER} + parallel: + matrix: + - IDF_TARGET: ["esp32c2", "esp32c3", "esp32s3"] + IDF_VER: ["v5.5", "v5.5.1", "v5.5.2", "v5.5.3", "release-v5.5"] + SLAVE_CI_FILE: ["spi", "spi_hd", "uart"] + +regression_build_coprocessor_idf_v5.5_esp32: + tags: + - build + rules: + - !reference [.staging_branch_rules, rules] + extends: .build_template_coprocessor + image: espressif/idf:${IDF_VER} + parallel: + matrix: + - IDF_TARGET: ["esp32"] + IDF_VER: ["v5.5", "v5.5.1", "v5.5.2", "v5.5.3", "release-v5.5"] + SLAVE_CI_FILE: ["sdio", "spi", "uart"] + +regression_build_coprocessor_idf_master_all_features_enabled: + tags: + - build + rules: + - !reference [.staging_branch_rules, rules] + extends: .build_template_coprocessor + image: espressif/idf:latest + parallel: + matrix: + - IDF_TARGET: ["esp32c6"] + SLAVE_CI_FILE: ["all_features"] + +regression_build_nimble_examples_h2: + tags: + - build + rules: + - !reference [.staging_branch_rules, rules] + extends: .build_template_example + image: espressif/idf:${IDF_VER} + parallel: + matrix: + - IDF_TARGET: ["esp32h2"] + IDF_VER: ["v5.4", "v5.4.1", "v5.4.2", "v5.4.3", "release-v5.4", + "v5.3", "v5.3.1", "v5.3.2", "v5.3.3", "v5.3.4", "v5.3.5", "release-v5.3"] + IDF_SLAVE_TARGET: ["esp32c6"] + EXAMPLE_TO_BUILD: ["host_nimble_bleprph_host_only_vhci", + "host_nimble_bleprph_host_only_uart_hci"] + +regression_build_nimble_examples_p4: + tags: + - build + rules: + - !reference [.staging_branch_rules, rules] + extends: .build_template_example + image: espressif/idf:${IDF_VER} + parallel: + matrix: + - IDF_TARGET: ["esp32p4"] + IDF_VER: ["v5.4", "v5.4.1", "v5.4.2", "v5.4.3", "release-v5.4", + "v5.3.2", "v5.3.3", "v5.3.4", "v5.3.5", "release-v5.3"] + IDF_SLAVE_TARGET: ["esp32c6"] + EXAMPLE_TO_BUILD: ["host_nimble_bleprph_host_only_vhci", + "host_nimble_bleprph_host_only_uart_hci"] + +regression_build_bluedroid_examples_h2: + tags: + - build + rules: + - !reference [.staging_branch_rules, rules] + extends: .build_template_example + image: espressif/idf:${IDF_VER} + parallel: + matrix: + - IDF_TARGET: ["esp32h2"] + IDF_VER: ["v5.4", "v5.4.1", "v5.4.2", "v5.4.3", "release-v5.4", + "v5.3", "v5.3.1", "v5.3.2", "v5.3.3", "v5.3.4", "v5.3.5", "release-v5.3"] + IDF_SLAVE_TARGET: ["esp32"] + EXAMPLE_TO_BUILD: ["host_bluedroid_ble_compatibility_test", + "host_bluedroid_bt_hid_mouse_device", + "host_bluedroid_host_only", + "host_bt_controller_mac_addr"] + +regression_build_bluedroid_examples_p4: + tags: + - build + rules: + - !reference [.staging_branch_rules, rules] + extends: .build_template_example + image: espressif/idf:${IDF_VER} + parallel: + matrix: + - IDF_TARGET: ["esp32p4"] + IDF_VER: ["v5.4", "v5.4.1", "v5.4.2", "v5.4.3", "release-v5.4", + "v5.3.2", "v5.3.3", "v5.3.4", "v5.3.5", "release-v5.3"] + IDF_SLAVE_TARGET: ["esp32"] + EXAMPLE_TO_BUILD: ["host_bluedroid_ble_compatibility_test", + "host_bluedroid_bt_hid_mouse_device", + "host_bluedroid_host_only", + "host_bt_controller_mac_addr"] + +regression_build_wifi_examples_h2: + tags: + - build + rules: + - !reference [.staging_branch_rules, rules] + extends: .build_template_example + image: espressif/idf:${IDF_VER} + parallel: + matrix: + - IDF_TARGET: ["esp32h2"] + IDF_VER: ["v5.4", "v5.4.1", "v5.4.2", "v5.4.3", "release-v5.4", + "v5.3", "v5.3.1", "v5.3.2", "v5.3.3", "v5.3.4", "v5.3.5", "release-v5.3"] + IDF_SLAVE_TARGET: ["esp32c6"] + EXAMPLE_TO_BUILD: ["host_wifi_easy_connect_dpp_enrollee", + "host_wifi_itwt", + "host_transport_config", + "host_network_split__power_save"] + +regression_build_wifi_examples_p4: + tags: + - build + rules: + - !reference [.staging_branch_rules, rules] + extends: .build_template_example + image: espressif/idf:${IDF_VER} + parallel: + matrix: + - IDF_TARGET: ["esp32p4"] + IDF_VER: ["v5.4", "v5.4.1", "v5.4.2", "v5.4.3", "release-v5.4", + "v5.3.2", "v5.3.3", "v5.3.4", "v5.3.5", "release-v5.3"] + IDF_SLAVE_TARGET: ["esp32c6"] + EXAMPLE_TO_BUILD: ["host_wifi_easy_connect_dpp_enrollee", + "host_wifi_itwt", + "host_transport_config", + "host_network_split__power_save"] + +# build an example using the various transports +# this is to verify transport builds as expected on the host +# for h2, build only for ESP-IDF v5.3 and v5.3.1 +# for p4, build for other ESP-IDFs +regression_build_transport_examples_h2: + rules: + - !reference [.staging_branch_rules, rules] + extends: .build_template_example + image: espressif/idf:${IDF_VER} + parallel: + matrix: + - IDF_TARGET: ["esp32h2"] + IDF_VER: ["v5.3", "v5.3.1"] + IDF_SLAVE_TARGET: ["esp32c6"] + EXAMPLE_TO_BUILD: ["host_network_split__power_save"] + EXAMPLE_CI_FILE: ["spi", "spi_hd", "uart"] + +regression_build_transport_examples_p4: + rules: + - !reference [.staging_branch_rules, rules] + extends: .build_template_example + image: espressif/idf:${IDF_VER} + parallel: + matrix: + - IDF_TARGET: ["esp32p4"] + IDF_VER: ["v5.4", "v5.4.1", "v5.4.2", "v5.4.3", "release-v5.4", + "v5.3.2", "v5.3.3", "v5.3.4", "v5.3.5", "release-v5.3"] + IDF_SLAVE_TARGET: ["esp32c6"] + EXAMPLE_TO_BUILD: ["host_network_split__power_save"] + EXAMPLE_CI_FILE: ["sdio", "spi", "spi_hd", "uart"] + +regression_build_misc_examples: + tags: + - build + rules: + - !reference [.staging_branch_rules, rules] + extends: .build_template_example + image: espressif/idf:${IDF_VER} + parallel: + matrix: + - IDF_TARGET: ["esp32p4", "esp32h2"] + IDF_VER: ["v5.4", "v5.4.1", "v5.4.2", "v5.4.3", "release-v5.4", + "v5.3.2", "v5.3.3", "v5.3.4", "v5.3.5", "release-v5.3"] + IDF_SLAVE_TARGET: ["esp32c6"] + EXAMPLE_TO_BUILD: ["host_gpio_expander", + "host_peer_data_transfer", + "host_performs_slave_ota"] diff --git a/firmware/components/esp_hosted/.gitlab/ci/rules.yml b/firmware/components/esp_hosted/.gitlab/ci/rules.yml new file mode 100644 index 0000000..ea0bd3d --- /dev/null +++ b/firmware/components/esp_hosted/.gitlab/ci/rules.yml @@ -0,0 +1,26 @@ +# Holds rules for running jobs + +# default rule +# used for running jobs on a merge request to staging +.default_rules: + rules: + - if: $CI_COMMIT_BRANCH == "staging" && $CI_PIPELINE_SOURCE == "push" + when: never + - if: $CI_PIPELINE_SOURCE == "merge_request_event" && $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == "staging" + +# staging branch rule +# used for running regression jobs on staging branch +.staging_branch_rules: + rules: + - if: $CI_PIPELINE_SOURCE == "merge_request_event" + when: never + - if: $CI_COMMIT_BRANCH == "staging" && $CI_PIPELINE_SOURCE == "push" + +# no build rule to disable jobs temporarily +# while testing new build rules +.no_build_rules: + rules: + - if: $CI_PIPELINE_SOURCE == "merge_request_event" + when: never + - if: $CI_COMMIT_BRANCH == "staging" && $CI_PIPELINE_SOURCE == "push" + when: never diff --git a/firmware/components/esp_hosted/.gitlab/ci/sanity_pipeline_jobs.yml b/firmware/components/esp_hosted/.gitlab/ci/sanity_pipeline_jobs.yml new file mode 100644 index 0000000..3b74178 --- /dev/null +++ b/firmware/components/esp_hosted/.gitlab/ci/sanity_pipeline_jobs.yml @@ -0,0 +1,228 @@ +# Holds jobs that run from a merge request + +### +### Check project pre-requisites have been fulfilled +### + +premerge_check: + rules: + - !reference [.default_rules, rules] + extends: .premerge_check_template + image: espressif/idf:latest + +### +### Build host using ESP-IDF examples +### + +### protocols/mqtt example +### IDF master and v6.x don't build mqtt example with wifi-remote and ESP-Hosted +### so we only verify mqtt example against earlier IDF +sanity_build_idf_release_mqtt: + variables: + EXAMPLE_CI_FILE: "sdkconfig.ci.p4_wifi" + rules: + - !reference [.default_rules, rules] + extends: .build_template_example_mqtt + image: espressif/idf:${IDF_VER} + parallel: + matrix: + - IDF_VER: ["release-v5.5"] + IDF_TARGET: ["esp32p4"] + IDF_SLAVE_TARGET: ["esp32c6", "esp32c5"] + +### wifi/iperf example +sanity_build_idf_v5.5_iperf: + rules: + - !reference [.default_rules, rules] + extends: .build_template + image: espressif/idf:${IDF_VER} + parallel: + matrix: + - IDF_VER: ["v5.5.4", "release-v5.5"] + IDF_TARGET: ["esp32p4"] + IDF_SLAVE_TARGET: ["esp32c6", "esp32c5"] + IDF_EXAMPLE_PATH: ["examples/wifi/iperf"] + +sanity_build_idf_master_iperf: + rules: + - !reference [.default_rules, rules] + extends: .build_template + image: espressif/idf:latest + parallel: + matrix: + - IDF_TARGET: ["esp32p4"] + IDF_SLAVE_TARGET: ["esp32c6", "esp32c5", "esp32c61"] + IDF_EXAMPLE_PATH: ["examples/wifi/iperf"] + +### +### Build coprocessor +### + +sanity_build_coprocessor_idf_v5.5: + rules: + - !reference [.default_rules, rules] + extends: .build_template_coprocessor + image: espressif/idf:${IDF_VER} + parallel: + matrix: + - IDF_TARGET: ["esp32c6", "esp32c5"] + IDF_VER: ["v5.5.4", "release-v5.5"] + SLAVE_CI_FILE: ["sdio", "spi", "spi_hd", "uart", "dpp"] + +# verify co-processor targets with Wi-Fi + BT +sanity_build_coprocessor_idf_master: + rules: + - !reference [.default_rules, rules] + extends: .build_template_coprocessor + image: espressif/idf:latest + parallel: + matrix: + - IDF_TARGET: ["esp32c6", "esp32c5", "esp32c61"] + SLAVE_CI_FILE: ["sdio", "spi", "spi_hd", "uart", "dpp"] + +# verify co-processor targets with BT only +sanity_build_coprocessor_idf_master_2: + rules: + - !reference [.default_rules, rules] + extends: .build_template_coprocessor + image: espressif/idf:latest + parallel: + matrix: + - IDF_TARGET: ["esp32h2"] + SLAVE_CI_FILE: ["spi", "spi_hd", "uart"] + +# verify co-processor targets with OpenThread RCP +# v5.5.4 is for Zigbee SDK release +sanity_build_coprocessor_rcp: + rules: + - !reference [.default_rules, rules] + extends: .build_template_coprocessor + image: espressif/idf:${IDF_VER} + parallel: + matrix: + - IDF_TARGET: ["esp32c6", "esp32c5", "esp32h2"] + IDF_VER: ["latest", "v5.5.4"] + SLAVE_CI_FILE: ["openthread_rcp"] + +### +### build ESP-Hosted examples +### + +sanity_build_nimble_examples: + rules: + - !reference [.default_rules, rules] + extends: .build_template_example + image: espressif/idf:${IDF_VER} + parallel: + matrix: + - IDF_TARGET: ["esp32p4"] + IDF_VER: ["latest", + "v5.5.4", "release-v5.5"] + IDF_SLAVE_TARGET: ["esp32c6", "esp32h2"] + EXAMPLE_TO_BUILD: ["host_nimble_bleprph_host_only_vhci", + "host_nimble_bleprph_host_only_uart_hci"] + +# verify host builds with co-processor target with BT only +sanity_build_nimble_examples_2: + rules: + - !reference [.default_rules, rules] + extends: .build_template_example + image: espressif/idf:${IDF_VER} + parallel: + matrix: + - IDF_TARGET: ["esp32p4"] + IDF_VER: ["latest"] + IDF_SLAVE_TARGET: ["esp32h2"] + EXAMPLE_TO_BUILD: ["host_nimble_bleprph_host_only_vhci", + "host_nimble_bleprph_host_only_uart_hci"] + +sanity_build_bluedroid_examples: + rules: + - !reference [.default_rules, rules] + extends: .build_template_example + image: espressif/idf:${IDF_VER} + parallel: + matrix: + - IDF_TARGET: ["esp32p4"] + IDF_VER: ["latest", + "v5.5.4", "release-v5.5"] + IDF_SLAVE_TARGET: ["esp32"] + EXAMPLE_TO_BUILD: ["host_bluedroid_ble_compatibility_test", + "host_bluedroid_bt_hid_mouse_device", + "host_bluedroid_host_only", + "host_bt_controller_mac_addr"] + +sanity_build_wifi_examples: + rules: + - !reference [.default_rules, rules] + extends: .build_template_example + image: espressif/idf:${IDF_VER} + parallel: + matrix: + - IDF_TARGET: ["esp32p4"] + IDF_VER: ["latest", + "v5.5.4", "release-v5.5"] + IDF_SLAVE_TARGET: ["esp32c6", "esp32c5"] + EXAMPLE_TO_BUILD: ["host_wifi_easy_connect_dpp_enrollee", + "host_wifi_itwt", + "host_transport_config", + "host_network_split__power_save", + "host_performs_slave_ota"] + +# build an example using the various transports +# this is to verify transport builds as expected on the host +sanity_build_transport_examples: + rules: + - !reference [.default_rules, rules] + extends: .build_template_example + image: espressif/idf:${IDF_VER} + parallel: + matrix: + - IDF_TARGET: ["esp32p4"] + IDF_VER: ["latest", + "v5.5.4", "release-v5.5"] + IDF_SLAVE_TARGET: ["esp32c6"] + EXAMPLE_TO_BUILD: ["host_network_split__power_save"] + EXAMPLE_CI_FILE: ["sdio", "spi", "spi_hd", "uart"] + +# build OpenThread Host examples +sanity_build_openthread_examples: + rules: + - !reference [.default_rules, rules] + extends: .build_template_example + image: espressif/idf:${IDF_VER} + parallel: + matrix: + - IDF_TARGET: ["esp32p4"] + IDF_VER: ["latest"] + IDF_SLAVE_TARGET: ["esp32c6", "esp32c5"] + EXAMPLE_TO_BUILD: ["host_openthread_border_router", + "host_openthread_cli"] + +# build Zigbee Host examples +sanity_build_zigbee_examples: + rules: + - !reference [.default_rules, rules] + extends: .build_template_example + image: espressif/idf:${IDF_VER} + parallel: + matrix: + - IDF_TARGET: ["esp32p4"] + IDF_VER: ["v5.5.4"] + IDF_SLAVE_TARGET: ["esp32c6", "esp32c5"] + EXAMPLE_TO_BUILD: ["host_zigbee_thermostat"] + +### +### Promote staging to main after successful regression testing +### + +promote_staging_to_main: + stage: deploy + dependencies: [] + rules: + - if: $CI_COMMIT_BRANCH == "staging" && $CI_PIPELINE_SOURCE == "push" + script: + - git remote set-url origin https://oauth2:${GITLAB_TOKEN_STAGING_TO_MAIN}@gitlab.espressif.cn:6688/app-frameworks/esp_hosted_mcu.git + - git push origin $CI_COMMIT_SHA:main + tags: + - build diff --git a/firmware/components/esp_hosted/.gitlab/ci/templates.yml b/firmware/components/esp_hosted/.gitlab/ci/templates.yml new file mode 100644 index 0000000..4a43865 --- /dev/null +++ b/firmware/components/esp_hosted/.gitlab/ci/templates.yml @@ -0,0 +1,326 @@ +# Holds templates used for jobs + +.premerge_check_template: + stage: pre + tags: + - build + script: + - source ${IDF_PATH}/export.sh + # check the exported fw versions + - python tools/check_fw_versions.py + # check the changelog + - python tools/check_changelog.py + # check weak functions # Can also pass --functions optionally # Can also pass --functions optionally. + - python tools/check_weak_functions.py --file host/api/src/esp_wifi_weak.c + +.build_template_coprocessor: + stage: build_coprocessor + tags: + - build + dependencies: [] + artifacts: + when: always + expire_in: 4 days + script: + - export IDF_PYTHON_CHECK_CONSTRAINTS=yes + - ${IDF_PATH}/install.sh --enable-ci + - source ${IDF_PATH}/export.sh + - SDKCONFIG_PATTERN="sdkconfig.ci.${SLAVE_CI_FILE}" + # Build with IDF pedantic flags and IDF build apps script + - export ESP_HOSTED_CI_PEDANTIC=1 + - export EXTRA_CFLAGS="-DIDF_CI_BUILD" + - export EXTRA_CXXFLAGS="-DIDF_CI_BUILD" + - | + if [[ -n ${CONFIG_OVERRIDE} ]]; then + CONFIG_OVERRIDE_STRING="--override-sdkconfig-items=${CONFIG_OVERRIDE}" + echo "adding ${CONFIG_OVERRIDE_STRING} to build" + fi + - cd slave + # use --enable-preview-targets to build for all targets + - idf-build-apps find -p . --enable-preview-targets --config ${SDKCONFIG_PATTERN} ${CONFIG_OVERRIDE_STRING} -vv --target ${IDF_TARGET} + - idf-build-apps build -p . --enable-preview-targets --config ${SDKCONFIG_PATTERN} ${CONFIG_OVERRIDE_STRING} -vv --target ${IDF_TARGET} + +.build_template_example: + stage: build_example + tags: + - build + dependencies: [] + artifacts: + when: always + expire_in: 4 days + script: + - export IDF_PYTHON_CHECK_CONSTRAINTS=yes + - ${IDF_PATH}/install.sh --enable-ci + - source ${IDF_PATH}/export.sh + # Need to rename the cloned "esp_hosted_mcu" directory since the injected component name is "esp_hosted" + - cd .. && rm -rf esp_hosted && mv esp_hosted_mcu esp_hosted && cd esp_hosted + # Create components directory and link esp_hosted component + - export OVERRIDE_PATH=`pwd` + - cd examples/${EXAMPLE_TO_BUILD} + # Create components directory and link esp_hosted component + - mkdir -p components + - ln -sf ${OVERRIDE_PATH} components/esp_hosted + # Override component dependency as backup only if not already present + - | + if ! grep -q "esp_hosted" main/idf_component.yml 2>/dev/null; then + cat ${OVERRIDE_PATH}/.gitlab-ci-override-idf-component.yml >> main/idf_component.yml + echo "Added esp_hosted override to idf_component.yml" + fi + # Add slave target configuration if specified + # Also add wi-fi remote slave target for supported targets (not ESP32-H2) + - | + if [ ! -z "${IDF_SLAVE_TARGET}" ]; then + if [[ "${IDF_SLAVE_TARGET}" != "esp32h2" ]]; then + echo "CONFIG_SLAVE_IDF_TARGET_${IDF_SLAVE_TARGET^^}=y" >> sdkconfig.defaults + echo "Added target CONFIG_SLAVE_IDF_TARGET_${IDF_SLAVE_TARGET^^}=y to sdkconfig.defaults" + fi + echo "CONFIG_ESP_HOSTED_CP_TARGET_${IDF_SLAVE_TARGET^^}=y" >> sdkconfig.defaults + echo "Added target CONFIG_ESP_HOSTED_CP_TARGET_${IDF_SLAVE_TARGET^^}=y to sdkconfig.defaults" + fi + # Append sdkconfig.ci.common if available + - | + if [ -f sdkconfig.ci.common ]; then + cat sdkconfig.ci.common >> sdkconfig.defaults + echo "Appended sdkconfig.ci.common to sdkconfig.defaults" + fi + # Build with IDF pedantic flags and IDF build apps script + - export ESP_HOSTED_CI_PEDANTIC=1 + - export EXTRA_CFLAGS="-DIDF_CI_BUILD" + - export EXTRA_CXXFLAGS="-DIDF_CI_BUILD" + # Build with extra ci config file if specified + - | + if [ ! -z "${EXAMPLE_CI_FILE}" ]; then + idf-build-apps find -p . -vv --config sdkconfig.ci.${EXAMPLE_CI_FILE} --target ${IDF_TARGET} + idf-build-apps build -p . -vv --config sdkconfig.ci.${EXAMPLE_CI_FILE} --target ${IDF_TARGET} + else + idf-build-apps find -p . -vv --target ${IDF_TARGET} + idf-build-apps build -p . -vv --target ${IDF_TARGET} + fi + +# build mqtt example from examples/protocol/mqtt +# the example may be mqtt or mqtt/tcp, depending on IDF version +.build_template_example_mqtt: + stage: build + tags: + - build + artifacts: + paths: + - "artifacts_*/" + when: always + expire_in: 4 days + script: + - export IDF_PYTHON_CHECK_CONSTRAINTS=yes + - ${IDF_PATH}/install.sh --enable-ci + - source ${IDF_PATH}/export.sh + # Need to rename the cloned "esp_hosted_mcu" directory since the injected component name is "esp_hosted" + - cd .. && rm -rf esp_hosted && mv esp_hosted_mcu esp_hosted && cd esp_hosted + - export OVERRIDE_PATH=`pwd` + # get path to mqtt example to build + - | + # Check if the newer path structure exists (latest and release-v6.0) + if [ -f "${IDF_PATH}/examples/protocols/mqtt/main/idf_component.yml" ]; then + MQTT_EXAMPLE_PATH="${IDF_PATH}/examples/protocols/mqtt" + # Fall back to older path structure (release-v5.x and earlier) + elif [ -f "${IDF_PATH}/examples/protocols/mqtt/tcp/main/idf_component.yml" ]; then + MQTT_EXAMPLE_PATH="${IDF_PATH}/examples/protocols/mqtt/tcp" + else + echo "Error: Could not find MQTT example at either path" + ls -la ${IDF_PATH}/examples/protocols/mqtt/ || true + exit 1 + fi + echo "Using MQTT example path: ${MQTT_EXAMPLE_PATH}" + - cd ${MQTT_EXAMPLE_PATH} + # Create components directory and link esp_hosted component + - mkdir -p components + - ln -sf ${OVERRIDE_PATH} components/esp_hosted + # Override component dependency as backup only if not already present + - | + if ! grep -q "esp_hosted" main/idf_component.yml 2>/dev/null; then + cat ${OVERRIDE_PATH}/.gitlab-ci-override-idf-component.yml >> main/idf_component.yml + echo "Added esp_hosted override to idf_component.yml" + fi + # Add slave target configuration if specified + # Also add wi-fi remote slave target for supported targets (not ESP32-H2) + - | + if [ ! -z "${IDF_SLAVE_TARGET}" ]; then + if [[ "${IDF_SLAVE_TARGET}" != "esp32h2" ]]; then + echo "CONFIG_SLAVE_IDF_TARGET_${IDF_SLAVE_TARGET^^}=y" >> sdkconfig.defaults + echo "Added target CONFIG_SLAVE_IDF_TARGET_${IDF_SLAVE_TARGET^^}=y to sdkconfig.defaults" + fi + echo "CONFIG_ESP_HOSTED_CP_TARGET_${IDF_SLAVE_TARGET^^}=y" >> sdkconfig.defaults + echo "Added target CONFIG_ESP_HOSTED_CP_TARGET_${IDF_SLAVE_TARGET^^}=y to sdkconfig.defaults" + fi + # Append sdkconfig.ci.common if available + - | + if [ -f sdkconfig.ci.common ]; then + cat sdkconfig.ci.common >> sdkconfig.defaults + echo "Appended sdkconfig.ci.common to sdkconfig.defaults" + fi + # Build with IDF pedantic flags and IDF build apps script + - export ESP_HOSTED_CI_PEDANTIC=1 + - export EXTRA_CFLAGS="-DIDF_CI_BUILD" + - export EXTRA_CXXFLAGS="-DIDF_CI_BUILD" + # use --config-file to override default IDF config file + # use --enable-preview-targets to build for all targets + # use --override-sdkconfig-items to override (possibly incorrect) build target that may be in provided config file + - idf-build-apps find -p . --enable-preview-targets --config-file "${OVERRIDE_PATH}/.idf_build_apps.toml" --override-sdkconfig-items=CONFIG_IDF_TARGET=${IDF_TARGET} -vv --target ${IDF_TARGET} + - idf-build-apps build -p . --enable-preview-targets --config-file "${OVERRIDE_PATH}/.idf_build_apps.toml" --override-sdkconfig-items=CONFIG_IDF_TARGET=${IDF_TARGET} -vv --target ${IDF_TARGET} + # Copy config files back to project directory for artifacts + - mkdir -p ${OVERRIDE_PATH}/artifacts_${IDF_TARGET}_${IDF_SLAVE_TARGET} + - cp sdkconfig* ${OVERRIDE_PATH}/artifacts_${IDF_TARGET}_${IDF_SLAVE_TARGET}/ 2>/dev/null || echo "No sdkconfig files found" + - cp main/idf_component.yml ${OVERRIDE_PATH}/artifacts_${IDF_TARGET}_${IDF_SLAVE_TARGET}/ 2>/dev/null || echo "No component file found" + # Clean up the component symlink + - unlink components/esp_hosted + - echo "Cleaned up esp_hosted component symlink" + # Rename back, since post scripts expect the original name + - cd ${OVERRIDE_PATH} && cd .. && mv esp_hosted esp_hosted_mcu + +# build mqtt/tcp example from espressif/mqtt Registry Component +.build_template_mqtt_tcp_component: + stage: build + tags: + - build + artifacts: + paths: + - "artifacts_*/" + when: always + expire_in: 4 days + script: + - export IDF_PYTHON_CHECK_CONSTRAINTS=yes + - ${IDF_PATH}/install.sh --enable-ci + - source ${IDF_PATH}/export.sh + # Need to rename the cloned "esp_hosted_mcu" directory since the injected component name is "esp_hosted" + - cd .. && rm -rf esp_hosted && mv esp_hosted_mcu esp_hosted && cd esp_hosted + - export OVERRIDE_PATH=`pwd` + # get the example from Component Registry + - echo "Checking out example ${IDF_REGISTRY_COMPONENT}:${IDF_REGISTRY_COMPONENT_EXAMPLE}" + - cd .. + - idf.py create-project-from-example "${IDF_REGISTRY_COMPONENT}:${IDF_REGISTRY_COMPONENT_EXAMPLE}" + - cd "${IDF_REGISTRY_COMPONENT_EXAMPLE}" + # Override esp_hosted component in example's deps with the one from the current repository + - mkdir -p components + - ln -sf ${OVERRIDE_PATH} components/esp_hosted + # Add slave target configuration if specified + # Also add wi-fi remote slave target for supported targets (not ESP32-H2) + - | + if [ ! -z "${IDF_SLAVE_TARGET}" ]; then + if [[ "${IDF_SLAVE_TARGET}" != "esp32h2" ]]; then + echo "CONFIG_SLAVE_IDF_TARGET_${IDF_SLAVE_TARGET^^}=y" >> sdkconfig.defaults + echo "Added target CONFIG_SLAVE_IDF_TARGET_${IDF_SLAVE_TARGET^^}=y to sdkconfig.defaults" + fi + echo "CONFIG_ESP_HOSTED_CP_TARGET_${IDF_SLAVE_TARGET^^}=y" >> sdkconfig.defaults + echo "Added slave target CONFIG_ESP_HOSTED_CP_TARGET_${IDF_SLAVE_TARGET^^}=y to sdkconfig.defaults" + fi + # EXAMPLE_CI_FILE: use sdkconfig CI file in example directory + - | + if [ ! -z "${SDKCONFIG_CI_FILE}" ]; then + cp ${OVERRIDE_PATH}/${SDKCONFIG_CI_FILE} ./sdkconfig.ci.custom + echo "Using custom sdkconfig: ${SDKCONFIG_CI_FILE}" + SDKCONFIG_PATTERN="sdkconfig.ci.custom" + elif [ ! -z "${EXAMPLE_CI_FILE}" ]; then + echo "Using CI sdkconfig file in example: ${EXAMPLE_CI_FILE}" + SDKCONFIG_PATTERN="./${EXAMPLE_CI_FILE}" + else + SDKCONFIG_PATTERN="sdkconfig.ci*" + fi + - echo "SDKCONFIG_PATTERN is ${SDKCONFIG_PATTERN}" + # Build with IDF pedantic flags and IDF build apps script + - export ESP_HOSTED_CI_PEDANTIC=1 + - export EXTRA_CFLAGS="-DIDF_CI_BUILD" + - export EXTRA_CXXFLAGS="-DIDF_CI_BUILD" + # use --config-file to override default IDF config file + # use --enable-preview-targets to build for all targets + # use --override-sdkconfig-items to override (possibly incorrect) build target that may be in provided config file + - idf-build-apps find -p . --enable-preview-targets --config-file "${OVERRIDE_PATH}/.idf_build_apps.toml" --config ${SDKCONFIG_PATTERN} --override-sdkconfig-items=CONFIG_IDF_TARGET=${IDF_TARGET} -vv --target ${IDF_TARGET} + - idf-build-apps build -p . --enable-preview-targets --config-file "${OVERRIDE_PATH}/.idf_build_apps.toml" --config ${SDKCONFIG_PATTERN} --override-sdkconfig-items=CONFIG_IDF_TARGET=${IDF_TARGET} -vv --target ${IDF_TARGET} + # Copy config files back to project directory for artifacts + - mkdir -p ${OVERRIDE_PATH}/artifacts_${IDF_TARGET}_${IDF_SLAVE_TARGET} + - cp sdkconfig* ${OVERRIDE_PATH}/artifacts_${IDF_TARGET}_${IDF_SLAVE_TARGET}/ 2>/dev/null || echo "No sdkconfig files found" + - cp main/idf_component.yml ${OVERRIDE_PATH}/artifacts_${IDF_TARGET}_${IDF_SLAVE_TARGET}/ 2>/dev/null || echo "No component file found" + # Clean up the component symlink + - unlink components/esp_hosted + - echo "Cleaned up esp_hosted component symlink" + # Rename back, since post scripts expect the original name + - cd ${OVERRIDE_PATH} && cd .. && mv esp_hosted esp_hosted_mcu + + +.build_template: + stage: build + tags: + - build + artifacts: + paths: + - "artifacts_*/" + when: always + expire_in: 4 days + script: + - export IDF_PYTHON_CHECK_CONSTRAINTS=yes + - ${IDF_PATH}/install.sh --enable-ci + - source ${IDF_PATH}/export.sh + # Need to rename the cloned "esp_hosted_mcu" directory since the injected component name is "esp_hosted" + - cd .. && rm -rf esp_hosted && mv esp_hosted_mcu esp_hosted && cd esp_hosted + # Replaces esp_hosted component in example's deps with the one from the current repository + - export OVERRIDE_PATH=`pwd` + - cd ${IDF_PATH}/${IDF_EXAMPLE_PATH} + # Create components directory and link esp_hosted component + - mkdir -p components + - ln -sf ${OVERRIDE_PATH} components/esp_hosted + - echo "Created components directory with esp_hosted link:" + - ls -la components/ + # Override component dependency as backup only if not already present + - | + if ! grep -q "esp_hosted" main/idf_component.yml 2>/dev/null; then + cat ${OVERRIDE_PATH}/.gitlab-ci-override-idf-component.yml >> main/idf_component.yml + echo "Added esp_hosted override to idf_component.yml" + fi + # Add slave target configuration if specified + # Also add wi-fi remote slave target for supported targets (not ESP32-H2) + - | + if [ ! -z "${IDF_SLAVE_TARGET}" ]; then + if [[ "${IDF_SLAVE_TARGET}" != "esp32h2" ]]; then + echo "CONFIG_SLAVE_IDF_TARGET_${IDF_SLAVE_TARGET^^}=y" >> sdkconfig.defaults + echo "Added target CONFIG_SLAVE_IDF_TARGET_${IDF_SLAVE_TARGET^^}=y to sdkconfig.defaults" + fi + echo "CONFIG_ESP_HOSTED_CP_TARGET_${IDF_SLAVE_TARGET^^}=y" >> sdkconfig.defaults + echo "Added slave target CONFIG_ESP_HOSTED_CP_TARGET_${IDF_SLAVE_TARGET^^}=y to sdkconfig.defaults" + fi + # HOSTED_CI_FILE: use custom sdkconfig CI file from esp_hosted directory, or + # EXAMPLE_CI_FILE: use sdkconfig CI file in example directory + - | + if [ ! -z "${SDKCONFIG_CI_FILE}" ]; then + cp ${OVERRIDE_PATH}/${SDKCONFIG_CI_FILE} ./sdkconfig.ci.custom + echo "Using custom sdkconfig: ${SDKCONFIG_CI_FILE}" + SDKCONFIG_PATTERN="sdkconfig.ci.custom" + elif [ ! -z "${EXAMPLE_CI_FILE}" ]; then + echo "Using CI sdkconfig file in example: ${EXAMPLE_CI_FILE}" + SDKCONFIG_PATTERN="./${EXAMPLE_CI_FILE}" + else + SDKCONFIG_PATTERN="sdkconfig.ci*" + fi + - echo "SDKCONFIG_PATTERN is ${SDKCONFIG_PATTERN}" + # Build with IDF pedantic flags and IDF build apps script + - export ESP_HOSTED_CI_PEDANTIC=1 + - export EXTRA_CFLAGS="-DIDF_CI_BUILD" + - export EXTRA_CXXFLAGS="-DIDF_CI_BUILD" + # Remove the conflicting extconn config that disables hosted + - rm -f sdkconfig.ci.*extconn* + # use --config-file to override default IDF config file + # use --enable-preview-targets to build for all targets + # use --override-sdkconfig-items to override (possibly incorrect) build target that may be in provided config file + - idf-build-apps find -p . --enable-preview-targets --config-file "${OVERRIDE_PATH}/.idf_build_apps.toml" --config ${SDKCONFIG_PATTERN} --override-sdkconfig-items=CONFIG_IDF_TARGET=${IDF_TARGET} -vv --target ${IDF_TARGET} + - idf-build-apps build -p . --enable-preview-targets --config-file "${OVERRIDE_PATH}/.idf_build_apps.toml" --config ${SDKCONFIG_PATTERN} --override-sdkconfig-items=CONFIG_IDF_TARGET=${IDF_TARGET} -vv --target ${IDF_TARGET} +# - echo "----------- last sdkconfig.defaults,ci* used (${IDF_TARGET}-${IDF_SLAVE_TARGET}) --------------" +# - cat sdkconfig.defaults +# - cat sdkconfig.ci* +# - echo "----------- last (generated) sdkconfig used (${IDF_TARGET}-${IDF_SLAVE_TARGET}) --------------" +# - cat sdkconfig +# - echo "----------------------------------------------" + # Copy config files back to project directory for artifacts + - mkdir -p ${OVERRIDE_PATH}/artifacts_${IDF_TARGET}_${IDF_SLAVE_TARGET} + - cp sdkconfig* ${OVERRIDE_PATH}/artifacts_${IDF_TARGET}_${IDF_SLAVE_TARGET}/ 2>/dev/null || echo "No sdkconfig files found" + - cp main/idf_component.yml ${OVERRIDE_PATH}/artifacts_${IDF_TARGET}_${IDF_SLAVE_TARGET}/ 2>/dev/null || echo "No component file found" + # Clean up the component symlink + - unlink components/esp_hosted + - echo "Cleaned up esp_hosted component symlink" + # Rename back, since post scripts expect the original name + - cd ${OVERRIDE_PATH} && cd .. && mv esp_hosted esp_hosted_mcu diff --git a/firmware/components/esp_hosted/.gitmodules b/firmware/components/esp_hosted/.gitmodules new file mode 100644 index 0000000..542fb1d --- /dev/null +++ b/firmware/components/esp_hosted/.gitmodules @@ -0,0 +1,3 @@ +[submodule "esp_hosted_fg/common/protobuf-c"] + path = common/protobuf-c + url = https://github.com/protobuf-c/protobuf-c.git diff --git a/firmware/components/esp_hosted/.idf_build_apps.toml b/firmware/components/esp_hosted/.idf_build_apps.toml new file mode 100644 index 0000000..e761d02 --- /dev/null +++ b/firmware/components/esp_hosted/.idf_build_apps.toml @@ -0,0 +1 @@ +build_log_filename = "" diff --git a/firmware/components/esp_hosted/.pre-commit-config.yaml b/firmware/components/esp_hosted/.pre-commit-config.yaml new file mode 100644 index 0000000..3191156 --- /dev/null +++ b/firmware/components/esp_hosted/.pre-commit-config.yaml @@ -0,0 +1,46 @@ +repos: + - repo: local + hooks: + - id: version-checker + name: ESP-Hosted Version Checker + entry: tools/check_fw_versions.py + language: python + args: [ "--update" ] + always_run: true + pass_filenames: false + - id: rpc-checker + name: ESP-Hosted RPC Checker + entry: tools/check_rpc_calls.py + language: python + always_run: true + pass_filenames: false + - id: changelog-checker + name: ESP-Hosted Changelog Checker + entry: tools/check_changelog.py + language: python + files: ^idf_component.yml$ + - id: esp-weak-function-checker + name: ESP-Hosted Weak Function Checker + entry: tools/check_weak_functions.py + language: python + args: + - "--file" + - "host/api/src/esp_wifi_weak.c" + # add more files/functions like in below: + # - "--file" + # - "host/api/src/esp_extra_weak.c" + # - "--functions" + # - "esp_extra_foo,esp_extra_bar" + files: ^host/api/src/.*\.c$ + pass_filenames: false + - repo: https://github.com/espressif/check-copyright/ + rev: v1.1.1 + hooks: + - id: check-copyright + args: ['--config', 'tools/check_copyright_config.yaml'] + + - repo: https://github.com/codespell-project/codespell + rev: v2.4.1 + hooks: + - id: codespell + args: [--config=.codespellrc] diff --git a/firmware/components/esp_hosted/CHANGELOG.md b/firmware/components/esp_hosted/CHANGELOG.md new file mode 100644 index 0000000..b3c90e4 --- /dev/null +++ b/firmware/components/esp_hosted/CHANGELOG.md @@ -0,0 +1,816 @@ +# Unreleased - Main Branch + +# Releases + +# $${\color{green} \text{2.12.11}}$$ + +- fixed SDIO deinit tearing down the shared SDMMC host (broke a co-existing SD card on the other slot) +- fixed public headers failing to build under `-Werror=undef` (e.g. Matter/external host consumers) + +# $${\color{green} \text{2.12.10}}$$ + +- added `esp_wifi_disable_pmf_config()` support (host ↔ co-processor RPC); previously returned `ESP_ERR_NOT_SUPPORTED` +- fixed SDIO RX heap corruption on transport deinit and hardened RX buffer allocation + +# $${\color{green} \text{2.12.9}}$$ + +- added gpios for `ESP32_P4X_C5_Function_EV_Board V2.0` +- fix build break for IDF v6 when enable power save (API renamed) +- update Kconfig to check for config `SOC_GPIO_SUPPORT_HP_PERIPH_PD_SLEEP_WAKEUP` introduced in IDF v6 +- fixed bug causing a crash in SPI-HD interface with IDF v6.1 due to new uninitialised member in `spi_bus_config_t` +- reduced default number of buffers for SPI-HD and SPI-FD to resolve memory issues +- Zigbee: + - added support for Zigbee + - added Home Automation thermostat on a Zigbee Coordinator example +- added support for SPI-HD 1-bit mode (SPI 3-wire interface) + - **NOTE**: SPI-HD 1-bit mode is only supported on ESP-IDF v6.1 and above and requires [git Commit bf10423](https://github.com/espressif/esp-idf/commit/bf10423a5b01888b33ab1f4e45ef5a880eed69e6) +- updated `_h_get_semaphore` and `_h_lock_mutex` to use milliseconds instead of seconds as a timeout parameter +- added `_h_thread_yield` for use by threads to request a context switch + +# $${\color{green} \text{2.12.8}}$$ + +- SDIO: added `ESP_HOSTED_MEMPOOL_PREFER_SPIRAM` to allocate transport buffers from PSRAM (e.g. ESP32-P4), saving internal RAM; off by default +- OS APIs: `_h_get_semaphore` and `_h_lock_mutex` now take timeout in milliseconds (was seconds) +- added `_h_thread_yield` for threads to request a context switch + +# $${\color{green} \text{2.12.7}}$$ + +- OpenThread: added OpenThread over dedicated UART support + - co-processor is the OpenThead RCP (Radio Co-Processor) + - added host examples: `host_openthread_border_router`, `host_openthread_cli` +- Common Mempool: fixed build error on ESP-IDF v6.x when using PicolibC with `CONFIG_LIBC_PICOLIBC_NEWLIB_COMPATIBILITY` disabled +- Host: removed Unicode encoded characters in cmake file to prevent Windows build failure + +# $${\color{green} \text{2.12.6}}$$ + +## Bug Fixes + +- make `TAG` in `mempool.c` static to avoid link-time clash with other components (#187) + +# $${\color{green} \text{2.12.5}}$$ + +## Features + +### External Coexistence: allow with BT on advanced coex chips +- Aligned Kconfig with IDF change that relaxes `ESP_COEX_EXTERNAL_COEXIST_ENABLE` dependency +- On chips with `SOC_EXTERNAL_COEX_ADVANCE`, external coexistence now works alongside BT controller +- Updated compile-time checks in `slave_ext_coex.h` to match (includes `soc/soc_caps.h`) + +## Bug Fixes + +- fixed CI to allow building ESP32 co-processor with ESP-IDF v5.5 for SPI-FD and UART transports: was running out of IRAM space +- fixed CI build failure when building co-processor with ESP-IDF release/v5.3 +- added more ESP-IDF releases to CI for testing + +### OTA: fix image size calculation for partition-based OTA +- Add 16-byte alignment padding before SHA256 hash in image size parser +- Previously sent 15 fewer bytes than actual image, causing hash mismatch + +# $${\color{green} \text{2.12.4}}$$ + +## Bug Fixes + +- fix build break on co-processor if using SPI-HD interface with 2 data lines + +## Features + +### Custom RPC callbacks: support user context pointer + + - Allows passing per-callback context without global state + - User pointer is returned as-is on every invocation + +##### API Changes + +- `esp_hosted_register_custom_callback` + +```c +// Old +esp_err_t esp_hosted_register_custom_callback( + uint32_t msg_id, + void (*callback)(uint32_t msg_id, const uint8_t *data, size_t data_len)); + +// New +esp_err_t esp_hosted_register_custom_callback( + uint32_t msg_id, + void (*callback)(uint32_t msg_id, const uint8_t *data, size_t data_len, void *user), + void *user); +``` + +### Others + +- used common mempool code for both Host and Co-processor +- made ESP-Hosted mempool code private to fix build break +- added parameter checking for RPC calls + +## Bug Fixes + +- Host: added NULL or validation checks for exposed user APIs + +# $${\color{green} \text{2.12.3}}$$ + +## Bug Fixes + +- Fixed `esp_wifi_scan_get_ap_records` to set the actual AP number this API returns + +# $${\color{green} \text{2.12.2}}$$ + +## Bug Fixes + +- Add slave target strings to `Kconfig` (required by Arduino build) + +## Features + +- Add api to get the co-processor name and chip id to identify the co-processor +- API Added + - `esp_hosted_get_cp_info` +- Updated `examples/host_bt_controller_mac_addr` to request this information +- Extended RPC for GetCoprocessorFwVersion to include the co-processor name and chip id + +# $${\color{green} \text{2.12.1}}$$ + +## Features + +### Allow disabling Wi-Fi and/or Bluetooth + +- Added Co-processor option to disable Wi-Fi support (for Bluetooth-only support) +- Re-organised co-processor code: moved Wi-Fi, Wi-Fi Enterprise and Network Split code into individual files +- Added initial support for ESP32-H4 as co-processor + - only works with UART interface as ESP-Hosted Transport. SPI to be enabled later. + - Bluetooth not yet enabled in ESP-IDF + +### Co-processor: External Coexistence + +- Add support to manage co-processor external Wi-Fi coexistence from the host. +- APIs Added + - `esp_hosted_cp_ext_coex_set_work_mode` + - `esp_hosted_cp_ext_coex_set_gpio_pin` + - `esp_hosted_cp_ext_coex_set_grant_delay` + - `esp_hosted_cp_ext_coex_set_validate_high` + - `esp_hosted_cp_ext_coex_disable` +- Host Example Added + - examples/host_manage_copro_ext_coex +- Documentation + - examples/host_manage_copro_ext_coex/README.md +- Config + - Host + - ESP_HOSTED_CP_EXT_COEX + - ESP_HOSTED_CP_EXT_COEX_ADVANCE + - Slave + - ESP_HOSTED_CP_EXT_COEX + +### Other Features + +- Added support for Bluetooth-only Co-processors (like ESP32-H2) +- Allow ESP-Hosted component to be manually disabled through idf menuconfig + +## Bug Fixes + +- ESP Slave FW validation fails because OTA image validation depends on non-existent IDF 6.0+ APIs (GitHub ##165) + +# $${\color{cyan} \text{2.12.0}}$$ + +## Features + +- Checked incoming image validity during OTA update + - done for ESP-IDF v6.1.0 or greater +- Wi-Fi APIs + - `esp_wifi_set_scan_parameters()` + - `esp_wifi_get_scan_parameters()` +- Allow slave OTA only if correct SPI Flash Mode + +## Bug Fixes + +- Assert if slave uses SDIO streaming and host as SDIO packet mode +- Guard `esp_hosted_coprocessor.h`, `host_power_save.h`, `interface.h` for cplusplus inclusion +- Replace assert with graceful error on mempool alloc failure +- Building with and without bt enabled +- Disable auto connect upon sta mode started +- Add `esp_eap_client_set_eap_methods()` as `weak` in `esp_wifi_weak.c` + +## Config + +- Added ESP32-P4-Eye board GPIOs at slave and host Kconfig +- Fix host wakeup GPIO config + +# $${\color{green} \text{2.11.7}}$$ + +## Features + +- Added Co-processor Memory Monitor: sets up a heap memory monitor on the co-processor that periodically checks the amount of heap memory remaining. Co-processor sends memory info events to the host at periodic intervals or when heap memory falls below memory thresholds set by the host. +- Added `examples/host_hosted_cp_meminfo` as an example: + - make a one time request of heap memory + - request periodic memory reports + - get a report only when heap memory falls below a threshold + +## API Added + +- `esp_hosted_set_mem_monitor` + +## Event Added + +- `ESP_HOSTED_EVENT_MEM_MONITOR` + +## Documentation + +Added performance with ESP32-C3 as co-processor, using SPI-FD interface, to Performance document. + +# $${\color{green} \text{2.11.6}}$$ + +- Fix a build break on ESP-IDF master branch +- Add `ESP_HOSTED_WIFI_AUTO_CONNECT_ON_STA_START` to control whether WiFi station auto-connects on STA start on both host and slave sides. This allows disabling auto-connect to align behavior with standard ESP-IDF examples and avoids unintended connection attempts during initialization. +- Made FreeRTOS runtime stats logging optional +- Added option to allow slave to reuse application-created STA netif handle instead of creating its own handle +- Added option to disable sharing Bluetooth with Host, for cases where BT is only required on the co-processor + +# $${\color{green} \text{2.11.5}}$$ + +## Bug Fixes + +- Renamed `H_HOST_RESTART_NO_COMMUNICATION_WITH_SLAVE_TIMEOUT` to `H_HOST_RESTART_NO_COMMUNICATION_WITH_SLAVE_TIMEOUT_MS` to clarify units are in milliseconds. + +# $${\color{green} \text{2.11.4}}$$ + +## Features + +- ESP32-P4 C61 Core board support - Improvise + +## Bug Fixes + +- TCP iPerf stability with documented performance optimizations + +## Tested + +- Host power save and wake-up functionality +- Wake-up GPIOs: + - P4 Core Board – C61: IO04 + - P4 Core Board – P4: IO06 + - GPIOs disabled by default (`-1`) due to no physical connection; verified via jumper wiring and solder +- Network split scenarios + +# $${\color{green} \text{2.11.3}}$$ + +## Bug Fixes + +- made UART Hosted interface more stable: + - flush the input after reset. Rx line may toggle while resetting the co-processor, causing Host UART to store invalid data. + - check that offset in received payload header is valid: discard packet for invalid offsets. + - check flags in received payload only after the payload is considered valid + +# $${\color{green} \text{2.11.2}}$$ + +Minor fix: On Timeout/Failure, Print RPC req str instead of RPCId + +# $${\color{green} \text{2.11.1}}$$ + +Minor fixes: const qualifier violations while building + +# $${\color{cyan} \text{2.11.0}}$$ + +## Bug Fixes + +- remove double freeing of buffer if `chan_arr[buf_handle->if_type]->rx()` fails. Underlying rx function will free the memory + +> [!WARNING] +> This version of ESP-Hosted onwards must be used with wifi-remote component v1.3.1 or greater. See the [Migration Guide](https://github.com/espressif/esp-hosted-mcu/blob/main/docs/migration_guide.md) for more information. + +# $${\color{cyan} \text{2.10.0}}$$ + +## Features: GPIO Expander + +- **GPIO Expander**: Added feature to allow the host to control the GPIOs of the slave co-processor over the existing transport link. See [GPIO Expander Guide](./docs/gpio_expander.md). +- **GPIO Expander Example**: Added a new example `examples/host_gpio_expander` to demonstrate the usage of the GPIO expander feature. + +## APIs Added + +- `esp_hosted_cp_gpio_config` +- `esp_hosted_cp_gpio_reset_pin` +- `esp_hosted_cp_gpio_set_level` +- `esp_hosted_cp_gpio_get_level` +- `esp_hosted_cp_gpio_set_direction` +- `esp_hosted_cp_gpio_input_enable` +- `esp_hosted_cp_gpio_set_pull_mode` + +# $${\color{green} \text{2.9.7}}$$ + +## Features + +- Add example, [host_shuts_down_slave_to_power_save](https://components.espressif.com/components/espressif/esp_hosted/examples/host_shuts_down_slave_to_power_save) + - Use `EN` pin on coprocessor to power off/on + - Power down coprocessor when not in use + - Power on coprocessor when required + - Connect Wi-Fi on coprocessor wake up + +## Bug Fixes + +- Fix the memory leaks in hosted deinit -> init path + +# $${\color{green} \text{2.9.5 - 2.9.6}}$$ + +Using shorter, more manageable names for esp hosted events +Before adoption, concise the event names from full string COPROCESSOR to just CP in event names + +# $${\color{green} \text{2.9.4}}$$ + +## Features + +- enabled ESP-Hosted events. Host can register an event handler to receive these events from co-processor: + - INIT event, indicating the co-processor has started + - HEARTBEAT event, when enabled by the host + - TRANSPORT_FAILURE event, when ESP-Hosted encounters a transport failure + - host can use these events to determine if the co-processor rebooted (unexpected INIT event) or hanged (missing HEARTBEAT) +- added `examples/host_hosted_events` as an example to show how the host can use either event to reinitialise a Station connection to an AP + +## Bug Fixes + +- fixed ESP-Hosted and SDIO issues that prevent transport reinitialisation +- fixed files to skip when running codespell during pre-commit + +# $${\color{green} \text{2.9.3}}$$ + +## Bug Fixes + +- removed setting `scan_method` and `sort_method` in co-processor when station is connecting. Use the values sent by the Host in the Wi-Fi config. +- fixed support for ESP32-S2 as a co-processor + +# $${\color{green} \text{2.9.2}}$$ + +## Bug Fixes + +- Slave OTA Example + - Add version-aware OTA activation + - Conditionally call esp_slave_ota_activate() only for slave FW >= v2.6.0 +- Improved Slave OTA Documentation + - Comprehensive code comments explaining OTA APIs and version checks + - Mermaid sequence diagram showing complete OTA verification flow + +# $${\color{green} \text{2.9.1}}$$ + +## Bug Fixes + +- Correct esptool command usage (`write_flash` instead of invalid `write-flash`) +- Update Wi-Fi bandwidth enums for newer ESP-IDF compatibility + +## Improvements + +- Better validation and user-readable error messages for slave OTA +- Detect empty or uninitialized LittleFS and partition OTA sources +- Clear guidance when invalid or missing slave firmware binaries are detected + +# $${\color{green} \text{2.9.0}}$$ + +## Bug Fixes + +- Fix slave OTA failures on back-to-back updates by removing the hard dependency on `CONFIG_ESPTOOLPY_FLASHMODE_QIO`. +- Previously, mandating QIO flash mode caused consecutive OTA operations to fail; this is now resolved by removing the forced flash mode setting. + +# $${\color{red} \text{2.8.5}}$$ + +## Features: Light Sleep Integration & Documentation + +- **Light Sleep Documentation**: Added comprehensive [Light Sleep Integration Guide](https://www.google.com/search?q=https://github.com/espressif/esp-hosted-mcu/blob/main/docs/slave_light_sleep.md) detailing the handshake between host power states and slave light sleep. +- **Smart Wakeup Demo**: Added a new demo showcasing the slave waking the host MCU using specific network triggers (UDP packets). + - Example: `examples/host_network_split__power_save/host_wakeup_demo_using_udp_packet` + +## Bug Fixes & Stability + +- **Memory Leak Fixes**: + - Resolved memory leaks in the SDIO driver during unload/deinit by ensuring proper buffer cleanup and `sdio_slave_send_get_finished` usage. + - Fixed memory leaks in `esp_hosted_cli` by adding proper deregistration APIs for Hosted-specific commands. + - Cleanly handled timer memory removal in the Host Power Save component. +- **Concurrency & Race Conditions**: + - Added semaphore protection (mutex) in `host_power_save.c` to prevent race conditions when multiple threads attempt to wake the host simultaneously. +- **Timing & Reset Improvements**: + - Adjusted task delays in the host wakeup sequence to prevent the host from receiving incorrect or premature reset signals during the wake-up transition. + +--- + +# $${\color{red} \text{2.8.4}}$$ + +## Features: Slave Auto Light sleep + +- Auto Invoked when host triggers deep sleep +- Example implementation in example_light_sleep.c + +# Known issue + +There is memory leak when sdio driver unload is selected - working on the fix + +# $${\color{red} \text{2.8.3}}$$ + +Add up mutex protection for callback array for Peer Data Transfer + +# $${\color{red} \text{2.8.2}}$$ + +## Amend Peer Data Transfer example with custom msg id + +Amend [Peer Data Transfer Example](https://components.espressif.com/components/espressif/esp_hosted/examples/host_peer_data_transfer): + +Features: +- User can register callback-based dispatch for their own msg ids, both at host and slave +- Configurable handler slots via Kconfig (default: 3) + +API: +- esp_err_t esp_hosted_send_custom_data(uint32_t msg_id, const uint8_t *data, size_t data_len) +- esp_err_t esp_hosted_register_cu + stom_callback(uint32_t msg_id, void (*callback)(uint32_t msg_id, const uint8_t *data, size_t data_len)); + +Example (examples/host_peer_data_transfer): +- Uses animal sound theme (CAT→MEOW, DOG→WOOF, HUMAN→HELLO) +- Host sends CAT_MSG_ID, with byte stream. Slave sends back same stream with MEOW_MGD_ID and so on. + +Configuration: +- Host: CONFIG_ESP_HOSTED_MAX_CUSTOM_MSG_HANDLERS (Kconfig) +- Slave: CONFIG_ESP_HOSTED_MAX_CUSTOM_MSG_HANDLERS (Kconfig.projbuild) +- Ported as H_MAX_CUSTOM_MSG_HANDLERS on host side + +## Allow to disable app_main() from slave + +**Kconfig : `CONFIG_ESP_HOSTED_COPROCESSOR_APP_MAIN`** at coprocessor menuconfig +- **Default**: Enabled (for slave example from registry) +- **Purpose**: Controls whether ESP-Hosted provides its own `app_main()` +- **When to disable**: + - Using ESP-Hosted slave code base as a component in your application + +# $${\color{red} \text{2.8.1}}$$ + +## Example: [Peer Data Transfer Example](https://components.espressif.com/components/espressif/esp_hosted/examples/host_peer_data_transfer) + +## Features + +- Supports sending and receiving arbitrary (preformatted) user data from/to host and slave +- Maximum payload size: 8166 bytes per packet + +## APIs + +- `esp_hosted_send_custom_data(data, length)`: Send raw binary data to coprocessor +- `esp_hosted_register_rx_callback_custom_data(callback)`: Register callback for receiving custom data + +# $${\color{red} \text{2.8.0}}$$ - Network Split (Shared IP) + +**Network Split (Shared IP)** + +This major update allows the **Host MCU** and the **ESP Slave** to share a **single IP address** while running independent network stacks. This is ideal for low-power products where the Slave handles background tasks while the Host sleeps. + +- Disabled by default. Enable using `CONFIG_ESP_HOSTED_NETWORK_SPLIT_ENABLED` config +- **Documentation**: [Network Split Guide](https://github.com/espressif/esp-hosted-mcu/blob/main/docs/feature_network_split.md). + +## Example: [Network Split with Host Power Save Example](https://components.espressif.com/components/espressif/esp_hosted/examples/host_network_split__power_save) + +## **Key Additions** + +- Smart Traffic Routing: `nw_split_router.c` automatically directs traffic through function, `nw_split_filter_and_route_packet()` +- **Port-based (TCP/UDP)**: Uses `CONFIG_LWIP_TCP_LOCAL_PORT_RANGE` and `CONFIG_LWIP_UDP_LOCAL_PORT_RANGE` to decide if the Host or Slave handles a packet. +- **Reserved Ports**: Mandate packets on specific ports (e.g., 80, 443) to the Host via `CONFIG_ESP_HOSTED_HOST_RESERVED_PORTS_CONFIGURED`. +- **Non TCP/UDP**: Built-in handling for `ARP`, `ICMP`, and `DHCP` on coprocessor (configurable) to offload host for other priority work or deep sleep +- iperf Performance + - Demo of sharing same port: Port `5001` is shared smartly, allowing performance testing on either stack (at a time) without reconfiguring. +- Low-Power Support + - (Optionally) Deeply integrated with [Host Power Save](https://github.com/espressif/esp-hosted-mcu/blob/main/docs/feature_host_power_save.md) +- Smart Wakeup demo + - The Slave can "wake up" the Host when it receives specific traffic or an MQTT message containing the `"wakeup-host"` string. +- **Collision Prevention** + - Added `esp_hosted_lwip_src_port_hook.h` to ensure the Host and Slave never try to use the same source port. +- **Supported Targets** + - **Slaves**: ESP32-C5, C6, S2, S3. + - **Hosts**: ESP32-P4, H2, and non ESP MCUs. + +ESP Component Registry Release: [2.8.0](https://components.espressif.com/components/espressif/esp_hosted/versions/2.8.0) + +# $${\color{red} \text{2.7.4}}$$ + +## Bug Fixes + +- fixed co-processor to properly allow wifi init and deinit +- fixed registration of event handlers in co-processor + +# $${\color{red} \text{2.7.3}}$$ + +## Bug Fixes + +- fixed RPC Response for OTA commands to return errors in responses correctly +- fixed double free bug in host OTA example + +# $${\color{red} \text{2.7.2}}$$ + +## Bug Fixes + +- Stable workaround for ota writes to slave + +# $${\color{red} \text{2.7.1}}$$ + +- Add support for more PCBs: + - ESP32-P4 Core Board - with on-board C5 + - ESP32-P4 Core Board - with on-board C6 + +# $${\color{red} \text{2.7.0}}$$ + +## Bug Fixes + +Restructured the ESP-Hosted-MCU commits + +# $${\color{red} \text{2.6.8}}$$ + +## Bug Fixes + +- Clean up ESP-Hosted prints at host + +# $${\color{red} \text{2.6.7}}$$ + +## Features + +- Added Hosted API call to get co-processor Application Descriptor + +# $${\color{red} \text{2.6.6}}$$ + +## Bug Fixes + +- Fixed sta connection to remove extra disconnected event if incoming station config is different from current station config +- IRAM size limitation when using UART transport only applies to ESP32, not to all SOCs. +- workaround a bug in `esp_wifi_get_protocol()` that can cause memory corruption. See this [ESP-IDF Issue](https://github.com/espressif/esp-idf/issues/17502). +- updated CI pipelines to build mqtt/tcp example from Registry Component on master branch + +# $${\color{red} \text{2.6.5}}$$ + +## Features + +- Add example showing concurrent use of a SD Card and ESP-Hosted. + +# $${\color{red} \text{2.6.4}}$$ + +## Bug Fixes + +- Fix the `esp_wifi_deinit()` call from host + +# $${\color{red} \text{2.6.3}}$$ + +## Bug Fixes + +- Increase timing used to reset co-processors to work with a slower FreeRTOS clock tick +- Updated documentation on performance optimization + +# $${\color{red} \text{2.6.2}}$$ + +## Bug Fixes + +- fixed bug in enabling `esp_eap_client_set_eap_methods` on co-processor based on ESP-IDF version + +# $${\color{red} \text{2.6.1}}$$ + +## Bug Fixes + +Minor fixes in Slave OTA example + +# $${\color{red} \text{2.6.0}}$$ + +- Added public OTA APIs for slave firmware updates +- Added host-triggered slave OTA example with support for HTTP, partition, and filesystem sources +- Support for LittleFS filesystem-based OTA updates +- Migration guide updated for 2.6.0 + +## APIs added + +- `esp_hosted_ota_begin` +- `esp_hosted_ota_write` +- `esp_hosted_ota_end` +- `esp_hosted_ota_activate` + +## APIs deprecated + +- `esp_hosted_slave_ota` - Use the new [Host Performs Slave OTA Example](examples/host_performs_slave_ota/README.md) instead for more flexible OTA implementations with comprehensive documentation and multiple deployment methods + +## Examples added + +- `host_performs_slave_ota` - Host-triggered slave OTA example supporting HTTP URLs, partition sources and LittleFS filesystem sources + +# $${\color{red} \text{2.5.12}}$$ + +## Features + +- Add SPI (full and half duplex) and UART support for ESP32-C61 +- Updated documentation on applying optimised Wi-Fi settings to sdkconfigs + +## Bug Fixes + +- Fixed build issues when raw throughput testing is enabled +- Fixed bug in co-processor causing SDIO to operate only in packet mode + +# $${\color{red} \text{2.5.11}}$$ + +## Bug Fixes + +- Fixes to use compatible version of `idf-build-apps` and constraints during CI pipeline builds +- Renamed CI pipelines to "sanity" and "regression" +- Prefix jobs with `sanity_` or `regression_` to make their names unique +- Enabled building of ESP-Hosted examples in regression pipeline +- Various bug fixes found in the process of fixing the CI pipelines + +# $${\color{red} \text{2.5.10}}$$ + +## Features + +- Version, 2.5.8 - 2.5.10: + - Add staging branch workflow for safer component releases + +# $${\color{red} \text{2.5.7}}$$ + +## Bug Fixes + +- Fixed build break when CLI Commands are enabled on coprocessor + +# $${\color{red} \text{2.5.6}}$$ + +## Bug Fixes + +- Updated co-processor and some example `idf_component.yml` files to set component dependencies based on the ESP-IDF version in use + +# $${\color{red} \text{2.5.5}}$$ + +## Bug Fixes + +- Fixed build errors when using latest version of ESP-IDF +- Updated Wi-Fi Easy Connect (DPP) code to match current ESP-IDF master +- Adjusted CI pipeline + +# $${\color{red} \text{2.5.4}}$$ + +## Features + +- Added building with ESP-IDF v5.3 in CI +- Added building ESP-Hosted examples in CI + +## Bug Fixes + +- Fixed building with ESP32-H2 as host in CI (was skipping build) + +# $${\color{red} \text{2.5.3}}$$ + +## Bug Fixes + +- Fix the ESP-IDF CI + +# $${\color{red} \text{2.5.2}}$$ + +## Features + +- Add support to get and set the BT Controller Mac Address +- To support set BT Controller Mac Address, BT Controller is now disabled by default on the co-processor, and host must enable the BT Controller. See [Initializing the Bluetooth Controller](https://github.com/espressif/esp-hosted-mcu/blob/main/docs/bluetooth_design.md#31-initializing-the-bluetooth-controller) for details +- Updated all ESP-Hosted BT related examples to account for new BT Controller behaviour + +## APIs added + +- `esp_hosted_bt_controller_init` +- `esp_hosted_bt_controller_deinit` +- `esp_hosted_bt_controller_enable` +- `esp_hosted_bt_controller_disable` +- `esp_hosted_iface_mac_addr_set` +- `esp_hosted_iface_mac_addr_get` +- `esp_hosted_iface_mac_addr_len_get` + +# $${\color{red} \text{2.5.1}}$$ + +## Bug Fixes + +- Added dependency on `esp_driver_gpio` + +# $${\color{red} \text{2.5.0}}$$ + +## Bug Fixes + +- Remove dependency on deprecated `driver` component and added necessary dependencies instead + +# $${\color{red} \text{2.4.3}}$$ + +## Features + +- Add support for Wi-Fi Easy Connect (DPP) +- [Espressif documentation](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-reference/network/esp_dpp.html) on Wi-Fi Easy Connect (DPP) +- [ESP-Hosted Enrollee Example](https://github.com/espressif/esp-hosted-mcu/tree/main/examples/host_wifi_easy_connect_dpp_enrollee) using DPP to securely onboard a ESP32P4 with C6 board to a network with the help of a QR code and an Android 10+ device + +## APIs added + +- `esp_supp_dpp_init` +- `esp_supp_dpp_deinit` +- `esp_supp_dpp_bootstrap_gen` +- `esp_supp_dpp_start_listen` +- `esp_supp_dpp_stop_listen` + +# $${\color{red} \text{2.4.2}}$$ + +## Bug Fixes + +- Fix ignored lwip hook header in slave example + +# $${\color{red} \text{2.4.1}}$$ + +## Bug Fixes + +- Reduced ESP32 bootloader size + +# $${\color{red} \text{2.4.0}}$$ + +## Features + +- Added support for Wi-Fi Enterprise + +## APIs added + +- `esp_wifi_sta_enterprise_enable` +- `esp_wifi_sta_enterprise_disable` +- `esp_eap_client_set_identity` +- `esp_eap_client_clear_identity` +- `esp_eap_client_set_username` +- `esp_eap_client_clear_username` +- `esp_eap_client_set_password` +- `esp_eap_client_clear_password` +- `esp_eap_client_set_new_password` +- `esp_eap_client_clear_new_password` +- `esp_eap_client_set_ca_cert` +- `esp_eap_client_clear_ca_cert` +- `esp_eap_client_set_certificate_and_key` +- `esp_eap_client_clear_certificate_and_key` +- `esp_eap_client_set_disable_time_check` +- `esp_eap_client_get_disable_time_check` +- `esp_eap_client_set_ttls_phase2_method` +- `esp_eap_client_set_suiteb_192bit_certification` +- `esp_eap_client_set_pac_file` +- `esp_eap_client_set_fast_params` +- `esp_eap_client_use_default_cert_bundle` +- `esp_wifi_set_okc_support` +- `esp_eap_client_set_domain_name` +- `esp_eap_client_set_eap_methods` + +# $${\color{red} \text{2.3.3}}$$ + +## Features + +- Added SDIO support for ESP32-C61 + +# $${\color{red} \text{2.3.2}}$$ + +## Features + +- Add host example to showcase transport config before `esp_hosted_init()` + +# $${\color{red} \text{2.3.1}}$$ + +## Bug Fixes + +- Fixed a build break caused by refactoring + +# $${\color{red} \text{2.3.0}}$$ + +## Features + +- Refactored common and port specific code + +# $${\color{red} \text{2.2.4}}$$ + +## Bug Fixes + +- Fixed SPI Full Duplex startup sequence +- Fixed incorrect Handshake GPIO assignment for C5 on Module +- Added valid CPU frequencies in ITWT Example for H2 + +# $${\color{red} \text{2.2.3}}$$ + +## Bug Fixes + +- Fixed itwt build break for IDF v5.3.1 + +# $${\color{red} \text{2.2.2}}$$ + +## Features + +- Added support for Wi-Fi Power Save and ITWT +- Added ITWT example +- Updated copyright check to allow Unlicensed or CC0-1.0 files + +## APIs added + +- `esp_wifi_set_inactive_time()` +- `esp_wifi_get_inactive_time()` +- `esp_wifi_sta_twt_config()` +- `esp_wifi_sta_itwt_setup()` +- `esp_wifi_sta_itwt_teardown()` +- `esp_wifi_sta_itwt_suspend()` +- `esp_wifi_sta_itwt_get_flow_id_status()` +- `esp_wifi_sta_itwt_send_probe_req()` +- `esp_wifi_sta_itwt_set_target_wake_time_offset()` + +# $${\color{red} \text{2.2.1}}$$ + +## Features + +- Allow external code to override Hosted BT Tx function by making it a `weak` reference + +# $${\color{red} \text{2.2.0}}$$ + +## Features + +- Add support for fragmentation of packets from sdio host to slave + +# $${\color{red} \text{2.1.11}}$$ + +## Bug Fixes + +- Fixed SoftAP operation issues diff --git a/firmware/components/esp_hosted/CHECKSUMS.json b/firmware/components/esp_hosted/CHECKSUMS.json new file mode 100644 index 0000000..3f4df22 --- /dev/null +++ b/firmware/components/esp_hosted/CHECKSUMS.json @@ -0,0 +1 @@ +{"version":"1.0","algorithm":"sha256","created_at":"2026-06-25T13:42:20.637982+00:00","files":[{"path":".codespellrc","size":237,"hash":"29cd325c3c517c850723a42a5f0eae20e072481e54a0cbca0e7b8b6dd5190cf7"},{"path":".pre-commit-config.yaml","size":1356,"hash":"a09689be30bf374c377242a266904dd65c207eab7c24dcc4d62992ae5ac1064d"},{"path":"README.md","size":20380,"hash":"2d4fa91ba67480138b10d13485c908064eab42af8369675d80cb1c8a6664a95c"},{"path":".idf_build_apps.toml","size":24,"hash":"d6afd10e102fcb1e33675c90083f29daa416e80ebce43d74dcfbfa6468c57844"},{"path":"sdkconfig.ci.all_features_enabled","size":403,"hash":"95697a43432d4a3a821ecd896b3905a94fe393eb865e2778f5fbaf986516ab82"},{"path":"LICENSE","size":11358,"hash":"cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30"},{"path":"Kconfig","size":96583,"hash":"3e1d1a8475ab643f7690528db7a16f46c28b5ed02c13e2b9889b93fe8d82200a"},{"path":".gitmodules","size":124,"hash":"e002eb525d93dab0f270194db27817d6c95b196ade011c8df52c73261b25ceba"},{"path":"CHANGELOG.md","size":28058,"hash":"8bb49a6a3d561e6fd1cac5570b6e7e7e6e861ac88f956d99309f56fbd963d809"},{"path":".editorconfig","size":566,"hash":"f1472ee44e67a4463e6c89707e330883bd94c97547fd87f88b1cf49152c54583"},{"path":"sdkconfig.rename","size":11520,"hash":"cf18e72dd16ab155ba2ccf1345bd0bb1b83fabc0aef979d3dc0f02cebc831340"},{"path":"CMakeLists.txt","size":6721,"hash":"8452c4c73ba8d11f657e6e1e9c99cc3ffc7aa8ddbc0570eab2e66df5bf7171bb"},{"path":".gitignore","size":67,"hash":"ce5f910725d0ceb4c1e8dacfde568cc82d2ef9aad78718d8eca8abb0fee8860b"},{"path":"idf_component.yml","size":353,"hash":"35bc7023cc3348a72d6a764563642bd57b4c8227dd4622a0c3e00fe353896dfd"},{"path":".gitlab-ci-override-idf-component.yml","size":137,"hash":"fee047867ff7837ed8ee64a666276da36d64be24b7d6dc00dc023d4b3a31e3da"},{"path":"docs/spi_full_duplex.md","size":27033,"hash":"8b8d26fddb82cc3c6ed8b87ebe6e43e4e3ff5340dd3abc5322556272e0ef56ca"},{"path":"docs/setup_esp_idf__latest_stable__linux_macos.fish","size":2579,"hash":"80d3968c4113e444ed2a54e9062e3863d60cdb41b92a89d4ba60bb5114ffcd65"},{"path":"docs/shield-box-test-setup.md","size":3725,"hash":"06bd172b8cb903f0db97c191925480eaf2b37140d4053e59ed8e7dc2679a5236"},{"path":"docs/gpio_expander.md","size":2227,"hash":"196f2c15a8d9b06da603844f77c45f724ffdf6f4670aeeec919e2a423488e2d4"},{"path":"docs/troubleshooting.md","size":7331,"hash":"96d3e3c49f60bdfff75cbd7e673f723b8ba56dbd33aabd6fddd13ab39500273e"},{"path":"docs/design_consideration.md","size":8315,"hash":"40b94e2effe87bda9b9db1d5637312212cda47e91140e676b578a119dff40948"},{"path":"docs/openthread_zigbee.md","size":11067,"hash":"e3768c7a7ae97034e7ea17683a68e06ce0171c9baddc4437ac1fdab3112efb66"},{"path":"docs/implemented_rpcs.md","size":9914,"hash":"72e02c5d6b45f4774d1adb8601c8a3491a0c445c1f0d4dcf43c41eb61ad02a97"},{"path":"docs/migration_guide.md","size":9464,"hash":"ac06ce76c46422f0e1b186b13b6f918356b85129115c93a5d7c00e4f6a9f31fa"},{"path":"docs/performance_optimization.md","size":13619,"hash":"e680dd6b61212ea3511dacce7d70392c0969c2416df768bae64c2f504816d024"},{"path":"docs/uart.md","size":19788,"hash":"2e0be6e810d6b56a8a08f3abf2df7554100882f9933dfd9a283804ce7e47dff6"},{"path":"docs/esp32_p4_function_ev_board.md","size":12743,"hash":"83b566ff46b80e623b1d2353b64e493cbf38b140a0874a25b1c8f3b671ef3bca"},{"path":"docs/spi_half_duplex.md","size":37297,"hash":"1a837b91c7cf155ac89fac32afa636075b3f19db39be75995ab90020aca36c94"},{"path":"docs/feature_network_split.md","size":6843,"hash":"486859173a85e360c4257a067c576487514a4aa7c33afa901726e76c2746ed39"},{"path":"docs/sdio.md","size":31666,"hash":"53b451b625e9f366518604d7f5226cd519f354ad9d5a0ed63f4062fa7fb1ff76"},{"path":"docs/setup_esp_idf__latest_stable__linux_macos.sh","size":2595,"hash":"dda6ee7886d6ae10617f9ee6a244d593920af04a45d76e8e53ab205d8befc382"},{"path":"docs/features.md","size":1718,"hash":"cf34cf5bb2f33b785a3dbfde0677731704e3e574d3f88203694aca4ff2abd41e"},{"path":"docs/bluetooth_design.md","size":19960,"hash":"8e8b0804c113a8ca560374e862d905a2e61022672a1f474a468fd376ac21aec7"},{"path":"docs/feature_host_power_save.md","size":13933,"hash":"5cdc624cf3d90a6167071c5a5cbde051114b3be84a076aac1f78e2d795afbe16"},{"path":"docs/wifi_design.md","size":2565,"hash":"22ca7cdf2b425300e6b070417548dfa4a8e09bfcd3ac658516f5cf59f78dbeb1"},{"path":"tools/check_fw_versions.py","size":7775,"hash":"df481d3bc65995d752b988210dbc309aad75adbc06672125f290e1c3718b412a"},{"path":"tools/check_rpc_calls.py","size":2836,"hash":"aa82d761796d457a39b290a9d80a571abdf8c272bb4877061cf15203942a1f25"},{"path":"tools/check_weak_functions.py","size":7354,"hash":"8dccd5db8e91ff87ae86cf4b602bf8a677261d99bbe64798bcae44f466ea1b70"},{"path":"tools/check_changelog.py","size":2489,"hash":"559cfd687178ecfb521d972c6d7653f14e95a484d34093c02677c6f60e57ba73"},{"path":"tools/check_copyright_config.yaml","size":1500,"hash":"7b7159ac4ac0634a78836192479f79021792b38f2a3a1721e6ac7a48c4cbb97c"},{"path":"common/esp_hosted_header.h","size":1308,"hash":"0b1c053e0f1f1008fc94b5558fd85a2bc7c0f6b44a8eebe81a78a035f6a36cfe"},{"path":"common/esp_hosted_lwip_src_port_hook.h","size":3255,"hash":"6a0039ba1849aac2d54b2560848bd81b9ca6228a75670a397fbdf14500cec997"},{"path":"common/esp_hosted_interface.h","size":427,"hash":"e310b9c7b1cda5153c1f5f89acbe238bbf8434bf94dfcdfa18aed5770f8039b9"},{"path":"slave/partitions.esp32c5.csv","size":469,"hash":"bd54e0ddc86c2d83dac507e3c07604ccf6ccc99bb853e0f7c2022f568645bd0d"},{"path":"slave/README.md","size":4783,"hash":"9ea69f472d4ea3de7a4bb73e585a0f39c7ac37b05db7d78f4adf3b318c275cbd"},{"path":"slave/partitions.esp32.csv","size":214,"hash":"aee6a660ce29cdb0f559f8d4b8bcfffede8506d21af71f0e6d2a8e1337de97ce"},{"path":"slave/sdkconfig.ci.sdio","size":33,"hash":"efb955dd4883905ba2f47894b9978c5b747062cf04819c5125350116f170854c"},{"path":"slave/sdkconfig.ci.spi","size":118,"hash":"2bf67e41c0e3165cfff03eb4f9357393e96fd6e085913499c776b4aa3f755a86"},{"path":"slave/partitions.esp32h2.csv","size":216,"hash":"3c45253f50f0248dccea26bb42677714087c2330a68729d1808fad7439076434"},{"path":"slave/sdkconfig.defaults.esp32","size":1340,"hash":"7933eca36b26b2fd58d26736711be43b9541bcc5a329ed1713e1150e66369df9"},{"path":"slave/sdkconfig.defaults.esp32h4","size":176,"hash":"a92b60ebbde096176b2412673b4542a16987874d942ca20061b635232034d182"},{"path":"slave/sdkconfig.ci.spi_hd","size":35,"hash":"0929a91ccdeb6545c24fa3f67d82b501085aa07a5571fc24132dec98955d801c"},{"path":"slave/sdkconfig.ci.openthread_rcp","size":401,"hash":"36ef7e2d3bc157d0b7746ddb080d0f8117ba15ab6720e2ab4ced74a8127383ba"},{"path":"slave/partitions.esp32c2.csv","size":218,"hash":"5c82f02fe91cec4c6be91fd1bed9424901ef9037cb3349d59d618b258d04311d"},{"path":"slave/sdkconfig.ci.wifi_enterprise","size":37,"hash":"4990ee5df7e8ec5998c3f7495e673e4dabed4b6efc46df834fa161601dd0ca49"},{"path":"slave/sdkconfig.defaults.esp32c3","size":2137,"hash":"5fd6af5d26870340eec1ac4afe3ee29b9bf1a4aa405793629ed782db83effd5b"},{"path":"slave/partitions.esp32c3.csv","size":214,"hash":"a5badff008051af5695e353bc3e035bb3a2d4c01bef391ceb5267d76ebe4683f"},{"path":"slave/partitions.esp32s2.csv","size":214,"hash":"a5badff008051af5695e353bc3e035bb3a2d4c01bef391ceb5267d76ebe4683f"},{"path":"slave/partitions.esp32h4.csv","size":216,"hash":"3c45253f50f0248dccea26bb42677714087c2330a68729d1808fad7439076434"},{"path":"slave/sdkconfig.ci.dpp","size":63,"hash":"2716edd63d13b553873af4f9361a8962a801bee6903991c60e54f64fc12432fa"},{"path":"slave/partitions.esp32s3.csv","size":214,"hash":"a5badff008051af5695e353bc3e035bb3a2d4c01bef391ceb5267d76ebe4683f"},{"path":"slave/sdkconfig.defaults.esp32s2","size":1390,"hash":"5d47d508dc9cbda54651e138d617c1c45246d21139c3431e9f223bdab169a749"},{"path":"slave/sdkconfig.rename","size":275,"hash":"f2695d366e2ae9ecdcd6fd4260eedcd8b8a3e7e48e0d347e550717e71ea3d2e9"},{"path":"slave/sdkconfig.ci.all_features","size":328,"hash":"b58dee8adeac82ea6252cf835d7966c5855fade82502b9d689cee0a5b312025c"},{"path":"slave/CMakeLists.txt","size":3272,"hash":"6bbedae1becddf4c7c4c7ca10f31dd3e81b2dd34a9d1bc58581acda0e15b524b"},{"path":"slave/sdkconfig.defaults.esp32c2","size":2407,"hash":"f418157b0774c96214348af363132ca340599752dc74eb53e0e67507062c9433"},{"path":"slave/sdkconfig.defaults.esp32c6","size":3024,"hash":"ea1a10dfafb0f724a299657f9283611ef3e25e93bbef46d6a0fd23229066f4de"},{"path":"slave/sdkconfig.defaults.esp32c5","size":2991,"hash":"ca1c52cd02e438d9da9a21fba27b4b52e0ef5741acb22ab2ccf42465cab72478"},{"path":"slave/sdkconfig.ci.uart","size":167,"hash":"a46fccbd351e540846d38d5288a626ebbce1f392ed8a26039532a5fb310c1a89"},{"path":"slave/sdkconfig.defaults","size":1078,"hash":"e17d518f2b16d0f7749f7eb3f0677633e36046c801ad9a360f22adbdc81d07d0"},{"path":"slave/sdkconfig.defaults.esp32h2","size":176,"hash":"9fd63056bfe45475b66667868544b557ac55657393bc7b709467f58f8a94b0f0"},{"path":"slave/partitions.esp32c61.csv","size":214,"hash":"a5badff008051af5695e353bc3e035bb3a2d4c01bef391ceb5267d76ebe4683f"},{"path":"slave/partitions.esp32c6.csv","size":271,"hash":"501aa2c084bb520be3d6c6ac6b5c342622912b0121312c5fe9514a0e6bad6216"},{"path":"slave/sdkconfig.defaults.esp32s3","size":1058,"hash":"e9bad8bb9ce25c11dfd065417f457d61c090ba1668f0fb7d3fe0f5f5866ad1e5"},{"path":"slave/sdkconfig.defaults.esp32c61","size":365,"hash":"8d4f56852a0f3801590511b9a3908799de232ceef34776adc16c6072428a48e2"},{"path":"host/esp_hosted_bluedroid.h","size":708,"hash":"8d3d03c2056969e1cbe2dbb370c07d2985b0624621a830243e0587c96528df51"},{"path":"host/esp_hosted_os_abstraction.h","size":6416,"hash":"13ffd0f11a6c1d89f7fd2cab1f3cf6308a491e03968366915a9f7d18ed245c75"},{"path":"host/esp_hosted_bt.h","size":272,"hash":"d58d7a3719ca2e47596daa4cbeba2cef59ecabfe3f77b52cca863b6aaa4b06f6"},{"path":"host/esp_hosted_misc.h","size":6595,"hash":"2ef2dcc417c4137bc05f87bd1129a60ebbb7eabb0a0d5f6906a1e63c5b5506b2"},{"path":"host/esp_hosted_misc_types.h","size":2843,"hash":"57f919403d6481cf1941d82b668233dc70175e70267dfaf7605e0a0b47f374cb"},{"path":"host/esp_hosted.h","size":1665,"hash":"19b11522bce890f20e2ff97df8b1582a76954ecc7652e6a89c1fd7be786e58dd"},{"path":"host/esp_hosted_event.h","size":957,"hash":"abd52124af6adf4cfce91e41006d8a4057b8a7383fa40ab5c1af6139782b0131"},{"path":"host/esp_hosted_host_fw_ver.h","size":1181,"hash":"f08514328e21cfd82ff96c8438811af4b00332cc54c0a3f77517a81ea393ef94"},{"path":"host/utils/stats.c","size":6693,"hash":"3bce61ec956e7276b40789a70865a3b86e846e0ffa1f50c1a7835a5562327882"},{"path":"host/utils/stats.h","size":3478,"hash":"9264660137717a222b984b847d5d8cd17e85cb9061948d2d51992f4288261ab0"},{"path":"host/api/priv/esp_hosted_api_priv.h","size":7717,"hash":"2ee0a84309e16081b4ff72454e2e04e28c346765ecc166a31aafdd82798a928d"},{"path":"host/api/include/esp_hosted_openthread.h","size":1563,"hash":"fa2fb8be5b1cf88439ddac9a9ee9ae95f24aeb504d6fd7cb7208378c08bf833f"},{"path":"host/api/include/esp_hosted_power_save.h","size":2418,"hash":"4c971cf197d95e2dd77dd24e07f8a62ff37e088ccafb6ec590658d68349b11ab"},{"path":"host/api/include/esp_hosted_cp_gpio.h","size":2783,"hash":"4906f00899b79b050a7e6bf09cc936a133a6c7b1e3d9a2c21abc097d6b0761b0"},{"path":"host/api/include/esp_hosted_wifi_remote_glue.h","size":1270,"hash":"a6c10a33faa867f662dc54130d7f828c56f0f22eb1a920684cdbdcd5d491bae8"},{"path":"host/api/include/esp_hosted_api_types.h","size":486,"hash":"cc355660ea07f9ad6a037bc813a7861a85cd0b33cc296d52b7fdf5b6dc47ada5"},{"path":"host/api/include/esp_hosted_transport_config.h","size":5354,"hash":"3756f25912e4103d91bb852202c9cbd54ca4d6dfae8e637cbac5b58685bf716f"},{"path":"host/api/include/esp_hosted_cp_ext_coex.h","size":2926,"hash":"94c872187a0f80d2e652496e70b6c91f10b301113b115995c2faf7805d410aa8"},{"path":"host/api/include/esp_hosted_ota.h","size":2612,"hash":"373aab1bdcd9b719534bdb11238d967e9d6ceae34791eb607cb899ccae216e94"},{"path":"host/api/src/esp_hosted_api.c","size":25877,"hash":"932c0d89ec191b00377c7c1b5a559b704a2a7b9fbcde6985a24ebcefad56eece"},{"path":"host/api/src/esp_hosted_ota_api.c","size":1064,"hash":"ada1a0ad440c006b2b98ee33df3c0b89e32c8f91fe834fe92f59842fe32ba6bf"},{"path":"host/api/src/esp_wifi_weak.c","size":12813,"hash":"5703a2275033a33d1bed16242f18e43eb4895c281143e2762b2c792ba2d0164d"},{"path":"host/api/src/esp_hosted_transport_config.c","size":8248,"hash":"a0aee9adf6578b2b3dde88b5fdfa37df9b49163e2203ae4be01ae99f1af6b571"},{"path":"host/drivers/serial/serial_drv.h","size":2514,"hash":"3bb8a2c0a9478abc0f4a3afa47f11df388373a5720b5d2cb75b4fd8b5d19fb70"},{"path":"host/drivers/serial/serial_drv.c","size":6958,"hash":"8cf3f469abd42e9d83768d68953e64e57152332a01598e4726de78e92f3c06a7"},{"path":"host/drivers/serial/serial_ll_if.h","size":2830,"hash":"8a73c8e238f9b23722668e2c9fabffab573988fb1f3ecc5b000bc562c8cb36e6"},{"path":"host/drivers/serial/serial_ll_if.c","size":11405,"hash":"7a706a8c40304b5730f4bea9acc8a48a361df9d76c09cc8f225e06bdc93bdde2"},{"path":"host/drivers/transport/transport_drv.c","size":27851,"hash":"f2291db3898b93d0afbc43656af559435d0401bf72e9212b797ab304d9e93dec"},{"path":"host/drivers/transport/transport_util.h","size":1280,"hash":"89b52783d3e55afd4a1dc442a411cb1610989791b72317dbc12f0d40d6fd27ad"},{"path":"host/drivers/transport/transport_drv.h","size":5039,"hash":"e559c1a7a862771e1db8d039b2cc9f63121a3d3e467ba07e6622d9e26ade521a"},{"path":"host/drivers/transport/transport_util.c","size":849,"hash":"26ada0464c5a5eb9df20138786289bb8bd640b96612c4d45e0942f900e3d307c"},{"path":"host/drivers/bt/hci_drv.h","size":296,"hash":"52ed60359272ab29f6aaa6adeebe9355679942403b1c1faf1eac0f7b4b424362"},{"path":"host/drivers/bt/hci_stub_drv.c","size":2227,"hash":"a43abd15e2018795ad9b0cc2e11c3027ab05131899bd5ad573cf30eb3133193a"},{"path":"host/drivers/bt/vhci_drv.c","size":6450,"hash":"07eff80e4da719234df49617d8e56368af94d9a2bcfc837a9a6c8b758955460a"},{"path":"host/drivers/virtual_serial_if/serial_if.h","size":1486,"hash":"32db8c4641bd8526a731d64a4b981e7dc631f36dbde588a07fe713293e076437"},{"path":"host/drivers/virtual_serial_if/serial_if.c","size":5671,"hash":"970bbef6c2bc0f3da7d3db993aef78252db03f966a5d89ed068f01085ee0aff9"},{"path":"host/drivers/power_save/power_save_drv.c","size":9731,"hash":"aa0d9f6124954ff25d275a002c5879cfb093b026a7239272a7d497333c92e11a"},{"path":"host/drivers/power_save/power_save_drv.h","size":1036,"hash":"1d325d9bf9823c86631fa9f7c8fe0f0476fbc55b8e6bbe831ddcd0b76b8f8280"},{"path":"host/drivers/transport/spi_hd/spi_hd_drv.c","size":30534,"hash":"f56d4048b755eeda48c1841b82e545d8b6a7e2a1b2cf316f520de5fd96961bc8"},{"path":"host/drivers/transport/spi_hd/spi_hd_drv.h","size":234,"hash":"cf84253fd554dbf1683f76a78df2b59b829094db34d8b17328b40fd07c536bbf"},{"path":"host/drivers/transport/spi/spi_drv.c","size":30583,"hash":"fe242e1f4b9212305df911e4f978bb551c9e5c62655804700ba2cef6429503fe"},{"path":"host/drivers/transport/spi/spi_drv.h","size":548,"hash":"a0eb800ac889ecd61a175a082cf419ae76b20bcfe7ba3b744487652f88d35a9e"},{"path":"host/drivers/transport/sdio/sdio_reg.h","size":3987,"hash":"0a5f1359839a6d14d77ebcb57bffa5d0c20846c122424483264a593b7f5d2395"},{"path":"host/drivers/transport/sdio/sdio_drv.h","size":383,"hash":"b22ce15afcac9215a7ba498bd341fbff46a4614c16f8045afaf247d599286dbe"},{"path":"host/drivers/transport/sdio/sdio_drv.c","size":53519,"hash":"f8454328f5b9f0bee678fef95070466404d942bf4fc579e27a01546be8421221"},{"path":"host/drivers/transport/uart/uart_drv.c","size":23051,"hash":"8c3fa9fcf26b537ea30c0dc7b4224acc1421fbdc791e3d8bb760aa96006468d0"},{"path":"host/drivers/rpc/wrap/rpc_wrap.c","size":80763,"hash":"e810713ef04c5dc3b7b3030314ee1171ef879dbe5c2d632f6eecf27a2aca46aa"},{"path":"host/drivers/rpc/wrap/rpc_wrap.h","size":8980,"hash":"10e862bd749577bced83e1f7c851e39431c89c39a7c5c4469a4ae836fe47c387"},{"path":"host/drivers/rpc/slaveif/rpc_slave_if.c","size":18012,"hash":"a63c8824da01f50225df518693e395fe5cbf4654d216202791903303ff223086"},{"path":"host/drivers/rpc/slaveif/rpc_slave_if.h","size":26775,"hash":"d1c53fc62fc6fb683ad94ad735b70f88d70a12b22d87b17d67cf2069b523884b"},{"path":"host/drivers/rpc/core/rpc_core.c","size":32894,"hash":"b73f514525d0f7bcd3665c0a3613236c50a58f7a845d3553c9f92d56ee4db6df"},{"path":"host/drivers/rpc/core/rpc_utils.c","size":4482,"hash":"3b2a5f8e4f9b8e035b8fb65f2caa4b596249b58b124b338fdfab6c7c09cb77a4"},{"path":"host/drivers/rpc/core/rpc_core.h","size":5872,"hash":"77517333b4bbc2e68b8c34203847fd5fe11258420e2a530076d37728021cb241"},{"path":"host/drivers/rpc/core/rpc_rsp.c","size":35753,"hash":"0857c7ec8ffbae9f1f2bb284bf6a941ec65e6e429fc109e0cfeadf11bef329c2"},{"path":"host/drivers/rpc/core/rpc_evt.c","size":19172,"hash":"d7ab0aab66add1149281648f88600cb0358d9020c5dd029e644e5b556de3cc43"},{"path":"host/drivers/rpc/core/rpc_req.c","size":42133,"hash":"00101505177a7ac25723ddde13c3dda1a0de4cb38de0bd82fa16f8524e6f65db"},{"path":"host/drivers/rpc/core/rpc_utils.h","size":363,"hash":"009ebb3161ae6d74969d3d2304b5631a39cc744c3ceed7bb15e901a59a7be579"},{"path":"host/port/esp/freertos/include/port_esp_hosted_host_wifi_config.h","size":4256,"hash":"0e164c62322e1bf7d48e093f5cfb8cbee31fcfadf7aeee8749c64f316614b14d"},{"path":"host/port/esp/freertos/include/port_esp_hosted_host_log.h","size":312,"hash":"3ea744d7e03e5def825cf765f04599d10c39d8e715919e9f993606f7eade020d"},{"path":"host/port/esp/freertos/include/port_esp_hosted_host_os.h","size":6222,"hash":"7cfe1f28d00732ed37f1b88bc64108d0c218a0a19ec2ab57a1f298f8c1548720"},{"path":"host/port/esp/freertos/include/port_esp_hosted_host_sdio.h","size":1668,"hash":"b5c60971a3fcb23510f0e17ffd2f1087027ebecd0698fbb4e69779df6f16f07b"},{"path":"host/port/esp/freertos/include/port_esp_hosted_host_bt_config.h","size":1343,"hash":"418a8fb79ea6ea7b500c4a4f134926150890371ea0c8e1a5a924c6a6772257fc"},{"path":"host/port/esp/freertos/include/port_esp_hosted_host_spi.h","size":590,"hash":"6a39a5b5b36ff9b9d05bd8feef7d7a171b1f673376ab3848e8ee3f5c3dc9beda"},{"path":"host/port/esp/freertos/include/port_esp_hosted_host_uart.h","size":1014,"hash":"108fafda0ac5edebeed3aadb8a0500e7935bdfa9d3fc908d29d99bd4d2b5dc5f"},{"path":"host/port/esp/freertos/include/port_esp_hosted_host_spi_hd.h","size":1653,"hash":"7ba82e7d66c4fc47542d5509a059488d44867d8f5d8e7be43064f880edad65f1"},{"path":"host/port/esp/freertos/include/port_esp_hosted_host_openthread.h","size":1338,"hash":"38ff5477bd2de573863a47fddde2f1bcc52ed241b4ee51dfc096ea5756100ee2"},{"path":"host/port/esp/freertos/include/port_esp_hosted_host_config.h","size":27777,"hash":"cf85deffbbfc6b42373ebae69b5c75fccd7fbbfa73f2894892191654774153b6"},{"path":"host/port/esp/freertos/src/port_esp_hosted_host_init.c","size":655,"hash":"232225d570d8c9546b11030d515f7e1b9aa92688d8493d0f6d0e1c54a9c8a618"},{"path":"host/port/esp/freertos/src/port_esp_hosted_host_sdio.c","size":16484,"hash":"34bc88b72951857c0f0179d18c90847219da1a42f777991942279d959281aa3a"},{"path":"host/port/esp/freertos/src/port_esp_hosted_host_transport_defaults.c","size":4547,"hash":"68aa42d216dd0e6f1b4172e098795d5aa1976c533b182fb739c9001720abaf78"},{"path":"host/port/esp/freertos/src/port_esp_hosted_host_os.c","size":26582,"hash":"a64de9aa2032d37a0e6d6fa928f05979375642ab5e3a510e2dc1c7367606af77"},{"path":"host/port/esp/freertos/src/port_esp_hosted_host_spi.c","size":4157,"hash":"70aec5ebf2c80a85307220cf9e962346352579b153729411f00fc737ebf3309b"},{"path":"host/port/esp/freertos/src/port_esp_hosted_host_ot_util.c","size":1291,"hash":"f83783acf3f1a691d2bc5f2168ea6e5b2526317b7a3bc072cb34ef352a9c1e3a"},{"path":"host/port/esp/freertos/src/port_esp_hosted_host_spi_hd.c","size":14325,"hash":"f5098bee7cdb2c572c930fd1da2de75c15cc06723aa7f34a8956718cab24bfa8"},{"path":"host/port/esp/freertos/src/port_esp_hosted_host_uart.c","size":2931,"hash":"7debbb2d7dc860f854ca9ceee73aae779996768a28e112b3c2f70fa48402066b"},{"path":"examples/host_hosted_events/README.md","size":14242,"hash":"8af945fea0d9dda67ffc7a54704fd21f126d0f11c30a7a03ca1f15561cb49db9"},{"path":"examples/host_hosted_events/CMakeLists.txt","size":238,"hash":"240611d6d5dfd405f362f98c94df508c847505456c9d7fac040c1be84b08be45"},{"path":"examples/host_hosted_events/sdkconfig.defaults","size":147,"hash":"47a394be4963ae3d3ca03e1840ef99b1e1ca3be7f022f608f872fbf80e303b36"},{"path":"examples/host_shuts_down_slave_to_power_save/README.md","size":3338,"hash":"078553556d7abfb27ab617d9c01616bfca4fc17413d40a73a7b1d110f86496ec"},{"path":"examples/host_shuts_down_slave_to_power_save/CMakeLists.txt","size":113,"hash":"aceb44d2242d96cced645f992503714876ac0afb5e6f443958a08637906d52e5"},{"path":"examples/host_shuts_down_slave_to_power_save/sdkconfig.defaults","size":345,"hash":"b7110ae200d9e91dbca962767ab6de0332cd13b23a49ff246d2f5754b6159224"},{"path":"examples/host_wifi_itwt/README.md","size":955,"hash":"d8d4862525e26a9df3123069aa6e14ceda6d6e6d602c119e0f286608e04af410"},{"path":"examples/host_wifi_itwt/sdkconfig.defaults.esp32p4","size":33,"hash":"427cd5861e86e46bc514c39a9e6a5ff4a47e88b0420e58c730041de65b341421"},{"path":"examples/host_wifi_itwt/CMakeLists.txt","size":363,"hash":"8764409e391195b14ea7d7ef2ccdfc1f51d2196a7d09526e9eb061c02ff1487a"},{"path":"examples/host_wifi_itwt/sdkconfig.defaults","size":543,"hash":"6d918099b3b45b6cfb2b9dffdc031b4b97aa65b68be2bd44b4fdeb86352bb781"},{"path":"examples/host_openthread_cli/README.md","size":7826,"hash":"ca1bfcec57b647c59851be680eec7c52ab57bf64762f9b301be957abe3d75411"},{"path":"examples/host_openthread_cli/sdkconfig.defaults.esp32p4","size":312,"hash":"60d5238b9ad4224fcc931c2115702cfa360cc1377fd4df46fa560aaefeb9a233"},{"path":"examples/host_openthread_cli/CMakeLists.txt","size":369,"hash":"54633b7cfbc453caa47c76dfd99f6027b247e86ead5cd186543fb4fdfffe19fd"},{"path":"examples/host_openthread_cli/partitions.csv","size":283,"hash":"29b113ad68851659f20cb7bff30d6fda12ab8bd8f84e097298a279a5d17eef8b"},{"path":"examples/host_openthread_cli/sdkconfig.defaults","size":1204,"hash":"2ad57de4ba66876318869c3c055e5a1226b87e1a168767caea1bb032abdaf773"},{"path":"examples/host_openthread_cli/partitions.esp32p4.csv","size":318,"hash":"3d5e72d55da3194fa760911d643b7c8562d470a3eba06bd08a01027a012ce73a"},{"path":"examples/host_transport_config/README.md","size":3223,"hash":"4ab52fbb7d783bbde36eed874adedb120590d98c7bb43f2891f4c9046d613ecd"},{"path":"examples/host_transport_config/CMakeLists.txt","size":374,"hash":"ce618795329ce589dbbb5062127fa008b260850ec279247166e9820ed698716d"},{"path":"examples/host_transport_config/sdkconfig.defaults","size":1563,"hash":"6a4a87047204fedc105f6eb65497313cd98ae8bbe0731fc89a67f16cc6ec4d81"},{"path":"examples/host_nimble_bleprph_host_only_uart_hci/README.md","size":13227,"hash":"a309534734b34c7660f75c64f8cd9800bacef650c0f845ff464345ca214435c9"},{"path":"examples/host_nimble_bleprph_host_only_uart_hci/CMakeLists.txt","size":376,"hash":"59feb30fd39593f0c2f47a3181a57055e6ab8a7ed1c9ba0466f9a212ec07ca2c"},{"path":"examples/host_nimble_bleprph_host_only_uart_hci/sdkconfig.defaults","size":251,"hash":"3e8abd138471642697c7f0cef32697d78b8b7105093c60a29450037bc7e11ed9"},{"path":"examples/host_bluedroid_ble_compatibility_test/README.md","size":2868,"hash":"6ffca2425a9ee5006bb583ea8eb270d7c50de6fe463d90beab0d6a6ebabfc1aa"},{"path":"examples/host_bluedroid_ble_compatibility_test/CMakeLists.txt","size":381,"hash":"acee46aa8a2bcd3bf94b131a71b8cd8aa911949738aaf90bdc412a4226851ab3"},{"path":"examples/host_bluedroid_ble_compatibility_test/sdkconfig.defaults","size":580,"hash":"402bf7a39f8062a2d1a2108608597f9ac851d3e3e09d05797ed4eaf989044f2d"},{"path":"examples/host_bluedroid_ble_compatibility_test/ble_compatibility_test_case.md","size":6836,"hash":"6385b4b4bbd48a49aeb0f11396c4eb78826ccf0bf5f566309c205e63677cf534"},{"path":"examples/host_gpio_expander/README.md","size":1396,"hash":"721a90fb5723a160152d7e17a1467f59b2568c123f8e24d9a31d301e3a47d994"},{"path":"examples/host_gpio_expander/CMakeLists.txt","size":380,"hash":"ec8cc61f10baf4d4e415f27d4b4588c491c54b584890096f639e35a0a90ad282"},{"path":"examples/host_gpio_expander/sdkconfig.defaults","size":122,"hash":"f761f0eceb1b81091ff362e177d59b4c8dc97a20656d3e6b0e169db0155d87a0"},{"path":"examples/host_wifi_easy_connect_dpp_enrollee/README.md","size":4595,"hash":"3756057dc550b50069704a64aa8add193be373ddd426796d4592c28ecccb1da3"},{"path":"examples/host_wifi_easy_connect_dpp_enrollee/sdkconfig.defaults.esp32p4","size":103,"hash":"742ce66e58eb1e57e63ff6c0689a202a5a6f4e1aa027428a9ea96c853d043c5b"},{"path":"examples/host_wifi_easy_connect_dpp_enrollee/CMakeLists.txt","size":237,"hash":"cf90ba7ec46a3e606ddb41483838825f6d752329f9d4fc6362d61cb15647b40d"},{"path":"examples/host_wifi_easy_connect_dpp_enrollee/sdkconfig.defaults","size":167,"hash":"57152cf1b1116b9552c50ff46d0dace1a5016fc2927a4485f57e761628b428fe"},{"path":"examples/host_network_split__power_save/README.md","size":7882,"hash":"076091540163b220fc5715f0738ee5a7f7edb44d25d39e85f8ebf8aa54f46e98"},{"path":"examples/host_network_split__power_save/sdkconfig.ci.sdio","size":40,"hash":"68777f61714ff4be877dfc7519e06ece5a5f85641deb2fa9f69f72910096c9a3"},{"path":"examples/host_network_split__power_save/sdkconfig.ci.spi","size":39,"hash":"8f867e72a82023ea47d90a6af3098d1dce46432a138f50fce1537333457f0791"},{"path":"examples/host_network_split__power_save/sdkconfig.ci.common","size":37,"hash":"6e688c612e02b0a17e56abe9bf60c870a332cd1b2b7e7c78e36ec2c8a1ac5c68"},{"path":"examples/host_network_split__power_save/README_iperf.md","size":5137,"hash":"db6d283b6300455b1597e11bae431b40aa7e993962ae611cb7e64936866509c6"},{"path":"examples/host_network_split__power_save/sdkconfig.defaults.esp32","size":521,"hash":"3e421b9ec5fde7b7395b5773aad5d83fd917f20180e4339036dea9d3f063eff0"},{"path":"examples/host_network_split__power_save/sdkconfig.ci.spi_hd","size":79,"hash":"0b3f81916831e2f50a64a7b72b6aebaed58c6ea1177b406bc85fb9af5db22776"},{"path":"examples/host_network_split__power_save/README_light_sleep.md","size":10349,"hash":"ae74bd76bb65aea11593429c8381cfd491b1bc409f5b37b3eeb65118eb4be91d"},{"path":"examples/host_network_split__power_save/sdkconfig.defaults.esp32p4","size":577,"hash":"f54bb07e0a1d89edbd5f9c85ce920d5073877929de9ed2fccb52cdabaa5faeec"},{"path":"examples/host_network_split__power_save/sdkconfig.defaults.esp32c3","size":587,"hash":"b946a5a62eb0a6aa2dca25c16ef8cdc529e0488ae62317c16c5c155fd8a7a28a"},{"path":"examples/host_network_split__power_save/sdkconfig.defaults.esp32s2","size":720,"hash":"8a2604664fc9d5de8b1cc28d3aed6416d3b3f41bdb2d92d9f17dfb03d706f55d"},{"path":"examples/host_network_split__power_save/CMakeLists.txt","size":364,"hash":"494c50731656894c7f2595fb1dc54672d20951fcc5040582a02f40fba61b7aa1"},{"path":"examples/host_network_split__power_save/sdkconfig.defaults.esp32c2","size":587,"hash":"0e36e4a18a13d4c214aeecfa6769bbdd0775bf759361edaaaa44f712d3224007"},{"path":"examples/host_network_split__power_save/sdkconfig.defaults.esp32c6","size":673,"hash":"89035bcc8016d72670cc726e05ef01829ca75ddad9db3e9282931894fefb1deb"},{"path":"examples/host_network_split__power_save/sdkconfig.defaults.esp32c5","size":974,"hash":"c9e326744fd00aa37fbbd8696daf3b0d8d0113dc9892e53b19385d44cb6254c7"},{"path":"examples/host_network_split__power_save/sdkconfig.ci.uart","size":40,"hash":"690e97e1089d87f327a78d397e3d6eb69be7a4766c5ff88f8ebf41b24832b741"},{"path":"examples/host_network_split__power_save/sdkconfig.defaults","size":579,"hash":"b04367b56887b31f1a7ffaf730232fcfeacd8a58fdfa00721dc4aeca3a9d898d"},{"path":"examples/host_network_split__power_save/sdkconfig.defaults.esp32s3","size":648,"hash":"6bac7892355dc0460077f840d96a221328ec35100d7cf5550023232bbdc0ce95"},{"path":"examples/host_network_split__power_save/sdkconfig.defaults.esp32c61","size":975,"hash":"e1e0913690fd0f3d733dc58b70fcf90ad48776d9fa1c35e0bf1e89cae28ac848"},{"path":"examples/host_zigbee_thermostat/README.md","size":6129,"hash":"229afd9e74be6550467fddc8384c35fe2f33a86c81c8ff69cec591925f995736"},{"path":"examples/host_zigbee_thermostat/sdkconfig.mbedtls_minimal","size":1339,"hash":"390dff7bad8d42e64f28b15f2c7832c9f88e44c46943e0072207c5694822e3cf"},{"path":"examples/host_zigbee_thermostat/CMakeLists.txt","size":341,"hash":"1d3642cc642e5722720560ec5809ae7d083f84948053fad13552403dc0a9c0eb"},{"path":"examples/host_zigbee_thermostat/partitions.csv","size":389,"hash":"fd81ba38c0730167bcc8f40a9dc4a0f2473d566f20de306aff600383085b311b"},{"path":"examples/host_zigbee_thermostat/sdkconfig.defaults","size":258,"hash":"af83e7b335c73d2b759d22ffd55f8ba382c0c119a6c6ac45dec8f26a92d3b84a"},{"path":"examples/host_nimble_bleprph_host_only_vhci/README.md","size":9384,"hash":"c77f637def4052c10f1839eefcfe6bc2641b15837f7b4faa52239c27c75d8c31"},{"path":"examples/host_nimble_bleprph_host_only_vhci/CMakeLists.txt","size":247,"hash":"c0392b2c905b5b80045806eb722e749a002ae2e0d59e26221df6307d8ecf40a0"},{"path":"examples/host_nimble_bleprph_host_only_vhci/sdkconfig.defaults","size":468,"hash":"42b2cc5d09a31e015e957cd163cff6ee43d32ceb1913261261cd18faf28a16de"},{"path":"examples/host_sdcard_with_hosted/README.md","size":7397,"hash":"5953d2e9089696a8f476c15d2bd3505620af34b097f5a53bc665c572f4e430b5"},{"path":"examples/host_sdcard_with_hosted/sdkconfig.ci","size":133,"hash":"5f31492e4eb154b9ba3c0166e5bbce9cc93a8af4b75bc6376107c05f12221bb5"},{"path":"examples/host_sdcard_with_hosted/sdkconfig.defaults.esp32p4","size":30,"hash":"bd13649f19534e5b36f4c76a0f450949454e1eb31825251b9ebfd7ee473af04c"},{"path":"examples/host_sdcard_with_hosted/CMakeLists.txt","size":367,"hash":"9d27eca7cfd3e831c8687f424703f47a4ac592c8fc298a1274d674fb23e099e5"},{"path":"examples/host_sdcard_with_hosted/sdkconfig.defaults","size":36,"hash":"ea77e174488207b93e2764f7f29d88e183f8d1c964870ac95e2a2549f7485497"},{"path":"examples/host_sdcard_with_hosted/pytest_sdmmc_card_example.py","size":1951,"hash":"0bc57b3bb1ddce43d78c60567752b80f5459a2b06af19938e85f069ba0e9069b"},{"path":"examples/host_hosted_cp_meminfo/README.md","size":22077,"hash":"a50934cae5c7011dc9a583e6b5c717c3f220472ac12c31821d70f10e2b03bfa0"},{"path":"examples/host_hosted_cp_meminfo/CMakeLists.txt","size":239,"hash":"57aa6c2b1beb178f4a198e3bda7cc8abda74d1810cf20e763095418b6548e361"},{"path":"examples/host_hosted_cp_meminfo/sdkconfig.defaults","size":67,"hash":"abd9a8478a0b73d69ef52ea3dd80ed707e7fc5dc9e89497072b19ac5496c0fde"},{"path":"examples/host_bluedroid_bt_hid_mouse_device/README.md","size":12542,"hash":"f598f49da527cca8a5b21b770b192616a502807b4a38b663acbe5c42d027f4d6"},{"path":"examples/host_bluedroid_bt_hid_mouse_device/sdkconfig.defaults.esp32p4","size":42,"hash":"6653345afbb8d5c69f9bf91a74b562dd46c294a1c010a588b352e0ee57ddf1c1"},{"path":"examples/host_bluedroid_bt_hid_mouse_device/CMakeLists.txt","size":379,"hash":"7fa4a024dbe4fa7dd1cf7fbdeb5321e43fa01f1fe5c5313e656cbf4b26953576"},{"path":"examples/host_bluedroid_bt_hid_mouse_device/sdkconfig.defaults","size":718,"hash":"6ef2a3b24ab6c4df356081ccf24ba8eee4aa74af529836074a9a99f0cce19449"},{"path":"examples/host_bluedroid_bt_hid_mouse_device/sdkconfig.defaults.esp32h2","size":42,"hash":"6653345afbb8d5c69f9bf91a74b562dd46c294a1c010a588b352e0ee57ddf1c1"},{"path":"examples/host_bluedroid_host_only/README.md","size":4201,"hash":"39ccc733cc7b70ff8fb7ae30235460cd65a77c5b59b493630b26f5b6b896938f"},{"path":"examples/host_bluedroid_host_only/sdkconfig.defaults.esp32p4","size":42,"hash":"6653345afbb8d5c69f9bf91a74b562dd46c294a1c010a588b352e0ee57ddf1c1"},{"path":"examples/host_bluedroid_host_only/CMakeLists.txt","size":372,"hash":"30767cce51e61720227a51b00f3ac670df40ba7dba3e5be26a084fe601f6ab2e"},{"path":"examples/host_bluedroid_host_only/sdkconfig.defaults","size":564,"hash":"9ff8457d22d034b1ac17cd0b8f231b0ed0551609b3517a92a80d7c062464a2a1"},{"path":"examples/host_bluedroid_host_only/sdkconfig.defaults.esp32h2","size":42,"hash":"6653345afbb8d5c69f9bf91a74b562dd46c294a1c010a588b352e0ee57ddf1c1"},{"path":"examples/host_bt_controller_mac_addr/README.md","size":8909,"hash":"b6d88c8726cd74654c8b2a0f65c21ff9e5326104794218c4f2675a13ffba3d53"},{"path":"examples/host_bt_controller_mac_addr/CMakeLists.txt","size":241,"hash":"70aef6c1bbf21f652c56dc5075f70331b156c78b39190c0c583b199e4a00948a"},{"path":"examples/host_bt_controller_mac_addr/sdkconfig.defaults","size":613,"hash":"b74f647194bd359118c4b2ebf5d8bd6318af8b11bce1e26b5b4a559fba35a199"},{"path":"examples/host_openthread_border_router/README.md","size":7655,"hash":"2034708b7f7891dbc66f8e57163c5657edaf4e0d13c2fcbff1d9960a68d962a2"},{"path":"examples/host_openthread_border_router/sdkconfig.defaults.esp32p4","size":391,"hash":"870089c96935638c17add9a6cf4dac5d6dd7b2963b70b89d4573ef68f6eedcc1"},{"path":"examples/host_openthread_border_router/CMakeLists.txt","size":368,"hash":"dcabdce2b008cc45f9788086cb8f62923b10535b1680de2e9007db9281e31130"},{"path":"examples/host_openthread_border_router/partitions.csv","size":300,"hash":"c0443bf9254e10f1a80005be92820a664d924c11b5db70424230cc3f4dfc4d7f"},{"path":"examples/host_openthread_border_router/sdkconfig.defaults","size":1587,"hash":"e2ad08c38abc7625b47bf0d51755ce79468448f1f064fb7007eab8be4e602bde"},{"path":"examples/host_peer_data_transfer/README.md","size":4383,"hash":"c9abf3570b3291aad3033faccb00cce7bb3386bdfe046e9e46e8fd534090f32f"},{"path":"examples/host_peer_data_transfer/CMakeLists.txt","size":377,"hash":"0d7adf508399425b160b831568949fefdd200e06149a56c107fe5e54c8a92307"},{"path":"examples/host_peer_data_transfer/sdkconfig.defaults","size":162,"hash":"c81fd4c9d28943a7ea9b9ac777fe8f704ae647f5fada3ad52844dc2cc1aea19f"},{"path":"examples/host_manage_copro_ext_coex/README.md","size":7353,"hash":"204f38af63d7bc6fe37a3703cf069ab849d7bdff3772e48dd8a8426c52cbf54d"},{"path":"examples/host_manage_copro_ext_coex/CMakeLists.txt","size":137,"hash":"2b97cb4718b7af77cb9821bf49c36cbe5d364d3e443a6e22a4b91fee8262ab42"},{"path":"examples/host_manage_copro_ext_coex/sdkconfig.defaults","size":96,"hash":"13288853e701394f5a5c3038865060f34b066bddcf6f2a21063af8df8ddc82be"},{"path":"examples/host_performs_slave_ota/README.md","size":18987,"hash":"1b447a4e1279e279f63f9c4b0a10ba419ac0ae7857c406cbad949f626a5392bb"},{"path":"examples/host_performs_slave_ota/CMakeLists.txt","size":194,"hash":"a602cb926b6c8c912e56553215afe355a3492fd8c2a24fa58cd98c0e1303b576"},{"path":"examples/host_performs_slave_ota/partitions.csv","size":381,"hash":"1aca814dcd497541c468f3752f4e34acddc1adca607299920aba7472bb760cb9"},{"path":"examples/host_performs_slave_ota/sdkconfig.defaults","size":456,"hash":"e453dab9554e8f49afd95ffdff0149c5aa2f751acc297ca7f7a34601f3e5f7d1"},{"path":"examples/host_performs_slave_ota/main/main.c","size":8726,"hash":"12a268af3645f5addda50098e2144be5d90c43e3c4065f183aa4af70e6c46897"},{"path":"examples/host_performs_slave_ota/main/CMakeLists.txt","size":213,"hash":"5d2021ad37fb23e7762124b54f94944a5084a3b13b1566a1082a88be33c82ff1"},{"path":"examples/host_performs_slave_ota/main/idf_component.yml","size":450,"hash":"3f1e70ffb3e899e0e1f03c07e3c28856439103b0c21a62970232e4d78c4dcb4a"},{"path":"examples/host_performs_slave_ota/main/Kconfig.projbuild","size":3851,"hash":"3e3f44f0e1802575271b8019fd697c33d4b0ad7a7ed84678256763f0bd9b3636"},{"path":"examples/host_performs_slave_ota/components/ota_littlefs/ota_littlefs.h","size":448,"hash":"d8014a5167488271fd30b02c1f32a4dd6433e73cea4e24be5250e0b5b74e9aef"},{"path":"examples/host_performs_slave_ota/components/ota_littlefs/CMakeLists.txt","size":2350,"hash":"4bb926951691510b59f039b174f58f53e3a7085edb0ed71d52a8b3eac1f9025e"},{"path":"examples/host_performs_slave_ota/components/ota_littlefs/ota_littlefs.c","size":14569,"hash":"54c021057963963561499d202db98aecee0a39893f2b20af50961bfbfb4e744b"},{"path":"examples/host_performs_slave_ota/components/ota_partition/ota_partition.h","size":443,"hash":"bf6c0eb8f6f72138e60304cdf5064fdf3b10e6f81f45f760d2d4e65c95f9775a"},{"path":"examples/host_performs_slave_ota/components/ota_partition/CMakeLists.txt","size":3945,"hash":"de8b805844e7f8ae7d37c45942b023bf377babacbc8126937e7c1877f0849644"},{"path":"examples/host_performs_slave_ota/components/ota_partition/ota_partition.c","size":12344,"hash":"9f13ab8ad14eaa1bdf8cedf0dfe47aa67a904c0f6e06daa70a57508f996080f9"},{"path":"examples/host_performs_slave_ota/components/common_ota_scripts/flash_selected_firmware.cmake","size":2143,"hash":"70d5a4fcda52b894b11d58394146c030549247f5e644e8d1e13a927192b7065d"},{"path":"examples/host_performs_slave_ota/components/common_ota_scripts/find_newest_firmware.cmake","size":2478,"hash":"5acf87321643ba0fad3f332162c5b5e9d8cf457da9c64fcd02083459eae79ff5"},{"path":"examples/host_performs_slave_ota/components/ota_https/ota_https_wifi.c","size":4651,"hash":"c62c621e2164f2c999f5080e9745fd234b6b92de57c55bf86639da48b1fdb331"},{"path":"examples/host_performs_slave_ota/components/ota_https/ota_https.c","size":15481,"hash":"04cc54e529202effbf83f567479b170f6eeeefb31de942a5d3c79f8a5857c0cf"},{"path":"examples/host_performs_slave_ota/components/ota_https/CMakeLists.txt","size":1152,"hash":"114e67c84dcd6ceb885fe76ebe26185d6921a70d24319a81576610f5138caa86"},{"path":"examples/host_performs_slave_ota/components/ota_https/ota_https.h","size":397,"hash":"56ea7a915ef20a3e8bb5a28f43cd8471abed4ade8abe985e54eef9f91565f484"},{"path":"examples/host_performs_slave_ota/components/ota_https/test_server/README.md","size":1417,"hash":"da156ea2cd0d1c2b8490816f857aacfb41113ac74b8a3a5add445e3f17a883f6"},{"path":"examples/host_performs_slave_ota/components/ota_https/test_server/create_self_signed_certs.sh","size":1601,"hash":"9ee21eeb51b26d05bc3eb805132f2162788ab10199996b810f8dc9ebf58d2ca3"},{"path":"examples/host_performs_slave_ota/components/ota_https/test_server/create_https_server.py","size":2681,"hash":"292fd4f035ea1778682df07b86e2b6a584be616a3a770678683707c03cdb088a"},{"path":"examples/host_performs_slave_ota/components/ota_partition/slave_fw_bin/README.md","size":1181,"hash":"1586ded892c7698712488ff4bbec3daf9bcf4de3a408edc7c29015a9156c423b"},{"path":"examples/host_performs_slave_ota/components/ota_partition/slave_fw_bin/.gitkeep","size":200,"hash":"70d9e19ad4b8f335f029b6399c441344f94e0a00f605fece2c938a2b236b3cb9"},{"path":"examples/host_performs_slave_ota/components/ota_littlefs/slave_fw_bin/README.md","size":927,"hash":"347de99729d9e1fcaf223a14e6756f54ece7d1061418201a75b05680fa2dc03a"},{"path":"examples/host_performs_slave_ota/components/ota_littlefs/slave_fw_bin/.gitkeep","size":199,"hash":"6561c1dbd66841ca6b1a868a3327bc947c768db0b6570edc83e34d419b8572ef"},{"path":"examples/host_manage_copro_ext_coex/main/main.c","size":3478,"hash":"0da6a9298b3ca88dfd98ac0843e2b0461dd4ac108f89b951ff05fff9a68b9991"},{"path":"examples/host_manage_copro_ext_coex/main/CMakeLists.txt","size":75,"hash":"27d6d39ef0cb6a9097984b41e080b09f7ff972339a0bb4ddf771db4001cb9782"},{"path":"examples/host_manage_copro_ext_coex/main/idf_component.yml","size":234,"hash":"996adf918ad6f33e77d0b0855cfe6f3c2d4c254aec12793477cd0f01af0968c2"},{"path":"examples/host_peer_data_transfer/main/CMakeLists.txt","size":142,"hash":"b97a228ebe795cef8704067de3daf0680d03b18926454c00a0f17cd61a2fe80d"},{"path":"examples/host_peer_data_transfer/main/peer_data_example.c","size":12104,"hash":"8203118ce9a4b51936e7ac8284753f7bfb027ad72f875704296819dfbe3fbb94"},{"path":"examples/host_peer_data_transfer/main/idf_component.yml","size":234,"hash":"996adf918ad6f33e77d0b0855cfe6f3c2d4c254aec12793477cd0f01af0968c2"},{"path":"examples/host_openthread_border_router/main/esp_hosted_openthread_app.h","size":326,"hash":"18881766a84efd942d3c8575415714f969ccffa7b9d9e3596970dd7943993844"},{"path":"examples/host_openthread_border_router/main/esp_ot_config.h","size":977,"hash":"4db6824d5196545b561b963eae0bed1aa587bfc6a0d5862b2ea09dc05d0ad5e9"},{"path":"examples/host_openthread_border_router/main/CMakeLists.txt","size":199,"hash":"273d9b8d8f23755dd0d4708fec72802c314a9e16f0e2e6a3e4270d51c9d2b581"},{"path":"examples/host_openthread_border_router/main/esp_hosted_openthread_app.c","size":1636,"hash":"e4b22cade65c71ed204efc87bac057407bafd98fe89a7880c536989c4260fb94"},{"path":"examples/host_openthread_border_router/main/idf_component.yml","size":643,"hash":"080dc1cff2d15f1ce88fa8a1fdfcfbefa7db0143a372fd18b5ed063485cf2ccc"},{"path":"examples/host_openthread_border_router/main/esp_ot_br.c","size":5956,"hash":"71f220a3830ce101a2d0dcf85be62d9e4b905f6a897ecdeadd1c6bfeba1a0cde"},{"path":"examples/host_bt_controller_mac_addr/main/main.c","size":9097,"hash":"d83faa9a8f05b099b981bed36a9d80db3260aebe5629ab9b5388e5ece93cd015"},{"path":"examples/host_bt_controller_mac_addr/main/CMakeLists.txt","size":99,"hash":"5e1d20a5082e112708c8c648e54a01717e940e6952332a3a51a9af8eb4775786"},{"path":"examples/host_bt_controller_mac_addr/main/idf_component.yml","size":234,"hash":"996adf918ad6f33e77d0b0855cfe6f3c2d4c254aec12793477cd0f01af0968c2"},{"path":"examples/host_bt_controller_mac_addr/main/Kconfig.projbuild","size":193,"hash":"28f84ac86b6a6b1349bc2c910ef72ef59437f0dc7555e57d3e2968500de33fea"},{"path":"examples/host_bluedroid_host_only/main/main.c","size":9841,"hash":"d924fe25c309c6617cca427fd0891926f48b44fc9212f81d922516325868bd0f"},{"path":"examples/host_bluedroid_host_only/main/CMakeLists.txt","size":133,"hash":"505130ac4dc39992f420dad32ecc9ff467fe247ed912bfd100bbb096c30fba53"},{"path":"examples/host_bluedroid_host_only/main/idf_component.yml","size":234,"hash":"996adf918ad6f33e77d0b0855cfe6f3c2d4c254aec12793477cd0f01af0968c2"},{"path":"examples/host_bluedroid_bt_hid_mouse_device/main/main.c","size":19034,"hash":"7cb1a4ef138188c2e298a1dba1eab2c1243dcb8889834f30d38bf3c36d4bf75e"},{"path":"examples/host_bluedroid_bt_hid_mouse_device/main/CMakeLists.txt","size":222,"hash":"2ea5493236c5f6b4efab73b1b837e4a64c8598f81bd92599977888ef4891be3b"},{"path":"examples/host_bluedroid_bt_hid_mouse_device/main/idf_component.yml","size":234,"hash":"996adf918ad6f33e77d0b0855cfe6f3c2d4c254aec12793477cd0f01af0968c2"},{"path":"examples/host_bluedroid_bt_hid_mouse_device/main/Kconfig.projbuild","size":485,"hash":"29b11cdf881353334234a73af2865d654ff9341bf16087ae0815de217d574d82"},{"path":"examples/host_hosted_cp_meminfo/main/main.c","size":10650,"hash":"cbfa75368d276b0ec1213966503fd38618fb7a7b7ae579d3c4f689c1bc309a69"},{"path":"examples/host_hosted_cp_meminfo/main/app_common.h","size":321,"hash":"547fd3446f2f0b4380abc1a2aad87643bd928648e665f48d6c8df311d932f463"},{"path":"examples/host_hosted_cp_meminfo/main/CMakeLists.txt","size":119,"hash":"f396f72f1a4170b5fdf5db6ecf29622db1fde0f0cf78da98986331ee47518365"},{"path":"examples/host_hosted_cp_meminfo/main/idf_component.yml","size":234,"hash":"996adf918ad6f33e77d0b0855cfe6f3c2d4c254aec12793477cd0f01af0968c2"},{"path":"examples/host_hosted_cp_meminfo/main/station_example.c","size":7179,"hash":"879f549b1b412f9f11df1d3132979a2eaeefce7c67ec2c35215603d9ac6e9486"},{"path":"examples/host_hosted_cp_meminfo/main/Kconfig.projbuild","size":3816,"hash":"73ebcbb9f080a27d0d8dced24f45881579da1eeeaff357c8aee933f710d2ffe5"},{"path":"examples/host_sdcard_with_hosted/main/sd_card_example_common.h","size":327,"hash":"8cdaabc6cce407a96e350cdf5011961c28fa361d4e1b4cf778b98a7054d0690e"},{"path":"examples/host_sdcard_with_hosted/main/sd_card_functions.c","size":8216,"hash":"45aa6081f47c822a4847590c2acf2523d515d1562c009eea25545763b9f9acce"},{"path":"examples/host_sdcard_with_hosted/main/sd_card_example_main.c","size":2851,"hash":"006e6bea3e883d40a3e4fec6389e11519b9735476f87200b564e305feef3ac44"},{"path":"examples/host_sdcard_with_hosted/main/esp_hosted_wifi.h","size":243,"hash":"ec058246bab4fee1f9857bef380549884c632e6649050b5472962c1ad9d2dea8"},{"path":"examples/host_sdcard_with_hosted/main/sd_card_functions.h","size":549,"hash":"06810042b319be00f040160e994e036bd1889e69b12bd25148fcec879a89a803"},{"path":"examples/host_sdcard_with_hosted/main/esp_hosted_wifi.c","size":1624,"hash":"a1c50c1910b19fb651ffcb71a642f30c490fbc1882f040767d010618df5e8503"},{"path":"examples/host_sdcard_with_hosted/main/CMakeLists.txt","size":485,"hash":"d59a25026e25f9026f8204ef33060cf1afff0c0ad615e6391132a206df29283d"},{"path":"examples/host_sdcard_with_hosted/main/idf_component.yml","size":216,"hash":"11134eef556ff6f10bdea6f84b52e049c6a13a8cc83ac31c32e1e3e39e0e9966"},{"path":"examples/host_sdcard_with_hosted/main/Kconfig.projbuild","size":3164,"hash":"ba4f94dbc184fde4be96eff85cef59cd3aaf1e63c50452a365cb86a4fb7bc7a3"},{"path":"examples/host_nimble_bleprph_host_only_vhci/main/main.c","size":18766,"hash":"6b31808882b5260597acde0326e5c3da511f5687730389606dcceca148d7165c"},{"path":"examples/host_nimble_bleprph_host_only_vhci/main/gatt_svr.c","size":7994,"hash":"b70c407e9d6881dfd963295614b38b3821b031fa353af275896feb2ebe78aab4"},{"path":"examples/host_nimble_bleprph_host_only_vhci/main/CMakeLists.txt","size":121,"hash":"8aaecadfef94eeb19f84caac26536f3098c98956405ab4d2619dca1b86ff6a40"},{"path":"examples/host_nimble_bleprph_host_only_vhci/main/bleprph.h","size":828,"hash":"73226ee61c2715f9a4938715f2fb4242078bf56adc5e6f4be27af50129590244"},{"path":"examples/host_nimble_bleprph_host_only_vhci/main/idf_component.yml","size":340,"hash":"a9ea717a26959976123fcf907a074c8ba086c9a3f370ca342ad00b0d2a346d48"},{"path":"examples/host_nimble_bleprph_host_only_vhci/main/Kconfig.projbuild","size":2406,"hash":"938ad29aaa58753c1e2853499445ee3dff0652eddd046db647fa5b456ddf600a"},{"path":"examples/host_zigbee_thermostat/main/alarm_timer.h","size":1059,"hash":"e3d1272902c879afff02313c7dd42dbcc5852346af260b60f5d9e4fe30f6b274"},{"path":"examples/host_zigbee_thermostat/main/thermostat.h","size":1360,"hash":"7ae98c75353afc5136763afb2d74682f3011996c44c32fbbd14b7330cbc796c9"},{"path":"examples/host_zigbee_thermostat/main/esp_hosted_openthread_app.h","size":326,"hash":"18881766a84efd942d3c8575415714f969ccffa7b9d9e3596970dd7943993844"},{"path":"examples/host_zigbee_thermostat/main/switch_driver.c","size":3303,"hash":"912f5b67348cf635a680e8c622632466cf9a61c6afa54d082024c8fa55a58d44"},{"path":"examples/host_zigbee_thermostat/main/CMakeLists.txt","size":143,"hash":"c2b73d49d0786c3f2e58ef36a63ec24ec703d3e5e56d1867a7d4f4f48b78f038"},{"path":"examples/host_zigbee_thermostat/main/esp_hosted_openthread_app.c","size":1636,"hash":"e4b22cade65c71ed204efc87bac057407bafd98fe89a7880c536989c4260fb94"},{"path":"examples/host_zigbee_thermostat/main/idf_component.yml","size":316,"hash":"c966626be8d2c02fb14f9d09e78d0af29bf16636a9c1bc568decd2908b428731"},{"path":"examples/host_zigbee_thermostat/main/alarm_timer.c","size":1581,"hash":"35fbca2b9236fe95cb56c5b11db88a4849cf8551df2fa6aa187b076a11602898"},{"path":"examples/host_zigbee_thermostat/main/switch_driver.h","size":2236,"hash":"10fc12d8563b0b01296df9e5249791089e0f8bb5dd1009eb07eca8a83671b82e"},{"path":"examples/host_zigbee_thermostat/main/Kconfig.projbuild","size":281,"hash":"5e5be1ce2dab44ffc3ae7e45ca21193fad0a567220c80bf4c54ff5ed80bfe4a6"},{"path":"examples/host_zigbee_thermostat/main/thermostat.c","size":24692,"hash":"5cf3c85ff39d4c7b15bd2226a7b3aff62787a9451f96657a0fe0ee37d84785ea"},{"path":"examples/host_network_split__power_save/main/iperf_example_main.c","size":4730,"hash":"03302ac71f9894db58f328090d5e2f5612872329c106fcc110f7ddb26acb1288"},{"path":"examples/host_network_split__power_save/main/CMakeLists.txt","size":89,"hash":"9a7aa96a758b4bde0377d39fd8e8482b08e09552975787cd933f428bb782ccf2"},{"path":"examples/host_network_split__power_save/main/idf_component.yml","size":746,"hash":"e1e9c9ea7fd5199d1c8d350ccb852294f0e23c2ebae3661850aab9941c1207bb"},{"path":"examples/host_network_split__power_save/host_wakeup_demo_using_udp_packet/host_wakeup_demo_using_udp_packet.c","size":1433,"hash":"5a76ef8a09d70f03f1dc76185a598eb2075f12241503104c6f3552268119a272"},{"path":"examples/host_network_split__power_save/host_wakeup_demo_using_udp_packet/host_wakeup_demo_using_udp_packet.sh","size":1559,"hash":"1d22498a274346ae3db6afd7fc7e47e728b6249e8c4f47d383dae5eb3f049d9c"},{"path":"examples/host_wifi_easy_connect_dpp_enrollee/main/CMakeLists.txt","size":88,"hash":"a8b18465d065e16fe26cf848551b2ac69b539a96fd078590cff4de574dc2f27c"},{"path":"examples/host_wifi_easy_connect_dpp_enrollee/main/dpp_enrollee_main.c","size":9830,"hash":"24236e106b991f3af120e601480a41d50b5be65bcaa49e2a1748a28db6f45166"},{"path":"examples/host_wifi_easy_connect_dpp_enrollee/main/idf_component.yml","size":251,"hash":"4216aba2088e6ce0a166f3c7f3b8ec01d1c53ff0ffac1b108365520a90ce2e25"},{"path":"examples/host_wifi_easy_connect_dpp_enrollee/main/Kconfig.projbuild","size":542,"hash":"6905f348587e40efd18a5b36b6c892848b67a88d17d83f1837a132e04feeff98"},{"path":"examples/host_gpio_expander/main/CMakeLists.txt","size":105,"hash":"97d7192318fbc31c01e459e34e02f8335ebaf659214e44f30c39162701e2af37"},{"path":"examples/host_gpio_expander/main/idf_component.yml","size":240,"hash":"c909a8623d3f7944d33ce18a557e1e100cb50822e12e721dc9e285b6ff49cfdf"},{"path":"examples/host_gpio_expander/main/host_gpio_expander_example.c","size":2846,"hash":"9703e0caf4135e1c3721736946ef24ccf181a6c7284febdaec598eecf0cda5ec"},{"path":"examples/host_bluedroid_ble_compatibility_test/main/ble_compatibility_test.c","size":32069,"hash":"a9c9775f9d111e40e20c2bf0058f2b788ebfd7364cfbe8472b3389e4ce01d72a"},{"path":"examples/host_bluedroid_ble_compatibility_test/main/CMakeLists.txt","size":151,"hash":"9a7933f55d656bd51fc8e87ce9ea609f0290bef4a3560a6cc54ea962c1457994"},{"path":"examples/host_bluedroid_ble_compatibility_test/main/ble_compatibility_test.h","size":453,"hash":"e401218f774930d339697fc517712c26c39123800d442acd2069f840bd625e35"},{"path":"examples/host_bluedroid_ble_compatibility_test/main/idf_component.yml","size":206,"hash":"aca04f3139598f68cbb959f8620e5cd1ed8bd96b19f2f6a56a99eb0965a4475c"},{"path":"examples/host_nimble_bleprph_host_only_uart_hci/main/main.c","size":18433,"hash":"cb09d7dbdd0f308bea44539888406266db1a73182ce6c5e0ea9a8d53a0c32568"},{"path":"examples/host_nimble_bleprph_host_only_uart_hci/main/gatt_svr.c","size":7994,"hash":"b70c407e9d6881dfd963295614b38b3821b031fa353af275896feb2ebe78aab4"},{"path":"examples/host_nimble_bleprph_host_only_uart_hci/main/uart_driver.c","size":7098,"hash":"8bf007e4be5397e79e91ae12ec5ac27f5cd7d4f0c38f42510263ad985a913d0b"},{"path":"examples/host_nimble_bleprph_host_only_uart_hci/main/uart_driver.h","size":591,"hash":"87002eadb7d3f7aa2c029b8be21de4f53c339fc391f3d6b44191fa6f3756441f"},{"path":"examples/host_nimble_bleprph_host_only_uart_hci/main/CMakeLists.txt","size":146,"hash":"a1969e4857d99dd017c551ea8d89a773414bbb62a2d2f3c379ecb1e467ab2dca"},{"path":"examples/host_nimble_bleprph_host_only_uart_hci/main/bleprph.h","size":828,"hash":"73226ee61c2715f9a4938715f2fb4242078bf56adc5e6f4be27af50129590244"},{"path":"examples/host_nimble_bleprph_host_only_uart_hci/main/idf_component.yml","size":340,"hash":"a9ea717a26959976123fcf907a074c8ba086c9a3f370ca342ad00b0d2a346d48"},{"path":"examples/host_nimble_bleprph_host_only_uart_hci/main/Kconfig.projbuild","size":4387,"hash":"70b2bd76200ffe9d5d2885393a2c46f291c044e247cf872b1ea9e6187a393f2c"},{"path":"examples/host_nimble_bleprph_host_only_uart_hci/tutorial/bleprph_host_only_walkthrough.md","size":4365,"hash":"31d77835533ffc634159636bdc7cea39e28fd17a6480680e78016b9825348ecb"},{"path":"examples/host_nimble_bleprph_host_only_uart_hci/tutorial/hardware_setup.jpg","size":495040,"hash":"3d84f073f55d4092788acf6093b1916469d27a1f74a8e892b708cb67abc17ed5"},{"path":"examples/host_transport_config/main/CMakeLists.txt","size":152,"hash":"08f83bec54157a36a463906dd70ece31cdf3881408a7c8159d6086496236cf3b"},{"path":"examples/host_transport_config/main/transport_config_main.c","size":19752,"hash":"32eb4ac97dab0087ccd75cc8cd2858c66277694db927d3d654c8899b94a4d26d"},{"path":"examples/host_transport_config/main/idf_component.yml","size":234,"hash":"996adf918ad6f33e77d0b0855cfe6f3c2d4c254aec12793477cd0f01af0968c2"},{"path":"examples/host_openthread_cli/main/esp_ot_cli.c","size":4189,"hash":"a19d8b9d6461ac097167001419fb9f88633592c5f97a6f6a3b64be1f3506686d"},{"path":"examples/host_openthread_cli/main/esp_hosted_openthread_app.h","size":326,"hash":"18881766a84efd942d3c8575415714f969ccffa7b9d9e3596970dd7943993844"},{"path":"examples/host_openthread_cli/main/esp_ot_config.h","size":952,"hash":"fc4c4f8d936b090dfab34c0f4e10878c18a3b37da4cdeaa57880aa28c0a438fa"},{"path":"examples/host_openthread_cli/main/CMakeLists.txt","size":114,"hash":"b8893d268d382e5d0057bfccccd8242de1bed57614d8ad5ae4cff96b43d83680"},{"path":"examples/host_openthread_cli/main/esp_hosted_openthread_app.c","size":1636,"hash":"e4b22cade65c71ed204efc87bac057407bafd98fe89a7880c536989c4260fb94"},{"path":"examples/host_openthread_cli/main/idf_component.yml","size":502,"hash":"2e2149b639e1668533f27101ec4cf6b36e61b672d6c516c34c9ff4b95d5aec7e"},{"path":"examples/host_wifi_itwt/main/itwt_main.c","size":15257,"hash":"260df07e4bd025c610519f291e62783d7501c4d3158b5e4d9041d7b7b965b531"},{"path":"examples/host_wifi_itwt/main/wifi_itwt_cmd.c","size":11429,"hash":"0503b664c4a23ee250a6c9c67db01937725f8ae045c68ef1b7f78e0019eef4dc"},{"path":"examples/host_wifi_itwt/main/wifi_stats_cmd.c","size":29702,"hash":"278deaf72668652f1b0f3a1ee1a3c0dd7db2ffcce5ee98c6ecd165b4187c334e"},{"path":"examples/host_wifi_itwt/main/CMakeLists.txt","size":238,"hash":"471b3a494619c751f88fc0604e9105dfd594ac09397fab9574cf979d72454511"},{"path":"examples/host_wifi_itwt/main/wifi_cmd.h","size":264,"hash":"bb51eaabea551ce49f36b2a9e531cb8412844d52a024eb2798f4d6201a655dc5"},{"path":"examples/host_wifi_itwt/main/idf_component.yml","size":410,"hash":"1095c9760a1cfade8cb44072e5abbfb0c7ba83094d2a594998b1476b76a01175"},{"path":"examples/host_wifi_itwt/main/Kconfig.projbuild","size":6534,"hash":"7b8fdf73b1a17f5bccfc879b8a896f34d7236a816266d1ee07a8013f4109234e"},{"path":"examples/host_shuts_down_slave_to_power_save/main/memory_debug.c","size":2650,"hash":"478c8d69f9dc51c9e745b12f4354f437fc9a26dc91e2210a69def3f8d7304b77"},{"path":"examples/host_shuts_down_slave_to_power_save/main/main.c","size":10401,"hash":"f365331dd808809127e13c4e67841a2c4a2cfdc80298ba9f262256e26c972a60"},{"path":"examples/host_shuts_down_slave_to_power_save/main/memory_debug.h","size":1885,"hash":"dd0e6ac020316430b2e4957412474ee53f64b57190e5d88a1ab5daf1364478fc"},{"path":"examples/host_shuts_down_slave_to_power_save/main/CMakeLists.txt","size":107,"hash":"bc12e7cda7ee2058352b051e80baea8a4854c7f66d80cefb55ce29f51e64485e"},{"path":"examples/host_shuts_down_slave_to_power_save/main/idf_component.yml","size":234,"hash":"996adf918ad6f33e77d0b0855cfe6f3c2d4c254aec12793477cd0f01af0968c2"},{"path":"examples/host_hosted_events/main/main.c","size":9595,"hash":"915ab3a26eb17edfb8d94e01df7fe1a534cac9d109b1ab0e2bd8714603d3a334"},{"path":"examples/host_hosted_events/main/app_common.h","size":327,"hash":"67b247aee7678e3a17149c1b5ae2fd79f8c0bef80c6d72fa6fdd222abcbbba47"},{"path":"examples/host_hosted_events/main/CMakeLists.txt","size":119,"hash":"f396f72f1a4170b5fdf5db6ecf29622db1fde0f0cf78da98986331ee47518365"},{"path":"examples/host_hosted_events/main/idf_component.yml","size":234,"hash":"996adf918ad6f33e77d0b0855cfe6f3c2d4c254aec12793477cd0f01af0968c2"},{"path":"examples/host_hosted_events/main/station_example.c","size":7822,"hash":"af4e82882cf081a0a6499c43e059386824ad4f6ed741ddf0e58981abffd942d1"},{"path":"examples/host_hosted_events/main/Kconfig.projbuild","size":3012,"hash":"da7725196bebc3580d9b35ae9c92d878d1a81a59bd892b56233b42e9bc247141"},{"path":"slave/main/slave_wifi_enterprise.c","size":12327,"hash":"6dc8fc99d8c43fe761bc80cc9cf58ed8a76035f9719ebc3a6cc70218acde8f27"},{"path":"slave/main/example_peer_data_transfer.c","size":7084,"hash":"477a15723ba57a8a53ca2dcfa08664cab59bf6c529e7291228143c22dd43d51f"},{"path":"slave/main/slave_util.c","size":822,"hash":"e34e25b4f1b2b2b16bd23e98dd265e306a1be9c1a9dcbdd31c4de1aa733ae5bb"},{"path":"slave/main/nw_split_router.h","size":810,"hash":"c3375e4fff5b1f684e75ba48cac606b95ef43c026b54440714ab251ec67c5646"},{"path":"slave/main/slave_bt_uart.h","size":301,"hash":"b7e8368c4a5037f7d84fa9cff8efc2f9976b608a374c0f2a5f3c16c0bba20406"},{"path":"slave/main/slave_control.c","size":55609,"hash":"d6e1825966025491076b8d8b077eff62e326610d556953c84977d4c3c422d171"},{"path":"slave/main/example_http_client.h","size":676,"hash":"23a0f386beb7dce88256399b1fa7f648bf02c2b11bc39abf4fd21ccf84924860"},{"path":"slave/main/spi_hd_slave_api.c","size":29474,"hash":"b5641e6d03f7bed2ca97d310a30f460dbdf4b55d703add0b7ac031bb49c97201"},{"path":"slave/main/example_light_sleep.h","size":1392,"hash":"fa7b05f6c1a3d480befb3f750a3b29214088a13f5534f3808fdf23a13d76e6a2"},{"path":"slave/main/example_peer_data_transfer.h","size":616,"hash":"c0fea29d202cb0f61f7090189e8b22172d4dee91bc0165b7f738e1589be0ff53"},{"path":"slave/main/slave_gpio_expander.h","size":926,"hash":"421094e1b870c941cb2f4685571e4d80e4c68480acc2af3522fdf93d52e7d6f1"},{"path":"slave/main/esp_hosted_coprocessor_fw_ver.h","size":673,"hash":"ce1807b657f03299dd9937bdc7874820cb5f3fdac087ff0a8285bb5dffed8bce"},{"path":"slave/main/memdump.h","size":584,"hash":"988559676d17162160c2e9541efefb02f181f7ab7e0bf707fcef1d5f3a9bd9b2"},{"path":"slave/main/slave_bt_uart_esp32c3_s3.c","size":7215,"hash":"823583e4bf8a3cec6b50764a53896a7262ba4b811e3d6debf1da0e129be9220d"},{"path":"slave/main/slave_ext_coex.c","size":3750,"hash":"cfb1216f903a071211eaeeb323ba2b99b1fe5c893601f44e74947f6506210798"},{"path":"slave/main/sdio_slave_api.h","size":302,"hash":"27012774fc65e8bac5c068e5face176acce3a7cbc445c92280859bda01393bc2"},{"path":"slave/main/slave_bt.h","size":5013,"hash":"07c989c80a3658f640313c12de58bdd0bc69701a2ca09b8a040986a1d8d7df66"},{"path":"slave/main/Kconfig.light_sleep","size":9310,"hash":"cfdf1193e30611df80825e364de82ff619901db22853a87ab95e9c0cf34b286e"},{"path":"slave/main/host_power_save.c","size":12847,"hash":"4d716cde2d20467d9969a45c76e6cadb9278ae4140e904d7d9a36860584cbc01"},{"path":"slave/main/protocomm_pserial.h","size":714,"hash":"3d1b9d4e36b8f7caa1bc55d879a02f3c2290c4cb0a49a199ba07acb925883cf8"},{"path":"slave/main/stats.c","size":11632,"hash":"f4557b91a448c723b9b897969799884ec5327496f380a2ac4e9a02a8a93b8acb"},{"path":"slave/main/stats.h","size":7114,"hash":"a657ea0d953fe1aa8a62759ef02a68a8716375e320a44d4faf7c3e35bdf96a01"},{"path":"slave/main/example_mqtt_client.c","size":7886,"hash":"836402998cef9d105203d58f24a3ac113d559c7286803278bcdad08d2abf9042"},{"path":"slave/main/slave_openthread.h","size":814,"hash":"36203ecbdf74e0b006ebcf6d3c0c4c246aa604587517dfa0996b983f76ba1126"},{"path":"slave/main/slave_wifi_enterprise.h","size":2488,"hash":"48dd8899c4ebcb1795cbfc8f1a51b924f9af4a571b9b3fb3b5d15f8dd2200cce"},{"path":"slave/main/interface.h","size":3156,"hash":"476b2acc64f057980b29c37cfc9055c59f9d388edef9fb57d099b0b8cb6e88f7"},{"path":"slave/main/slave_config.h","size":1162,"hash":"1fb07ec151970d86569f237ec33bb9b1857625a17d8525002417ea3b52efa19b"},{"path":"slave/main/slave_gpio_expander.c","size":4810,"hash":"e926fdbdddee6753839997d786e4668d9b6ca57002cbb83e964ead3849c3902b"},{"path":"slave/main/slave_network_split.c","size":11360,"hash":"f772807d124476565f32cdae5cf7b4e3d3df33d1455ec2f164c8d4f72414dbff"},{"path":"slave/main/uart_slave_api.c","size":19704,"hash":"0694d957bc861de74a931bfa6d539a7befe928edbb017f33ee402976f553c2ce"},{"path":"slave/main/slave_bt_uart_esp32xx.c","size":502,"hash":"f8fc75690418b6155693d4c8b43bf35fefc0a7692298794b3ab7ee7c78c5285c"},{"path":"slave/main/example_http_client.c","size":6537,"hash":"42c7be91d05397aff3fe57d8cc68e8fcc0333315a8ab545d7965d9835c902df1"},{"path":"slave/main/spi_slave_api.c","size":29239,"hash":"c096473e8dbd2e6d1fb349a6ad8893041c869513a0eee3b694425d3c5a5e8e7a"},{"path":"slave/main/slave_wifi_config.h","size":3655,"hash":"c23925be5cd485eec558c3ea3ef7c44be437d97c0bda9f9bab8b8d76f9711cbb"},{"path":"slave/main/slave_control.h","size":12992,"hash":"22a5ed7c709fb5d345f573c7f09788f8995c2d20a0187015ce331eecc306f891"},{"path":"slave/main/slave_openthread.c","size":5346,"hash":"5789a4002165d60968c2d7418806f1a62b76aa6a9c76d5498a129999e54d2bfb"},{"path":"slave/main/slave_transport_gpio_pin_guard.c","size":2271,"hash":"1ccaec04d8eb4c9d1d4587fd44401ea7c3008f427a3590978ba2d6e1f7f1ba9f"},{"path":"slave/main/slave_wifi_std.h","size":7687,"hash":"4428f6f14d1d7706cfdd0bd14a31b341b8b440acf7912f4b3c3b8338b6c63e3e"},{"path":"slave/main/CMakeLists.txt","size":3197,"hash":"f3e9bafbe97467e84f4be40ccd847bfb6a459c7a862ea133e7292d419338e0c8"},{"path":"slave/main/esp_hosted_coprocessor.c","size":34431,"hash":"67184c946fa30fede760ea5cf2f5d5e69d08e7684a8ccebedea26f12c772b3d2"},{"path":"slave/main/slave_util.h","size":1285,"hash":"7bbfc8a901abd9e6dc221cfb3bc6fdd44723fc9920b937b0b9b1271a8fefce3d"},{"path":"slave/main/slave_light_sleep.c","size":4501,"hash":"d15a26e1434daa3ee33b6a1b6dd8426bb51ddc221d5c66b3538ed01a960a930d"},{"path":"slave/main/host_power_save.h","size":3780,"hash":"9c7d0f4073083c9f8cfd1091774e2e1ad69527e6253bd5f24e55512338c95877"},{"path":"slave/main/esp_hosted_coprocessor.h","size":495,"hash":"53a2723c80bf67fe09ba69223a28797042ae3da02ad1c92ccb871c56a2e59934"},{"path":"slave/main/nw_split_router.c","size":16619,"hash":"e072a295b924c08a74e4edd9f207e07d64bf593c90d142c9ae8147401b82fcfb"},{"path":"slave/main/esp_hosted_peer_data.h","size":1553,"hash":"8ee001f2e2c8865d0d043387284b11eedd1a66906f3b16da339d2e26db34700b"},{"path":"slave/main/slave_network_split.h","size":970,"hash":"fe078dde4ca2f5fffdbb3a951adfad04234d74327bd699344c5361e776ca4507"},{"path":"slave/main/idf_component.yml","size":701,"hash":"e68e9c964b28981692e5f0540840f2843e71e5c923cff6213ea8be40614c128d"},{"path":"slave/main/slave_light_sleep.h","size":2728,"hash":"c6c8b3865bb082df46184b1df56dda9fb737d93e3bfba199c803971cefee4b9f"},{"path":"slave/main/slave_transport_gpio_pin_guard.h","size":642,"hash":"f5e7c393e5c19ba4e38cd599887784f7fac41ac4ac23488ce81765185b53f80b"},{"path":"slave/main/example_light_sleep.c","size":4906,"hash":"8fe29bab7d717da7c105e6066b79579e9ceebb6419078badb24bc0475ce491eb"},{"path":"slave/main/slave_wifi_std.c","size":94589,"hash":"33cf0c7532ca878e1acd7f612c7fd6301141525916c3f1d56b3b185b1faed966"},{"path":"slave/main/example_mqtt_client.h","size":669,"hash":"b850e8307a1bd288d34268e206cbcdfe7688792a621b95abff84115c2ea51dca"},{"path":"slave/main/sdio_slave_api.c","size":26039,"hash":"cb66440329129699d804609c95bcec515bd2e5509e4dd6fe9154127bebb87b80"},{"path":"slave/main/Kconfig.projbuild","size":55962,"hash":"0c4705170e258f96480dc4e8ab5ae8251abbf42a66de9e689f55c3d1e56de95a"},{"path":"slave/main/slave_bt_uart_esp32.c","size":884,"hash":"29bbaceb46de1818f3c8d9605efcf18e256e4ad45a48e4b3bf800678c6df0b9d"},{"path":"slave/main/slave_ext_coex.h","size":1532,"hash":"bd8348bbc1de804d8f7b6407ea257ff12d50aa3c4b33340d7ece36b218643b77"},{"path":"slave/main/protocomm_pserial.c","size":8619,"hash":"118a0d9302029ea23db56be811f1af07a523692051833cc787257c64ee3f1b71"},{"path":"slave/main/slave_bt.c","size":8466,"hash":"48ebf603ee040d6036153fdc71903678dd7179041315f1740f826a551cd0107d"},{"path":"slave/main/Kconfig.openthread","size":4600,"hash":"f67b857a6f9c3ff9550736a2d35b2b305be1bcfcd68a748386caa22be0739201"},{"path":"slave/main/common/esp_hosted_header.h","size":1308,"hash":"0b1c053e0f1f1008fc94b5558fd85a2bc7c0f6b44a8eebe81a78a035f6a36cfe"},{"path":"slave/main/common/esp_hosted_lwip_src_port_hook.h","size":3255,"hash":"6a0039ba1849aac2d54b2560848bd81b9ca6228a75670a397fbdf14500cec997"},{"path":"slave/main/common/esp_hosted_interface.h","size":427,"hash":"e310b9c7b1cda5153c1f5f89acbe238bbf8434bf94dfcdfa18aed5770f8039b9"},{"path":"slave/main/common/utils/esp_hosted_cli.h","size":716,"hash":"ed1a3eac35470e8891d067c49be2997ced265cf466faf919ecb258d0ef5b8181"},{"path":"slave/main/common/utils/esp_hosted_cli.c","size":13181,"hash":"bb88e8894cf4a3e2765db79b0f0b67297f768cf1af6dffe45b5156b4b12010bb"},{"path":"slave/main/common/log/esp_hosted_log.h","size":1398,"hash":"2dffd52777d5ab2fd1da4ca9013e273abfdbbee20e0fe89a1887f8f0ed02cac5"},{"path":"slave/main/common/proto/README.md","size":2456,"hash":"a6871e524afcd3709b6c96d0e46150e68c2b7729d199e1a8736eb68c9f0b218d"},{"path":"slave/main/common/proto/esp_hosted_rpc.proto","size":92022,"hash":"8b00a7fa1158b0f8ecb9a26b3b71b237c98e7c2837afb36bb4299e79a85db843"},{"path":"slave/main/common/proto/esp_hosted_rpc.pb-c.c","size":1115889,"hash":"ee8cde248a97b4ea6b86f80ec51b46b0fec2cd51583ebf293b6c84cb5ba3a6d3"},{"path":"slave/main/common/proto/esp_hosted_rpc.pb-c.h","size":513460,"hash":"685a9983bf4366a87be8b4ead7cd0e0b11202980f93d25038e945eaf48c55ddb"},{"path":"slave/main/common/protobuf-c/README.md","size":5589,"hash":"b74b0f4c408fdcee9258f38f24e2a8b32646b2e3e1f0e124dac21c09d9e182f0"},{"path":"slave/main/common/protobuf-c/autogen.sh","size":31,"hash":"02726388864e158726e4d99c1d351da0813664993bc7e0a9fc3df3791bf553a4"},{"path":"slave/main/common/protobuf-c/LICENSE","size":1613,"hash":"b8999cb392cc5bbe8cd679de59584ad8d2f26033123e76f1d662fa14b9d4f287"},{"path":"slave/main/common/protobuf-c/Makefile.am","size":12052,"hash":"c8962d3f83c7c715ccd05470299bd944504f136720c56df389a9f92a0b377374"},{"path":"slave/main/common/protobuf-c/.commit_docs.sh","size":1768,"hash":"333504e5b25b78a44b90a7a69529941cf50ffc440d9a96235c2b1858e13515fb"},{"path":"slave/main/common/protobuf-c/.git","size":59,"hash":"b9a66aea81aa130621b42560ad6224a9b9d6d3de2a6816f875f42cfc2b954d2a"},{"path":"slave/main/common/protobuf-c/configure.ac","size":4217,"hash":"476b27fb1d4fe4347a4d1edce035aae68879e018befe1dafd3573102211a8b06"},{"path":"slave/main/common/protobuf-c/Doxyfile.in","size":100929,"hash":"2e5c2761f7ba052df8fa9bae7e38ea6b084ae20a84541e59651cef889931893a"},{"path":"slave/main/common/protobuf-c/.gitignore","size":618,"hash":"fc14bbcd364840736d8762e68db3f60274707193f572597f6926de9644b6413d"},{"path":"slave/main/common/protobuf-c/ChangeLog","size":19584,"hash":"8b0996d03afab43239483c232c1fda51c0056a4c5632c97ddc91c7e9042a2fb9"},{"path":"slave/main/common/protobuf-c/DoxygenLayout.xml","size":6052,"hash":"fe8fe4e81447ccc50db7fa1aff6c7f3862c3d133fe672aea96b32e6e33a4dc8e"},{"path":"slave/main/common/protobuf-c/CONTRIBUTING.md","size":464,"hash":"e90bb0a6b23f44cbc366d8ba8edf49a56227171fa31c3665285f1bdc2638b068"},{"path":"slave/main/common/protobuf-c/TODO","size":3068,"hash":"1a439dc710871d2c7d5e5546639ba3369a0e84414efa33a6ea217713e8c31cbf"},{"path":"slave/main/common/rpc/esp_hosted_rpc.h","size":781,"hash":"9970b9141034bb1f1b365642d22cd2b9767e2881f6f983e6c4408d926f6bfa35"},{"path":"slave/main/common/rpc/esp_hosted_bitmasks.h","size":5465,"hash":"231d7ae725078564210a26aa25d507c82dcf65a1b37bec9a55063014b9e9730b"},{"path":"slave/main/common/transport/esp_hosted_transport.h","size":1794,"hash":"48655157edf508955a7fa7b5941731f4f2a3863a1510da22485b1a937e07b95c"},{"path":"slave/main/common/transport/esp_hosted_transport_spi_hd.h","size":1215,"hash":"fa7cb978b48ab8c4cf40c5c0a1aed62d9e242672e5ebf7564f5b254bdc047abb"},{"path":"slave/main/common/transport/esp_hosted_transport_init.h","size":1869,"hash":"137dbd3eb3b6446bdf5b1f840b2389de106805b30b6e3fad80b696c3800de010"},{"path":"slave/main/common/mempool/mempool.c","size":5115,"hash":"013a0c749a9bd69af7e857e85a7bc5f86cd6858ddf7c179918fbc616e4b960a2"},{"path":"slave/main/common/mempool/mempool_ll.c","size":12413,"hash":"4d5e687e67e9ed1175fff0e3e6210ec0729f69c60624607a003a4c9838b05cd7"},{"path":"slave/main/common/mempool/mempool_ll.h","size":7214,"hash":"718a103cb5ee1ab58c0b90bfdba7774fd08f51b56ee17e6b4826c1044a8a8c88"},{"path":"slave/main/common/mempool/include/mempool.h","size":1586,"hash":"081ee35052e690fe11794d4273f7038ceb7a9c870e17e8553d76436a84bf3760"},{"path":"slave/main/common/protobuf-c/protoc-c/c_string_field.cc","size":6509,"hash":"65f4c4c26cbdf1ab42d0d53b169db78facb56785daf6875b773e2db92bc2493e"},{"path":"slave/main/common/protobuf-c/protoc-c/c_extension.h","size":4509,"hash":"50361ade755615e7205e367312d50e58cf4b19e7ad63e910ee576dec504023e8"},{"path":"slave/main/common/protobuf-c/protoc-c/c_field.h","size":5393,"hash":"d3edfa84380554e9efc0f9e8f48e28d389e47ea391840eeb923ebca616550d65"},{"path":"slave/main/common/protobuf-c/protoc-c/c_enum.h","size":4633,"hash":"b3d332385d2febe0d06b19244e4f363aa20d4631386bf910c602e397562d08a7"},{"path":"slave/main/common/protobuf-c/protoc-c/c_message_field.h","size":4134,"hash":"463e9502d6487968672d31743e136b5c8c301753a48a6a61c0f09ec1a371b8f0"},{"path":"slave/main/common/protobuf-c/protoc-c/c_generator.cc","size":6825,"hash":"dccc05968028fe0526afef98f2d6fbcacc5c5979dbb9abb338cc1464aa471b3f"},{"path":"slave/main/common/protobuf-c/protoc-c/c_bytes_field.h","size":4311,"hash":"bae032583222c4a651e9877144ec7d1ec2a140cedf02f16b4a43b49b846a0a34"},{"path":"slave/main/common/protobuf-c/protoc-c/c_field.cc","size":9658,"hash":"fe446af7ff22bb07dce3e578bd397001ffd96e8ba507106f18d7b4bd56f0638f"},{"path":"slave/main/common/protobuf-c/protoc-c/c_file.cc","size":10227,"hash":"c709cd1b0a16a6513c66720eada9e6dc7438d70e861ed4745315f273d9de040d"},{"path":"slave/main/common/protobuf-c/protoc-c/c_bytes_field.cc","size":6815,"hash":"a621d6b41d7abda2c1a4606392767e4e52f0ad5a38a5914c5bdeda1781e4cd03"},{"path":"slave/main/common/protobuf-c/protoc-c/c_file.h","size":4666,"hash":"dd4e7b14b1d3d5f7893e5eb2d886adb0c7a4d32a784e349c826290aaa9e73d11"},{"path":"slave/main/common/protobuf-c/protoc-c/c_enum.cc","size":12933,"hash":"031d789916f144b49650dfa9982f138096902822bd2f9159ca535531a5937171"},{"path":"slave/main/common/protobuf-c/protoc-c/c_message_field.cc","size":5314,"hash":"87be3696559c640964da256743a6d7e0f40333c97e2c9fc81e3af50b538535aa"},{"path":"slave/main/common/protobuf-c/protoc-c/c_extension.cc","size":3890,"hash":"a2d459bd817354e1872cbc0d7d8a627297a43eca0b730071985b8c8b62775301"},{"path":"slave/main/common/protobuf-c/protoc-c/c_message.cc","size":23599,"hash":"6117d485fcbffa42f46510206e3bb53d9bbc5ee4d79d0008bbb1b88c9f0eefd3"},{"path":"slave/main/common/protobuf-c/protoc-c/c_generator.h","size":4502,"hash":"7f55bb78d3c9a3bc75b4767f5c5734f5d82e41d03fa2c8a7d9777099cfb9739f"},{"path":"slave/main/common/protobuf-c/protoc-c/main.cc","size":771,"hash":"a4776963703ee59c51752acd07fde31c61a36942c9a074b9036fda30d62fe9a1"},{"path":"slave/main/common/protobuf-c/protoc-c/c_string_field.h","size":4317,"hash":"0b3ff55d67b37e7a6b3d28d75350a0fbb0e2c2ce395197fb0ccbdd96cf01393d"},{"path":"slave/main/common/protobuf-c/protoc-c/c_service.cc","size":12654,"hash":"0b33d11a5f8601b62d4fc9ea1c2e323a0f269d6cbe3fcea3582318e59966eb1f"},{"path":"slave/main/common/protobuf-c/protoc-c/c_helpers.cc","size":19094,"hash":"a041971ff0249bc89304f30743e8b612f3c272b6b7260b933383a6fe99ffbe7f"},{"path":"slave/main/common/protobuf-c/protoc-c/c_helpers.h","size":8203,"hash":"6bb557a8a0c1772d2f5071359363f7773fc0ca1f9c561e25122315c8af1e50aa"},{"path":"slave/main/common/protobuf-c/protoc-c/c_primitive_field.cc","size":8479,"hash":"f0e5522fb3a51e4f705dd1dc186aef8f88aa7b39c6b139f0970a05fd016886ff"},{"path":"slave/main/common/protobuf-c/protoc-c/c_primitive_field.h","size":4147,"hash":"3392eef765523d55a57380465c5a18d54ebf8548cf8eb1e5be12c162f8ea3c1b"},{"path":"slave/main/common/protobuf-c/protoc-c/c_enum_field.h","size":4162,"hash":"9ddd6491cf81cd7032f9deca57245a3921098ed8f5808277e244d9971e7d2797"},{"path":"slave/main/common/protobuf-c/protoc-c/c_message.h","size":5748,"hash":"eb0b13bf9a9124f6443eb519a390ab010088b2586aea144417b15ba7f6cbc924"},{"path":"slave/main/common/protobuf-c/protoc-c/c_service.h","size":4582,"hash":"9fb6ba2a05ebb635685b6c1bd5c0259587d11edd547cdcc07f9486728c8b07e0"},{"path":"slave/main/common/protobuf-c/protoc-c/c_enum_field.cc","size":6196,"hash":"ce4e10ec341af60456d69ddd5298ec082cd1993cf0ee51a117fbcbd299a03275"},{"path":"slave/main/common/protobuf-c/m4/code_coverage.m4","size":6420,"hash":"4852e6f44f36c967f9792b258409dd984a081a8aefd0a18476c7ee891f048026"},{"path":"slave/main/common/protobuf-c/m4/ax_cxx_compile_stdcxx.m4","size":19246,"hash":"0c08d2f64147f65eb7e255019102c1042ab695c60fd49add19793951a1279a1a"},{"path":"slave/main/common/protobuf-c/m4/valgrind-tests.m4","size":1185,"hash":"0f2c3eece299f5971c33bcea3fca26a00eef6b2e59e2e5b827c1062aaad39c6b"},{"path":"slave/main/common/protobuf-c/m4/pkg.m4","size":7799,"hash":"b97b533ce9d549b370e00f919ee8612f010514802244e88f859c3cf222f17c8c"},{"path":"slave/main/common/protobuf-c/m4/.gitignore","size":63,"hash":"b96df5710e539dde8424e3c38174598386aeaff62e4b4a3a878a3f8290a7f9fe"},{"path":"slave/main/common/protobuf-c/m4/ax_check_compile_flag.m4","size":3331,"hash":"302601f55edc1c28382e383e4c96ee3820f56df01964350a8bae16afd2f27f78"},{"path":"slave/main/common/protobuf-c/m4/ld-version-script.m4","size":1780,"hash":"e6d983c51ef63af2b100064946c6fed0e4bcb5a62b46966f81c8cac9d859a6ac"},{"path":"slave/main/common/protobuf-c/protobuf-c/protobuf-c.c","size":96796,"hash":"5af483efb77b6c60afce921ff361cff5320b2a80698f6e7fb0356c49b48933a7"},{"path":"slave/main/common/protobuf-c/protobuf-c/libprotobuf-c.pc.in","size":270,"hash":"436b6b05afd63364b87244136433de1952c6ea5ef95d13449ffb380f604eed73"},{"path":"slave/main/common/protobuf-c/protobuf-c/protobuf-c.h","size":33675,"hash":"e1c6306390090e4468472dbed3928e6983d1be3306d2006ea3fa49696aef6946"},{"path":"slave/main/common/protobuf-c/protobuf-c/protobuf-c.proto","size":3297,"hash":"cea6e61e9d7786fb4652a2c3faa7a74151f6cd5dab763701764c22d01e83f922"},{"path":"slave/main/common/protobuf-c/protobuf-c/libprotobuf-c.sym","size":893,"hash":"b2a5f102e87f9249a54aa1cfe732317c6613471217bd372624cae49353225981"},{"path":"slave/main/common/protobuf-c/build-cmake/CMakeLists.txt","size":8641,"hash":"e0b5fafaa2184c8636887a6f0ece358913d16ddcd8c3a1687c828147cc137cb6"},{"path":"slave/main/common/protobuf-c/build-cmake/.gitignore","size":30,"hash":"4a92eccb7a791bc3eaacdc4fd6265017c6c2222cbf049a8af2276768c4158d33"},{"path":"slave/main/common/protobuf-c/t/test-proto3.proto","size":519,"hash":"e5a6eae5363f2c7e949055f356878aef3b42405e16df2e80860b04deb2a25dcf"},{"path":"slave/main/common/protobuf-c/t/README","size":1577,"hash":"48caaea6afc962b77fbb4e6c756c07f2011ebe625867cbc643b3fadbb19dfaab"},{"path":"slave/main/common/protobuf-c/t/test-full.proto","size":12565,"hash":"2a033b6b0dbd820e4e4d42c27d034c3f940bc8a8c3c602791662fb2cc34a14d1"},{"path":"slave/main/common/protobuf-c/t/test-optimized.proto","size":186,"hash":"e015f8553149fdc161d64e5bdfd5180e1e4ecd8099aecf078af2ac818ca942da"},{"path":"slave/main/common/protobuf-c/t/test.proto","size":675,"hash":"e6d2023c1f8a42c369c72c5cc6aa8bebaea7dd0309fe59f54c04284b5e337c45"},{"path":"slave/main/common/protobuf-c/t/generated-code2/test-generated-code2.c","size":80089,"hash":"08906f336f4f838e68f1f0ecad31bb0a20da728b5f082fc96e88a969097994fa"},{"path":"slave/main/common/protobuf-c/t/generated-code2/common-test-arrays.h","size":2968,"hash":"ed7d7546a089ee134178e72fc0e1ef7f382cd419b07269a446b3665807c49e84"},{"path":"slave/main/common/protobuf-c/t/generated-code2/cxx-generate-packed-data.cc","size":40202,"hash":"f60c9f5d32c7bb2e23e9e2b6d8a70c8511d545921a8e707f59487e27a079e1ef"},{"path":"slave/main/common/protobuf-c/t/issue330/issue330.c","size":538,"hash":"4f170ceda081b315d2a24d36fd2e53aa0fc4eabfaceba0864cc79cef0a0ebbfc"},{"path":"slave/main/common/protobuf-c/t/issue330/issue330.proto","size":70,"hash":"cc220776174ee0ec1c229ac452dfe0da12a966d947a73562c1792c027bf429de"},{"path":"slave/main/common/protobuf-c/t/issue330/.gitignore","size":9,"hash":"3cc5baad3b706e17ca8e6413df5c36c610b2a2b7ca9632a324555664dba6d1c4"},{"path":"slave/main/common/protobuf-c/t/issue375/issue375.proto","size":90,"hash":"1eaf3d39d71f4a24489ffbf7fbce517639765c89cd08b8a4fd2beedfb05b2c95"},{"path":"slave/main/common/protobuf-c/t/issue375/.gitignore","size":9,"hash":"bbe748efef847852c182d2fb294d67236057755d54872925f4301be655b2cf70"},{"path":"slave/main/common/protobuf-c/t/issue375/issue375.c","size":731,"hash":"144d0550db581639f016e3515d78fdc0c7c1d43db39da4085994f43452fd08e0"},{"path":"slave/main/common/protobuf-c/t/issue389/issue389.proto","size":177,"hash":"6640018aa0412d028f146fb4674781ce02a472c53931690e1995156d2f7677a2"},{"path":"slave/main/common/protobuf-c/t/issue251/issue251.c","size":233,"hash":"59c02cf83ddb27cd0832b3c653fc784ed050f23db3e457e6eb193765e88b3184"},{"path":"slave/main/common/protobuf-c/t/issue251/issue251.proto","size":169,"hash":"df3962b55ff7b852cc5e7bf4fdf30d2057fb076affbef0570c283d1e51fc89c6"},{"path":"slave/main/common/protobuf-c/t/issue251/.gitignore","size":9,"hash":"bf4eab645cf51d7a0b5c969e39206390ffbd3a95e0dd177d87978403a2def337"},{"path":"slave/main/common/protobuf-c/t/generated-code/test-generated-code.c","size":1855,"hash":"66fbffa6a566f53939d04b7d4f250f11e8f540f4b9367d8ba881e11e03daee6b"},{"path":"slave/main/common/protobuf-c/t/issue440/issue440.c","size":991,"hash":"c0c702444450c5710aec0df2b577aadf29f1138ef15a38fd44c87fe77451eaec"},{"path":"slave/main/common/protobuf-c/t/issue440/issue440.proto","size":110,"hash":"810225d40ce42fd7c873af543e41e69f903d0b9c0bc6861d79a181fcfce76273"},{"path":"slave/main/common/protobuf-c/t/issue440/.gitignore","size":9,"hash":"e265a0eb417763368dfb0a2532918129b4c89a186c3d11154328c3324804e2d2"},{"path":"slave/main/common/protobuf-c/t/issue204/issue204.c","size":1130,"hash":"943f56bc13e6fb3d79126b503f97d514550a119408c83caab9e1bb1fb55ec5b5"},{"path":"slave/main/common/protobuf-c/t/issue204/.gitignore","size":9,"hash":"e436d291bf607f0666f8c7136d6c8b21103533187e92c5861e363c8a07884e67"},{"path":"slave/main/common/protobuf-c/t/issue204/issue204.proto","size":257,"hash":"39fc37877ce310c94231e05c911defddb42d3f9a6bb705ec81f0c5c77079c0a9"},{"path":"slave/main/common/protobuf-c/t/issue220/issue220.c","size":320,"hash":"36dac19b93d5d5177ab1915881a16814f3a9b3af5882b8cd2295f6040e1f9ac9"},{"path":"slave/main/common/protobuf-c/t/issue220/.gitignore","size":9,"hash":"a2900d4388c6f41f2903d3d2f1b0083fd2e1b07a0fb859128055226328a46494"},{"path":"slave/main/common/protobuf-c/t/issue220/issue220.proto","size":313,"hash":"1007212ce49e900c2b3301d079b92299f4eecefebf09a942ab322f2cb53d58ab"},{"path":"slave/main/common/protobuf-c/t/version/version.c","size":2104,"hash":"5825e7cbd27ddab4c9cf2a00a4bddad79c8ee4afc7b65dc5973110129309fe55"},{"path":".gitlab/ci/rules.yml","size":849,"hash":"bea958c9df3a5c00cf492e4af213f465d57cf836e856feb85f9fc31180a33baa"},{"path":".gitlab/ci/pre_commit.yml","size":931,"hash":"00c65ed875891915f51695fa32a02b3709e092ea75fbd89df524a29bbe90cefb"},{"path":".gitlab/ci/sanity_pipeline_jobs.yml","size":6557,"hash":"1e8a493de7338a90ba0558d0e8db26f1ac4955b8a2aabdcfc40f8b6a946a4c80"},{"path":".gitlab/ci/templates.yml","size":16583,"hash":"df65b6c0ba8390c5d1c1da17fc98ab3f59029e9180a42518acd4f4fe86e5c5bf"},{"path":".gitlab/ci/regression_pipeline_jobs.yml","size":11413,"hash":"9c42e573e68883ebed761aa07bc34e6c62c8dc05f3ed48ddde1109f7abf0bc6f"},{"path":"common/utils/esp_hosted_cli.h","size":716,"hash":"ed1a3eac35470e8891d067c49be2997ced265cf466faf919ecb258d0ef5b8181"},{"path":"common/utils/esp_hosted_cli.c","size":13181,"hash":"bb88e8894cf4a3e2765db79b0f0b67297f768cf1af6dffe45b5156b4b12010bb"},{"path":"common/log/esp_hosted_log.h","size":1398,"hash":"2dffd52777d5ab2fd1da4ca9013e273abfdbbee20e0fe89a1887f8f0ed02cac5"},{"path":"common/proto/README.md","size":2456,"hash":"a6871e524afcd3709b6c96d0e46150e68c2b7729d199e1a8736eb68c9f0b218d"},{"path":"common/proto/esp_hosted_rpc.proto","size":92022,"hash":"8b00a7fa1158b0f8ecb9a26b3b71b237c98e7c2837afb36bb4299e79a85db843"},{"path":"common/proto/esp_hosted_rpc.pb-c.c","size":1115889,"hash":"ee8cde248a97b4ea6b86f80ec51b46b0fec2cd51583ebf293b6c84cb5ba3a6d3"},{"path":"common/proto/esp_hosted_rpc.pb-c.h","size":513460,"hash":"685a9983bf4366a87be8b4ead7cd0e0b11202980f93d25038e945eaf48c55ddb"},{"path":"common/protobuf-c/README.md","size":5589,"hash":"b74b0f4c408fdcee9258f38f24e2a8b32646b2e3e1f0e124dac21c09d9e182f0"},{"path":"common/protobuf-c/autogen.sh","size":31,"hash":"02726388864e158726e4d99c1d351da0813664993bc7e0a9fc3df3791bf553a4"},{"path":"common/protobuf-c/LICENSE","size":1613,"hash":"b8999cb392cc5bbe8cd679de59584ad8d2f26033123e76f1d662fa14b9d4f287"},{"path":"common/protobuf-c/Makefile.am","size":12052,"hash":"c8962d3f83c7c715ccd05470299bd944504f136720c56df389a9f92a0b377374"},{"path":"common/protobuf-c/.commit_docs.sh","size":1768,"hash":"333504e5b25b78a44b90a7a69529941cf50ffc440d9a96235c2b1858e13515fb"},{"path":"common/protobuf-c/.git","size":59,"hash":"b9a66aea81aa130621b42560ad6224a9b9d6d3de2a6816f875f42cfc2b954d2a"},{"path":"common/protobuf-c/configure.ac","size":4217,"hash":"476b27fb1d4fe4347a4d1edce035aae68879e018befe1dafd3573102211a8b06"},{"path":"common/protobuf-c/Doxyfile.in","size":100929,"hash":"2e5c2761f7ba052df8fa9bae7e38ea6b084ae20a84541e59651cef889931893a"},{"path":"common/protobuf-c/.gitignore","size":618,"hash":"fc14bbcd364840736d8762e68db3f60274707193f572597f6926de9644b6413d"},{"path":"common/protobuf-c/ChangeLog","size":19584,"hash":"8b0996d03afab43239483c232c1fda51c0056a4c5632c97ddc91c7e9042a2fb9"},{"path":"common/protobuf-c/DoxygenLayout.xml","size":6052,"hash":"fe8fe4e81447ccc50db7fa1aff6c7f3862c3d133fe672aea96b32e6e33a4dc8e"},{"path":"common/protobuf-c/CONTRIBUTING.md","size":464,"hash":"e90bb0a6b23f44cbc366d8ba8edf49a56227171fa31c3665285f1bdc2638b068"},{"path":"common/protobuf-c/TODO","size":3068,"hash":"1a439dc710871d2c7d5e5546639ba3369a0e84414efa33a6ea217713e8c31cbf"},{"path":"common/rpc/esp_hosted_rpc.h","size":781,"hash":"9970b9141034bb1f1b365642d22cd2b9767e2881f6f983e6c4408d926f6bfa35"},{"path":"common/rpc/esp_hosted_bitmasks.h","size":5465,"hash":"231d7ae725078564210a26aa25d507c82dcf65a1b37bec9a55063014b9e9730b"},{"path":"common/transport/esp_hosted_transport.h","size":1794,"hash":"48655157edf508955a7fa7b5941731f4f2a3863a1510da22485b1a937e07b95c"},{"path":"common/transport/esp_hosted_transport_spi_hd.h","size":1215,"hash":"fa7cb978b48ab8c4cf40c5c0a1aed62d9e242672e5ebf7564f5b254bdc047abb"},{"path":"common/transport/esp_hosted_transport_init.h","size":1869,"hash":"137dbd3eb3b6446bdf5b1f840b2389de106805b30b6e3fad80b696c3800de010"},{"path":"common/mempool/mempool.c","size":5115,"hash":"013a0c749a9bd69af7e857e85a7bc5f86cd6858ddf7c179918fbc616e4b960a2"},{"path":"common/mempool/mempool_ll.c","size":12413,"hash":"4d5e687e67e9ed1175fff0e3e6210ec0729f69c60624607a003a4c9838b05cd7"},{"path":"common/mempool/mempool_ll.h","size":7214,"hash":"718a103cb5ee1ab58c0b90bfdba7774fd08f51b56ee17e6b4826c1044a8a8c88"},{"path":"common/mempool/include/mempool.h","size":1586,"hash":"081ee35052e690fe11794d4273f7038ceb7a9c870e17e8553d76436a84bf3760"},{"path":"common/protobuf-c/protoc-c/c_string_field.cc","size":6509,"hash":"65f4c4c26cbdf1ab42d0d53b169db78facb56785daf6875b773e2db92bc2493e"},{"path":"common/protobuf-c/protoc-c/c_extension.h","size":4509,"hash":"50361ade755615e7205e367312d50e58cf4b19e7ad63e910ee576dec504023e8"},{"path":"common/protobuf-c/protoc-c/c_field.h","size":5393,"hash":"d3edfa84380554e9efc0f9e8f48e28d389e47ea391840eeb923ebca616550d65"},{"path":"common/protobuf-c/protoc-c/c_enum.h","size":4633,"hash":"b3d332385d2febe0d06b19244e4f363aa20d4631386bf910c602e397562d08a7"},{"path":"common/protobuf-c/protoc-c/c_message_field.h","size":4134,"hash":"463e9502d6487968672d31743e136b5c8c301753a48a6a61c0f09ec1a371b8f0"},{"path":"common/protobuf-c/protoc-c/c_generator.cc","size":6825,"hash":"dccc05968028fe0526afef98f2d6fbcacc5c5979dbb9abb338cc1464aa471b3f"},{"path":"common/protobuf-c/protoc-c/c_bytes_field.h","size":4311,"hash":"bae032583222c4a651e9877144ec7d1ec2a140cedf02f16b4a43b49b846a0a34"},{"path":"common/protobuf-c/protoc-c/c_field.cc","size":9658,"hash":"fe446af7ff22bb07dce3e578bd397001ffd96e8ba507106f18d7b4bd56f0638f"},{"path":"common/protobuf-c/protoc-c/c_file.cc","size":10227,"hash":"c709cd1b0a16a6513c66720eada9e6dc7438d70e861ed4745315f273d9de040d"},{"path":"common/protobuf-c/protoc-c/c_bytes_field.cc","size":6815,"hash":"a621d6b41d7abda2c1a4606392767e4e52f0ad5a38a5914c5bdeda1781e4cd03"},{"path":"common/protobuf-c/protoc-c/c_file.h","size":4666,"hash":"dd4e7b14b1d3d5f7893e5eb2d886adb0c7a4d32a784e349c826290aaa9e73d11"},{"path":"common/protobuf-c/protoc-c/c_enum.cc","size":12933,"hash":"031d789916f144b49650dfa9982f138096902822bd2f9159ca535531a5937171"},{"path":"common/protobuf-c/protoc-c/c_message_field.cc","size":5314,"hash":"87be3696559c640964da256743a6d7e0f40333c97e2c9fc81e3af50b538535aa"},{"path":"common/protobuf-c/protoc-c/c_extension.cc","size":3890,"hash":"a2d459bd817354e1872cbc0d7d8a627297a43eca0b730071985b8c8b62775301"},{"path":"common/protobuf-c/protoc-c/c_message.cc","size":23599,"hash":"6117d485fcbffa42f46510206e3bb53d9bbc5ee4d79d0008bbb1b88c9f0eefd3"},{"path":"common/protobuf-c/protoc-c/c_generator.h","size":4502,"hash":"7f55bb78d3c9a3bc75b4767f5c5734f5d82e41d03fa2c8a7d9777099cfb9739f"},{"path":"common/protobuf-c/protoc-c/main.cc","size":771,"hash":"a4776963703ee59c51752acd07fde31c61a36942c9a074b9036fda30d62fe9a1"},{"path":"common/protobuf-c/protoc-c/c_string_field.h","size":4317,"hash":"0b3ff55d67b37e7a6b3d28d75350a0fbb0e2c2ce395197fb0ccbdd96cf01393d"},{"path":"common/protobuf-c/protoc-c/c_service.cc","size":12654,"hash":"0b33d11a5f8601b62d4fc9ea1c2e323a0f269d6cbe3fcea3582318e59966eb1f"},{"path":"common/protobuf-c/protoc-c/c_helpers.cc","size":19094,"hash":"a041971ff0249bc89304f30743e8b612f3c272b6b7260b933383a6fe99ffbe7f"},{"path":"common/protobuf-c/protoc-c/c_helpers.h","size":8203,"hash":"6bb557a8a0c1772d2f5071359363f7773fc0ca1f9c561e25122315c8af1e50aa"},{"path":"common/protobuf-c/protoc-c/c_primitive_field.cc","size":8479,"hash":"f0e5522fb3a51e4f705dd1dc186aef8f88aa7b39c6b139f0970a05fd016886ff"},{"path":"common/protobuf-c/protoc-c/c_primitive_field.h","size":4147,"hash":"3392eef765523d55a57380465c5a18d54ebf8548cf8eb1e5be12c162f8ea3c1b"},{"path":"common/protobuf-c/protoc-c/c_enum_field.h","size":4162,"hash":"9ddd6491cf81cd7032f9deca57245a3921098ed8f5808277e244d9971e7d2797"},{"path":"common/protobuf-c/protoc-c/c_message.h","size":5748,"hash":"eb0b13bf9a9124f6443eb519a390ab010088b2586aea144417b15ba7f6cbc924"},{"path":"common/protobuf-c/protoc-c/c_service.h","size":4582,"hash":"9fb6ba2a05ebb635685b6c1bd5c0259587d11edd547cdcc07f9486728c8b07e0"},{"path":"common/protobuf-c/protoc-c/c_enum_field.cc","size":6196,"hash":"ce4e10ec341af60456d69ddd5298ec082cd1993cf0ee51a117fbcbd299a03275"},{"path":"common/protobuf-c/m4/code_coverage.m4","size":6420,"hash":"4852e6f44f36c967f9792b258409dd984a081a8aefd0a18476c7ee891f048026"},{"path":"common/protobuf-c/m4/ax_cxx_compile_stdcxx.m4","size":19246,"hash":"0c08d2f64147f65eb7e255019102c1042ab695c60fd49add19793951a1279a1a"},{"path":"common/protobuf-c/m4/valgrind-tests.m4","size":1185,"hash":"0f2c3eece299f5971c33bcea3fca26a00eef6b2e59e2e5b827c1062aaad39c6b"},{"path":"common/protobuf-c/m4/pkg.m4","size":7799,"hash":"b97b533ce9d549b370e00f919ee8612f010514802244e88f859c3cf222f17c8c"},{"path":"common/protobuf-c/m4/.gitignore","size":63,"hash":"b96df5710e539dde8424e3c38174598386aeaff62e4b4a3a878a3f8290a7f9fe"},{"path":"common/protobuf-c/m4/ax_check_compile_flag.m4","size":3331,"hash":"302601f55edc1c28382e383e4c96ee3820f56df01964350a8bae16afd2f27f78"},{"path":"common/protobuf-c/m4/ld-version-script.m4","size":1780,"hash":"e6d983c51ef63af2b100064946c6fed0e4bcb5a62b46966f81c8cac9d859a6ac"},{"path":"common/protobuf-c/protobuf-c/protobuf-c.c","size":96796,"hash":"5af483efb77b6c60afce921ff361cff5320b2a80698f6e7fb0356c49b48933a7"},{"path":"common/protobuf-c/protobuf-c/libprotobuf-c.pc.in","size":270,"hash":"436b6b05afd63364b87244136433de1952c6ea5ef95d13449ffb380f604eed73"},{"path":"common/protobuf-c/protobuf-c/protobuf-c.h","size":33675,"hash":"e1c6306390090e4468472dbed3928e6983d1be3306d2006ea3fa49696aef6946"},{"path":"common/protobuf-c/protobuf-c/protobuf-c.proto","size":3297,"hash":"cea6e61e9d7786fb4652a2c3faa7a74151f6cd5dab763701764c22d01e83f922"},{"path":"common/protobuf-c/protobuf-c/libprotobuf-c.sym","size":893,"hash":"b2a5f102e87f9249a54aa1cfe732317c6613471217bd372624cae49353225981"},{"path":"common/protobuf-c/build-cmake/CMakeLists.txt","size":8641,"hash":"e0b5fafaa2184c8636887a6f0ece358913d16ddcd8c3a1687c828147cc137cb6"},{"path":"common/protobuf-c/build-cmake/.gitignore","size":30,"hash":"4a92eccb7a791bc3eaacdc4fd6265017c6c2222cbf049a8af2276768c4158d33"},{"path":"common/protobuf-c/t/test-proto3.proto","size":519,"hash":"e5a6eae5363f2c7e949055f356878aef3b42405e16df2e80860b04deb2a25dcf"},{"path":"common/protobuf-c/t/README","size":1577,"hash":"48caaea6afc962b77fbb4e6c756c07f2011ebe625867cbc643b3fadbb19dfaab"},{"path":"common/protobuf-c/t/test-full.proto","size":12565,"hash":"2a033b6b0dbd820e4e4d42c27d034c3f940bc8a8c3c602791662fb2cc34a14d1"},{"path":"common/protobuf-c/t/test-optimized.proto","size":186,"hash":"e015f8553149fdc161d64e5bdfd5180e1e4ecd8099aecf078af2ac818ca942da"},{"path":"common/protobuf-c/t/test.proto","size":675,"hash":"e6d2023c1f8a42c369c72c5cc6aa8bebaea7dd0309fe59f54c04284b5e337c45"},{"path":"common/protobuf-c/t/generated-code2/test-generated-code2.c","size":80089,"hash":"08906f336f4f838e68f1f0ecad31bb0a20da728b5f082fc96e88a969097994fa"},{"path":"common/protobuf-c/t/generated-code2/common-test-arrays.h","size":2968,"hash":"ed7d7546a089ee134178e72fc0e1ef7f382cd419b07269a446b3665807c49e84"},{"path":"common/protobuf-c/t/generated-code2/cxx-generate-packed-data.cc","size":40202,"hash":"f60c9f5d32c7bb2e23e9e2b6d8a70c8511d545921a8e707f59487e27a079e1ef"},{"path":"common/protobuf-c/t/issue330/issue330.c","size":538,"hash":"4f170ceda081b315d2a24d36fd2e53aa0fc4eabfaceba0864cc79cef0a0ebbfc"},{"path":"common/protobuf-c/t/issue330/issue330.proto","size":70,"hash":"cc220776174ee0ec1c229ac452dfe0da12a966d947a73562c1792c027bf429de"},{"path":"common/protobuf-c/t/issue330/.gitignore","size":9,"hash":"3cc5baad3b706e17ca8e6413df5c36c610b2a2b7ca9632a324555664dba6d1c4"},{"path":"common/protobuf-c/t/issue375/issue375.proto","size":90,"hash":"1eaf3d39d71f4a24489ffbf7fbce517639765c89cd08b8a4fd2beedfb05b2c95"},{"path":"common/protobuf-c/t/issue375/.gitignore","size":9,"hash":"bbe748efef847852c182d2fb294d67236057755d54872925f4301be655b2cf70"},{"path":"common/protobuf-c/t/issue375/issue375.c","size":731,"hash":"144d0550db581639f016e3515d78fdc0c7c1d43db39da4085994f43452fd08e0"},{"path":"common/protobuf-c/t/issue389/issue389.proto","size":177,"hash":"6640018aa0412d028f146fb4674781ce02a472c53931690e1995156d2f7677a2"},{"path":"common/protobuf-c/t/issue251/issue251.c","size":233,"hash":"59c02cf83ddb27cd0832b3c653fc784ed050f23db3e457e6eb193765e88b3184"},{"path":"common/protobuf-c/t/issue251/issue251.proto","size":169,"hash":"df3962b55ff7b852cc5e7bf4fdf30d2057fb076affbef0570c283d1e51fc89c6"},{"path":"common/protobuf-c/t/issue251/.gitignore","size":9,"hash":"bf4eab645cf51d7a0b5c969e39206390ffbd3a95e0dd177d87978403a2def337"},{"path":"common/protobuf-c/t/generated-code/test-generated-code.c","size":1855,"hash":"66fbffa6a566f53939d04b7d4f250f11e8f540f4b9367d8ba881e11e03daee6b"},{"path":"common/protobuf-c/t/issue440/issue440.c","size":991,"hash":"c0c702444450c5710aec0df2b577aadf29f1138ef15a38fd44c87fe77451eaec"},{"path":"common/protobuf-c/t/issue440/issue440.proto","size":110,"hash":"810225d40ce42fd7c873af543e41e69f903d0b9c0bc6861d79a181fcfce76273"},{"path":"common/protobuf-c/t/issue440/.gitignore","size":9,"hash":"e265a0eb417763368dfb0a2532918129b4c89a186c3d11154328c3324804e2d2"},{"path":"common/protobuf-c/t/issue204/issue204.c","size":1130,"hash":"943f56bc13e6fb3d79126b503f97d514550a119408c83caab9e1bb1fb55ec5b5"},{"path":"common/protobuf-c/t/issue204/.gitignore","size":9,"hash":"e436d291bf607f0666f8c7136d6c8b21103533187e92c5861e363c8a07884e67"},{"path":"common/protobuf-c/t/issue204/issue204.proto","size":257,"hash":"39fc37877ce310c94231e05c911defddb42d3f9a6bb705ec81f0c5c77079c0a9"},{"path":"common/protobuf-c/t/issue220/issue220.c","size":320,"hash":"36dac19b93d5d5177ab1915881a16814f3a9b3af5882b8cd2295f6040e1f9ac9"},{"path":"common/protobuf-c/t/issue220/.gitignore","size":9,"hash":"a2900d4388c6f41f2903d3d2f1b0083fd2e1b07a0fb859128055226328a46494"},{"path":"common/protobuf-c/t/issue220/issue220.proto","size":313,"hash":"1007212ce49e900c2b3301d079b92299f4eecefebf09a942ab322f2cb53d58ab"},{"path":"common/protobuf-c/t/version/version.c","size":2104,"hash":"5825e7cbd27ddab4c9cf2a00a4bddad79c8ee4afc7b65dc5973110129309fe55"},{"path":"docs/images/esp32-p4-function-ev-board.jpg","size":2794134,"hash":"a5aca83c54cd828fa9a887a0fcaf35c5524c6686973e3f102ca4ddcee61be83f"},{"path":"docs/images/native_wifi_call.svg","size":4849,"hash":"4e839816c83ae7785aa20f0edca1fe64f732d83322cf2e1d858f7fcdd2ce9f09"},{"path":"docs/images/spi_hd_timing_2_lines.svg","size":22723,"hash":"f0666306ee77be36589f9a0266c548a83b1a991f47154f0657d4876e8ebddb36"},{"path":"docs/images/hosted_wifi_call.svg","size":12802,"hash":"effc7a25e651414a0588df42d962f3efac65963698ad95bff23085b4cdb6d24e"},{"path":"docs/images/esp32-p4-function-ev-board-esp-prog.jpg","size":2489906,"hash":"78890f05b343775761463d336a8ad394e222ed1f01aaa74f1460ce7ae1e63089"},{"path":"docs/images/spi_hd_sequence_init.txt","size":576,"hash":"f7d5bd3c2a8b873dc4d73f251b6659bd6348d40c11169eea886496dd7c3bd9f8"},{"path":"docs/images/esp32-p4-esp-prog.jpg","size":2843410,"hash":"d4190e0e26fce357ac4054c7afa680fc24060861723b0d5af83b0862fb1491b8"},{"path":"docs/images/hosted_diagram-ditaa.txt","size":2142,"hash":"6b71a7c84b4dcd2b61a8f7cc7c05a525b9ccb0e0da972f8a3290278414634c3e"},{"path":"docs/images/ESP-Hosted-FG-MCU_design.svg","size":181858,"hash":"22b3f8437026d1b0851257240e1ca0a7df53f248031635d47d67b86671681043"},{"path":"docs/images/hosted_diagram-ditaa.svg","size":7014,"hash":"c12e2d2908b5a43e8b98ab9cc5d4d1aad53d2d370c37090c50e5882afd1d6de4"},{"path":"docs/images/spi_hd_timing_4_lines.txt","size":530,"hash":"c1c3ad1763dc1b109ae96c56f787021c50081a0d5c2a2f138d56ef898f89cae5"},{"path":"docs/images/spi_hd_sequence_read.svg","size":6212,"hash":"022b834d426eaad0a8d65ac5f23a78fd3ee9f1f9b95eecede6e0029b8b6365b7"},{"path":"docs/images/native_wifi_call.txt","size":268,"hash":"1c2f70232202ea6fcaa735f791c7c4ef0a603f3b789cd8247bfc9fc2c63cc52c"},{"path":"docs/images/spi_hd_sequence_write.txt","size":437,"hash":"84fa35d041a44ece561ae11cf90cd21c1840866a3ef679cae948ea483b15edec"},{"path":"docs/images/spi_hd_sequence_read.txt","size":461,"hash":"943876bbf23529014c9e6b8fb2544a8d6e70ce967eaef1aa4e8620afbc0f357e"},{"path":"docs/images/spi_hd_timing_2_lines.txt","size":529,"hash":"559267f486acb25211dcae208dba8bb68129c52fc310bf5d4a64d5c92647a95c"},{"path":"docs/images/spi_hd_timing_4_lines.svg","size":19698,"hash":"3137d38ebcd878e9f8d528e1b101dbf182adadb9c57f2821dfa21bacef59be52"},{"path":"docs/images/hosted_wifi_call.txt","size":1034,"hash":"4bb93385f10a762e125ae830ec624d4f4102876ccf6d84de6a7988e2061db187"},{"path":"docs/images/spi_hd_sequence_init.svg","size":8112,"hash":"be402aa54a3d27329ddb1ba6cbed0abc9aeef230808988bfed580f2edc0a0989"},{"path":"docs/images/spi_hd_sequence_write.svg","size":5630,"hash":"c5d56596cda62f47c5892a0dd7a340a0e408b2484eaff5a97aa00dba22851b98"}]} \ No newline at end of file diff --git a/firmware/components/esp_hosted/CMakeLists.txt b/firmware/components/esp_hosted/CMakeLists.txt new file mode 100644 index 0000000..6f4e22f --- /dev/null +++ b/firmware/components/esp_hosted/CMakeLists.txt @@ -0,0 +1,184 @@ +if(CONFIG_ESP_HOSTED_ENABLED) + message(STATUS "Using Hosted Wi-Fi") + set(FG_root_dir ".") + set(host_dir "${FG_root_dir}/host") + + set(srcs + "${host_dir}/api/src/esp_wifi_weak.c" + "${host_dir}/api/src/esp_hosted_api.c" + "${host_dir}/api/src/esp_hosted_transport_config.c" + "${host_dir}/api/src/esp_hosted_ota_api.c" + "${host_dir}/drivers/transport/transport_drv.c" + "${host_dir}/drivers/transport/transport_util.c" + "${host_dir}/drivers/serial/serial_ll_if.c" + "${host_dir}/utils/stats.c" + "${host_dir}/drivers/serial/serial_drv.c") + + # only these directories are public. Others are private + set(pub_include + "${host_dir}" + "${host_dir}/api/include") + + set(priv_include + "${host_dir}/drivers/transport" + "${host_dir}/drivers/transport/spi" + "${host_dir}/drivers/transport/sdio" + "${host_dir}/drivers/serial" + "${host_dir}/utils" + "${host_dir}/api/priv") + + # rpc files - wrap -> slaveif -> core + set(rpc_dir "${host_dir}/drivers/rpc") + set(rpc_core_dir "${rpc_dir}/core") + set(rpc_slaveif_dir "${rpc_dir}/slaveif") + set(rpc_wrap_dir "${rpc_dir}/wrap") + + list(APPEND srcs + "${rpc_core_dir}/rpc_core.c" + "${rpc_core_dir}/rpc_req.c" + "${rpc_core_dir}/rpc_rsp.c" + "${rpc_core_dir}/rpc_evt.c" + "${rpc_core_dir}/rpc_utils.c" + "${rpc_slaveif_dir}/rpc_slave_if.c" + "${rpc_wrap_dir}/rpc_wrap.c") + + list(APPEND priv_include + "${rpc_core_dir}" + "${rpc_slaveif_dir}" + "${rpc_wrap_dir}") + + # virtual serial + set(virt_serial_dir "${host_dir}/drivers/virtual_serial_if") + list(APPEND srcs "${virt_serial_dir}/serial_if.c") + list(APPEND priv_include "${virt_serial_dir}") + + # slave and host common files + set(common_dir "${FG_root_dir}/common") + + list(APPEND srcs + "${common_dir}/protobuf-c/protobuf-c/protobuf-c.c" + "${common_dir}/proto/esp_hosted_rpc.pb-c.c" ) + + list(APPEND priv_include + "${common_dir}" + "${common_dir}/log" + "${common_dir}/rpc" + "${common_dir}/transport" + "${common_dir}/protobuf-c" + "${common_dir}/proto" ) + + # mempool + if (CONFIG_ESP_HOSTED_USE_MEMPOOL) + list(APPEND srcs "${common_dir}/mempool/mempool_ll.c" + "${common_dir}/mempool/mempool.c") + endif() + list(APPEND priv_include "${common_dir}/mempool/include" ) + + # cli + list(APPEND srcs "${common_dir}/utils/esp_hosted_cli.c") + list(APPEND priv_include "${common_dir}/utils") + + # bt (NimBLE) + ### TODO config for HCI over UART + list(APPEND priv_include "${host_dir}/drivers/bt") + + if(CONFIG_ESP_HOSTED_NIMBLE_HCI_VHCI OR CONFIG_ESP_HOSTED_BLUEDROID_HCI_VHCI) + list(APPEND srcs "${host_dir}/drivers/bt/vhci_drv.c") + else() + list(APPEND srcs "${host_dir}/drivers/bt/hci_stub_drv.c") + endif() + + # power save + list(APPEND priv_include "${host_dir}/drivers/power_save") + list(APPEND srcs "${host_dir}/drivers/power_save/power_save_drv.c") + + # transport files + if(CONFIG_ESP_HOSTED_SDIO_HOST_INTERFACE) + list(APPEND srcs "${host_dir}/drivers/transport/sdio/sdio_drv.c") + elseif(CONFIG_ESP_HOSTED_SPI_HD_HOST_INTERFACE) + list(APPEND srcs "${host_dir}/drivers/transport/spi_hd/spi_hd_drv.c") + elseif(CONFIG_ESP_HOSTED_SPI_HOST_INTERFACE) + list(APPEND srcs "${host_dir}/drivers/transport/spi/spi_drv.c") + elseif(CONFIG_ESP_HOSTED_UART_HOST_INTERFACE) + list(APPEND srcs "${host_dir}/drivers/transport/uart/uart_drv.c") + endif() + + # port files + list(APPEND priv_include "${host_dir}/port/esp/freertos/include") + + list(APPEND srcs + "${host_dir}/port/esp/freertos/src/port_esp_hosted_host_init.c" + "${host_dir}/port/esp/freertos/src/port_esp_hosted_host_os.c" + #"${host_dir}/port/esp/freertos/src/port_esp_hosted_host_ota.c" + "${host_dir}/port/esp/freertos/src/port_esp_hosted_host_transport_defaults.c" + ) + + if(CONFIG_ESP_HOSTED_SDIO_HOST_INTERFACE) + list(APPEND srcs "${host_dir}/port/esp/freertos/src/port_esp_hosted_host_sdio.c") + elseif(CONFIG_ESP_HOSTED_SPI_HD_HOST_INTERFACE) + list(APPEND srcs "${host_dir}/port/esp/freertos/src/port_esp_hosted_host_spi_hd.c") + elseif(CONFIG_ESP_HOSTED_SPI_HOST_INTERFACE) + list(APPEND srcs "${host_dir}/port/esp/freertos/src/port_esp_hosted_host_spi.c") + elseif(CONFIG_ESP_HOSTED_UART_HOST_INTERFACE) + list(APPEND srcs "${host_dir}/port/esp/freertos/src/port_esp_hosted_host_uart.c") + endif() + + # OpenThread utility functions + if(CONFIG_ESP_HOSTED_HOST_OT_ENABLE) + list(APPEND srcs "${host_dir}/port/esp/freertos/src/port_esp_hosted_host_ot_util.c") + endif() +endif() + +if(EXISTS "${IDF_PATH}/components/esp_driver_sdio") + message(STATUS "Using new driver components (IDF >= 5.0)") + list(APPEND driver_requires esp_driver_sdmmc esp_driver_spi esp_driver_uart esp_driver_gpio) +else() + message(STATUS "Using legacy driver component (IDF <= 4.4)") + list(APPEND driver_requires driver) +endif() + +### to support ESP-Hosted events, make esp_event a public requirement +list(APPEND driver_requires esp_event) + +idf_component_register(SRCS ${srcs} + PRIV_REQUIRES soc esp_netif esp_timer driver esp_wifi bt esp_http_client console wpa_supplicant openthread + REQUIRES ${driver_requires} + INCLUDE_DIRS ${pub_include} + PRIV_INCLUDE_DIRS ${priv_include}) + +idf_component_set_property(${COMPONENT_NAME} WHOLE_ARCHIVE TRUE) + +if(DEFINED ENV{ESP_HOSTED_CI_PEDANTIC}) + target_compile_options(${COMPONENT_LIB} PRIVATE + -Werror -Werror=deprecated-declarations -Werror=unused-variable + -Werror=unused-but-set-variable -Werror=unused-function + $<$:-Wstrict-prototypes>) +endif() + +if(CONFIG_ESP_HOSTED_SDIO_HOST_INTERFACE) + idf_component_optional_requires(PRIVATE sdmmc) +endif() + +# Required if using ESP-IDF without commit 6b6065de509b5de39e4655fd425bf96f43b365f7: +# fix(driver_spi): fix p4 cache auto writeback during spi(dma) rx +# if(CONFIG_IDF_TARGET_ESP32P4 AND (CONFIG_ESP_HOSTED_SPI_HOST_INTERFACE OR CONFIG_ESP_HOSTED_SPI_HD_HOST_INTERFACE)) +# # used to workaround SPI transfer issue +# idf_component_optional_requires(PRIVATE esp_mm) +# endif() + + +if(CONFIG_ESP_HOSTED_NETWORK_SPLIT_ENABLED) + idf_component_get_property(lwip lwip COMPONENT_LIB) + if(TARGET ${lwip}) + # Use generator expressions to only apply to non-INTERFACE targets + get_target_property(lwip_type ${lwip} TYPE) + if(NOT lwip_type STREQUAL "INTERFACE_LIBRARY") + #target_include_directories(${lwip} PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/common") + #target_compile_definitions(${lwip} PRIVATE "-DESP_IDF_LWIP_HOOK_FILENAME=\"${CMAKE_CURRENT_SOURCE_DIR}/common/esp_hosted_lwip_src_port_hook.h\"") + + # Some IDF release/v5.4 commits fail to attach hook file for udp.c, so mandate attach for every file in lwip build + message(STATUS "********** Configuring LWIP for network split port configs **********") + target_compile_options(${lwip} PRIVATE "-include" "${CMAKE_CURRENT_SOURCE_DIR}/common/esp_hosted_lwip_src_port_hook.h") + endif() + endif() +endif() diff --git a/firmware/components/esp_hosted/Kconfig b/firmware/components/esp_hosted/Kconfig new file mode 100644 index 0000000..93e2a46 --- /dev/null +++ b/firmware/components/esp_hosted/Kconfig @@ -0,0 +1,2502 @@ +config ESP_HOSTED_ENABLED + bool "Enable ESP-Hosted component" + default y if ESP_WIFI_REMOTE_ENABLED && ESP_WIFI_REMOTE_LIBRARY_HOSTED + default n + help + Enable the esp-hosted component, allowing this device to act as a + Wi-Fi co-processor for a host MCU. Disable to exclude esp-hosted + from the build entirely. + +menu "ESP-Hosted config" + depends on ESP_HOSTED_ENABLED + + choice ESP_HOSTED_CP_TARGET + bool "Choose the Co-processor to use" + + config ESP_HOSTED_CP_TARGET_ESP32 + depends on SLAVE_IDF_TARGET_ESP32 + bool "ESP32 (fetched from Wi-Fi Remote Component)" + + config ESP_HOSTED_CP_TARGET_ESP32S2 + depends on SLAVE_IDF_TARGET_ESP32S2 + bool "ESP32S2 (fetched from Wi-Fi Remote Component)" + + config ESP_HOSTED_CP_TARGET_ESP32S3 + depends on SLAVE_IDF_TARGET_ESP32S3 + bool "ESP32S3 (fetched from Wi-Fi Remote Component)" + + config ESP_HOSTED_CP_TARGET_ESP32C2 + depends on SLAVE_IDF_TARGET_ESP32C2 + bool "ESP32-C2 (fetched from Wi-Fi Remote Component)" + + config ESP_HOSTED_CP_TARGET_ESP32C3 + depends on SLAVE_IDF_TARGET_ESP32C3 + bool "ESP32-C3 (fetched from Wi-Fi Remote Component)" + + config ESP_HOSTED_CP_TARGET_ESP32C6 + depends on SLAVE_IDF_TARGET_ESP32C6 + bool "ESP32-C6 (fetched from Wi-Fi Remote Component)" + + config ESP_HOSTED_CP_TARGET_ESP32C5 + depends on SLAVE_IDF_TARGET_ESP32C5 + bool "ESP32-C5 (fetched from Wi-Fi Remote Component)" + + config ESP_HOSTED_CP_TARGET_ESP32C61 + depends on SLAVE_IDF_TARGET_ESP32C61 + bool "ESP32-C61 (fetched from Wi-Fi Remote Component)" + + config ESP_HOSTED_CP_TARGET_ESP32H2 + bool "ESP32-H2" + + # Note: not yet supported on ESP32-H4 + # - Bluetooth + # - SPI interface + config ESP_HOSTED_CP_TARGET_ESP32H4 + bool "ESP32-H4" + endchoice + + ### To be removed in the future after further testing + comment "ESP32-H4 currently does not support Bluetooth and SPI as Hosted transport" + depends on ESP_HOSTED_CP_TARGET_ESP32H4 + + ### config to show / hide Wi-Fi options in Kconfig + ### Wi-Fi is not supported if target is ESP32-H2, H4 + config ESP_HOSTED_PRIV_ENABLE_WIFI_OPTIONS + bool + default n if ESP_HOSTED_CP_TARGET_ESP32H2 || ESP_HOSTED_CP_TARGET_ESP32H4 + default y + + # Show the Co-processor selected + comment "ESP32 is Co-processor Target from Wi-Fi Remote Component" + depends on ESP_HOSTED_CP_TARGET_ESP32 + comment "ESP32-S2 is Co-processor Target from Wi-Fi Remote Component" + depends on ESP_HOSTED_CP_TARGET_ESP32S2 + comment "ESP32-S3 is Co-processor Target from Wi-Fi Remote Component" + depends on ESP_HOSTED_CP_TARGET_ESP32S3 + comment "ESP32-C2 is Co-processor Target from Wi-Fi Remote Component" + depends on ESP_HOSTED_CP_TARGET_ESP32C2 + comment "ESP32-C3 is Co-processor Target from Wi-Fi Remote Component" + depends on ESP_HOSTED_CP_TARGET_ESP32C3 + comment "ESP32-C6 is Co-processor Target from Wi-Fi Remote Component" + depends on ESP_HOSTED_CP_TARGET_ESP32C6 + comment "ESP32-C5 is Co-processor Target from Wi-Fi Remote Component" + depends on ESP_HOSTED_CP_TARGET_ESP32C5 + comment "ESP32-C61 is Co-processor Target from Wi-Fi Remote Component" + depends on ESP_HOSTED_CP_TARGET_ESP32C61 + comment "ESP32-H2 is Co-processor Target" + depends on ESP_HOSTED_CP_TARGET_ESP32H2 + comment "ESP32-H4 is Co-processor Target" + depends on ESP_HOSTED_CP_TARGET_ESP32H4 + + config ESP_HOSTED_IDF_SLAVE_TARGET + string + default "esp32" if ESP_HOSTED_CP_TARGET_ESP32 + default "esp32s2" if ESP_HOSTED_CP_TARGET_ESP32S2 + default "esp32s3" if ESP_HOSTED_CP_TARGET_ESP32S3 + default "esp32c2" if ESP_HOSTED_CP_TARGET_ESP32C2 + default "esp32c3" if ESP_HOSTED_CP_TARGET_ESP32C3 + default "esp32c6" if ESP_HOSTED_CP_TARGET_ESP32C6 + default "esp32c5" if ESP_HOSTED_CP_TARGET_ESP32C5 + default "esp32c61" if ESP_HOSTED_CP_TARGET_ESP32C61 + default "esp32h2" if ESP_HOSTED_CP_TARGET_ESP32H2 + default "esp32h4" if ESP_HOSTED_CP_TARGET_ESP32H4 + default "invalid" + + choice ESP_HOSTED_P4_DEV_BOARD + bool "Configure GPIOs for Development Board" + depends on IDF_TARGET_ESP32P4 + default ESP_HOSTED_P4_DEV_BOARD_NONE + help + Sets GPIOs used for transport on these ESP32-P4 Development Boards + - ESP32-P4/P4X Function_EV_Board with on-board ESP32-C6 + - ESP32-P4 Function_EV_Board with ESP32-C5 on a EV board + - ESP32-P4 Function_EV_Board with ESP32-C2 on a EV board + - ESP32-P4-C5 Code Board with on-board ESP32-C5 + - ESP32-P4X Function_EV_Board with on-board ESP32-C5 + Select "No development board" if you want to modify GPIOs used + + config ESP_HOSTED_P4_DEV_BOARD_NONE + bool "No development board" + + config ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD + depends on ESP_HOSTED_CP_TARGET_ESP32C6 || ESP_HOSTED_CP_TARGET_ESP32C5 || ESP_HOSTED_CP_TARGET_ESP32C2 + bool "ESP32-P4/P4X-Function-EV-Board with on-board C6 or C5/C2 on EV board" + + config ESP32P4_EYE_C6_BOARD + depends on SLAVE_IDF_TARGET_ESP32C6 + bool "ESP32-P4-EYE Board with on-board C6" + + config ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + depends on ESP_HOSTED_CP_TARGET_ESP32C5 + bool "ESP32-P4X-Function-EV-Board with on-board C5" + + config ESP_HOSTED_P4_C5_CORE_BOARD + depends on ESP_HOSTED_CP_TARGET_ESP32C5 + bool "ESP32-P4-C5 Core Board with on-board C5" + + config ESP_HOSTED_P4_C6_CORE_BOARD + depends on ESP_HOSTED_CP_TARGET_ESP32C6 + bool "ESP32-P4-C6 Core Board with on-board C6" + + config ESP_HOSTED_P4_C61_CORE_BOARD + depends on ESP_HOSTED_CP_TARGET_ESP32C61 + bool "ESP32-P4-C61 Core Board with on-board C61" + + endchoice + + # y if SDIO Transport is available, based on host and slave selection + config ESP_HOSTED_PRIV_SDIO_OPTION + bool + default y if (IDF_TARGET_ESP32 || IDF_TARGET_ESP32S3 || IDF_TARGET_ESP32P4) && (ESP_HOSTED_CP_TARGET_ESP32 || ESP_HOSTED_CP_TARGET_ESP32C6 || ESP_HOSTED_CP_TARGET_ESP32C5 || ESP_HOSTED_CP_TARGET_ESP32C61) + default n + + # y if SPI HD Transport is available, based on host and slave selection + config ESP_HOSTED_PRIV_SPI_HD_OPTION + bool + default n if (IDF_TARGET_ESP32 || ESP_HOSTED_CP_TARGET_ESP32 || ESP_HOSTED_CP_TARGET_ESP32H4) + default y + + choice ESP_HOSTED_HOST_INTERFACE + bool "Transport layer" + default ESP_HOSTED_SDIO_HOST_INTERFACE if ESP_HOSTED_PRIV_SDIO_OPTION + default ESP_HOSTED_SPI_HOST_INTERFACE + help + Bus interface to be used for communication with the host + + config ESP_HOSTED_SPI_HOST_INTERFACE + depends on !ESP_HOSTED_CP_TARGET_ESP32H4 # SPI currently not working + bool "SPI Full-duplex" + help + Enable/Disable SPI Full-duplex host interface + + config ESP_HOSTED_SDIO_HOST_INTERFACE + depends on ESP_HOSTED_PRIV_SDIO_OPTION + bool "SDIO" + help + Enable/Disable SDIO host interface + + # SPI Half Duplex is not supported in ESP32 + config ESP_HOSTED_SPI_HD_HOST_INTERFACE + depends on ESP_HOSTED_PRIV_SPI_HD_OPTION + bool "SPI Half-duplex" + help + Enable/Disable SPI Half-duplex host interface + + config ESP_HOSTED_UART_HOST_INTERFACE + bool "UART" + help + Enable/Disable UART host interface + endchoice + + menu "SPI Configuration" + depends on ESP_HOSTED_SPI_HOST_INTERFACE + + choice ESP_HOSTED_SPI_PRIV_MODE_ESP32 + depends on ESP_HOSTED_CP_TARGET_ESP32 + bool "Host SPI mode" + default ESP_HOSTED_SPI_PRIV_MODE_2_ESP32 + + config ESP_HOSTED_SPI_PRIV_MODE_0_ESP32 + bool "Host SPI mode 0" + + config ESP_HOSTED_SPI_PRIV_MODE_1_ESP32 + bool "Host SPI mode 1" + + config ESP_HOSTED_SPI_PRIV_MODE_2_ESP32 + bool "Host SPI mode 2" + + config ESP_HOSTED_SPI_PRIV_MODE_3_ESP32 + bool "Host SPI mode 3" + endchoice + + choice ESP_HOSTED_SPI_PRIV_MODE_ESP32XX + depends on !ESP_HOSTED_CP_TARGET_ESP32 + bool "Host SPI mode" + default ESP_HOSTED_SPI_PRIV_MODE_3_ESP32XX + + config ESP_HOSTED_SPI_PRIV_MODE_0_ESP32XX + bool "Host SPI mode 0" + + config ESP_HOSTED_SPI_PRIV_MODE_1_ESP32XX + bool "Host SPI mode 1" + + config ESP_HOSTED_SPI_PRIV_MODE_2_ESP32XX + bool "Host SPI mode 2" + + config ESP_HOSTED_SPI_PRIV_MODE_3_ESP32XX + bool "Host SPI mode 3" + endchoice + + config ESP_HOSTED_SPI_MODE + int + default 0 if ESP_HOSTED_SPI_PRIV_MODE_0_ESP32 + default 1 if ESP_HOSTED_SPI_PRIV_MODE_1_ESP32 + default 2 if ESP_HOSTED_SPI_PRIV_MODE_2_ESP32 + default 3 if ESP_HOSTED_SPI_PRIV_MODE_3_ESP32 + default 0 if ESP_HOSTED_SPI_PRIV_MODE_0_ESP32XX + default 1 if ESP_HOSTED_SPI_PRIV_MODE_1_ESP32XX + default 2 if ESP_HOSTED_SPI_PRIV_MODE_2_ESP32XX + default 3 if ESP_HOSTED_SPI_PRIV_MODE_3_ESP32XX + + choice ESP_HOSTED_SPI_CONTROLLER + bool "Host SPI controller to use" + default ESP_HOSTED_SPI_HSPI + + config ESP_HOSTED_SPI_HSPI + bool "HSPI/FSPI" + help + "HSPI/FSPI: SPI_controller_1" + + config ESP_HOSTED_SPI_VSPI + depends on IDF_TARGET_ESP32 + bool "VSPI" + help + "VSPI: SPI_controller_2" + + endchoice + + config ESP_HOSTED_SPI_CONTROLLER + int + default 2 if ESP_HOSTED_SPI_VSPI + default 1 + + menu "Host SPI GPIOs Config" + + choice ESP_HOSTED_SPI_HANDSHAKE_GPIO_CONFIG + bool "Handshake GPIO Config" + default ESP_HOSTED_HS_ACTIVE_HIGH + + config ESP_HOSTED_HS_ACTIVE_HIGH + bool "HS: Active High" + config ESP_HOSTED_HS_ACTIVE_LOW + bool "HS: Active Low" + endchoice + + choice ESP_HOSTED_SPI_DATAREADY__GPIO_CONFIG + bool "DataReady GPIO Config" + default ESP_HOSTED_DR_ACTIVE_HIGH + + config ESP_HOSTED_DR_ACTIVE_HIGH + bool "DR: Active High" + config ESP_HOSTED_DR_ACTIVE_LOW + bool "DR: Active Low" + endchoice + + choice ESP_HOSTED_SPI_RESET_GPIO_CONFIG + bool "Reset GPIO Config" + default ESP_HOSTED_SPI_RESET_ACTIVE_HIGH + help + "If Active High, High->Low->High will trigger reset (Low will trigger reset) + If Active Low, Low->High->Low will trigger reset (High will trigger reset)" + + config ESP_HOSTED_SPI_RESET_ACTIVE_HIGH + bool "RESET: Active High" + config ESP_HOSTED_SPI_RESET_ACTIVE_LOW + bool "RESET: Active Low" + endchoice + + config ESP_HOSTED_SPI_MOSI_RANGE_MIN + int + default 49 if ESP_HOSTED_P4_C5_CORE_BOARD + default 50 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 29 if ESP32P4_EYE_C6_BOARD + default 14 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 23 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 23 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C2 + default 14 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 0 + + config ESP_HOSTED_SPI_MOSI_RANGE_MAX + int + default 49 if ESP_HOSTED_P4_C5_CORE_BOARD + default 50 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 29 if ESP32P4_EYE_C6_BOARD + default 14 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 23 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 23 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C2 + default 14 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 100 + + config ESP_HOSTED_SPI_HSPI_GPIO_MOSI + depends on ESP_HOSTED_SPI_HSPI + int "GPIO pin for Host MOSI" + default 49 if ESP_HOSTED_P4_C5_CORE_BOARD + default 50 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 29 if ESP32P4_EYE_C6_BOARD + default 8 if IDF_TARGET_ESP32P4 + default 13 if IDF_TARGET_ESP32 + default 11 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32S3 + default 5 if IDF_TARGET_ESP32H2 + default 7 + range ESP_HOSTED_SPI_MOSI_RANGE_MIN ESP_HOSTED_SPI_MOSI_RANGE_MAX + help + SPI controller Host MOSI + + config ESP_HOSTED_SPI_MISO_RANGE_MIN + int + default 48 if ESP_HOSTED_P4_C5_CORE_BOARD + default 49 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 30 if ESP32P4_EYE_C6_BOARD + default 15 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 22 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 22 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C2 + default 15 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 0 + + config ESP_HOSTED_SPI_MISO_RANGE_MAX + int + default 48 if ESP_HOSTED_P4_C5_CORE_BOARD + default 49 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 30 if ESP32P4_EYE_C6_BOARD + default 15 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 22 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 22 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C2 + default 15 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 100 + + config ESP_HOSTED_SPI_HSPI_GPIO_MISO + depends on ESP_HOSTED_SPI_HSPI + int "GPIO pin for Host MISO" + default 48 if ESP_HOSTED_P4_C5_CORE_BOARD + default 49 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 30 if ESP32P4_EYE_C6_BOARD + default 10 if IDF_TARGET_ESP32P4 + default 12 if IDF_TARGET_ESP32 + default 13 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32S3 + default 0 if IDF_TARGET_ESP32H2 + default 2 + range ESP_HOSTED_SPI_MISO_RANGE_MIN ESP_HOSTED_SPI_MISO_RANGE_MAX + help + SPI controller Host MISO + + config ESP_HOSTED_SPI_CLK_RANGE_MIN + int + default 50 if ESP_HOSTED_P4_C5_CORE_BOARD + default 51 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 28 if ESP32P4_EYE_C6_BOARD + default 18 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 33 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 33 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C2 + default 18 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 0 + + config ESP_HOSTED_SPI_CLK_RANGE_MAX + int + default 50 if ESP_HOSTED_P4_C5_CORE_BOARD + default 51 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 28 if ESP32P4_EYE_C6_BOARD + default 18 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 33 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 33 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C2 + default 18 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 100 + + config ESP_HOSTED_SPI_HSPI_GPIO_CLK + depends on ESP_HOSTED_SPI_HSPI + int "GPIO pin for Host CLK" + default 50 if ESP_HOSTED_P4_C5_CORE_BOARD + default 51 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 28 if ESP32P4_EYE_C6_BOARD + default 9 if IDF_TARGET_ESP32P4 + default 14 if IDF_TARGET_ESP32 + default 12 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32S3 + default 4 if IDF_TARGET_ESP32H2 + default 6 + range ESP_HOSTED_SPI_CLK_RANGE_MIN ESP_HOSTED_SPI_CLK_RANGE_MAX + help + SPI controller Host CLK + + config ESP_HOSTED_SPI_CS_RANGE_MIN + int + default 51 if ESP_HOSTED_P4_C5_CORE_BOARD + default 52 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 27 if ESP32P4_EYE_C6_BOARD + default 19 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 4 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 4 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C2 + default 19 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 0 + + config ESP_HOSTED_SPI_CS_RANGE_MAX + int + default 51 if ESP_HOSTED_P4_C5_CORE_BOARD + default 52 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 27 if ESP32P4_EYE_C6_BOARD + default 19 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 4 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 4 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C2 + default 19 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 100 + + config ESP_HOSTED_SPI_HSPI_GPIO_CS + depends on ESP_HOSTED_SPI_HSPI + int "GPIO pin for Host CS" + default 51 if ESP_HOSTED_P4_C5_CORE_BOARD + default 52 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 27 if ESP32P4_EYE_C6_BOARD + default 7 if IDF_TARGET_ESP32P4 + default 15 if IDF_TARGET_ESP32 + default 10 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32S3 + default 1 if IDF_TARGET_ESP32H2 + default 10 + range ESP_HOSTED_SPI_CS_RANGE_MIN ESP_HOSTED_SPI_CS_RANGE_MAX + help + SPI controller Host CS + + config ESP_HOSTED_SPI_VSPI_GPIO_MOSI + depends on ESP_HOSTED_SPI_VSPI + int "GPIO pin for Host MOSI" + default 23 + help + SPI controller Host MOSI + + config ESP_HOSTED_SPI_VSPI_GPIO_MISO + depends on ESP_HOSTED_SPI_VSPI + int "GPIO pin for Host MISO" + default 19 + help + SPI controller Host MISO + + config ESP_HOSTED_SPI_VSPI_GPIO_CLK + depends on ESP_HOSTED_SPI_VSPI + int "GPIO pin for Host CLK" + default 18 + help + SPI controller Host CLK + + config ESP_HOSTED_SPI_VSPI_GPIO_CS + depends on ESP_HOSTED_SPI_VSPI + int "GPIO pin for Host CS" + default 5 + help + SPI controller Host CS + + config ESP_HOSTED_SPI_GPIO_MOSI + int + default ESP_HOSTED_SPI_VSPI_GPIO_MOSI if ESP_HOSTED_SPI_VSPI + default ESP_HOSTED_SPI_HSPI_GPIO_MOSI + + config ESP_HOSTED_SPI_GPIO_MISO + int + default ESP_HOSTED_SPI_VSPI_GPIO_MISO if ESP_HOSTED_SPI_VSPI + default ESP_HOSTED_SPI_HSPI_GPIO_MISO + + config ESP_HOSTED_SPI_GPIO_CLK + int + default ESP_HOSTED_SPI_VSPI_GPIO_CLK if ESP_HOSTED_SPI_VSPI + default ESP_HOSTED_SPI_HSPI_GPIO_CLK + + config ESP_HOSTED_SPI_GPIO_CS + int + default ESP_HOSTED_SPI_VSPI_GPIO_CS if ESP_HOSTED_SPI_VSPI + default ESP_HOSTED_SPI_HSPI_GPIO_CS + + config ESP_HOSTED_SPI_HANDSHAKE_RANGE_MIN + int + default 53 if ESP_HOSTED_P4_C5_CORE_BOARD + default 48 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 31 if ESP32P4_EYE_C6_BOARD + default 16 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 21 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 21 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C2 + default 16 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 0 + + config ESP_HOSTED_SPI_HANDSHAKE_RANGE_MAX + int + default 53 if ESP_HOSTED_P4_C5_CORE_BOARD + default 48 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 31 if ESP32P4_EYE_C6_BOARD + default 16 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 21 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 21 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C2 + default 16 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 100 + + config ESP_HOSTED_SPI_GPIO_HANDSHAKE + int "GPIO pin for handshake" + default 53 if ESP_HOSTED_P4_C5_CORE_BOARD + default 48 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 31 if ESP32P4_EYE_C6_BOARD + default 6 if IDF_TARGET_ESP32P4 + default 3 if IDF_TARGET_ESP32C2 || IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32C6 + default 17 if IDF_TARGET_ESP32S3 || IDF_TARGET_ESP32S2 + default 22 if IDF_TARGET_ESP32H2 + default 26 + range ESP_HOSTED_SPI_HANDSHAKE_RANGE_MIN ESP_HOSTED_SPI_HANDSHAKE_RANGE_MAX + help + GPIO pin to use for handshake with other spi controller + + config ESP_HOSTED_SPI_DATA_READY_RANGE_MIN + int + default 52 if ESP_HOSTED_P4_C5_CORE_BOARD + default 47 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 32 if ESP32P4_EYE_C6_BOARD + default 17 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 32 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 32 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C2 + default 17 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 0 + + config ESP_HOSTED_SPI_DATA_READY_RANGE_MAX + int + default 52 if ESP_HOSTED_P4_C5_CORE_BOARD + default 47 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 32 if ESP32P4_EYE_C6_BOARD + default 17 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 32 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 32 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C2 + default 17 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 100 + + config ESP_HOSTED_SPI_GPIO_DATA_READY + int "GPIO pin for data ready interrupt" + default 52 if ESP_HOSTED_P4_C5_CORE_BOARD + default 47 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 32 if ESP32P4_EYE_C6_BOARD + default 11 if IDF_TARGET_ESP32P4 + default 12 if IDF_TARGET_ESP32H2 + default 4 + range ESP_HOSTED_SPI_DATA_READY_RANGE_MIN ESP_HOSTED_SPI_DATA_READY_RANGE_MAX + help + GPIO pin for indicating host that SPI slave has data to be read by host + + config ESP_HOSTED_SPI_RESET_RANGE_MIN + int + default 54 if ESP_HOSTED_P4_C5_CORE_BOARD || ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 9 if ESP32P4_EYE_C6_BOARD + default 54 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 53 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 53 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C2 + default 54 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 0 + + config ESP_HOSTED_SPI_RESET_RANGE_MAX + int + default 54 if ESP_HOSTED_P4_C5_CORE_BOARD || ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 9 if ESP32P4_EYE_C6_BOARD + default 54 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 53 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 53 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C2 + default 54 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 100 + + config ESP_HOSTED_SPI_GPIO_RESET_SLAVE + int "GPIO pin for Resetting slave ESP" + default 54 if ESP_HOSTED_P4_C5_CORE_BOARD || ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 9 if ESP32P4_EYE_C6_BOARD + default 12 if IDF_TARGET_ESP32P4 + default 10 if IDF_TARGET_ESP32H2 + default 5 + range ESP_HOSTED_SPI_RESET_RANGE_MIN ESP_HOSTED_SPI_RESET_RANGE_MAX + help + GPIO pin for Resetting ESP SPI slave device. Should be connected to RST/EN of ESP SPI slave device. + endmenu + +ESP32XX_SPI_CLK_FREQ_RANGE_MIN := 1 +ESP32_SPI_CLK_FREQ_RANGE_MAX := 10 +ESP32H2_SPI_CLK_FREQ_RANGE_MAX := 32 +ESP32C6_SPI_CLK_FREQ_RANGE_MAX := 40 +ESP32XX_SPI_CLK_FREQ_RANGE_MAX := 40 + + config ESP_HOSTED_SPI_FREQ_ESP32 + depends on ESP_HOSTED_CP_TARGET_ESP32 + int "SPI Clock Freq (MHz)" + default 10 + range $(ESP32XX_SPI_CLK_FREQ_RANGE_MIN) $(ESP32_SPI_CLK_FREQ_RANGE_MAX) + help + "Optimize SPI CLK by increasing till host practically can support" + + config ESP_HOSTED_SPI_FREQ_ESP32H2 + depends on ESP_HOSTED_CP_TARGET_ESP32H2 + int "SPI Clock Freq (MHz)" + default 32 if IDF_TARGET_ESP32P4 #config for ESP32-P4 Function_EV_Board + default 26 + range $(ESP32XX_SPI_CLK_FREQ_RANGE_MIN) $(ESP32H2_SPI_CLK_FREQ_RANGE_MAX) + help + "Optimize SPI CLK by increasing till host practically can support" + + config ESP_HOSTED_SPI_FREQ_ESP32C6 + depends on ESP_HOSTED_CP_TARGET_ESP32C6 + int "SPI Clock Freq (MHz)" + default 40 if IDF_TARGET_ESP32P4 #config for ESP32-P4 Function_EV_Board + default 26 + range $(ESP32XX_SPI_CLK_FREQ_RANGE_MIN) $(ESP32C6_SPI_CLK_FREQ_RANGE_MAX) + help + "Optimize SPI CLK by increasing till host practically can support" + + config ESP_HOSTED_SPI_FREQ_ESP32XX + depends on ESP_HOSTED_CP_TARGET_ESP32C2 || ESP_HOSTED_CP_TARGET_ESP32C3 || ESP_HOSTED_CP_TARGET_ESP32S2 || ESP_HOSTED_CP_TARGET_ESP32S3 || ESP_HOSTED_CP_TARGET_ESP32C5 || ESP_HOSTED_CP_TARGET_ESP32C61 + int "SPI Clock Freq" + default 40 if ESP_HOSTED_CP_TARGET_ESP32C2 || ESP_HOSTED_CP_TARGET_ESP32C3 || ESP_HOSTED_CP_TARGET_ESP32S2 || ESP_HOSTED_CP_TARGET_ESP32S3 || ESP_HOSTED_CP_TARGET_ESP32C5 || ESP_HOSTED_CP_TARGET_ESP32C61 + range $(ESP32XX_SPI_CLK_FREQ_RANGE_MIN) $(ESP32XX_SPI_CLK_FREQ_RANGE_MAX) + help + "Optimize SPI CLK by increasing till host practically can support" + + config ESP_HOSTED_SPI_CLK_FREQ + int + default ESP_HOSTED_SPI_FREQ_ESP32 if ESP_HOSTED_CP_TARGET_ESP32 + default ESP_HOSTED_SPI_FREQ_ESP32C6 if ESP_HOSTED_CP_TARGET_ESP32C6 + default ESP_HOSTED_SPI_FREQ_ESP32H2 if ESP_HOSTED_CP_TARGET_ESP32H2 + default ESP_HOSTED_SPI_FREQ_ESP32XX if ESP_HOSTED_CP_TARGET_ESP32C2 || ESP_HOSTED_CP_TARGET_ESP32C3 || ESP_HOSTED_CP_TARGET_ESP32S2 || ESP_HOSTED_CP_TARGET_ESP32S3 || ESP_HOSTED_CP_TARGET_ESP32C5 || ESP_HOSTED_CP_TARGET_ESP32C61 + help + "Optimize SPI CLK by increasing till host practically can support" + + config ESP_HOSTED_SPI_TX_Q_SIZE + int "ESP to Host SPI queue size" + default 7 if ESP_HOSTED_HOST_OT_ENABLE + default 15 + help + Very small tx queue will lower ESP -- SPI --> Host data rate + + config ESP_HOSTED_SPI_RX_Q_SIZE + int "Host to ESP SPI queue size" + default 7 if ESP_HOSTED_HOST_OT_ENABLE + default 15 + help + Very small RX queue will lower ESP <-- SPI -- Host data rate + + endmenu + + menu "Hosted SDIO Configuration" + depends on ESP_HOSTED_SDIO_HOST_INTERFACE + + choice ESP_HOSTED_SDIO_RESET_GPIO_CONFIG + bool "RESET GPIO Config" + default ESP_HOSTED_SDIO_RESET_ACTIVE_HIGH + help + "If Active High, High->Low->High will trigger reset (Low will trigger reset) + If Active Low, Low->High->Low will trigger reset (High will trigger reset)" + + config ESP_HOSTED_SDIO_RESET_ACTIVE_HIGH + bool "RESET: Active High" + config ESP_HOSTED_SDIO_RESET_ACTIVE_LOW + bool "RESET: Active Low" + endchoice + + choice ESP_HOSTED_SDIO_RX_OPTIMIZATION + bool "SDIO Receive Optimization" + default ESP_HOSTED_SDIO_OPTIMIZATION_RX_STREAMING_MODE + + config ESP_HOSTED_SDIO_OPTIMIZATION_RX_NONE + bool "No optimization" + help + Use SDIO as is, with no optimizations. + + config ESP_HOSTED_SDIO_OPTIMIZATION_RX_MAX_SIZE + bool "Always Rx Max Packet size" + help + Always read max Rx Packet Size (512 * 3 bytes). This saves one SDIO + transaction (get Rx Packet Size) when reading data from slave by + always transferring a fixed amount of data. Extra data at end of valid + packet data is discarded. + + config ESP_HOSTED_SDIO_OPTIMIZATION_RX_STREAMING_MODE + bool "Use Streaming Mode" + help + Receive a stream of queued data from the slave, made up of one or more + packets of data. Host extracts packets from the stream. This improves + SDIO read performance by doing one large read transaction instead of + many smaller read transactions for each packet. + (Note: requires slave to support streaming mode.) + + endchoice + + choice + prompt "SDIO Slot To Use" + default ESP_HOSTED_SDIO_SLOT_1 + help + On the ESP32-P4 EV Board: + - Slot 0 connects to the MicroSD Card slot + - Slot 1 connects to the on-board ESP32-C6 + For the ESP32, Slot 0 is usually occupied by SPI Flash and not usable for SDIO. + For the ESP32-P4, Slot 0 is IOMUXed and GPIO values cannot be changed + + config ESP_HOSTED_SDIO_SLOT_0 + depends on IDF_TARGET_ESP32P4 || IDF_TARGET_ESP32S3 + bool "Slot 0" + + config ESP_HOSTED_SDIO_SLOT_1 + bool "Slot 1" + endchoice + + config ESP_HOSTED_SDIO_SLOT + int + default 0 if ESP_HOSTED_SDIO_SLOT_0 + default 1 if ESP_HOSTED_SDIO_SLOT_1 + + config ESP_HOSTED_SD_PWR_CTRL_LDO_INTERNAL_IO + depends on SOC_SDMMC_IO_POWER_EXTERNAL + bool "SDIO power supply comes from internal LDO IO (READ HELP!)" + default n + help + Only needed when the SDIO module is connected to specific IO pins which can be used for high-speed SDIO. + Please read the schematic first and check if the SD VDD is connected to any internal LDO output. + Unselect this option if the SDIO is powered by an external power supply. + For ESP32-P4 EV Board, SDMMC slot 0 may require internal LDO output. + + config ESP_HOSTED_SD_PWR_CTRL_LDO_IO_ID + depends on SOC_SDMMC_IO_POWER_EXTERNAL && ESP_HOSTED_SD_PWR_CTRL_LDO_INTERNAL_IO + int "LDO ID" + default 4 if IDF_TARGET_ESP32P4 + help + Please check your schematic first and input your LDO ID. + + choice + prompt "SDIO Bus Width" + default ESP_HOSTED_SDIO_4_BIT_BUS + help + Select the SDIO Bus Width to use + + config ESP_HOSTED_SDIO_4_BIT_BUS + bool "4 Bits" + + config ESP_HOSTED_SDIO_1_BIT_BUS + bool "1 Bit" + endchoice + + config ESP_HOSTED_SDIO_BUS_WIDTH + int + default 1 if ESP_HOSTED_SDIO_1_BIT_BUS + default 4 + +ESP32_SDIO_CLK_FREQ_KHZ_RANGE_MIN := 400 +ESP32_SDIO_CLK_FREQ_KHZ_RANGE_MAX := 40000 +ESP32XX_SDIO_CLK_FREQ_KHZ_RANGE_MIN := 400 +ESP32XX_SDIO_CLK_FREQ_KHZ_RANGE_MAX := 50000 + + config ESP_HOSTED_SDIO_CLOCK_FREQ_KHZ + int "SDIO Clock Freq (in kHz)" + default 40000 + range $(ESP32_SDIO_CLK_FREQ_KHZ_RANGE_MIN) $(ESP32_SDIO_CLK_FREQ_KHZ_RANGE_MAX) if IDF_TARGET_ESP32 + range $(ESP32XX_SDIO_CLK_FREQ_KHZ_RANGE_MIN) $(ESP32XX_SDIO_CLK_FREQ_KHZ_RANGE_MAX) if IDF_TARGET_ESP32S3 || IDF_TARGET_ESP32P4 + help + "Optimize SDIO CLK by increasing till host practically can support. Clock frequency for ESP32-P4 as host <= 40MHz" + + config ESP_HOSTED_SDIO_CMD_GPIO_RANGE_MIN + int + default 51 if ESP_HOSTED_P4_C5_CORE_BOARD + default 52 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 27 if ESP32P4_EYE_C6_BOARD + default 19 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 4 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 19 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 15 if IDF_TARGET_ESP32 + default 0 + + config ESP_HOSTED_SDIO_CMD_GPIO_RANGE_MAX + int + default 51 if ESP_HOSTED_P4_C5_CORE_BOARD + default 52 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 27 if ESP32P4_EYE_C6_BOARD + default 19 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 4 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 19 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 15 if IDF_TARGET_ESP32 + default 100 + + config ESP_HOSTED_SDIO_CLK_GPIO_RANGE_MIN + int + default 50 if ESP_HOSTED_P4_C5_CORE_BOARD + default 51 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 28 if ESP32P4_EYE_C6_BOARD + default 18 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 33 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 18 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 14 if IDF_TARGET_ESP32 + default 0 + + config ESP_HOSTED_SDIO_CLK_GPIO_RANGE_MAX + int + default 50 if ESP_HOSTED_P4_C5_CORE_BOARD + default 51 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 28 if ESP32P4_EYE_C6_BOARD + default 18 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 33 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 18 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 14 if IDF_TARGET_ESP32 + default 100 + + config ESP_HOSTED_SDIO_D0_GPIO_RANGE_MIN + int + default 49 if ESP_HOSTED_P4_C5_CORE_BOARD + default 50 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 29 if ESP32P4_EYE_C6_BOARD + default 14 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 20 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 14 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 2 if IDF_TARGET_ESP32 + default 0 + + config ESP_HOSTED_SDIO_D0_GPIO_RANGE_MAX + int + default 49 if ESP_HOSTED_P4_C5_CORE_BOARD + default 50 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 29 if ESP32P4_EYE_C6_BOARD + default 14 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 20 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 14 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 2 if IDF_TARGET_ESP32 + default 100 + + config ESP_HOSTED_SDIO_D1_GPIO_RANGE_MIN + int + default 48 if ESP_HOSTED_P4_C5_CORE_BOARD + default 49 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 30 if ESP32P4_EYE_C6_BOARD + default 15 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 23 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 15 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 4 if IDF_TARGET_ESP32 + default 0 + + config ESP_HOSTED_SDIO_D1_GPIO_RANGE_MAX + int + default 48 if ESP_HOSTED_P4_C5_CORE_BOARD + default 49 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 30 if ESP32P4_EYE_C6_BOARD + default 15 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 23 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 15 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 4 if IDF_TARGET_ESP32 + default 100 + + config ESP_HOSTED_SDIO_D2_GPIO_RANGE_MIN + int + default 53 if ESP_HOSTED_P4_C5_CORE_BOARD + default 48 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 31 if ESP32P4_EYE_C6_BOARD + default 16 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 21 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 16 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 12 if IDF_TARGET_ESP32 + default 0 + + config ESP_HOSTED_SDIO_D2_GPIO_RANGE_MAX + int + default 53 if ESP_HOSTED_P4_C5_CORE_BOARD + default 48 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 31 if ESP32P4_EYE_C6_BOARD + default 16 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 21 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 16 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 12 if IDF_TARGET_ESP32 + default 100 + + config ESP_HOSTED_SDIO_D3_GPIO_RANGE_MIN + int + default 52 if ESP_HOSTED_P4_C5_CORE_BOARD + default 47 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 32 if ESP32P4_EYE_C6_BOARD + default 17 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 22 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 17 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 13 if IDF_TARGET_ESP32 + default 0 + + config ESP_HOSTED_SDIO_D3_GPIO_RANGE_MAX + int + default 52 if ESP_HOSTED_P4_C5_CORE_BOARD + default 47 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 32 if ESP32P4_EYE_C6_BOARD + default 17 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 22 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 17 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 13 if IDF_TARGET_ESP32 + default 100 + + config ESP_HOSTED_SDIO_RESET_SLAVE_GPIO_MIN + int + default 54 if ESP_HOSTED_P4_C5_CORE_BOARD || ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 9 if ESP32P4_EYE_C6_BOARD + default 54 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 53 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 54 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 5 if IDF_TARGET_ESP32 + default 0 + help + GPIO pin for Resetting ESP SDIO slave device. Should be connected to RST/EN of ESP SDIO slave device. + + config ESP_HOSTED_SDIO_RESET_SLAVE_GPIO_MAX + int + default 9 if ESP32P4_EYE_C6_BOARD + default 54 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 53 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 54 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 5 if IDF_TARGET_ESP32 + default 100 + +### *START* GPIO SDIO pin configurations for Slot 0 and 1 + config ESP_HOSTED_PRIV_SDIO_PIN_CMD_SLOT_0 + depends on ESP_HOSTED_SDIO_SLOT_0 + int "CMD GPIO number" + default 47 if IDF_TARGET_ESP32S3 + range 44 44 if IDF_TARGET_ESP32P4 + range 15 15 if IDF_TARGET_ESP32 + help + "Value can only be configured for some targets. Displayed always for reference." + + config ESP_HOSTED_PRIV_SDIO_PIN_CMD_SLOT_1 + depends on ESP_HOSTED_SDIO_SLOT_1 + int "CMD GPIO number" + default 47 if IDF_TARGET_ESP32S3 + default 51 if ESP_HOSTED_P4_C5_CORE_BOARD + default 52 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 27 if ESP32P4_EYE_C6_BOARD + default 19 if IDF_TARGET_ESP32P4 + default 15 if IDF_TARGET_ESP32 + range ESP_HOSTED_SDIO_CMD_GPIO_RANGE_MIN ESP_HOSTED_SDIO_CMD_GPIO_RANGE_MAX + help + CMD GPIO pin for SDIO. Range enforced dynamically based on slave target to ensure IOMUX compliance. + + config ESP_HOSTED_PRIV_SDIO_PIN_CLK_SLOT_0 + depends on ESP_HOSTED_SDIO_SLOT_0 + int "CLK GPIO number" + default 19 if IDF_TARGET_ESP32S3 + range 43 43 if IDF_TARGET_ESP32P4 + range 14 14 if IDF_TARGET_ESP32 + help + "Value can only be configured for some targets. Displayed always for reference." + + config ESP_HOSTED_PRIV_SDIO_PIN_CLK_SLOT_1 + depends on ESP_HOSTED_SDIO_SLOT_1 + int "CLK GPIO number" + default 19 if IDF_TARGET_ESP32S3 + default 50 if ESP_HOSTED_P4_C5_CORE_BOARD + default 51 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 28 if ESP32P4_EYE_C6_BOARD + default 18 if IDF_TARGET_ESP32P4 + default 14 if IDF_TARGET_ESP32 + range ESP_HOSTED_SDIO_CLK_GPIO_RANGE_MIN ESP_HOSTED_SDIO_CLK_GPIO_RANGE_MAX + help + CLK GPIO pin for SDIO. Range enforced dynamically based on slave target to ensure IOMUX compliance. + + config ESP_HOSTED_PRIV_SDIO_PIN_D0_SLOT_0 + depends on ESP_HOSTED_SDIO_SLOT_0 + int "D0 GPIO number" + default 13 if IDF_TARGET_ESP32S3 + range 39 39 if IDF_TARGET_ESP32P4 + range 2 2 if IDF_TARGET_ESP32 + help + "Value can only be configured for some targets. Displayed always for reference." + + config ESP_HOSTED_PRIV_SDIO_PIN_D0_SLOT_1 + depends on ESP_HOSTED_SDIO_SLOT_1 + int "D0 GPIO number" + default 13 if IDF_TARGET_ESP32S3 + default 49 if ESP_HOSTED_P4_C5_CORE_BOARD + default 50 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 29 if ESP32P4_EYE_C6_BOARD + default 14 if IDF_TARGET_ESP32P4 + default 2 if IDF_TARGET_ESP32 + range ESP_HOSTED_SDIO_D0_GPIO_RANGE_MIN ESP_HOSTED_SDIO_D0_GPIO_RANGE_MAX + help + D0 GPIO pin for SDIO. Range enforced dynamically based on slave target to ensure IOMUX compliance. + + if ESP_HOSTED_SDIO_4_BIT_BUS + config ESP_HOSTED_PRIV_SDIO_PIN_D1_4BIT_BUS_SLOT_0 + depends on ESP_HOSTED_SDIO_SLOT_0 + int "D1 GPIO number" + default 35 if IDF_TARGET_ESP32S3 + range 40 40 if IDF_TARGET_ESP32P4 + range 4 4 if IDF_TARGET_ESP32 + help + "Value can only be configured for some targets. Displayed always for reference." + + config ESP_HOSTED_PRIV_SDIO_PIN_D1_4BIT_BUS_SLOT_1 + depends on ESP_HOSTED_SDIO_SLOT_1 + int "D1 GPIO number" + default 35 if IDF_TARGET_ESP32S3 + default 48 if ESP_HOSTED_P4_C5_CORE_BOARD + default 49 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 30 if ESP32P4_EYE_C6_BOARD + default 15 if IDF_TARGET_ESP32P4 + default 4 if IDF_TARGET_ESP32 + range ESP_HOSTED_SDIO_D1_GPIO_RANGE_MIN ESP_HOSTED_SDIO_D1_GPIO_RANGE_MAX + help + D1 GPIO pin for SDIO. Range enforced dynamically based on slave target to ensure IOMUX compliance. + + config ESP_HOSTED_PRIV_SDIO_PIN_D2_4BIT_BUS_SLOT_0 + depends on ESP_HOSTED_SDIO_SLOT_0 + int "D2 GPIO number" + default 20 if IDF_TARGET_ESP32S3 + range 41 41 if IDF_TARGET_ESP32P4 + range 12 12 if IDF_TARGET_ESP32 + help + "Value can only be configured for some targets. Displayed always for reference." + + config ESP_HOSTED_PRIV_SDIO_PIN_D2_4BIT_BUS_SLOT_1 + depends on ESP_HOSTED_SDIO_SLOT_1 + int "D2 GPIO number" + default 20 if IDF_TARGET_ESP32S3 + default 53 if ESP_HOSTED_P4_C5_CORE_BOARD + default 48 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 31 if ESP32P4_EYE_C6_BOARD + default 16 if IDF_TARGET_ESP32P4 + default 12 if IDF_TARGET_ESP32 + range ESP_HOSTED_SDIO_D2_GPIO_RANGE_MIN ESP_HOSTED_SDIO_D2_GPIO_RANGE_MAX + help + D2 GPIO pin for SDIO. Range enforced dynamically based on slave target to ensure IOMUX compliance. + + config ESP_HOSTED_PRIV_SDIO_PIN_D3_4BIT_BUS_SLOT_0 + depends on ESP_HOSTED_SDIO_SLOT_0 + int "D3 GPIO number" + default 9 if IDF_TARGET_ESP32S3 + range 42 42 if IDF_TARGET_ESP32P4 + range 13 13 if IDF_TARGET_ESP32 + help + "Value can only be configured for some targets. Displayed always for reference." + + config ESP_HOSTED_PRIV_SDIO_PIN_D3_4BIT_BUS_SLOT_1 + depends on ESP_HOSTED_SDIO_SLOT_1 + int "D3 GPIO number" + default 9 if IDF_TARGET_ESP32S3 + default 52 if ESP_HOSTED_P4_C5_CORE_BOARD + default 47 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 32 if ESP32P4_EYE_C6_BOARD + default 17 if IDF_TARGET_ESP32P4 + default 13 if IDF_TARGET_ESP32 + range ESP_HOSTED_SDIO_D3_GPIO_RANGE_MIN ESP_HOSTED_SDIO_D3_GPIO_RANGE_MAX + help + D3 GPIO pin for SDIO. Range enforced dynamically based on slave target to ensure IOMUX compliance. + endif + + if !ESP_HOSTED_SDIO_4_BIT_BUS + config ESP_HOSTED_PRIV_SDIO_PIN_D1_1BIT_BUS_SLOT_0 + depends on ESP_HOSTED_SDIO_SLOT_0 + int "D1 GPIO number (Interrupt Line)" + default 35 if IDF_TARGET_ESP32S3 + range 40 40 if IDF_TARGET_ESP32P4 + range 4 4 if IDF_TARGET_ESP32 + help + "Value can only be configured for some targets. Displayed always for reference." + config ESP_HOSTED_PRIV_SDIO_PIN_D1_1BIT_BUS_SLOT_1 + depends on ESP_HOSTED_SDIO_SLOT_1 + int "D1 GPIO number (Interrupt Line)" + default 35 if IDF_TARGET_ESP32S3 + default 30 if ESP32P4_EYE_C6_BOARD + default 15 if IDF_TARGET_ESP32P4 + default 4 if IDF_TARGET_ESP32 + range ESP_HOSTED_SDIO_D1_GPIO_RANGE_MIN ESP_HOSTED_SDIO_D1_GPIO_RANGE_MAX + help + D1 GPIO pin for SDIO. Range enforced dynamically based on slave target to ensure IOMUX compliance. + endif + + config ESP_HOSTED_SDIO_GPIO_RESET_SLAVE + int "GPIO pin for Resetting slave ESP" + default 9 if ESP32P4_EYE_C6_BOARD + default 54 if IDF_TARGET_ESP32P4 + default 42 if IDF_TARGET_ESP32S3 + default 5 if IDF_TARGET_ESP32 + range ESP_HOSTED_SDIO_RESET_SLAVE_GPIO_MIN ESP_HOSTED_SDIO_RESET_SLAVE_GPIO_MAX + help + GPIO pin for Resetting ESP SDIO slave device. Should be connected to RST/EN of ESP SDIO slave device. + +### *END* GPIO SDIO pin configurations for Slot 0 and 1 + + config ESP_HOSTED_SDIO_PIN_CMD + int + default ESP_HOSTED_PRIV_SDIO_PIN_CMD_SLOT_0 if ESP_HOSTED_SDIO_SLOT_0 + default ESP_HOSTED_PRIV_SDIO_PIN_CMD_SLOT_1 if ESP_HOSTED_SDIO_SLOT_1 + + config ESP_HOSTED_SDIO_PIN_CLK + int + default ESP_HOSTED_PRIV_SDIO_PIN_CLK_SLOT_0 if ESP_HOSTED_SDIO_SLOT_0 + default ESP_HOSTED_PRIV_SDIO_PIN_CLK_SLOT_1 if ESP_HOSTED_SDIO_SLOT_1 + + config ESP_HOSTED_SDIO_PIN_D0 + int + default ESP_HOSTED_PRIV_SDIO_PIN_D0_SLOT_0 if ESP_HOSTED_SDIO_SLOT_0 + default ESP_HOSTED_PRIV_SDIO_PIN_D0_SLOT_1 if ESP_HOSTED_SDIO_SLOT_1 + + if ESP_HOSTED_SDIO_4_BIT_BUS + config ESP_HOSTED_SDIO_PRIV_PIN_D1_4BIT_BUS + int + default ESP_HOSTED_PRIV_SDIO_PIN_D1_4BIT_BUS_SLOT_0 if ESP_HOSTED_SDIO_SLOT_0 + default ESP_HOSTED_PRIV_SDIO_PIN_D1_4BIT_BUS_SLOT_1 if ESP_HOSTED_SDIO_SLOT_1 + + config ESP_HOSTED_SDIO_PIN_D2 + int + default ESP_HOSTED_PRIV_SDIO_PIN_D2_4BIT_BUS_SLOT_0 if ESP_HOSTED_SDIO_SLOT_0 + default ESP_HOSTED_PRIV_SDIO_PIN_D2_4BIT_BUS_SLOT_1 if ESP_HOSTED_SDIO_SLOT_1 + + config ESP_HOSTED_SDIO_PIN_D3 + int + default ESP_HOSTED_PRIV_SDIO_PIN_D3_4BIT_BUS_SLOT_0 if ESP_HOSTED_SDIO_SLOT_0 + default ESP_HOSTED_PRIV_SDIO_PIN_D3_4BIT_BUS_SLOT_1 if ESP_HOSTED_SDIO_SLOT_1 + endif + + if !ESP_HOSTED_SDIO_4_BIT_BUS + config ESP_HOSTED_SDIO_PRIV_PIN_D1_1BIT_BUS + int + default ESP_HOSTED_PRIV_SDIO_PIN_D1_1BIT_BUS_SLOT_0 if ESP_HOSTED_SDIO_SLOT_0 + default ESP_HOSTED_PRIV_SDIO_PIN_D1_1BIT_BUS_SLOT_1 if ESP_HOSTED_SDIO_SLOT_1 + endif + + config ESP_HOSTED_SDIO_PIN_D1 + int + default ESP_HOSTED_SDIO_PRIV_PIN_D1_4BIT_BUS if ESP_HOSTED_SDIO_4_BIT_BUS + default ESP_HOSTED_SDIO_PRIV_PIN_D1_1BIT_BUS if !ESP_HOSTED_SDIO_4_BIT_BUS + + config ESP_HOSTED_SDIO_TX_Q_SIZE + int "Host SDIO Tx queue size" + default 10 if ESP_HOSTED_HOST_OT_ENABLE + default 20 + help + Very small tx queue will lower data rate + + config ESP_HOSTED_SDIO_RX_Q_SIZE + int "Host SDIO Rx queue size" + default 10 if ESP_HOSTED_HOST_OT_ENABLE + default 20 + help + Very small RX queue will lower data rate + + config ESP_HOSTED_SDIO_RESET_DELAY_MS + int "Delay (in ms) after Co-processor Reset" + default 1500 + help + The co-processor needs some time to be ready after being reset by the host. + Increase this value if host sees SDMMC errors after resetting the co-processor. + + config ESP_HOSTED_SDIO_CHECKSUM + bool "SDIO checksum ENABLE/DISABLE" + help + ENABLE/DISABLE software SDIO checksum + endmenu + + menu "SPI Half-duplex Configuration" + depends on ESP_HOSTED_SPI_HD_HOST_INTERFACE + + config ESP_HOSTED_SPI_HD_MODE + int "SPI Mode to use" + default 3 + range 0 3 + help + SPI Mode to use. The same mode must be used on both host and slave. + + choice ESP_HOSTED_SPI_HD_PRIV_INTERFACE_NUM_DATA_LINES + bool "Num Data Lines to use" + default ESP_HOSTED_SPI_HD_PRIV_INTERFACE_4_DATA_LINES + help + Number of Data Lines to use in the SPI HD interface + + config ESP_HOSTED_SPI_HD_PRIV_INTERFACE_4_DATA_LINES + bool "4 data lines" + + config ESP_HOSTED_SPI_HD_PRIV_INTERFACE_2_DATA_LINES + bool "2 data lines" + + config ESP_HOSTED_SPI_HD_PRIV_INTERFACE_1_DATA_LINE + depends on $(ESP_IDF_VERSION) >= "6.1" + bool "1 data line" + endchoice + + ### SPI-HD 1-bit mode not compatible with 2/4-bit modes + comment "Make sure co-processor is also configured for 1 data line or SPI-HD transport will not work" + depends on ESP_HOSTED_SPI_HD_PRIV_INTERFACE_1_DATA_LINE + + config ESP_HOSTED_SPI_HD_INTERFACE_NUM_DATA_LINES + int + default 4 if ESP_HOSTED_SPI_HD_PRIV_INTERFACE_4_DATA_LINES + default 2 if ESP_HOSTED_SPI_HD_PRIV_INTERFACE_2_DATA_LINES + default 1 if ESP_HOSTED_SPI_HD_PRIV_INTERFACE_1_DATA_LINE + + choice ESP_HOSTED_SPI_HD_RESET_GPIO_CONFIG + bool "RESET GPIO Config" + default ESP_HOSTED_SPI_HD_RESET_ACTIVE_HIGH + help + "If Active High, High->Low->High will trigger reset (Low will trigger reset) + If Active Low, Low->High->Low will trigger reset (High will trigger reset)" + + config ESP_HOSTED_SPI_HD_RESET_ACTIVE_HIGH + bool "RESET: Active High" + config ESP_HOSTED_SPI_HD_RESET_ACTIVE_LOW + bool "RESET: Active Low" + endchoice + + config ESP_HOSTED_SPI_HD_DATA_READY_ENABLED + bool "Use DATA_READY GPIO (interrupt-driven)" + default y + help + Enable to use a dedicated GPIO for DATA_READY signaling from slave. + Disable for polled mode (saves one GPIO, adds ~1-5 ms latency). + + config ESP_HOSTED_SPI_HD_POLL_INTERVAL_MS + int "Polling interval when DATA_READY is disabled (ms)" + depends on !ESP_HOSTED_SPI_HD_DATA_READY_ENABLED + default 5 + range 0 100 + help + How often the host polls the slave TX_BUF_LEN register when + DATA_READY GPIO is not used. + Setting to 0 causes host to continually poll for data. + + ### warning if FreeRTOS clock tick is too coarse for polling interval + if (!ESP_HOSTED_SPI_HD_DATA_READY_ENABLED) && (ESP_HOSTED_SPI_HD_POLL_INTERVAL_MS != 0) && (ESP_HOSTED_SPI_HD_POLL_INTERVAL_MS < 10) && (FREERTOS_HZ <= 100) + comment "Set FreeRTOS -> Kernel -> configTICK_RATE_HZ to a value greater than 100 to support this polling interval" + comment "Recommended configTICK_RATE_HZ value is 1000" + endif + + choice ESP_HOSTED_SPI_HD_DATAREADY_GPIO_CONFIG + depends on ESP_HOSTED_SPI_HD_DATA_READY_ENABLED + bool "DataReady GPIO Config" + default ESP_HOSTED_SPI_HD_DR_ACTIVE_HIGH + + config ESP_HOSTED_SPI_HD_DR_ACTIVE_HIGH + bool "DR: Active High" + config ESP_HOSTED_SPI_HD_DR_ACTIVE_LOW + bool "DR: Active Low" + endchoice + + menu "Host GPIOs Config" + config ESP_HOSTED_SPI_HD_CS_RANGE_MIN + int + default 51 if ESP_HOSTED_P4_C5_CORE_BOARD + default 52 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 27 if ESP32P4_EYE_C6_BOARD + default 19 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 4 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 4 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C2 + default 19 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default -1 + + config ESP_HOSTED_SPI_HD_CS_RANGE_MAX + int + default 51 if ESP_HOSTED_P4_C5_CORE_BOARD + default 52 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 27 if ESP32P4_EYE_C6_BOARD + default 19 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 4 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 4 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C2 + default 19 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 100 + + config ESP_HOSTED_SPI_HD_GPIO_CS + int "GPIO pin for Host CS" + default 51 if ESP_HOSTED_P4_C5_CORE_BOARD + default 52 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 27 if ESP32P4_EYE_C6_BOARD + default 7 if IDF_TARGET_ESP32P4 + default 10 if IDF_TARGET_ESP32S3 + default 1 if IDF_TARGET_ESP32H2 + default -1 if !IDF_TARGET_ESP32P4 || !IDF_TARGET_ESP32H2 || !IDF_TARGET_ESP32S3 + range ESP_HOSTED_SPI_HD_CS_RANGE_MIN ESP_HOSTED_SPI_HD_CS_RANGE_MAX + help + SPI Half-duplex controller Host CS + + config ESP_HOSTED_SPI_HD_CLK_RANGE_MIN + int + default 50 if ESP_HOSTED_P4_C5_CORE_BOARD + default 51 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 28 if ESP32P4_EYE_C6_BOARD + default 18 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 33 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 33 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C2 + default 18 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default -1 + + config ESP_HOSTED_SPI_HD_CLK_RANGE_MAX + int + default 50 if ESP_HOSTED_P4_C5_CORE_BOARD + default 51 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 28 if ESP32P4_EYE_C6_BOARD + default 18 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 33 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 33 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C2 + default 18 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 100 + + config ESP_HOSTED_SPI_HD_GPIO_CLK + int "GPIO pin for Host CLK" + default 50 if ESP_HOSTED_P4_C5_CORE_BOARD + default 51 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 28 if ESP32P4_EYE_C6_BOARD + default 9 if IDF_TARGET_ESP32P4 + default 12 if IDF_TARGET_ESP32S3 + default 4 if IDF_TARGET_ESP32H2 + default -1 if !IDF_TARGET_ESP32P4 || !IDF_TARGET_ESP32H2 || !IDF_TARGET_ESP32S3 + range ESP_HOSTED_SPI_HD_CLK_RANGE_MIN ESP_HOSTED_SPI_HD_CLK_RANGE_MAX + help + SPI Half-duplex controller Host CLK + + config ESP_HOSTED_SPI_HD_D0_RANGE_MIN + int + default 49 if ESP_HOSTED_P4_C5_CORE_BOARD + default 50 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 29 if ESP32P4_EYE_C6_BOARD + default 14 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 23 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 23 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C2 + default 14 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default -1 + + config ESP_HOSTED_SPI_HD_D0_RANGE_MAX + int + default 49 if ESP_HOSTED_P4_C5_CORE_BOARD + default 50 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 29 if ESP32P4_EYE_C6_BOARD + default 14 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 23 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 23 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C2 + default 14 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 100 + + config ESP_HOSTED_SPI_HD_GPIO_D0 + int "GPIO pin for Host D0" + default 49 if ESP_HOSTED_P4_C5_CORE_BOARD + default 50 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 29 if ESP32P4_EYE_C6_BOARD + default 8 if IDF_TARGET_ESP32P4 + default 11 if IDF_TARGET_ESP32S3 + default 5 if IDF_TARGET_ESP32H2 + default -1 if !IDF_TARGET_ESP32P4 || !IDF_TARGET_ESP32H2 || !IDF_TARGET_ESP32S3 + range ESP_HOSTED_SPI_HD_D0_RANGE_MIN ESP_HOSTED_SPI_HD_D0_RANGE_MAX + help + SPI Half-duplex controller Host D0 + + config ESP_HOSTED_SPI_HD_D1_RANGE_MIN + int + default 48 if ESP_HOSTED_P4_C5_CORE_BOARD + default 49 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 30 if ESP32P4_EYE_C6_BOARD + default 15 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 22 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 22 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C2 + default 15 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default -1 + + config ESP_HOSTED_SPI_HD_D1_RANGE_MAX + int + default 48 if ESP_HOSTED_P4_C5_CORE_BOARD + default 49 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 30 if ESP32P4_EYE_C6_BOARD + default 15 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 22 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 22 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C2 + default 15 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 100 + + config ESP_HOSTED_SPI_HD_GPIO_D1 + depends on !ESP_HOSTED_SPI_HD_PRIV_INTERFACE_1_DATA_LINE + int "GPIO pin for Host D1" + default 48 if ESP_HOSTED_P4_C5_CORE_BOARD + default 49 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 30 if ESP32P4_EYE_C6_BOARD + default 10 if IDF_TARGET_ESP32P4 + default 13 if IDF_TARGET_ESP32S3 + default 0 if IDF_TARGET_ESP32H2 + default -1 if !IDF_TARGET_ESP32P4 || !IDF_TARGET_ESP32H2 || !IDF_TARGET_ESP32S3 + range ESP_HOSTED_SPI_HD_D1_RANGE_MIN ESP_HOSTED_SPI_HD_D1_RANGE_MAX + help + SPI Half-duplex controller Host D1 + + config ESP_HOSTED_SPI_HD_D2_RANGE_MIN + int + default 53 if ESP_HOSTED_P4_C5_CORE_BOARD + default 48 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 31 if ESP32P4_EYE_C6_BOARD + default 16 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 20 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 20 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C2 + default 16 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default -1 + + config ESP_HOSTED_SPI_HD_D2_RANGE_MAX + int + default 53 if ESP_HOSTED_P4_C5_CORE_BOARD + default 48 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 31 if ESP32P4_EYE_C6_BOARD + default 16 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 20 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 20 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C2 + default 16 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 100 + + config ESP_HOSTED_SPI_HD_GPIO_D2 + depends on ESP_HOSTED_SPI_HD_PRIV_INTERFACE_4_DATA_LINES + int "GPIO pin for Host D2" + default 53 if ESP_HOSTED_P4_C5_CORE_BOARD + default 48 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 31 if ESP32P4_EYE_C6_BOARD + default 11 if IDF_TARGET_ESP32P4 + default 14 if IDF_TARGET_ESP32S3 + default 2 if IDF_TARGET_ESP32H2 + default -1 if !IDF_TARGET_ESP32P4 || !IDF_TARGET_ESP32H2 || !IDF_TARGET_ESP32S3 + range ESP_HOSTED_SPI_HD_D2_RANGE_MIN ESP_HOSTED_SPI_HD_D2_RANGE_MAX + help + SPI Half-duplex controller Host D2 + + config ESP_HOSTED_SPI_HD_D3_RANGE_MIN + int + default 52 if ESP_HOSTED_P4_C5_CORE_BOARD + default 47 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 32 if ESP32P4_EYE_C6_BOARD + default 17 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 21 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 21 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C2 + default 17 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default -1 + + config ESP_HOSTED_SPI_HD_D3_RANGE_MAX + int + default 52 if ESP_HOSTED_P4_C5_CORE_BOARD + default 47 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 32 if ESP32P4_EYE_C6_BOARD + default 17 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 21 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 21 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C2 + default 17 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 100 + + config ESP_HOSTED_SPI_HD_GPIO_D3 + depends on ESP_HOSTED_SPI_HD_PRIV_INTERFACE_4_DATA_LINES + int "GPIO pin for Host D3" + default 52 if ESP_HOSTED_P4_C5_CORE_BOARD + default 47 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 32 if ESP32P4_EYE_C6_BOARD + default 6 if IDF_TARGET_ESP32P4 + default 9 if IDF_TARGET_ESP32S3 + default 3 if IDF_TARGET_ESP32H2 + default -1 if !IDF_TARGET_ESP32P4 || !IDF_TARGET_ESP32H2 || !IDF_TARGET_ESP32S3 + range ESP_HOSTED_SPI_HD_D3_RANGE_MIN ESP_HOSTED_SPI_HD_D3_RANGE_MAX + help + SPI Half-duplex controller Host D3 + + config ESP_HOSTED_SPI_HD_DATA_READY_RANGE_MIN + int + default 47 if ESP_HOSTED_P4_C5_CORE_BOARD + default 53 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 33 if ESP32P4_EYE_C6_BOARD + default 6 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 32 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 32 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C2 + default 6 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default -1 + + config ESP_HOSTED_SPI_HD_DATA_READY_RANGE_MAX + int + default 47 if ESP_HOSTED_P4_C5_CORE_BOARD + default 53 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 33 if ESP32P4_EYE_C6_BOARD + default 6 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 32 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 32 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C2 + default 6 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 100 + + config ESP_HOSTED_SPI_HD_GPIO_DATA_READY + depends on ESP_HOSTED_SPI_HD_DATA_READY_ENABLED + int "GPIO pin for data ready interrupt" + default 47 if ESP_HOSTED_P4_C5_CORE_BOARD + default 53 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 33 if ESP32P4_EYE_C6_BOARD + default 13 if IDF_TARGET_ESP32P4 + default 4 if IDF_TARGET_ESP32S3 + default 12 if IDF_TARGET_ESP32H2 + default -1 if !IDF_TARGET_ESP32P4 || !IDF_TARGET_ESP32H2 || !IDF_TARGET_ESP32S3 + range ESP_HOSTED_SPI_HD_DATA_READY_RANGE_MIN ESP_HOSTED_SPI_HD_DATA_READY_RANGE_MAX + help + GPIO pin for indicating host that slave has data to be read by host + + config ESP_HOSTED_SPI_HD_RESET_RANGE_MIN + int + default 54 if ESP_HOSTED_P4_C5_CORE_BOARD || ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 9 if ESP32P4_EYE_C6_BOARD + default 54 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 53 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 53 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C2 + default 54 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default -1 + + config ESP_HOSTED_SPI_HD_RESET_RANGE_MAX + int + default 54 if ESP_HOSTED_P4_C5_CORE_BOARD || ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 9 if ESP32P4_EYE_C6_BOARD + default 54 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 53 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C5 + default 53 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C2 + default 54 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 100 + + config ESP_HOSTED_SPI_HD_GPIO_RESET_SLAVE + int "GPIO pin for Resetting slave ESP" + default 54 if ESP_HOSTED_P4_C5_CORE_BOARD || ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 9 if ESP32P4_EYE_C6_BOARD + default 12 if IDF_TARGET_ESP32P4 + default 5 if IDF_TARGET_ESP32S3 + default 10 if IDF_TARGET_ESP32H2 + default -1 if !IDF_TARGET_ESP32P4 || !IDF_TARGET_ESP32H2 || !IDF_TARGET_ESP32S3 + range ESP_HOSTED_SPI_HD_RESET_RANGE_MIN ESP_HOSTED_SPI_HD_RESET_RANGE_MAX + help + GPIO pin for Resetting ESP slave device. Should be connected to RST/EN of ESP SPI slave device. + endmenu + +ESP32XX_SPI_HD_CLK_FREQ_RANGE_MIN := 1 +ESP32_SPI_HD_CLK_FREQ_RANGE_MAX := 10 +ESP32C6_SPI_HD_CLK_FREQ_RANGE_MAX := 40 +ESP32XX_SPI_HD_CLK_FREQ_RANGE_MAX := 40 + + config ESP_HOSTED_SPI_HD_FREQ_ESP32C6 + depends on ESP_HOSTED_CP_TARGET_ESP32C6 + int "SPI HD Clock Freq (MHz)" + default 40 if IDF_TARGET_ESP32P4 #config for ESP32-P4 Function_EV_Board + default 10 + range $(ESP32XX_SPI_HD_CLK_FREQ_RANGE_MIN) $(ESP32C6_SPI_HD_CLK_FREQ_RANGE_MAX) + help + "Optimize CLK by increasing till host practically can support" + + config ESP_HOSTED_SPI_HD_FREQ_ESP32XX + depends on ESP_HOSTED_CP_TARGET_ESP32C2 || ESP_HOSTED_CP_TARGET_ESP32C3 || ESP_HOSTED_CP_TARGET_ESP32S2 || ESP_HOSTED_CP_TARGET_ESP32S3 || ESP_HOSTED_CP_TARGET_ESP32C5 || ESP_HOSTED_CP_TARGET_ESP32C61 + int "SPI HD Clock Freq (MHz)" + default 40 if ESP_HOSTED_CP_TARGET_ESP32C2 || ESP_HOSTED_CP_TARGET_ESP32C3 || ESP_HOSTED_CP_TARGET_ESP32S2 || ESP_HOSTED_CP_TARGET_ESP32S3 || ESP_HOSTED_CP_TARGET_ESP32C5 || ESP_HOSTED_CP_TARGET_ESP32C61 + range $(ESP32XX_SPI_HD_CLK_FREQ_RANGE_MIN) $(ESP32XX_SPI_HD_CLK_FREQ_RANGE_MAX) + help + "Optimize CLK by increasing till host practically can support" + + config ESP_HOSTED_SPI_HD_CLK_FREQ + int + default ESP_HOSTED_SPI_HD_FREQ_ESP32C6 if ESP_HOSTED_CP_TARGET_ESP32C6 + default ESP_HOSTED_SPI_HD_FREQ_ESP32XX if ESP_HOSTED_CP_TARGET_ESP32C2 || ESP_HOSTED_CP_TARGET_ESP32C3 || ESP_HOSTED_CP_TARGET_ESP32S2 || ESP_HOSTED_CP_TARGET_ESP32S3 || ESP_HOSTED_CP_TARGET_ESP32C5 || ESP_HOSTED_CP_TARGET_ESP32C61 + help + "Optimize CLK by increasing till host practically can support" + + config ESP_HOSTED_SPI_HD_TX_Q_SIZE + int "ESP to Host queue size" + default 10 if ESP_HOSTED_HOST_OT_ENABLE + default 15 + help + Very small tx queue will lower ESP -- SPI Half-duplex --> Host data rate + + config ESP_HOSTED_SPI_HD_RX_Q_SIZE + int "Host to ESP queue size" + default 10 if ESP_HOSTED_HOST_OT_ENABLE + default 15 + help + Very small RX queue will lower ESP <-- SPI Half-duplex -- Host data rate + + config ESP_HOSTED_SPI_HD_CHECKSUM + bool "Checksum ENABLE/DISABLE" + default y + help + ENABLE/DISABLE software checksum + endmenu + + menu "UART Configuration" + depends on ESP_HOSTED_UART_HOST_INTERFACE + + choice ESP_HOSTED_UART_RESET_GPIO_CONFIG + bool "RESET GPIO Config" + default ESP_HOSTED_UART_RESET_ACTIVE_HIGH + help + "If Active High, High->Low->High will trigger reset (Low will trigger reset) + If Active Low, Low->High->Low will trigger reset (High will trigger reset)" + + config ESP_HOSTED_UART_RESET_ACTIVE_HIGH + bool "RESET: Active High" + config ESP_HOSTED_UART_RESET_ACTIVE_LOW + bool "RESET: Active Low" + endchoice + + config ESP_HOSTED_UART_PORT + int "UART Port to Use" + default 1 + range 0 2 if IDF_TARGET_ESP32 + range 0 1 if IDF_TARGET_ESP32C2 || IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32C5 || IDF_TARGET_ESP32C6 + range 0 2 if IDF_TARGET_ESP32C61 + range 0 1 if IDF_TARGET_ESP32S2 + range 0 2 if IDF_TARGET_ESP32S3 + range 0 4 if IDF_TARGET_ESP32P4 + help + Select UART Port to Use. Do not select the UART Port used for console output (if enabled) + + config ESP_HOSTED_UART_TX_RANGE_MIN + int + default 49 if ESP_HOSTED_P4_C5_CORE_BOARD + default 50 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 31 if ESP32P4_EYE_C6_BOARD + default 14 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 14 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 0 + + config ESP_HOSTED_UART_TX_RANGE_MAX + int + default 49 if ESP_HOSTED_P4_C5_CORE_BOARD + default 50 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 31 if ESP32P4_EYE_C6_BOARD + default 14 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 14 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 100 + + config ESP_HOSTED_UART_PIN_TX + int "TX GPIO number" + default 13 if IDF_TARGET_ESP32 + default 5 if IDF_TARGET_ESP32C2 || IDF_TARGET_ESP32C3 + default 14 if IDF_TARGET_ESP32C5 + default 21 if IDF_TARGET_ESP32C6 + default 5 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32S3 + default 49 if ESP_HOSTED_P4_C5_CORE_BOARD + default 50 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 31 if ESP32P4_EYE_C6_BOARD + default 14 if IDF_TARGET_ESP32P4 + default 12 if IDF_TARGET_ESP32H2 + range ESP_HOSTED_UART_TX_RANGE_MIN ESP_HOSTED_UART_TX_RANGE_MAX + help + GPIO used for UART TX + + config ESP_HOSTED_UART_RX_RANGE_MIN + int + default 48 if ESP_HOSTED_P4_C5_CORE_BOARD + default 49 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 32 if ESP32P4_EYE_C6_BOARD + default 15 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 15 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 0 + + config ESP_HOSTED_UART_RX_RANGE_MAX + int + default 48 if ESP_HOSTED_P4_C5_CORE_BOARD + default 49 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 32 if ESP32P4_EYE_C6_BOARD + default 15 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_CP_TARGET_ESP32C6 + default 15 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD + default 100 + + config ESP_HOSTED_UART_PIN_RX + int "RX GPIO number" + default 12 if IDF_TARGET_ESP32 + default 4 if IDF_TARGET_ESP32C2 || IDF_TARGET_ESP32C3 + default 13 if IDF_TARGET_ESP32C5 + default 20 if IDF_TARGET_ESP32C6 + default 4 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32S3 + default 48 if ESP_HOSTED_P4_C5_CORE_BOARD + default 49 if ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 32 if ESP32P4_EYE_C6_BOARD + default 15 if IDF_TARGET_ESP32P4 + default 22 if IDF_TARGET_ESP32H2 + range ESP_HOSTED_UART_RX_RANGE_MIN ESP_HOSTED_UART_RX_RANGE_MAX + help + GPIO used for UART RX + + config ESP_HOSTED_UART_BAUDRATE + int "Baud Rate" + default 921600 + range 9600 3500000 + help + Baud Rate to Use. Make sure Hardware supports the rate. Standard rates are 9600, 19200, 38400, 57600, 115200, 460800, 921600 + + choice ESP_HOSTED_UART_PRIV_NUM_DATA_BITS + bool "Number of Data Bits" + default ESP_HOSTED_UART_PRIV_NUM_DATA_BITS_8 + help + Number of Data Bits to use + + config ESP_HOSTED_UART_PRIV_NUM_DATA_BITS_5 + bool "5 Bits" + + config ESP_HOSTED_UART_PRIV_NUM_DATA_BITS_6 + bool "6 Bits" + + config ESP_HOSTED_UART_PRIV_NUM_DATA_BITS_7 + bool "7 Bits" + + config ESP_HOSTED_UART_PRIV_NUM_DATA_BITS_8 + bool "8 Bits" + endchoice + + config ESP_HOSTED_UART_NUM_DATA_BITS + int + default 0 if ESP_HOSTED_UART_PRIV_NUM_DATA_BITS_5 + default 1 if ESP_HOSTED_UART_PRIV_NUM_DATA_BITS_6 + default 2 if ESP_HOSTED_UART_PRIV_NUM_DATA_BITS_7 + default 3 if ESP_HOSTED_UART_PRIV_NUM_DATA_BITS_8 + + choice ESP_HOSTED_UART_PRIV_PARITY + bool "Parity" + + config ESP_HOSTED_UART_PRIV_PARITY_NONE + bool "None" + + config ESP_HOSTED_UART_PRIV_PARITY_EVEN + bool "Even" + + config ESP_HOSTED_UART_PRIV_PARITY_ODD + bool "Odd" + endchoice + + config ESP_HOSTED_UART_PARITY + int + default 0 if ESP_HOSTED_UART_PRIV_PARITY_NONE + default 2 if ESP_HOSTED_UART_PRIV_PARITY_EVEN + default 3 if ESP_HOSTED_UART_PRIV_PARITY_ODD + + choice ESP_HOSTED_UART_PRIV_STOP_BITS + bool "Number of Stop Bits" + + config ESP_HOSTED_UART_PRIV_STOP_BITS_1 + bool "1" + + config ESP_HOSTED_UART_PRIV_STOP_BITS_1_5 + bool "1.5" + + config ESP_HOSTED_UART_PRIV_STOP_BITS_2 + bool "2" + endchoice + + config ESP_HOSTED_UART_STOP_BITS + int + default 1 if ESP_HOSTED_UART_PRIV_STOP_BITS_1 + default 2 if ESP_HOSTED_UART_PRIV_STOP_BITS_1_5 + default 3 if ESP_HOSTED_UART_PRIV_STOP_BITS_2 + + config ESP_HOSTED_UART_GPIO_RESET_SLAVE + int "GPIO pin for Resetting slave ESP" + default 54 if ESP_HOSTED_P4_C5_CORE_BOARD || ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD + default 9 if ESP32P4_EYE_C6_BOARD + default 54 if IDF_TARGET_ESP32P4 + default 42 if IDF_TARGET_ESP32S3 + default 5 + help + GPIO pin for Resetting slave ESP. Should be connected to RST/EN of slave ESP. + + config ESP_HOSTED_UART_TX_Q_SIZE + int "Tx Queue Size" + default 5 + help + UART rates are low, so large queue sizes are not required + + config ESP_HOSTED_UART_RX_Q_SIZE + int "Rx Queue Size" + default 5 + help + UART rates are low, so large queue sizes are not required + + config ESP_HOSTED_UART_CHECKSUM + bool "UART checksum ENABLE/DISABLE" + default y + help + ENABLE/DISABLE software UART checksum + endmenu + + menu "Common Slave Reset Strategy" + choice ESP_HOSTED_SLAVE_RESET_STRATEGY + bool "When to reset the slave device" + default ESP_HOSTED_SLAVE_RESET_ON_EVERY_HOST_BOOTUP + help + Select Select when to reset the slave + + config ESP_HOSTED_SLAVE_RESET_ON_EVERY_HOST_BOOTUP + bool "Reset slave on every host boot-up" + help + Reset the slave device every time the host boots up. This ensures a clean + transport state and prevents any inconsistent states, but causes + the slave to reboot every time. + + config ESP_HOSTED_SLAVE_RESET_ONLY_IF_NECESSARY + bool "Reset slave only if necessary" + depends on ESP_HOSTED_SDIO_HOST_INTERFACE + help + Only reset the slave if initialization fails. This reduces slave + reboots but assumes the slave interface is in a consistent state. + If initialization fails, the host will assume the slave is in an + inconsistent or deinitialized state and will reset it. + Note: This option is only available for SDIO transport. + endchoice + + config ESP_HOSTED_HOST_RESTART_NO_COMMUNICATION_WITH_SLAVE + bool "Enable host auto-restart on communication failure" + depends on ESP_HOSTED_SLAVE_RESET_ONLY_IF_NECESSARY + default y + help + Enable host to automatically restart if it fails to establish communication with the slave. + When enabled, the host will reset itself to recover the connection if the slave + becomes non-responsive for the configured timeout period. This acts as a safeguard + in case the slave does not issue the first event on the transport line. + + config ESP_HOSTED_HOST_RESTART_NO_COMMUNICATION_WITH_SLAVE_TIMEOUT + depends on ESP_HOSTED_HOST_RESTART_NO_COMMUNICATION_WITH_SLAVE + int "Communication failure timeout (seconds)" + default 5 + help + Maximum time in seconds that the host will wait for a response from the slave + before triggering an automatic restart. If no communication is established within + this period, the host will reset itself to recover the connection. + endmenu + + config ESP_HOSTED_GPIO_SLAVE_RESET_SLAVE + int + default ESP_HOSTED_SPI_GPIO_RESET_SLAVE if ESP_HOSTED_SPI_HOST_INTERFACE + default ESP_HOSTED_SDIO_GPIO_RESET_SLAVE if ESP_HOSTED_SDIO_HOST_INTERFACE + default ESP_HOSTED_SPI_HD_GPIO_RESET_SLAVE if ESP_HOSTED_SPI_HD_HOST_INTERFACE + default ESP_HOSTED_UART_GPIO_RESET_SLAVE if ESP_HOSTED_UART_HOST_INTERFACE + + config ESP_HOSTED_RESET_GPIO_ACTIVE_LOW + bool + default n if ESP_HOSTED_SDIO_RESET_ACTIVE_HIGH || ESP_HOSTED_SPI_RESET_ACTIVE_HIGH || ESP_HOSTED_SPI_HD_RESET_ACTIVE_HIGH || ESP_HOSTED_UART_RESET_ACTIVE_HIGH + default y if ESP_HOSTED_SDIO_RESET_ACTIVE_LOW || ESP_HOSTED_SPI_RESET_ACTIVE_LOW || ESP_HOSTED_SPI_HD_RESET_ACTIVE_LOW || ESP_HOSTED_UART_RESET_ACTIVE_LOW + + menu "Bluetooth Support" + + comment "Following options must be set before this option can be enabled" + depends on !BT_ENABLED || BT_CONTROLLER_ONLY || (BT_NIMBLE_ENABLED && (BT_NIMBLE_TRANSPORT_UART || BT_CONTROLLER_ENABLED)) || (BT_BLUEDROID_ENABLED && BT_CONTROLLER_ENABLED) + + comment "'Component config->Bluetooth' must be enabled" + depends on !BT_ENABLED + + comment "'Component config->Bluetooth->Host' must be enabled" + depends on BT_ENABLED && BT_CONTROLLER_ONLY + + comment "'Component config->Bluetooth->Controller' must be disabled" + depends on BT_ENABLED && BT_CONTROLLER_ENABLED + + comment "'Component config->Bluetooth->NimBLE Options->Host-controller Transport->Uart Transport' must be disabled" + depends on BT_NIMBLE_ENABLED && BT_NIMBLE_TRANSPORT_UART + + if BT_ENABLED && BT_BLUEDROID_ENABLED && !BT_CONTROLLER_ENABLED + config ESP_HOSTED_ENABLE_BT_BLUEDROID + bool "Enable Hosted Bluedroid Bluetooth support" + default n + help + Enable Bluetooth Support for Bluedroid via Hosted + + choice ESP_HOSTED_BLUEDROID_HCI_TYPE + bool "BT Bluedroid HCI Type" + default ESP_HOSTED_BLUEDROID_HCI_VHCI + depends on ESP_HOSTED_ENABLE_BT_BLUEDROID + help + Selects the HCI to use + + config ESP_HOSTED_BLUEDROID_HCI_VHCI + bool "VHCI" + help + Bluetooth data is sent through the selected transport layer + endchoice + endif + + if BT_ENABLED && BT_NIMBLE_ENABLED && !BT_CONTROLLER_ENABLED && !BT_NIMBLE_TRANSPORT_UART + config ESP_HOSTED_ENABLE_BT_NIMBLE + bool "Enable Hosted Nimble Bluetooth support" + default n + help + Enable Bluetooth Support via Hosted + + choice ESP_HOSTED_NIMBLE_HCI_TYPE + bool "BT Nimble HCI Type" + default ESP_HOSTED_NIMBLE_HCI_VHCI + depends on ESP_HOSTED_ENABLE_BT_NIMBLE + help + Selects the HCI to use + + config ESP_HOSTED_NIMBLE_HCI_VHCI + bool "VHCI" + help + Bluetooth data is sent through the selected transport layer + endchoice + endif + endmenu + + menu "Task defaults" + config ESP_HOSTED_RPC_TASK_STACK + int "RPC task stack size" + default 4096 + + config ESP_HOSTED_DFLT_TASK_STACK + int "Hosted default task size" + default 3072 + + config ESP_HOSTED_DFLT_TASK_FROM_SPIRAM + bool "Hosted task stack from SPIRAM" + default n + help + When enabled, Hosted tasks would be allocated + from SPIRAM, instead of default internal RAM. + + endmenu + + config ESP_HOSTED_TRANSPORT_RESTART_ON_FAILURE + bool "Restart transport upon failure" + default y + help + When enabled, transport restarts the system when it encounters a failure. + Disable to custom handle the transport failure in application. + A transport failure will always be sent as an ESP_HOSTED_EVENT_TRANSPORT_FAILURE event, irrespective of the setting. + + config ESP_HOSTED_MEM_MONITOR + bool "Enable Memory Monitor Interface" + default y + help + Enable the Memory Monitor Interface. Host can query co-processor to get + information on heap size or get an event when heap falls below a set threshold. + + config ESP_HOSTED_ENABLE_ITWT + depends on ESP_HOSTED_PRIV_ENABLE_WIFI_OPTIONS + bool "Enable iTWT support" + depends on SLAVE_SOC_WIFI_HE_SUPPORT + default y + help + Enable Wi-Fi iTWT (individual Target Wake Time) APIs on Host. Using the API, Host + can instruct the co-processor to negotiate specific wake and sleep schedules with + the access point (AP) for lower power consumption. + + config ESP_HOSTED_WIFI_AUTO_CONNECT_ON_STA_START + depends on ESP_HOSTED_PRIV_ENABLE_WIFI_OPTIONS + bool "Auto-connect WiFi at host on STA_START event" + default n + help + Automatically trigger WiFi connect from host when slave station starts. + Generally should be disabled to give application control over connection timing. + When disabled, application must explicitly call esp_wifi_connect() after + receiving WIFI_EVENT_STA_START event. + + config ESP_HOSTED_ENABLE_GPIO_EXPANDER + bool "Enable GPIO Expander feature on host" + default n + help + Enable RPC methods that allow the HOST MCU to configure and control GPIOs + on the co-processor. Leave disabled unless you really need it. + GPIO requests that target pins used by the active transport will be rejected. + Note: ESP_HOSTED_ENABLE_GPIO_EXPANDER should also be enabled at co-processor to use this + + config ESP_HOSTED_CP_EXT_COEX + bool "Co-Processor External Coexistence" + default n + help + Enable RPC methods to configure external coexistence GPIO pins on the + co-processor (slave). Call before esp_wifi_init(). GPIOs are on the + slave; used for C6-H2 external coex. Requires CONFIG_ESP_HOSTED_CP_EXT_COEX + and CONFIG_EXTERNAL_COEX_ENABLE on the co-processor. + + config ESP_HOSTED_CP_EXT_COEX_ADVANCE + bool "Co-Processor External Coexistence - Advanced" + depends on ESP_HOSTED_CP_EXT_COEX + default n + help + Enable work mode, grant delay, and validate-high RPCs. Requires + SOC_EXTERNAL_COEX_ADVANCE support on the co-processor (e.g. ESP32-C6). + + config ESP_HOSTED_ENABLE_DPP + depends on ESP_HOSTED_PRIV_ENABLE_WIFI_OPTIONS + bool "Enable Wi-Fi Easy Connect (DPP)" + default n + help + Enable Wi-Fi Easy Connect (DPP) support + + config ESP_HOSTED_DPP_URI_LEN_MAX + int "Maximum length of URI used to generate QR code in Wi-Fi Easy Connect" + depends on ESP_HOSTED_ENABLE_DPP + default 255 + help + URIs used to generate the QR code should be less than this length. + Increase this value if the received URI can be larger + + menuconfig ESP_HOSTED_HOST_OT_ENABLE + depends on OPENTHREAD_ENABLED || ZB_ENABLED + bool "Enable OpenThread/Zigbee Host Support" + default n + help + "Enable OpenThread/Zigbee Host support. It will communicate with the OpenThread RCP on the co-processor" + + if ESP_HOSTED_HOST_OT_ENABLE + + if OPENTHREAD_ENABLED && !OPENTHREAD_FTD + comment "Full Thread Device must be selected:" + comment" Component config → OpenThread → Thread Core Features" + comment" → Thread device type → Full Thread Device" + endif + + choice ESP_HOSTED_OT_INTERFACE + bool "OpenThread/Zigbee Transport" + default ESP_HOSTED_OT_TRANSPORT_UART + help + Transport used communicate with OpenThread RCP + + config ESP_HOSTED_OT_TRANSPORT_HOSTED + bool "Use ESP-Hosted Transport" + help + Use ESP-Hosted transport to communicate with OpenThread Host + + config ESP_HOSTED_OT_TRANSPORT_UART + bool "UART" + help + Use UART to communicate with OpenThread RCP + endchoice + + if ESP_HOSTED_OT_TRANSPORT_UART + + comment " :warning: OpenThread UART port and Hosted UART transport port is same — pick a different UART port" + depends on ESP_HOSTED_UART_HOST_INTERFACE && ESP_HOSTED_OT_UART_PORT = ESP_HOSTED_UART_PORT + + config ESP_HOSTED_OT_UART_PORT + int "UART Port to Use" + default 1 + range 0 4 if IDF_TARGET_ESP32P4 + range 0 1 if IDF_TARGET_ESP32H2 + help + Select UART Port to Use. Do not select the UART Port used for console output (if enabled) + + # GPIO that connects to the RCP Tx pins + config ESP_HOSTED_OT_PIN_TO_RCP_TX + int "Pin to RCP TX" + default 4 + help + GPIO used to connect to Tx Pin on RCP + + # GPIO that connects to the RCP Rx pins + config ESP_HOSTED_OT_PIN_TO_RCP_RX + int "Pin to RCP RX" + default 5 + help + GPIO used to connect to Rx Pin on RCP + + config ESP_HOSTED_OT_UART_BAUDRATE + int "Baud Rate" + default 460800 + range 9600 3500000 + help + Baud Rate to Use. Make sure Hardware supports the rate. Standard rates are 9600, 19200, 38400, 57600, 115200, 460800, 921600 + + choice ESP_HOSTED_OT_UART_PRIV_NUM_DATA_BITS + bool "Number of Data Bits" + default ESP_HOSTED_OT_UART_PRIV_NUM_DATA_BITS_8 + help + Number of Data Bits to use + + config ESP_HOSTED_OT_UART_PRIV_NUM_DATA_BITS_5 + bool "5 Bits" + + config ESP_HOSTED_OT_UART_PRIV_NUM_DATA_BITS_6 + bool "6 Bits" + + config ESP_HOSTED_OT_UART_PRIV_NUM_DATA_BITS_7 + bool "7 Bits" + + config ESP_HOSTED_OT_UART_PRIV_NUM_DATA_BITS_8 + bool "8 Bits" + endchoice + + config ESP_HOSTED_OT_UART_NUM_DATA_BITS + int + default 0 if ESP_HOSTED_OT_UART_PRIV_NUM_DATA_BITS_5 + default 1 if ESP_HOSTED_OT_UART_PRIV_NUM_DATA_BITS_6 + default 2 if ESP_HOSTED_OT_UART_PRIV_NUM_DATA_BITS_7 + default 3 if ESP_HOSTED_OT_UART_PRIV_NUM_DATA_BITS_8 + + choice ESP_HOSTED_OT_UART_PRIV_PARITY + bool "Parity" + + config ESP_HOSTED_OT_UART_PRIV_PARITY_NONE + bool "None" + + config ESP_HOSTED_OT_UART_PRIV_PARITY_EVEN + bool "Even" + + config ESP_HOSTED_OT_UART_PRIV_PARITY_ODD + bool "Odd" + endchoice + + config ESP_HOSTED_OT_UART_PARITY + int + default 0 if ESP_HOSTED_OT_UART_PRIV_PARITY_NONE + default 2 if ESP_HOSTED_OT_UART_PRIV_PARITY_EVEN + default 3 if ESP_HOSTED_OT_UART_PRIV_PARITY_ODD + + choice ESP_HOSTED_OT_UART_PRIV_STOP_BITS + bool "Number of Stop Bits" + + config ESP_HOSTED_OT_UART_PRIV_STOP_BITS_1 + bool "1" + + config ESP_HOSTED_OT_UART_PRIV_STOP_BITS_1_5 + bool "1.5" + + config ESP_HOSTED_OT_UART_PRIV_STOP_BITS_2 + bool "2" + endchoice + + config ESP_HOSTED_OT_UART_STOP_BITS + int + default 1 if ESP_HOSTED_OT_UART_PRIV_STOP_BITS_1 + default 2 if ESP_HOSTED_OT_UART_PRIV_STOP_BITS_1_5 + default 3 if ESP_HOSTED_OT_UART_PRIV_STOP_BITS_2 + + endif + + endif + + config ESP_HOSTED_USE_MEMPOOL + bool "Enable Mempool" + default y + help + Mempool will help to alloc buffer without going to heap for every memory allocation or free + + config ESP_HOSTED_MEMPOOL_PREFER_SPIRAM + bool "Prefer SPIRAM for transport buffer allocations" + default n + depends on SPIRAM + help + When enabled, transport buffer allocations first try DMA-capable + SPIRAM and fall back to internal DMA-capable RAM on failure. This + preserves scarce internal RAM on targets where GDMA can reach + PSRAM through cache (e.g. ESP32-P4, ESP32-S3), which is useful + for memory-intensive workloads like sustained 1080p video + streaming. Leave disabled on targets without DMA-capable PSRAM + or when transport latency must be minimised. + + config ESP_HOSTED_MAX_SIMULTANEOUS_SYNC_RPC_REQUESTS + int "Maximum number of simultaneous synchronous RPC Request" + default 5 + help + Sets the maximum number of simultaneous synchronous RPC Requests. + (Synchronous RPC Request: each sending task waits for the response.) + Usually, the host application may send up to 3 simultaneous RPC requests to the slave. + Increase this number if you need to send more simultaneous RPC requests. + Note: the slave will only process one RPC request (sync and async) at a time + + config ESP_HOSTED_MAX_SIMULTANEOUS_ASYNC_RPC_REQUESTS + int "Maximum number of simultaneous asynchronous RPC Request" + default 5 + help + Sets the maximum number of simultaneous asynchronous RPC Requests. + (Asynchronous RPC Request: each sending task registers a callback to get the response.) + Usually, the host application may send up to 3 simultaneous RPC requests to the slave. + Increase this number if you need to send more simultaneous RPC requests. + Note: the slave will only process one RPC request (sync and async) at a time + + config ESP_HOSTED_CLI_ENABLED + bool "Enable CLI Shell" + default y + help + Only registers ESP-Hosted cli commands to the existing CLI session opened earlier by other components than esp-hosted + + config ESP_HOSTED_CLI_NEW_INSTANCE + depends on ESP_HOSTED_CLI_ENABLED + bool "Create new instance & do not reuse existing session if any" + default n + help + Starts a new CLI instance when enabled & registers esp hosted as well. + Refrain from enabling this option, if your example already creates cli session, for example, iperf example. + + menu "Debug Settings" + + config ESP_HOSTED_FW_VERSION_MISMATCH_WARNING_SUPPRESS + bool "Suppress firmware version mismatch warnings" + default n + help + Suppress warnings when host and co-processor firmware versions do not match. + By default, version mismatch warnings are shown during initialization. + Enable this option to suppress these warnings. + + config ESP_HOSTED_RAW_THROUGHPUT_TRANSPORT + bool "RawTP: Transport level throughput debug test" + default n + help + Find max transport performance which helps to assess stability of porting done + + choice ESP_HOSTED_RAW_THROUGHPUT_DIRECTION + bool "RawTP: Send data from:" + depends on ESP_HOSTED_RAW_THROUGHPUT_TRANSPORT + + config ESP_HOSTED_RAW_THROUGHPUT_TX_TO_SLAVE + bool "Host to Slave" + help + Sends data from Host to Slave + + config ESP_HOSTED_RAW_THROUGHPUT_RX_FROM_SLAVE + bool "Slave to Host" + help + Sends data from Slave to Slave + + config ESP_HOSTED_RAW_THROUGHPUT_BIDIRECTIONAL + bool "Bidirectional" + help + Sends data in both directions + endchoice + + config ESP_HOSTED_RAW_TP_HOST_TO_ESP_PKT_LEN + depends on ESP_HOSTED_RAW_THROUGHPUT_TRANSPORT + int "RawTP: Host to ESP packet size" + range 1 1500 + default 1460 + + config ESP_HOSTED_RAW_TP_REPORT_INTERVAL + depends on ESP_HOSTED_RAW_THROUGHPUT_TRANSPORT + int "RawTP: periodic duration to report stats accumulated" + default 5 + + config ESP_HOSTED_PKT_STATS + bool "Transport level packet stats" + default n + help + On comparing with slave packet stats helps to understand any packet loss at hosted + + config ESP_HOSTED_PKT_STATS_INTERVAL_SEC + depends on ESP_HOSTED_PKT_STATS + int "Packet stats reporting interval (sec)" + default 30 + + endmenu + + menu "Data path options" + config ESP_HOSTED_HOST_TO_ESP_WIFI_DATA_THROTTLE + bool "Report WiFi queue utilization to host" + default y + help + Proactively drop Host->slave Wi-Fi data when Slave Wi-Fi is under load + Slave Wi-Fi may drop ingress bursty or higher than capacity packets. + To have synchronous way of packet dropped for application, + Host will throttle incoming data if the slave datapath Rx load is high + + config ESP_HOSTED_PRIV_WIFI_TX_SPI_HIGH_THRESHOLD + depends on ESP_HOSTED_HOST_TO_ESP_WIFI_DATA_THROTTLE && ESP_HOSTED_SPI_HOST_INTERFACE + int "High threshold to report host to drop data when wifi highly loaded" + range 0 100 + default 90 + help + Host will throttle incoming data if the slave datapath Rx load goes beyond this threshold + 0 value will disable this function + + config ESP_HOSTED_PRIV_WIFI_TX_SDIO_HIGH_THRESHOLD + depends on ESP_HOSTED_HOST_TO_ESP_WIFI_DATA_THROTTLE && ESP_HOSTED_SDIO_HOST_INTERFACE + int "High threshold to report host to drop data when wifi highly loaded" + range 0 100 + default 80 + help + Host will throttle incoming data if the slave datapath Rx load goes beyond this threshold + 0 value will disable this function + + config ESP_HOSTED_PRIV_WIFI_TX_SPI_HD_HIGH_THRESHOLD + depends on ESP_HOSTED_HOST_TO_ESP_WIFI_DATA_THROTTLE && ESP_HOSTED_SPI_HD_HOST_INTERFACE + int "High threshold to report host to drop data when wifi highly loaded" + range 0 100 + default 80 + help + Host will throttle incoming data if the slave datapath Rx load goes beyond this threshold + 0 value will disable this function + + config ESP_HOSTED_PRIV_WIFI_TX_UART_HIGH_THRESHOLD + depends on ESP_HOSTED_HOST_TO_ESP_WIFI_DATA_THROTTLE && ESP_HOSTED_UART_HOST_INTERFACE + int "High threshold to report host to drop data when wifi highly loaded" + range 0 100 + default 80 + help + Host will throttle incoming data if the slave datapath Rx load goes beyond this threshold + 0 value will disable this function + + config ESP_HOSTED_TO_WIFI_DATA_THROTTLE_HIGH_THRESHOLD + depends on ESP_HOSTED_HOST_TO_ESP_WIFI_DATA_THROTTLE + int + default ESP_HOSTED_PRIV_WIFI_TX_SPI_HIGH_THRESHOLD if ESP_HOSTED_SPI_HOST_INTERFACE + default ESP_HOSTED_PRIV_WIFI_TX_SDIO_HIGH_THRESHOLD if ESP_HOSTED_SDIO_HOST_INTERFACE + default ESP_HOSTED_PRIV_WIFI_TX_SPI_HD_HIGH_THRESHOLD if ESP_HOSTED_SPI_HD_HOST_INTERFACE + default ESP_HOSTED_PRIV_WIFI_TX_UART_HIGH_THRESHOLD if ESP_HOSTED_UART_HOST_INTERFACE + + config ESP_HOSTED_TO_WIFI_DATA_THROTTLE_LOW_THRESHOLD + depends on ESP_HOSTED_HOST_TO_ESP_WIFI_DATA_THROTTLE + int "Low threshold to report host to stop dropping data" + range 0 ESP_HOSTED_TO_WIFI_DATA_THROTTLE_HIGH_THRESHOLD + default 60 + help + Once the Wi-Fi is no more stressed, data throttling would be stopped, once slave Wi-Fi load + is lower than this threshold + endmenu + + config ESP_HOSTED_ENABLE_PEER_DATA_TRANSFER + bool "Enable peer data transfer (custom RPC)" + default y + help + Enable peer data transfer to send/receive raw bytes between host and coprocessor. + This is enabled by default. Disable only if you don't need this feature. + + config ESP_HOSTED_MAX_CUSTOM_MSG_HANDLERS + int "Maximum number of custom message handlers" + depends on ESP_HOSTED_ENABLE_PEER_DATA_TRANSFER + range 1 32 + default 3 + help + Maximum number of concurrent custom message handlers that can be registered. + Each handler consumes ~12 bytes of RAM. Reduce this value to save memory + if you dont need many concurrent message types. + + config ESP_HOSTED_DECODE_WIFI_RESERVED_FIELD + depends on ESP_HOSTED_PRIV_ENABLE_WIFI_OPTIONS + bool "Copy Wi-Fi configuration reserved field values" + default n + help + ESP-IDF Wi-Fi structures contain reserved bitmask values. + Enable this option if you want to copy these values between host and co-processor. + It is usually safe to ignore these reserved values. + + config ESP_HOSTED_NETWORK_SPLIT_ENABLED + depends on ESP_HOSTED_PRIV_ENABLE_WIFI_OPTIONS + bool "Enable Network Split: Shared IP address between host and slave" + default n + help + Enables the LWIP stack on the slave to process its own set of ports, + alongside the host stack. Helps split network traffic and allows + background tasks on the slave, even when the host is in low-power mode. + + menu "LWIP port config" + depends on ESP_HOSTED_NETWORK_SPLIT_ENABLED + + menu "Host side (remote) LWIP port config" + config LWIP_TCP_LOCAL_PORT_RANGE_START + int "Host TCP start port" + default 49152 + help + Host side TCP start port. Slave defaults to 61440 + Slave range: 61440-65535 + Host range: 49152-61439 + + config LWIP_TCP_LOCAL_PORT_RANGE_END + int "Host TCP end port" + default 61439 + help + Host side TCP end port. Slave defaults to 65535 + Slave range: 61440-65535 + Host range: 49152-61439 + + config LWIP_UDP_LOCAL_PORT_RANGE_START + int "Host UDP start port" + default 49152 + help + Host side UDP start port. Slave defaults to 61440 + Slave range: 61440-65535 + Host range: 49152-61439 + + config LWIP_UDP_LOCAL_PORT_RANGE_END + int "Host UDP end port" + default 61439 + help + Host side UDP end port. Slave defaults to 65535 + Slave range: 61440-65535 + Host range: 49152-61439 + endmenu + + menu "Slave side (remote) LWIP port config" + config LWIP_TCP_REMOTE_PORT_RANGE_START + int "Slave TCP start port" + default 61440 + help + Slave side TCP start port. Host defaults to 49152 + Slave range: 61440-65535 + Host range: 49152-61439 + + config LWIP_TCP_REMOTE_PORT_RANGE_END + int "Slave TCP end port" + default 65535 + help + Slave side TCP end port. Host defaults to 61439 + Slave range: 61440-65535 + Host range: 49152-61439 + + config LWIP_UDP_REMOTE_PORT_RANGE_START + int "Slave UDP start port" + default 61440 + help + Slave side UDP start port. Host defaults to 49152 + Slave range: 61440-65535 + Host range: 49152-61439 + + config LWIP_UDP_REMOTE_PORT_RANGE_END + int "Slave UDP end port" + default 65535 + help + Slave side UDP end port. Host defaults to 61439 + Slave range: 61440-65535 + Host range: 49152-61439 + endmenu + + endmenu + + config ESP_HOSTED_HOST_POWER_SAVE_ENABLED + bool "Allow host to power save" + depends on SOC_LIGHT_SLEEP_SUPPORTED || (SOC_DEEP_SLEEP_SUPPORTED && SOC_GPIO_SUPPORT_DEEPSLEEP_WAKEUP) + default n + + config ESP_HOSTED_HOST_DEEP_SLEEP_ALLOWED + bool "Allow host to enter deep sleep. Slave will wakeup host using GPIO" + depends on ESP_HOSTED_HOST_POWER_SAVE_ENABLED && SOC_DEEP_SLEEP_SUPPORTED && (SOC_GPIO_SUPPORT_DEEPSLEEP_WAKEUP || SOC_GPIO_SUPPORT_HP_PERIPH_PD_SLEEP_WAKEUP) + default y + help + Allow host to deep sleep for highest power saving. Only RTC memory and RTC GPIOs remain + powered during deep sleep. Slave will wake up host using a GPIO when needed. Host must + configure a valid RTC GPIO for wakeup. Deep sleep provides maximum power savings but has + longer wakeup time compared to light sleep. + + + menu "Host Power Save Configuration" + depends on ESP_HOSTED_HOST_DEEP_SLEEP_ALLOWED + + config ESP_HOSTED_HOST_WAKEUP_GPIO_RANGE_MIN + int + default 6 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && !ESP_HOSTED_SPI_HD_HOST_INTERFACE + default 4 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_SPI_HD_HOST_INTERFACE + default 6 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD && !ESP_HOSTED_SPI_HD_HOST_INTERFACE + default 4 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_SPI_HD_HOST_INTERFACE + default 2 if ESP_HOSTED_P4_C5_CORE_BOARD + default -1 if IDF_TARGET_ESP32P4 + default -1 + + config ESP_HOSTED_HOST_WAKEUP_GPIO_RANGE_MAX + int + default 6 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && !ESP_HOSTED_SPI_HD_HOST_INTERFACE + default 4 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_SPI_HD_HOST_INTERFACE + default 6 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD && !ESP_HOSTED_SPI_HD_HOST_INTERFACE + default 4 if ESP_HOSTED_P4X_C5_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_SPI_HD_HOST_INTERFACE + default 2 if ESP_HOSTED_P4_C5_CORE_BOARD + default 15 if IDF_TARGET_ESP32P4 + default 100 + + config ESP_HOSTED_HOST_WAKEUP_GPIO + int "Host in: Host Wakeup GPIO" + default 5 if C2_C5_MODULE_SUB_BOARD + default 6 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && !ESP_HOSTED_SPI_HD_HOST_INTERFACE + default 4 if ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD && ESP_HOSTED_SPI_HD_HOST_INTERFACE + default -1 if (ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD || ESP32P4_EYE_C6_BOARD) + default 6 if IDF_TARGET_ESP32P4 && ESP_HOSTED_CP_TARGET_ESP32C5 && !ESP_HOSTED_P4_C5_CORE_BOARD + default 6 if IDF_TARGET_ESP32P4 && !ESP_HOSTED_CP_TARGET_ESP32C6 && !ESP_HOSTED_CP_TARGET_ESP32C5 && !ESP_HOSTED_CP_TARGET_ESP32C61 + default 1 if IDF_TARGET_ESP32C3 + default 2 if ESP_HOSTED_P4_C5_CORE_BOARD + default -1 if (ESP_HOSTED_P4_DEV_BOARD_NONE || ESP_HOSTED_P4_C6_CORE_BOARD || ESP_HOSTED_P4_C61_CORE_BOARD) + range ESP_HOSTED_HOST_WAKEUP_GPIO_RANGE_MIN ESP_HOSTED_HOST_WAKEUP_GPIO_RANGE_MAX + help + GPIO number to use for host wakeup from sleep. + Set to -1 to disable GPIO wakeup. + Only RTC GPIOs are supported for deep-sleep-wakeup. + + choice PRIV_HOST_WAKEUP_GPIO_LEVEL + bool "Host Wakeup GPIO Level" + default PRIV_HOST_WAKEUP_GPIO_LEVEL_HIGH + + config PRIV_HOST_WAKEUP_GPIO_LEVEL_HIGH + bool "High" + config PRIV_HOST_WAKEUP_GPIO_LEVEL_LOW + bool "Low" + endchoice + + config ESP_HOSTED_HOST_WAKEUP_GPIO_LEVEL + int + default 1 if PRIV_HOST_WAKEUP_GPIO_LEVEL_HIGH + default 0 if PRIV_HOST_WAKEUP_GPIO_LEVEL_LOW + help + GPIO level to use for host wakeup from sleep. + Set to 0 to use low level, set to 1 to use high level. + + endmenu + + # Config Validation + if ESP_HOSTED_HOST_DEEP_SLEEP_ALLOWED + if !ESP_HOSTED_SDIO_HOST_INTERFACE && ESP_HOSTED_SLAVE_RESET_ONLY_IF_NECESSARY + comment "Error: Invalid configuration. Slave reset is mandatory for non SDIO transports" + endif + + if ESP_HOSTED_HOST_WAKEUP_GPIO = -1 + comment "Error: Host wake-up GPIO is mandatory" + endif + + if ESP_HOSTED_SLAVE_RESET_ONLY_IF_NECESSARY && !ESP_HOSTED_HOST_RESTART_NO_COMMUNICATION_WITH_SLAVE + comment "Recommended to set up 'auto-restart of host' if communication with slave fails" + endif + endif + +endmenu diff --git a/firmware/components/esp_hosted/LICENSE b/firmware/components/esp_hosted/LICENSE new file mode 100644 index 0000000..d645695 --- /dev/null +++ b/firmware/components/esp_hosted/LICENSE @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/firmware/components/esp_hosted/README.md b/firmware/components/esp_hosted/README.md new file mode 100644 index 0000000..d2bfb15 --- /dev/null +++ b/firmware/components/esp_hosted/README.md @@ -0,0 +1,285 @@ +# ESP-Hosted-MCU: Espressif SoCs as Communication Co-Processors + +[![Component Registry](https://components.espressif.com/components/espressif/esp_hosted/badge.svg)](https://components.espressif.com/components/espressif/esp_hosted) + +## 1 Introduction + +ESP-Hosted-MCU is an open-source solution that allows you to use Espressif Chipsets and modules as a communication co-processor. This solution provides wireless connectivity (Wi-Fi and Bluetooth) to the host microprocessor or microcontroller, enabling it to communicate with other devices. Additionally, the user has complete control over the co-processor's resources. + +This high-level block diagram shows ESP-Hosted's relationship with the host MCU and slave co-processor. + +ESP-Hosted + +For detailed design diagrams in Wi-Fi and Bluetooth, refer to the following design documents: + +- [WiFi Design](https://github.com/espressif/esp-hosted-mcu/blob/main/docs/wifi_design.md) +- [Bluetooth Design](https://github.com/espressif/esp-hosted-mcu/blob/main/docs/bluetooth_design.md) + +`esp-hosted-mcu` is dedicated for any host as MCU support. If you are interested in Linux as host, please refer to the [`esp-hosted`](https://github.com/espressif/esp-hosted) repository. + +## 2 Architecture + +##### Hosted Co-Processor +This is an ESP chip that provides Wi-Fi, Bluetooth, and other capabilities. It is also referred as `hosted-slave` interchangeably. + +##### Host MCU +This can be any generic microcontroller (MCU). We demonstrate any ESP as host. Using port layer, any host can act as host MCU. + +##### Communication +- Host extends the capabilities of the Hosted co-processor through Remote Procedure Calls (RPCs). The Host MCU sends these RPC commands to the Hosted co-processor using a reliable communication bus, like SPI, SDIO, or UART. The Hosted co-processor then handles the RPC and provides the requested functionality to the Host MCU. +- The data (network or Bluetooth) is packaged efficiently at the transport layer to minimize overhead and delays when passing between the Host and co-processor. +- This modular design allows any MCU to be used as the Host, and any ESP chip with Wi-Fi and/or Bluetooth to be used as the Hosted co-processor. The RPC calls can also be extended to provide any function required by the Host, as long as the co-processor can support it. +- The RPCs implemented are [listed in this document](https://github.com/espressif/esp-hosted-mcu/blob/main/docs/implemented_rpcs.md), including the ESP-Hosted release version that implements the RPCs. + +## 3 Solution Flexibility + +- **Any MCU can be the host** + - You can evaluate ESP as an example host and then port ESP-Hosted to your desired MCU. +- **Any ESP chip can be the co-processor** + - Any Wi-Fi and/or Bluetooth capable ESP chipset can be chosen as co-processor + - Choose the co-processor device based on your product requirements. The [ESP Product Selector](https://www.espressif.com/en/products/socs) can help in this. +- **Flexible transport layer (SDIO, SPI, UART)** + - ESP-Hosted supports various communication interfaces between the host and the co-processor, allowing you to choose the most suitable one for your application. + - Any other new transport also could be added to the open source code +- **Complete control over co-processor's resources** + - The user is not limited to just using the co-processor for wireless connectivity. They have complete control over the co-processor's resources, allowing for a more flexible and powerful system. +- **Extensible RPC library** + - The Remote Procedure Call (RPC) used by ESP-Hosted can be extended to provide any function required by the Host, as long as the co-processor can support it. Currently, the essential [ESP-IDF](https://github.com/espressif/esp-idf) Wi-Fi functions have been implemented. + +## 3.1 Features Supported by ESP-Hosted + +See the [Features](https://github.com/espressif/esp-hosted-mcu/blob/main/docs/features.md) document for features currently supported by ESP-Hosted. + +## 4 Quick Demo with ESP32-P4-Function-EV-Board + +Impatient to test? We've got you covered! +The [ESP32-P4-Function-EV-Board](https://www.espressif.com/en/products/socs/esp32-p4) can be used as a host MCU with an on-board [ESP32-C6](https://www.espressif.com/en/products/socs/esp32-c6) as co-processor, already connected via SDIO as transport. +Prerequisite: You need to have an ESP32-P4-Function-EV-Board` + +> [!NOTE] +> If you have already set up ESP-IDF (version 5.3 or later), you can skip to [5 Source Code and Dependencies](#5-source-code-and-dependencies). + +### 4.1 Set-Up ESP-IDF + +- Windows + - Install and setup ESP-IDF on Windows as documented in the [Standard Setup of Toolchain for Windows](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/get-started/windows-setup.html). + - Use the ESP-IDF [Powershell Command Prompt](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/get-started/windows-setup.html#using-the-command-prompt) to move to expected + +- Linux or MacOS + - bash +```bash +bash docs/setup_esp_idf__latest_stable__linux_macos.sh +``` + - fish +```fish +fish docs/setup_esp_idf__latest_stable__linux_macos.fish +``` + +### 4.2 Set-Up P4 with C6 +The host, ESP32-P4, lacks native Wi-Fi/Bluetooth support. Our [Quick Demo](docs/esp32_p4_function_ev_board.md) will help you run iperf over P4--SDIO--C6. + +### 4.3 Don't Have ESP32-P4-Function-EV-Board? + +No worries if you don't have an ESP32-P4. In fact, most users don't. You can choose and use any two ESP chipsets/SoCs/Modules/DevKits. DevKits are convenient to use as they have GPIO headers already in place. From these two ESP chipsets, one would act as host and another as slave/co-processor. However, as these are not connected directly, you would need to manually connect some transport, which is explained later in the section [`Detailed Setup`](#7-detailed-setup). + +## 5 Source Code and Dependencies + +### 5.1 ESP-Hosted-MCU Source Code + +- ESP-Hosted-MCU code can be found at Espressif Registry Component [`esp_hosted` (ESP-Hosted)](https://components.espressif.com/components/espressif/esp_hosted) or GitHub repo at [`esp-hosted-mcu`](https://github.com/espressif/esp-hosted-mcu/) + +- ESP-Hosted repo clone is **not** required if you have ESP as host. + - Reason: [ESP component manager](https://docs.espressif.com/projects/esp-idf/en/stable/esp32/api-guides/tools/idf-component-manager.html) automatically clones esp-hosted component while building. +- However, For non-ESP host development, you can clone the repo using command: +```bash +git clone --recurse-submodules --depth 1 https://github.com/espressif/esp-hosted-mcu.git +``` + +### 5.2 Dependencies + +ESP-Hosted-MCU Solution is dependent on `ESP-IDF`, `esp_wifi_remote` and `protobuf-c` + +###### ESP-IDF + - [`ESP-IDF`](https://github.com/espressif/esp-idf) is the development framework for Espressif SoCs supported on Windows, Linux and macOS + - ESP-Hosted-MCU solution is based on ESP-IDF as base software. ESP chipsets as host and slave always tried to design such a way that ESP-IDF components are reused. + - Although, We totally understand, host MCUs in case of non-ESP chipset may not desire to be dependent on ESP-IDF. The port layer is written to avoid suc dependencies. Some crucial ESP-IDF components could also be just copy-pasted to fast-track the non-ESP host development. + +###### Wi-Fi Remote + - [`esp_wifi_remote`](https://components.espressif.com/components/espressif/esp_wifi_remote) i.e. 'Wi-Fi Remote' is very thin interface made up of ESP-IDF Wi-Fi APIs with empty weak definitions. Real definitions for these APIs are provided by ESP-Hosted-MCU + - Wi-Fi Remote Code can be found at either [GitHub Repo](https://github.com/espressif/esp-wifi-remote/) or [Espressif Registry Component](https://components.espressif.com/components/espressif/esp_wifi_remote) + +###### Protobuf + - [`protobuf-c`](https://github.com/protobuf-c/protobuf-c) is data serialization framework provided by Google. RPC messages communicated in host and slave are protobuf encoded. + - It helps to avoid manual serialization or endian-ness conversion. + - Provides Flexibility for users to port the ESP-Hosted-MCU RPC framework in any protobuf supported programming language + - Code is checked-out as submodule at `common/protobuf-c` + +##### 5.2.1 How Dependencies Work Together (short explanation) +- RPC Request - Response + - Wi-Fi Remote is an API layer or interface that provides the standard ESP-IDF Wi-Fi calls to the application (`esp_wifi_init()`, etc.) + - Wi-Fi Remote forwards the Wi-Fi calls to ESP-Hosted, as ESP-Hosted 'implements' the APIs provided by Wi-Fi Remote interface. + - ESP-Hosted host MCU creates RPC requests which are protobuf encoded and sends over the transport (SPI/SDIO etc) to the slave. + - Slave de-serialize the protobuf RPC request and response send back to host over transport, again with protobuf serialised. + - Responses received at transport returned to Wi-Fi Remote, which returns the responses to the calling app at host + - To the app, it is as if it made a standard ESP-IDF Wi-Fi API call. +- RPC Event + - Asynchronous Wi-Fi events when subscribed, are sent by slave to host. + - These events terminate in standard ESP-IDF event loop on the host +- Please note, Only RPC i.e. control packets are serialised. Data Packets are never serialised as they do not need endian conversion. + +## 6 Decide the communication bus in between host and slave + +The communication bus is required to be setup correctly between host and slave. +We refer this as `transport medium` or simply `transport`. + +ESP-Hosted-MCU supports SPI/SDIO/UART transports. User can choose which transport to use. Choosing specific transport depends on factors: high performance, easy and quick to test, number of GPIOs used, or simply co-processor preference + +Below is chart for the transport medium comparison. + +Legends: + +- `FD` : Full duplex communication +- `HD` : Half duplex communication +- `BT` : Bluetooth +- `+2` in column `Num of GPIOs` + - There are two GPIOs additional applicable for all the transports + - (1) Co-Processor reset: Host needs one additional pin to connect to `RST`/`EN` pin of co-processor, to reset on boot-up + - (2) Ground: Grounds of both chipsets need to be connected. + - If you use jumper cable connections, connect as many grounds as possible in between two boards for better noise cancellation. +- `Any_Slave` + - Co-processor supported: ESP32, ESP32-C2, ESP32-C3, ESP32-C5, ESP32-C6, ESP32-S2, ESP32-S3 + - Classic ESP32 supports 'Classic BT', 'BLE 4.2' & 'BTDM' + - Rest all chipsets support BLE only. BLE version supported is 5.0+. Exact bluetooth versions could be referred from [ESP Product Selector Page](https://products.espressif.com/#/product-selector) +- `Dedicated platforms` + - Bluetooth uses dedicated platform, UART and Wi-Fi uses any other base transport + - In other platforms, Bluetooth and Wi-Fi reuse same platform and hence use less GPIOs and less complicated + - This transport combination allows Bluetooth to use dedicated uart transportt with additional 2 or 4 depending on hardware flow control. +- TBD : To be determined +- iperf : iperf2 with test results in Mbits/sec + +> [!NOTE] +> For the shield box readings marked with (S), full network set up explained in [Shield Box Test Setup](shield-box-test-setup.md) + +**Host can be any ESP chipset or any non-ESP MCU.** + +###### Hosted Transports table +| Transport | Type | Num of GPIOs | Setup with | Co-processor supported | Host Tx iperf | Host Rx iperf | Remarks | +|:---------------:|:-----:|:------------:|:----------------:|:--------------:|:------------:|:-----------:|:--------------------------:| +| Standard SPI | FD | 6 | jumper or PCB | Any_Slave | udp: 24 tcp: 22 | udp: 25 tcp: 22| Simplest solution for quick test | +| 1-bit SPI | HD | 4 | jumper or PCB | Any_Slave [1] | udp: 22 tcp: 19 (O) | udp: 20 tcp: 17 (O) | 1-bit, half duplex | +| Dual SPI | HD | 5 | jumper or PCB | Any_Slave [1] | udp: 32 tcp: 26 (O) | udp: 33 tcp: 25 (O) | Better throughput, but half duplex | +| Quad SPI | HD | 7 | PCB only | Any_Slave [1] | udp: 41 tcp: 29 (O) | udp: 42 tcp: 28 (O) | Due to signal integrity, PCB is mandatory | +| SDIO 1-Bit | HD | 4 | jumper or PCB | ESP32, ESP32-C6, ESP32-C5, ESP32-C61 | TBD | TBD | Stepping stone for PCB based SDIO 4-bit | +| SDIO 4-Bit | HD | 6 | PCB only | ESP32, ESP32-C6, ESP32-C5, ESP32-C61 [3] | udp: 79.5 tcp: 53.4 (S) | udp: 68.1 tcp: 44 (S) | Highest performance | +| Only BT over UART | FD | 2 or 4 | jumper or PCB | Any_Slave | NA | NA | Dedicated Bluetooth over UART pins | +| UART | FD | 2 | jumper or PCB | Any_Slave | udp: 0.68 tcp: 0.67 (O) | udp: 0.68 tcp: 0.60 (O) | UART dedicated for BT & Wi-Fi [2] | +| Dedicated platforms | FD | Extra 2 or 4 | jumper or PCB | Any_Slave | NA | NA | UART dedicated for BT & Wi-Fi on any other transport | + +> [!NOTE] +> - [1] 1-bit/Dual/Quad SPI is not supported on ESP32 +> - [2] UART is suitable only for low throughput environments. Throughput was obtained with a baud rate of 921600. On the ESP32-P4 + C6 development board, a baud rate of 4 Mbits/s can be achieved, giving TCP/UDP throughput of around 3.3 MBits/s. +> - [3] SDIO 4-Bit performance figures are measured with ESP32-C6 in shield box with 40MHz bandwidth +> - (S) Shield box measurements +> - (O) Over-the-air measurements +> - FD Full duplex interface +> - HD Half duplex interface + +With jumper cables, 'Standard SPI' and 'Dual SPI' solutions are easiest to evaluate, without much of hardware dependencies. SDIO 1-Bit can be tested with jumper cables, but it needs some additional hardware config, such as installation of external pull-up registers. + +In case case of dedicated platforms, Bluetooth uses standard HCI over UART. In rest of cases, Bluetooth and Wi-Fi uses same transport and hence less GPIOs and less complicated. In shared mode, bluetooth runs as Hosted HCI (multiplexed mode) + +## 7 ESP-Hosted-MCU Header + +### 7.1 ESP Hosted header + +Host and slave always populate below header at the start of every frame, irrespective of actual or dummy data in payload. + +| Field | Type | Bits | Mandatory? | Description | +|-----------------------------------|----------|--------|------------|------------------------------------------------------------| +| if_type | uint8_t | 4 | M | Interface type | +| if_num | uint8_t | 4 | M | Interface number | +| flags | uint8_t | 8 | M | Flags for additional information | +| len | uint16_t | 16 | M | Length of the payload | +| offset | uint16_t | 16 | M | Offset for the payload | +| checksum | uint16_t | 16 | M | Checksum for error detection (0 if checksum disabled) | +| seq_num | uint16_t | 16 | O | Sequence number for tracking packets (Useful in debugging) | +| throttle_cmd | uint8_t | 0 or 2 | O | Flow control command | +| reserved2 | uint8_t | 6 or 8 | M | Reserved bits | +| reserved3 | uint8_t | 8 | M | Reserved byte (union field) | +| hci\_pkt\_type or priv\_pkt\_type | uint8_t | 8 | M | Packet type for HCI interface (union field) | + +### 7.2 Interface Types + +Start of header states which type of frame is being carried. + +| Interface Type | Value | Description | +|------------------|-------|----------------------------------------------| +| ESP\_INVALID\_IF | 0 | Invalid interface | +| ESP\_STA\_IF | 1 | Station frame | +| ESP\_AP\_IF | 2 | SoftAP frame | +| ESP\_SERIAL\_IF | 3 | Control frame | +| ESP\_HCI\_IF | 4 | Bluetooth Hosted HCI frame | +| ESP\_PRIV\_IF | 5 | Private communication between slave and host | +| ESP\_TEST\_IF | 6 | Transport throughput test | +| ESP\_ETH\_IF | 7 | Invalid | +| ESP\_MAX\_IF | 8 | type mentioned in dummy or empty frame | + +## 8 Detailed Setup + +Once you decided the transport to use, this section should guide how to set this transport, with hardware connections, configurations and verification. Users can evaluate one transport first and then move to other. + +> [!IMPORTANT] +> [Design Considerations](https://github.com/espressif/esp-hosted-mcu/blob/main/docs/design_consideration.md) that could be referred to, before you stick to any transport option. Referring to these consideration would help to get you faster to solution, make your design stable and less error-prone. + + +Irrespective of transport chosen, following steps are needed, which are step-wise explained in each transport. + +1. Set-up the hosted-transport +2. Slave Flashing + - Slave project creation + - Slave configuration + - Slave flashing + - Slave logs +3. Host flashing + - Host project integration with ESP-IDF example + - Host configuration + - Host flashing + - Host logs + +- [**Standard SPI (Full duplex)**](https://github.com/espressif/esp-hosted-mcu/blob/main/docs/spi_full_duplex.md) + +- [**SPI - Dual / Quad Half Duplex**](https://github.com/espressif/esp-hosted-mcu/blob/main/docs/spi_half_duplex.md) + +- [**SDIO (1-Bit / 4-Bit)**](https://github.com/espressif/esp-hosted-mcu/blob/main/docs/sdio.md) + +- [**UART for Wi-Fi and Bluetooth**](https://github.com/espressif/esp-hosted-mcu/blob/main/docs/uart.md) + +## 9 Examples +Check [examples](https://github.com/espressif/esp-hosted-mcu/tree/main/examples) directory for sample applications using ESP-Hosted. + - `examples/host_bluedroid_ble_compatibility_test` + - host BlueDroid Bluetooth example to test the Bluetooth compatibility and mobile phones + - `examples/host_bluedroid_bt_hid_mouse_device` + - host BlueDroid Bluetooth example to show how to implement a Bluetooth HID device using the APIs provided by Classic Bluetooth HID profile + - `examples/host_bluedroid_host_only` + - host BlueDroid Bluetooth example Bluetooth Host using ESP-Hosted as HCI IO to the BT Controller + - `examples/host_nimble_bleprph_host_only_vhci` + - host NimBLE Bluetooth example without needing extra GPIOs for HCI transport + +## 10 Troubleshooting + +If you encounter issues with using ESP-Hosted, see the following guide: + +- [Troubleshooting Guide](https://github.com/espressif/esp-hosted-mcu/blob/main/docs/troubleshooting.md) +- [Migration Guide](https://github.com/espressif/esp-hosted-mcu/blob/main/docs/migration_guide.md) +- if you are upgrading to ESP-Hosted version V2.5.2 (or later) from an earlier version, there has been a change in the operation of the Bluetooth Controller on the co-processor. See [Migrating to V2.5.2](https://github.com/espressif/esp-hosted-mcu/blob/main/docs/migration_guide.md#migrating-to-v252) in the Migration Guide for more information. + +## 11 References + +- [ESP Product Selector Page](https://products.espressif.com) +- [ESP-IDF Get Started Guide](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/get-started) +- [ESP-IDF Wi-Fi API](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-reference/network/esp_wifi.html) +- [ESP-IDF Iperf Example](https://github.com/espressif/esp-idf/tree/master/examples/wifi/iperf) +- [ESP-IDF NimBLE](https://github.com/espressif/esp-nimble) +- [ESP Component Registry](https://components.espressif.com) +- [Registry Component: esp\_wifi\_remote](https://components.espressif.com/components/espressif/esp_wifi_remote) +- [Registry Component: esp\_hosted](https://components.espressif.com/components/espressif/esp_hosted) diff --git a/firmware/components/esp_hosted/common/esp_hosted_header.h b/firmware/components/esp_hosted/common/esp_hosted_header.h new file mode 100644 index 0000000..e9a846b --- /dev/null +++ b/firmware/components/esp_hosted/common/esp_hosted_header.h @@ -0,0 +1,44 @@ +/* + * SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD + * + * SPDX-License-Identifier: Apache-2.0 + */ + +#ifndef __ESP_HOSTED_HEADER__H +#define __ESP_HOSTED_HEADER__H + +/* Add packet number to debug any drops or out-of-seq packets */ +//#define ESP_PKT_NUM_DEBUG 1 + +struct esp_payload_header { + uint8_t if_type:4; + uint8_t if_num:4; + uint8_t flags; + uint16_t len; + uint16_t offset; + uint16_t checksum; + uint16_t seq_num; + uint8_t throttle_cmd:2; + uint8_t reserved2:6; +#ifdef ESP_PKT_NUM_DEBUG + uint16_t pkt_num; +#endif + /* Position of union field has to always be last, + * this is required for hci_pkt_type */ + union { + uint8_t reserved3; + uint8_t hci_pkt_type; /* Packet type for HCI interface */ + uint8_t priv_pkt_type; /* Packet type for priv interface */ + }; + /* Do no add anything here */ +} __attribute__((packed)); + +/* ESP Payload Header Flags */ +#define MORE_FRAGMENT (1 << 0) +#define FLAG_WAKEUP_PKT (1 << 1) +#define FLAG_POWER_SAVE_STARTED (1 << 2) +#define FLAG_POWER_SAVE_STOPPED (1 << 3) + +#define H_ESP_PAYLOAD_HEADER_OFFSET sizeof(struct esp_payload_header) + +#endif diff --git a/firmware/components/esp_hosted/common/esp_hosted_interface.h b/firmware/components/esp_hosted/common/esp_hosted_interface.h new file mode 100644 index 0000000..68e0fd8 --- /dev/null +++ b/firmware/components/esp_hosted/common/esp_hosted_interface.h @@ -0,0 +1,30 @@ +/* + * SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD +* +* SPDX-License-Identifier: Apache-2.0 +*/ + +#ifndef __ESP_HOSTED_INTERFACE_H__ +#define __ESP_HOSTED_INTERFACE_H__ + +#ifdef __cplusplus +extern "C" { +#endif + +typedef enum { + ESP_INVALID_IF, + ESP_STA_IF, + ESP_AP_IF, + ESP_SERIAL_IF, + ESP_HCI_IF, + ESP_PRIV_IF, + ESP_TEST_IF, + ESP_ETH_IF, + ESP_MAX_IF, +} esp_hosted_if_type_t; + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/firmware/components/esp_hosted/common/esp_hosted_lwip_src_port_hook.h b/firmware/components/esp_hosted/common/esp_hosted_lwip_src_port_hook.h new file mode 100644 index 0000000..c4dcd82 --- /dev/null +++ b/firmware/components/esp_hosted/common/esp_hosted_lwip_src_port_hook.h @@ -0,0 +1,73 @@ +/* + * SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD + * + * SPDX-License-Identifier: Unlicense OR CC0-1.0 + */ + + +#ifndef __ESP_HOSTED_LWIP_SRC_PORT_HOOK_H__ +#define __ESP_HOSTED_LWIP_SRC_PORT_HOOK_H__ + +#include "sdkconfig.h" + +#if defined(CONFIG_ESP_HOSTED_NETWORK_SPLIT_ENABLED) +#include "lwip/opt.h" +/* ----------------------------------Slave (local) Port Config---------------------------------------- */ +/* If configured, Any new UDP socket would automatically bind as local port within this specified UDP port range. + * Please note, Reserved ports (generally <1024) like DHCP, etc would still work as they generally are hardcoded + */ + +#define ENSURE_PORT_RANGE(port, START, END) \ + (((port) >= (START) && (port) <= (END)) ? \ + (port) : \ + (((port) % ((END) - (START) + 1)) + (START))) + +#ifdef CONFIG_LWIP_TCP_LOCAL_PORT_RANGE_START +#define TCP_LOCAL_PORT_RANGE_START CONFIG_LWIP_TCP_LOCAL_PORT_RANGE_START +#define TCP_LOCAL_PORT_RANGE_END CONFIG_LWIP_TCP_LOCAL_PORT_RANGE_END +#define TCP_ENSURE_LOCAL_PORT_RANGE(port) ENSURE_PORT_RANGE(port, TCP_LOCAL_PORT_RANGE_START, TCP_LOCAL_PORT_RANGE_END) +#if CONFIG_LWIP_TCP_LOCAL_PORT_RANGE_END == 0xffff + #define IS_LOCAL_TCP_PORT(port) (port>=TCP_LOCAL_PORT_RANGE_START) +#else + #define IS_LOCAL_TCP_PORT(port) (port>=TCP_LOCAL_PORT_RANGE_START && (port<=CONFIG_LWIP_TCP_LOCAL_PORT_RANGE_END)) +#endif +#endif + +#ifdef CONFIG_LWIP_TCP_REMOTE_PORT_RANGE_START +#define TCP_REMOTE_PORT_RANGE_START CONFIG_LWIP_TCP_REMOTE_PORT_RANGE_START +#define TCP_REMOTE_PORT_RANGE_END CONFIG_LWIP_TCP_REMOTE_PORT_RANGE_END +#define TCP_ENSURE_REMOTE_PORT_RANGE(port) ENSURE_PORT_RANGE(port, TCP_REMOTE_PORT_RANGE_START, TCP_REMOTE_PORT_RANGE_END) +#if CONFIG_LWIP_TCP_REMOTE_PORT_RANGE_END == 0xffff + #define IS_REMOTE_TCP_PORT(port) (port>=TCP_REMOTE_PORT_RANGE_START) +#else + #define IS_REMOTE_TCP_PORT(port) (port>=TCP_REMOTE_PORT_RANGE_START && (port<=CONFIG_LWIP_TCP_REMOTE_PORT_RANGE_END)) +#endif +#endif + +#ifdef CONFIG_LWIP_UDP_LOCAL_PORT_RANGE_START +#define UDP_LOCAL_PORT_RANGE_START CONFIG_LWIP_UDP_LOCAL_PORT_RANGE_START +#define UDP_LOCAL_PORT_RANGE_END CONFIG_LWIP_UDP_LOCAL_PORT_RANGE_END +#define UDP_ENSURE_LOCAL_PORT_RANGE(port) ENSURE_PORT_RANGE(port, UDP_LOCAL_PORT_RANGE_START, UDP_LOCAL_PORT_RANGE_END) + +#if CONFIG_LWIP_UDP_LOCAL_PORT_RANGE_END == 0xffff + #define IS_LOCAL_UDP_PORT(port) (port>=UDP_LOCAL_PORT_RANGE_START) +#else + #define IS_LOCAL_UDP_PORT(port) (port>=UDP_LOCAL_PORT_RANGE_START && (port<=CONFIG_LWIP_UDP_LOCAL_PORT_RANGE_END)) +#endif +#define DNS_PORT_ALLOWED(port) IS_LOCAL_UDP_PORT(port) +#endif + +#ifdef CONFIG_LWIP_UDP_REMOTE_PORT_RANGE_START +#define UDP_REMOTE_PORT_RANGE_START CONFIG_LWIP_UDP_REMOTE_PORT_RANGE_START +#define UDP_REMOTE_PORT_RANGE_END CONFIG_LWIP_UDP_REMOTE_PORT_RANGE_END +#define UDP_ENSURE_REMOTE_PORT_RANGE(port) ENSURE_PORT_RANGE(port, UDP_REMOTE_PORT_RANGE_START, UDP_REMOTE_PORT_RANGE_END) + +#if CONFIG_LWIP_UDP_REMOTE_PORT_RANGE_END == 0xffff + #define IS_REMOTE_UDP_PORT(port) (port>=UDP_REMOTE_PORT_RANGE_START) +#else + #define IS_REMOTE_UDP_PORT(port) (port>=UDP_REMOTE_PORT_RANGE_START && (port<=CONFIG_LWIP_UDP_REMOTE_PORT_RANGE_END)) +#endif +#endif + +#endif +#endif /* __ESP_HOSTED_LWIP_SOURCE_PORT_BINDING_HOOK_H__ */ diff --git a/firmware/components/esp_hosted/common/log/esp_hosted_log.h b/firmware/components/esp_hosted/common/log/esp_hosted_log.h new file mode 100644 index 0000000..a11d294 --- /dev/null +++ b/firmware/components/esp_hosted/common/log/esp_hosted_log.h @@ -0,0 +1,27 @@ +/* + * SPDX-FileCopyrightText: 2015-2025 Espressif Systems (Shanghai) CO LTD + * + * SPDX-License-Identifier: Apache-2.0 + */ + +#ifndef __ESP_HOSTED_LOG_H +#define __ESP_HOSTED_LOG_H +#include "esp_log.h" + +#define ESP_PRIV_HEXDUMP(tag1, tag2, buff, buf_len, display_len, curr_level) \ + if ( LOG_LOCAL_LEVEL >= curr_level) { \ + int len_to_print = 0; \ + len_to_print = display_len +#include +#include +#include + +#include "sdkconfig.h" + +#define MEMPOOL_OK 0 +#define MEMPOOL_FAIL -1 + +#define MEMSET_REQUIRED 1 +#define MEMSET_NOT_REQUIRED 0 + +typedef struct hosted_mempool_t hosted_mempool_t; + +// memory capability requested by mempool +typedef enum { + HOSTED_MEM_CAP_NONE, // generic memory allocation + HOSTED_MEM_CAP_DMA, // memory allocated must be DMA capable + HOSTED_MEM_CAP_MAX +} hosted_mem_cap_t; + +typedef struct { + // pointer and size of preallocated memory to use. If NULL, mempool allocates internally + void *pre_allocated_mem; + size_t pre_allocated_mem_size; + + size_t num_blocks; + size_t block_size; + int alignment_in_bytes; + + // required functions to malloc, calloc, memset and free memory using capability based allocs + void * (*malloc)(size_t size, hosted_mem_cap_t cap); + void * (*calloc)(size_t num_elem, size_t size_elem, hosted_mem_cap_t cap); + void * (*memset)(void *s, int c, size_t n); + void (*free)(void *ptr); +} hosted_mempool_config_t; + +hosted_mempool_t * hosted_mempool_create(hosted_mempool_config_t * config); +void hosted_mempool_destroy(struct hosted_mempool_t *mempool); +void * hosted_mempool_alloc(struct hosted_mempool_t *mempool, + size_t nbytes, uint8_t need_memset); +int hosted_mempool_free(struct hosted_mempool_t *mempool, void *mem); + +#endif diff --git a/firmware/components/esp_hosted/common/mempool/mempool.c b/firmware/components/esp_hosted/common/mempool/mempool.c new file mode 100644 index 0000000..c550f23 --- /dev/null +++ b/firmware/components/esp_hosted/common/mempool/mempool.c @@ -0,0 +1,202 @@ +/* + * SPDX-FileCopyrightText: 2015-2026 Espressif Systems (Shanghai) CO LTD + * + * SPDX-License-Identifier: Apache-2.0 + */ + +#include "esp_log.h" +#include "sdkconfig.h" +#include "mempool.h" +#include "mempool_ll.h" + +static const char *TAG = "HS_MP"; + +#define MEMPOOL_NAME_STR_SIZE 32 + +#define IS_MEMPOOL_ALIGNED(VAL, BYTES) (!((VAL) & (BYTES - 1))) +#define MEMPOOL_ALIGNED(VAL, BYTES) ((VAL) + (BYTES) - \ + ((VAL) & (BYTES - 1))) + +typedef struct hosted_mempool_t { + struct os_mempool *pool; + uint8_t *heap; + uint8_t static_heap; + size_t num_blocks; + size_t block_size; + int alignment_bytes; + void * (*malloc)(size_t size, hosted_mem_cap_t cap); + void * (*calloc)(size_t num_elem, size_t size_elem, hosted_mem_cap_t cap); + void * (*memset)(void *s, int c, size_t n); + void (*free)(void *ptr); + struct mempool_ops_t *ops; +} hosted_mempool_t; + +#define MEMPOOL_FREE(freefn, x) do { \ + if (x) { \ + freefn(x); \ + } \ +} while (0); + +/* For Statically allocated memory, pass as pre_allocated_mem. + * If NULL passed, will allocate from heap + */ +hosted_mempool_t * hosted_mempool_create(hosted_mempool_config_t * config) +{ + if (!config || + !config->malloc || + !config->calloc || + !config->memset || + !config->free) { + ESP_LOGE(TAG, "NULL config, or required memory functions not provided"); + return NULL; + } + + struct hosted_mempool_t *new = NULL; + struct os_mempool *pool = NULL; + uint8_t *heap = NULL; + + new = (hosted_mempool_t *)config->calloc(1, sizeof(hosted_mempool_t), HOSTED_MEM_CAP_NONE); + if (!new) { + ESP_LOGE(TAG, "hosted mempool init failed: no mem"); + goto free_buffs; + } + new->ops = os_mempool_get_ops(); + if (!new->ops) { + ESP_LOGE(TAG, "hosted mempool init failed: no mempool ops"); + goto free_buffs; + } + + pool = (struct os_mempool *)config->calloc(1, sizeof(struct os_mempool), HOSTED_MEM_CAP_NONE); + if (!pool) { + ESP_LOGE(TAG, "pool init failed: no mem"); + goto free_buffs; + } + + if (!config->pre_allocated_mem) { + /* no pre-allocated mem, allocate new */ + heap = (uint8_t *)config->malloc(MEMPOOL_ALIGNED( + OS_MEMPOOL_BYTES(config->num_blocks, config->block_size), + config->alignment_in_bytes), + HOSTED_MEM_CAP_DMA); + if (!heap) { + ESP_LOGE(TAG, "mempool create failed: no mem\n"); + goto free_buffs; + } + } else { + /* preallocated memory for mem pool */ + if (config->pre_allocated_mem_size < OS_MEMPOOL_BYTES(config->num_blocks, + config->block_size)) { + ESP_LOGE(TAG, "mempool create failed: insufficient memory"); + goto free_buffs; + } + + if (!IS_MEMPOOL_ALIGNED((unsigned long)config->pre_allocated_mem, + config->alignment_in_bytes)) { + ESP_LOGE(TAG, "mempool create failed: mempool start addr unaligned"); + goto free_buffs; + } + heap = config->pre_allocated_mem; + } + + char str[MEMPOOL_NAME_STR_SIZE] = {0}; + snprintf(str, MEMPOOL_NAME_STR_SIZE, "hosted_%p", pool); + + if (new->ops->mempool_init(pool, config->num_blocks, config->block_size, heap, str)) { + ESP_LOGE(TAG, "mempool_init failed"); + goto free_buffs; + } + + new->heap = heap; + new->pool = pool; + new->num_blocks = config->num_blocks; + new->block_size = config->block_size; + + if (config->pre_allocated_mem) + new->static_heap = 1; + + // record the alignment + new->alignment_bytes = config->alignment_in_bytes; + + // save the memory functions + new->malloc = config->malloc; + new->calloc = config->calloc; + new->memset = config->memset; + new->free = config->free; + + return new; + +free_buffs: + MEMPOOL_FREE(config->free, new); + MEMPOOL_FREE(config->free, pool); + if (!config->pre_allocated_mem) + MEMPOOL_FREE(config->free, heap); + return NULL; +} + +void hosted_mempool_destroy(hosted_mempool_t *mempool) +{ + if (!mempool) + return; + +#if MEMPOOL_DEBUG + ESP_LOGI(MEM_TAG, "Destroy mempool %p num_blk[%lu] blk_size:[%lu]", mempool->pool, mempool->num_blocks, mempool->block_size); +#endif + + mempool->ops->mempool_unregister(mempool->pool); + MEMPOOL_FREE(mempool->free, mempool->pool); + + if (!mempool->static_heap) + MEMPOOL_FREE(mempool->free, mempool->heap); + + MEMPOOL_FREE(mempool->free, mempool); +} + +void * hosted_mempool_alloc(hosted_mempool_t *mempool, + size_t nbytes, uint8_t need_memset) +{ + if (!mempool) { + ESP_LOGE(TAG, "mempool %p is NULL", mempool); + return NULL; + } + + void *mem = NULL; + +#if MYNEWT_VAL(OS_MEMPOOL_CHECK) + assert(mempool->heap); + assert(mempool->pool); +#endif + + if(nbytes > mempool->block_size) { + ESP_LOGE(TAG, "Exp alloc bytes[%u] > mempool block size[%u]\n", + nbytes, mempool->block_size); + return NULL; + } + + mem = mempool->ops->memblock_get(mempool->pool); + if (mem && need_memset) + mempool->memset(mem, 0, nbytes); + + if (!mem) { + ESP_LOGE(TAG, "mempool %p alloc failed nbytes[%u]", mempool, nbytes); + } + return mem; +} + +int hosted_mempool_free(hosted_mempool_t *mempool, void *mem) +{ + if (!mem) { + return 0; + } + + if (!mempool) { + ESP_LOGE(TAG, "%s: mempool %p is NULL", __func__, mempool); + return MEMPOOL_FAIL; + } + +#if MYNEWT_VAL(OS_MEMPOOL_CHECK) + assert(mempool->heap); + assert(mempool->pool); +#endif + + return mempool->ops->memblock_put(mempool->pool, mem); +} diff --git a/firmware/components/esp_hosted/common/mempool/mempool_ll.c b/firmware/components/esp_hosted/common/mempool/mempool_ll.c new file mode 100644 index 0000000..41911d6 --- /dev/null +++ b/firmware/components/esp_hosted/common/mempool/mempool_ll.c @@ -0,0 +1,516 @@ +/* + * SPDX-FileCopyrightText: 2015-2022 The Apache Software Foundation (ASF) + * + * SPDX-License-Identifier: Apache-2.0 + * + * SPDX-FileContributor: 2019-2026 Espressif Systems (Shanghai) CO LTD + */ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +/* + * NOTICE: File has been changed from original implementation. + */ + +#include +#include +#include +#include "mempool_ll.h" +#include "freertos/portable.h" + +#if CONFIG_ESP_HOSTED_USE_MEMPOOL + +SemaphoreHandle_t hosted_port_mutex; +#define OS_INIT_CRITICAL() (hosted_port_mutex = xSemaphoreCreateMutex()) +#define OS_ENTER_CRITICAL() (xSemaphoreTake((hosted_port_mutex), portMAX_DELAY)) +#define OS_EXIT_CRITICAL() (xSemaphoreGive((hosted_port_mutex))) + +#define OS_MEM_TRUE_BLOCK_SIZE(bsize) OS_ALIGN(bsize, OS_ALIGNMENT) +#if MYNEWT_VAL(OS_MEMPOOL_GUARD) +#define OS_MEMPOOL_TRUE_BLOCK_SIZE(mp) \ + (((mp)->mp_flags & OS_MEMPOOL_F_EXT) ? \ + OS_MEM_TRUE_BLOCK_SIZE(mp->mp_block_size) : \ + (OS_MEM_TRUE_BLOCK_SIZE(mp->mp_block_size) + sizeof(os_membuf_t))) +#else +#define OS_MEMPOOL_TRUE_BLOCK_SIZE(mp) OS_MEM_TRUE_BLOCK_SIZE(mp->mp_block_size) +#endif + +static STAILQ_HEAD(, os_mempool) g_os_mempool_list = + STAILQ_HEAD_INITIALIZER(g_os_mempool_list); + +#if MYNEWT_VAL(OS_MEMPOOL_POISON) +static uint32_t os_mem_poison = 0xde7ec7ed; + +static_assert(sizeof(struct os_memblock) % 4 == 0, "sizeof(struct os_memblock) shall be aligned to 4"); +static_assert(sizeof(os_mem_poison) == 4, "sizeof(os_mem_poison) shall be 4"); + +static void +os_mempool_poison(const struct os_mempool *mp, void *start) +{ + uint32_t *p; + uint32_t *end; + int sz; + + sz = OS_MEM_TRUE_BLOCK_SIZE(mp->mp_block_size); + p = start; + end = p + sz / 4; + p += sizeof(struct os_memblock) / 4; + + while (p < end) { + *p = os_mem_poison; + p++; + } +} + +static void +os_mempool_poison_check(const struct os_mempool *mp, void *start) +{ + uint32_t *p; + uint32_t *end; + int sz; + + sz = OS_MEM_TRUE_BLOCK_SIZE(mp->mp_block_size); + p = start; + end = p + sz / 4; + p += sizeof(struct os_memblock) / 4; + + while (p < end) { + assert(*p == os_mem_poison); + p++; + } +} +#else +#define os_mempool_poison(mp, start) +#define os_mempool_poison_check(mp, start) +#endif + +#if MYNEWT_VAL(OS_MEMPOOL_GUARD) +#define OS_MEMPOOL_GUARD_PATTERN 0xBAFF1ED1 + +static void +os_mempool_guard(const struct os_mempool *mp, void *start) +{ + uint32_t *tgt; + + if ((mp->mp_flags & OS_MEMPOOL_F_EXT) == 0) { + tgt = (uint32_t *)((uintptr_t)start + + OS_MEM_TRUE_BLOCK_SIZE(mp->mp_block_size)); + *tgt = OS_MEMPOOL_GUARD_PATTERN; + } +} + +static void +os_mempool_guard_check(const struct os_mempool *mp, void *start) +{ + uint32_t *tgt; + + if ((mp->mp_flags & OS_MEMPOOL_F_EXT) == 0) { + tgt = (uint32_t *)((uintptr_t)start + + OS_MEM_TRUE_BLOCK_SIZE(mp->mp_block_size)); + assert(*tgt == OS_MEMPOOL_GUARD_PATTERN); + } +} +#else +#define os_mempool_guard(mp, start) +#define os_mempool_guard_check(mp, start) +#endif + +static os_error_t +os_mempool_init_internal(struct os_mempool *mp, uint16_t blocks, + uint32_t block_size, void *membuf, char *name, + uint8_t flags) +{ + int true_block_size; + int i; + uint8_t *block_addr; + struct os_memblock *block_ptr; + + /* Check for valid parameters */ + if (!mp || (block_size == 0)) { + return OS_INVALID_PARM; + } + + if ((!membuf) && (blocks != 0)) { + return OS_INVALID_PARM; + } + OS_INIT_CRITICAL(); + + if (membuf != NULL) { + /* Blocks need to be sized properly and memory buffer should be + * aligned + */ + if (((uintptr_t)membuf & (OS_ALIGNMENT - 1)) != 0) { + return OS_MEM_NOT_ALIGNED; + } + } + + /* Initialize the memory pool structure */ + mp->mp_block_size = block_size; + mp->mp_num_free = blocks; + mp->mp_min_free = blocks; + mp->mp_flags = flags; + mp->mp_num_blocks = blocks; + mp->mp_membuf_addr = (uintptr_t)membuf; + mp->name = name; + SLIST_FIRST(mp) = membuf; + + if (blocks > 0) { + os_mempool_poison(mp, membuf); + os_mempool_guard(mp, membuf); + true_block_size = OS_MEMPOOL_TRUE_BLOCK_SIZE(mp); + + /* Chain the memory blocks to the free list */ + block_addr = (uint8_t *)membuf; + block_ptr = (struct os_memblock *)block_addr; + for (i = 1; i < blocks; i++) { + block_addr += true_block_size; + os_mempool_poison(mp, block_addr); + os_mempool_guard(mp, block_addr); + SLIST_NEXT(block_ptr, mb_next) = (struct os_memblock *)block_addr; + block_ptr = (struct os_memblock *)block_addr; + } + + /* Last one in the list should be NULL */ + SLIST_NEXT(block_ptr, mb_next) = NULL; + } + + STAILQ_INSERT_TAIL(&g_os_mempool_list, mp, mp_list); + + return OS_OK; +} + +static os_error_t +os_mempool_init(struct os_mempool *mp, uint16_t blocks, uint32_t block_size, + void *membuf, char *name) +{ + return os_mempool_init_internal(mp, blocks, block_size, membuf, name, 0); +} + +#if 0 +static os_error_t +os_mempool_ext_init(struct os_mempool_ext *mpe, uint16_t blocks, + uint32_t block_size, void *membuf, char *name) +{ + int rc; + + rc = os_mempool_init_internal(&mpe->mpe_mp, blocks, block_size, membuf, + name, OS_MEMPOOL_F_EXT); + if (rc != 0) { + return rc; + } + + mpe->mpe_put_cb = NULL; + mpe->mpe_put_arg = NULL; + + return 0; +} +#endif + +static os_error_t +os_mempool_unregister(struct os_mempool *mp) +{ + struct os_mempool *prev; + struct os_mempool *next; + struct os_mempool *cur; + + /* Remove the mempool from the global stailq. This is done manually rather + * than with `STAILQ_REMOVE` to allow for a graceful failure if the mempool + * isn't found. + */ + + prev = NULL; + STAILQ_FOREACH(cur, &g_os_mempool_list, mp_list) { + if (cur == mp) { + break; + } + prev = cur; + } + + if (cur == NULL) { + return OS_INVALID_PARM; + } + + if (prev == NULL) { + STAILQ_REMOVE_HEAD(&g_os_mempool_list, mp_list); + } else { + next = STAILQ_NEXT(cur, mp_list); + if (next == NULL) { + g_os_mempool_list.stqh_last = &STAILQ_NEXT(prev, mp_list); + } + + STAILQ_NEXT(prev, mp_list) = next; + } + + return 0; +} + +#if 0 +static os_error_t +os_mempool_clear(struct os_mempool *mp) +{ + struct os_memblock *block_ptr; + int true_block_size; + uint8_t *block_addr; + uint16_t blocks; + + if (!mp) { + return OS_INVALID_PARM; + } + + true_block_size = OS_MEMPOOL_TRUE_BLOCK_SIZE(mp); + + /* cleanup the memory pool structure */ + mp->mp_num_free = mp->mp_num_blocks; + mp->mp_min_free = mp->mp_num_blocks; + os_mempool_poison(mp, (void *)mp->mp_membuf_addr); + os_mempool_guard(mp, (void *)mp->mp_membuf_addr); + SLIST_FIRST(mp) = (void *)mp->mp_membuf_addr; + + /* Chain the memory blocks to the free list */ + block_addr = (uint8_t *)mp->mp_membuf_addr; + block_ptr = (struct os_memblock *)block_addr; + blocks = mp->mp_num_blocks; + + while (blocks > 1) { + block_addr += true_block_size; + os_mempool_poison(mp, block_addr); + os_mempool_guard(mp, block_addr); + SLIST_NEXT(block_ptr, mb_next) = (struct os_memblock *)block_addr; + block_ptr = (struct os_memblock *)block_addr; + --blocks; + } + + /* Last one in the list should be NULL */ + SLIST_NEXT(block_ptr, mb_next) = NULL; + + return OS_OK; +} + +static int +os_memblock_from(const struct os_mempool *mp, const void *block_addr) +{ + uint32_t true_block_size; + uintptr_t baddr; + uintptr_t end; + + baddr = (uintptr_t)block_addr; + true_block_size = OS_MEMPOOL_TRUE_BLOCK_SIZE(mp); + end = mp->mp_membuf_addr + (mp->mp_num_blocks * true_block_size); + + /* Check that the block is in the memory buffer range. */ + if ((baddr < mp->mp_membuf_addr) || (baddr >= end)) { + return 0; + } + + /* All freed blocks should be on true block size boundaries! */ + if (((baddr - mp->mp_membuf_addr) % true_block_size) != 0) { + return 0; + } + + return 1; +} + +static bool +os_mempool_is_sane(const struct os_mempool *mp) +{ + struct os_memblock *block; + + /* Verify that each block in the free list belongs to the mempool. */ + SLIST_FOREACH(block, mp, mb_next) { + if (!os_memblock_from(mp, block)) { + return false; + } + os_mempool_poison_check(mp, block); + os_mempool_guard_check(mp, block); + } + + return true; +} +#endif + +static void * +os_memblock_get(struct os_mempool *mp) +{ + struct os_memblock *block; + + /* Check to make sure they passed in a memory pool (or something) */ + block = NULL; + if (mp) { + OS_ENTER_CRITICAL(); + /* Check for any free */ + if (mp->mp_num_free) { + /* Get a free block */ + block = SLIST_FIRST(mp); + + /* Set new free list head */ + SLIST_FIRST(mp) = SLIST_NEXT(block, mb_next); + + /* Decrement number free by 1 */ + mp->mp_num_free--; + if (mp->mp_min_free > mp->mp_num_free) { + mp->mp_min_free = mp->mp_num_free; + } + } + OS_EXIT_CRITICAL(); + + if (block) { + os_mempool_poison_check(mp, block); + os_mempool_guard_check(mp, block); + } + } + + return (void *)block; +} + +static os_error_t +os_memblock_put_from_cb(struct os_mempool *mp, void *block_addr) +{ + struct os_memblock *block; + + os_mempool_guard_check(mp, block_addr); + os_mempool_poison(mp, block_addr); + + block = (struct os_memblock *)block_addr; + OS_ENTER_CRITICAL(); + + /* Chain current free list pointer to this block; make this block head */ + SLIST_NEXT(block, mb_next) = SLIST_FIRST(mp); + SLIST_FIRST(mp) = block; + + /* XXX: Should we check that the number free <= number blocks? */ + /* Increment number free */ + mp->mp_num_free++; + + OS_EXIT_CRITICAL(); + + return OS_OK; +} + +static os_error_t +os_memblock_put(struct os_mempool *mp, void *block_addr) +{ + struct os_mempool_ext *mpe; + os_error_t ret; +#if MYNEWT_VAL(OS_MEMPOOL_CHECK) + struct os_memblock *block; + int sr; +#endif + + /* Make sure parameters are valid */ + if ((mp == NULL) || (block_addr == NULL)) { + ret = OS_INVALID_PARM; + goto done; + } + +#if MYNEWT_VAL(OS_MEMPOOL_CHECK) + /* Check that the block we are freeing is a valid block! */ + assert(os_memblock_from(mp, block_addr)); + + /* + * Check for duplicate free. + */ + OS_ENTER_CRITICAL(); + SLIST_FOREACH(block, mp, mb_next) { + assert(block != (struct os_memblock *)block_addr); + } + OS_EXIT_CRITICAL(); + +#endif + /* If this is an extended mempool with a put callback, call the callback + * instead of freeing the block directly. + */ + if (mp->mp_flags & OS_MEMPOOL_F_EXT) { + mpe = (struct os_mempool_ext *)mp; + if (mpe->mpe_put_cb != NULL) { + ret = mpe->mpe_put_cb(mpe, block_addr, mpe->mpe_put_arg); + goto done; + } + } + + /* No callback; free the block. */ + ret = os_memblock_put_from_cb(mp, block_addr); + +done: + return ret; +} + +#if 0 +static struct os_mempool * +os_mempool_info_get_next(struct os_mempool *mp, struct os_mempool_info *omi) +{ + struct os_mempool *cur; + + if (mp == NULL) { + cur = STAILQ_FIRST(&g_os_mempool_list); + } else { + cur = STAILQ_NEXT(mp, mp_list); + } + + if (cur == NULL) { + return (NULL); + } + + omi->omi_block_size = cur->mp_block_size; + omi->omi_num_blocks = cur->mp_num_blocks; + omi->omi_num_free = cur->mp_num_free; + omi->omi_min_free = cur->mp_min_free; + omi->omi_name[0] = '\0'; + strncat(omi->omi_name, cur->name, sizeof(omi->omi_name) - 1); + + return (cur); +} + +static struct os_mempool * +os_mempool_get(const char *mempool_name, struct os_mempool_info *info) +{ + struct os_mempool *mp; + + mp = STAILQ_FIRST(&g_os_mempool_list); + while (mp) { + if (strcmp(mempool_name, mp->name) == 0) { + break; + } + mp = STAILQ_NEXT(mp, mp_list); + } + + if (mp != NULL && info != NULL) { + info->omi_block_size = mp->mp_block_size; + info->omi_num_blocks = mp->mp_num_blocks; + info->omi_num_free = mp->mp_num_free; + info->omi_min_free = mp->mp_min_free; + info->omi_name[0] = '\0'; + strncat(info->omi_name, mp->name, sizeof(info->omi_name) - 1); + } + + return mp; +} +#endif + +static struct mempool_ops_t opts = { + .mempool_init = os_mempool_init, + .mempool_unregister = os_mempool_unregister, + .memblock_get = os_memblock_get, + .memblock_put = os_memblock_put, +}; + +struct mempool_ops_t * os_mempool_get_ops(void) +{ + return &opts; +} + +#endif // CONFIG_ESP_HOSTED_USE_MEMPOOL diff --git a/firmware/components/esp_hosted/common/mempool/mempool_ll.h b/firmware/components/esp_hosted/common/mempool/mempool_ll.h new file mode 100644 index 0000000..b5cfe4a --- /dev/null +++ b/firmware/components/esp_hosted/common/mempool/mempool_ll.h @@ -0,0 +1,217 @@ +/* + * SPDX-FileCopyrightText: 2015-2022 The Apache Software Foundation (ASF) + * + * SPDX-License-Identifier: Apache-2.0 + * + * SPDX-FileContributor: 2019-2026 Espressif Systems (Shanghai) CO LTD + */ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +/* + * NOTICE: File has been changed from original implementation. + */ + +#ifndef _OS_MEMPOOL_H_ +#define _OS_MEMPOOL_H_ + +#include +#include "sys/queue.h" +#include "freertos/FreeRTOS.h" +#include "freertos/portmacro.h" +#include "freertos/task.h" +#include "freertos/semphr.h" + +#if CONFIG_ESP_HOSTED_USE_MEMPOOL +#ifdef __cplusplus +extern "C" { +#endif + +#define MYNEWT_VAL(_name) MYNEWT_VAL_ ## _name + +#define OS_ALIGN(__n, __a) ( \ + (((__n) & ((__a) - 1)) == 0) ? \ + (__n) : \ + ((__n) + ((__a) - ((__n) & ((__a) - 1)))) \ + ) +#define OS_ALIGNMENT 4 + +enum os_error { + OS_OK = 0, + OS_ENOMEM = 1, + OS_EINVAL = 2, + OS_INVALID_PARM = 3, + OS_MEM_NOT_ALIGNED = 4, + OS_BAD_MUTEX = 5, + OS_TIMEOUT = 6, + OS_ERR_IN_ISR = 7, /* Function cannot be called from ISR */ + OS_ERR_PRIV = 8, /* Privileged access error */ + OS_NOT_STARTED = 9, /* OS must be started to call this function, but isn't */ + OS_ENOENT = 10, /* No such thing */ + OS_EBUSY = 11, /* Resource busy */ + OS_ERROR = 12, /* Generic Error */ +}; + +typedef enum os_error os_error_t; + +/** + * A memory block structure. This simply contains a pointer to the free list + * chain and is only used when the block is on the free list. When the block + * has been removed from the free list the entire memory block is usable by the + * caller. + */ +struct os_memblock { + /** Next memory block in the list. */ + SLIST_ENTRY(os_memblock) mb_next; +}; + +/* XXX: Change this structure so that we keep the first address in the pool? */ +/* XXX: add memory debug structure and associated code */ +/* XXX: Change how I coded the SLIST_HEAD here. It should be named: + SLIST_HEAD(,os_memblock) mp_head; */ + +/** + * Memory pool + */ +struct os_mempool { + /** Size of the memory blocks, in bytes. */ + uint32_t mp_block_size; + /** The number of memory blocks. */ + uint16_t mp_num_blocks; + /** The number of free blocks left */ + uint16_t mp_num_free; + /** The lowest number of free blocks seen */ + uint16_t mp_min_free; + /** Bitmap of OS_MEMPOOL_F_[...] values. */ + uint8_t mp_flags; + /** Address of memory buffer used by pool */ + uintptr_t mp_membuf_addr; + /** Next memory pool in the list. */ + STAILQ_ENTRY(os_mempool) mp_list; + /** Head of the list of memory blocks. */ + SLIST_HEAD(,os_memblock); + /** Name for memory block */ + char *name; +}; + +/** + * Indicates an extended mempool. Address can be safely cast to + * (struct os_mempool_ext *). + */ +#define OS_MEMPOOL_F_EXT 0x01 + +struct os_mempool_ext; + +/** + * Block put callback function. If configured, this callback gets executed + * whenever a block is freed to the corresponding extended mempool. Note: The + * os_memblock_put() function calls this callback instead of freeing the block + * itself. Therefore, it is the callback's responsibility to free the block + * via a call to os_memblock_put_from_cb(). + * + * @param ome The extended mempool that a block is being + * freed back to. + * @param data The block being freed. + * @param arg Optional argument configured along with the + * callback. + * + * @return Indicates whether the block was successfully + * freed. A non-zero value should only be + * returned if the block was not successfully + * released back to its pool. + */ +typedef os_error_t os_mempool_put_fn(struct os_mempool_ext *ome, void *data, + void *arg); + +/** Extended memory pool. */ +struct os_mempool_ext { + /** Standard memory pool. */ + struct os_mempool mpe_mp; + + /** Callback that is executed immediately when a block is freed. */ + os_mempool_put_fn *mpe_put_cb; + + /** Optional argument passed to the callback function. */ + void *mpe_put_arg; +}; + +/** Length of the name of memory pool */ +#define OS_MEMPOOL_INFO_NAME_LEN (32) + +/** + * Information describing a memory pool, used to return OS information + * to the management layer. + */ +struct os_mempool_info { + /** Size of the memory blocks in the pool */ + int omi_block_size; + /** Number of memory blocks in the pool */ + int omi_num_blocks; + /** Number of free memory blocks */ + int omi_num_free; + /** Minimum number of free memory blocks ever */ + int omi_min_free; + /** Name of the memory pool */ + char omi_name[OS_MEMPOOL_INFO_NAME_LEN]; +}; + +/* + * To calculate size of the memory buffer needed for the pool. NOTE: This size + * is NOT in bytes! The size is the number of os_membuf_t elements required for + * the memory pool. + */ +#if MYNEWT_VAL(OS_MEMPOOL_GUARD) +/** Leave extra 4 bytes of guard area at the end. */ +#define OS_MEMPOOL_BLOCK_SZ(sz) ((sz) + sizeof(os_membuf_t)) +#else +/** Size of a memory pool block. */ +#define OS_MEMPOOL_BLOCK_SZ(sz) (sz) +#endif +#if (OS_ALIGNMENT == 4) +typedef uint32_t os_membuf_t; +#elif (OS_ALIGNMENT == 8) +typedef uint64_t os_membuf_t; +#elif (OS_ALIGNMENT == 16) +typedef __uint128_t os_membuf_t; +#else +#error "Unhandled `OS_ALIGNMENT` for `os_membuf_t`" +#endif /* OS_ALIGNMENT == * */ + +/** The total size of a memory pool, including alignment. */ +#define OS_MEMPOOL_SIZE(n,blksize) (((OS_MEMPOOL_BLOCK_SZ(blksize) + ((OS_ALIGNMENT)-1)) / (OS_ALIGNMENT)) * (n)) + +/** Calculates the number of bytes required to initialize a memory pool. */ +#define OS_MEMPOOL_BYTES(n,blksize) \ + (sizeof (os_membuf_t) * OS_MEMPOOL_SIZE((n), (blksize))) + +struct mempool_ops_t { + os_error_t (*mempool_init)(struct os_mempool *mp, uint16_t blocks, uint32_t block_size, void *membuf, char *name); + os_error_t (*mempool_unregister)(struct os_mempool *mp); + void * (*memblock_get)(struct os_mempool *mp); + os_error_t (*memblock_put)(struct os_mempool *mp, void *block_addr); +}; + +struct mempool_ops_t * os_mempool_get_ops(void); + +#ifdef __cplusplus +} +#endif + +#endif // CONFIG_ESP_HOSTED_USE_MEMPOOL + +#endif /* _OS_MEMPOOL_H_ */ diff --git a/firmware/components/esp_hosted/common/proto/README.md b/firmware/components/esp_hosted/common/proto/README.md new file mode 100644 index 0000000..afd57d1 --- /dev/null +++ b/firmware/components/esp_hosted/common/proto/README.md @@ -0,0 +1,53 @@ +# About Proto Files + + +## Protobuf Submodule + +[protobuf-c](https://github.com/protobuf-c/protobuf-c) is open source code used as submodule in ESP-Hosted-FG in directory `../protobuf-c/` +If this directory is empty, please run +```sh +$ cd esp-hosted +$ git submodule update --init --recursive +``` + +## Files + +- `esp_hosted_rpc.proto` + - This is Ready-To-Use protobuf file which has messages for Request / Response / Events to communicate between Host and ESP + - User can add his own message field in `.proto` file and generate respective C files using 'protoc' + +- `esp_hosted_rpc.pb-c.c` & `esp_hosted_rpc.pb-c.h` + - Ready-To-Use Source Generated files using `esp_hosted_rpc.proto` + - These files also cached which was generated with current `esp_hosted_rpc.proto` file for easy use (No need to generate again) + - If any addition or modifications `esp_hosted_rpc.proto` done, these files need to be re-generated + + +## Generate esp_hosted_rpc.pb-c.c & esp_hosted_rpc.pb-c.h + +If you want to add or modify existing set of RPC procedures supported, you need to modify `esp_hosted_rpc.proto` as needed and build it to generate new set of `esp_hosted_rpc.pb-c.c` & `esp_hosted_rpc.pb-c.h`. +For this, third party software for protobuf C compiler is needed to be installed +- Debian/Ubuntu + - sudo apt install protobuf-c-compiler +- Mac OS + - brew install protobuf protobuf-c +- Windows + - check https://github.com/protobuf-c/protobuf-c + +`protoc --c_out` always needs the `protoc-gen-c` plugin from protobuf-c, so both protoc and protobuf-c must be present (on macOS these are separate Homebrew formulas, hence both are listed above). + +This software might only be needed on development environment, Once esp_hosted_rpc.pb-c.c & esp_hosted_rpc.pb-c.h files are generated, could also be uninstalled (no more needed). + +##### Steps to generate +```sh +$ cd /common/proto +$ protoc esp_hosted_rpc.proto --c_out=. +``` + +## Add new RPC message +To send an new RPC request/response + +1. Add C function in `host/host_common/commands.c` +2. Create python binding in `host/linux/host_control/python_support/commands_map_py_to_c.py` and its python function in `host/linux/host_control/python_support/commands_lib.py`. +3. Add ESP side C function in `esp/esp_driver/network_adapter/main/slave_commands.c`, respective to python function, to handle added message field. + +User can test added functionality using `host/linux/host_control/python_support/test.py`. diff --git a/firmware/components/esp_hosted/common/proto/esp_hosted_rpc.pb-c.c b/firmware/components/esp_hosted/common/proto/esp_hosted_rpc.pb-c.c new file mode 100644 index 0000000..5ab924f --- /dev/null +++ b/firmware/components/esp_hosted/common/proto/esp_hosted_rpc.pb-c.c @@ -0,0 +1,33160 @@ +/* Generated by the protocol buffer compiler. DO NOT EDIT! */ +/* Generated from: esp_hosted_rpc.proto */ + +/* Do not generate deprecated warnings for self */ +#ifndef PROTOBUF_C__NO_DEPRECATED +#define PROTOBUF_C__NO_DEPRECATED +#endif + +#include "esp_hosted_rpc.pb-c.h" +void wifi_init_config__init + (WifiInitConfig *message) +{ + static const WifiInitConfig init_value = WIFI_INIT_CONFIG__INIT; + *message = init_value; +} +size_t wifi_init_config__get_packed_size + (const WifiInitConfig *message) +{ + assert(message->base.descriptor == &wifi_init_config__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_init_config__pack + (const WifiInitConfig *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_init_config__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_init_config__pack_to_buffer + (const WifiInitConfig *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_init_config__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiInitConfig * + wifi_init_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiInitConfig *) + protobuf_c_message_unpack (&wifi_init_config__descriptor, + allocator, len, data); +} +void wifi_init_config__free_unpacked + (WifiInitConfig *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_init_config__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_country__init + (WifiCountry *message) +{ + static const WifiCountry init_value = WIFI_COUNTRY__INIT; + *message = init_value; +} +size_t wifi_country__get_packed_size + (const WifiCountry *message) +{ + assert(message->base.descriptor == &wifi_country__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_country__pack + (const WifiCountry *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_country__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_country__pack_to_buffer + (const WifiCountry *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_country__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiCountry * + wifi_country__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiCountry *) + protobuf_c_message_unpack (&wifi_country__descriptor, + allocator, len, data); +} +void wifi_country__free_unpacked + (WifiCountry *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_country__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_active_scan_time__init + (WifiActiveScanTime *message) +{ + static const WifiActiveScanTime init_value = WIFI_ACTIVE_SCAN_TIME__INIT; + *message = init_value; +} +size_t wifi_active_scan_time__get_packed_size + (const WifiActiveScanTime *message) +{ + assert(message->base.descriptor == &wifi_active_scan_time__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_active_scan_time__pack + (const WifiActiveScanTime *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_active_scan_time__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_active_scan_time__pack_to_buffer + (const WifiActiveScanTime *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_active_scan_time__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiActiveScanTime * + wifi_active_scan_time__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiActiveScanTime *) + protobuf_c_message_unpack (&wifi_active_scan_time__descriptor, + allocator, len, data); +} +void wifi_active_scan_time__free_unpacked + (WifiActiveScanTime *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_active_scan_time__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_scan_time__init + (WifiScanTime *message) +{ + static const WifiScanTime init_value = WIFI_SCAN_TIME__INIT; + *message = init_value; +} +size_t wifi_scan_time__get_packed_size + (const WifiScanTime *message) +{ + assert(message->base.descriptor == &wifi_scan_time__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_scan_time__pack + (const WifiScanTime *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_scan_time__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_scan_time__pack_to_buffer + (const WifiScanTime *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_scan_time__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiScanTime * + wifi_scan_time__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiScanTime *) + protobuf_c_message_unpack (&wifi_scan_time__descriptor, + allocator, len, data); +} +void wifi_scan_time__free_unpacked + (WifiScanTime *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_scan_time__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_scan_channel_bitmap__init + (WifiScanChannelBitmap *message) +{ + static const WifiScanChannelBitmap init_value = WIFI_SCAN_CHANNEL_BITMAP__INIT; + *message = init_value; +} +size_t wifi_scan_channel_bitmap__get_packed_size + (const WifiScanChannelBitmap *message) +{ + assert(message->base.descriptor == &wifi_scan_channel_bitmap__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_scan_channel_bitmap__pack + (const WifiScanChannelBitmap *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_scan_channel_bitmap__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_scan_channel_bitmap__pack_to_buffer + (const WifiScanChannelBitmap *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_scan_channel_bitmap__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiScanChannelBitmap * + wifi_scan_channel_bitmap__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiScanChannelBitmap *) + protobuf_c_message_unpack (&wifi_scan_channel_bitmap__descriptor, + allocator, len, data); +} +void wifi_scan_channel_bitmap__free_unpacked + (WifiScanChannelBitmap *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_scan_channel_bitmap__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_scan_config__init + (WifiScanConfig *message) +{ + static const WifiScanConfig init_value = WIFI_SCAN_CONFIG__INIT; + *message = init_value; +} +size_t wifi_scan_config__get_packed_size + (const WifiScanConfig *message) +{ + assert(message->base.descriptor == &wifi_scan_config__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_scan_config__pack + (const WifiScanConfig *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_scan_config__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_scan_config__pack_to_buffer + (const WifiScanConfig *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_scan_config__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiScanConfig * + wifi_scan_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiScanConfig *) + protobuf_c_message_unpack (&wifi_scan_config__descriptor, + allocator, len, data); +} +void wifi_scan_config__free_unpacked + (WifiScanConfig *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_scan_config__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_scan_default_params__init + (WifiScanDefaultParams *message) +{ + static const WifiScanDefaultParams init_value = WIFI_SCAN_DEFAULT_PARAMS__INIT; + *message = init_value; +} +size_t wifi_scan_default_params__get_packed_size + (const WifiScanDefaultParams *message) +{ + assert(message->base.descriptor == &wifi_scan_default_params__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_scan_default_params__pack + (const WifiScanDefaultParams *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_scan_default_params__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_scan_default_params__pack_to_buffer + (const WifiScanDefaultParams *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_scan_default_params__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiScanDefaultParams * + wifi_scan_default_params__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiScanDefaultParams *) + protobuf_c_message_unpack (&wifi_scan_default_params__descriptor, + allocator, len, data); +} +void wifi_scan_default_params__free_unpacked + (WifiScanDefaultParams *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_scan_default_params__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_he_ap_info__init + (WifiHeApInfo *message) +{ + static const WifiHeApInfo init_value = WIFI_HE_AP_INFO__INIT; + *message = init_value; +} +size_t wifi_he_ap_info__get_packed_size + (const WifiHeApInfo *message) +{ + assert(message->base.descriptor == &wifi_he_ap_info__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_he_ap_info__pack + (const WifiHeApInfo *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_he_ap_info__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_he_ap_info__pack_to_buffer + (const WifiHeApInfo *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_he_ap_info__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiHeApInfo * + wifi_he_ap_info__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiHeApInfo *) + protobuf_c_message_unpack (&wifi_he_ap_info__descriptor, + allocator, len, data); +} +void wifi_he_ap_info__free_unpacked + (WifiHeApInfo *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_he_ap_info__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_ap_record__init + (WifiApRecord *message) +{ + static const WifiApRecord init_value = WIFI_AP_RECORD__INIT; + *message = init_value; +} +size_t wifi_ap_record__get_packed_size + (const WifiApRecord *message) +{ + assert(message->base.descriptor == &wifi_ap_record__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_ap_record__pack + (const WifiApRecord *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_ap_record__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_ap_record__pack_to_buffer + (const WifiApRecord *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_ap_record__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiApRecord * + wifi_ap_record__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiApRecord *) + protobuf_c_message_unpack (&wifi_ap_record__descriptor, + allocator, len, data); +} +void wifi_ap_record__free_unpacked + (WifiApRecord *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_ap_record__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_scan_threshold__init + (WifiScanThreshold *message) +{ + static const WifiScanThreshold init_value = WIFI_SCAN_THRESHOLD__INIT; + *message = init_value; +} +size_t wifi_scan_threshold__get_packed_size + (const WifiScanThreshold *message) +{ + assert(message->base.descriptor == &wifi_scan_threshold__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_scan_threshold__pack + (const WifiScanThreshold *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_scan_threshold__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_scan_threshold__pack_to_buffer + (const WifiScanThreshold *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_scan_threshold__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiScanThreshold * + wifi_scan_threshold__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiScanThreshold *) + protobuf_c_message_unpack (&wifi_scan_threshold__descriptor, + allocator, len, data); +} +void wifi_scan_threshold__free_unpacked + (WifiScanThreshold *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_scan_threshold__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_pmf_config__init + (WifiPmfConfig *message) +{ + static const WifiPmfConfig init_value = WIFI_PMF_CONFIG__INIT; + *message = init_value; +} +size_t wifi_pmf_config__get_packed_size + (const WifiPmfConfig *message) +{ + assert(message->base.descriptor == &wifi_pmf_config__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_pmf_config__pack + (const WifiPmfConfig *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_pmf_config__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_pmf_config__pack_to_buffer + (const WifiPmfConfig *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_pmf_config__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiPmfConfig * + wifi_pmf_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiPmfConfig *) + protobuf_c_message_unpack (&wifi_pmf_config__descriptor, + allocator, len, data); +} +void wifi_pmf_config__free_unpacked + (WifiPmfConfig *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_pmf_config__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_bss_max_idle_config__init + (WifiBssMaxIdleConfig *message) +{ + static const WifiBssMaxIdleConfig init_value = WIFI_BSS_MAX_IDLE_CONFIG__INIT; + *message = init_value; +} +size_t wifi_bss_max_idle_config__get_packed_size + (const WifiBssMaxIdleConfig *message) +{ + assert(message->base.descriptor == &wifi_bss_max_idle_config__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_bss_max_idle_config__pack + (const WifiBssMaxIdleConfig *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_bss_max_idle_config__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_bss_max_idle_config__pack_to_buffer + (const WifiBssMaxIdleConfig *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_bss_max_idle_config__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiBssMaxIdleConfig * + wifi_bss_max_idle_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiBssMaxIdleConfig *) + protobuf_c_message_unpack (&wifi_bss_max_idle_config__descriptor, + allocator, len, data); +} +void wifi_bss_max_idle_config__free_unpacked + (WifiBssMaxIdleConfig *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_bss_max_idle_config__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_ap_config__init + (WifiApConfig *message) +{ + static const WifiApConfig init_value = WIFI_AP_CONFIG__INIT; + *message = init_value; +} +size_t wifi_ap_config__get_packed_size + (const WifiApConfig *message) +{ + assert(message->base.descriptor == &wifi_ap_config__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_ap_config__pack + (const WifiApConfig *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_ap_config__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_ap_config__pack_to_buffer + (const WifiApConfig *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_ap_config__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiApConfig * + wifi_ap_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiApConfig *) + protobuf_c_message_unpack (&wifi_ap_config__descriptor, + allocator, len, data); +} +void wifi_ap_config__free_unpacked + (WifiApConfig *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_ap_config__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_sta_config__init + (WifiStaConfig *message) +{ + static const WifiStaConfig init_value = WIFI_STA_CONFIG__INIT; + *message = init_value; +} +size_t wifi_sta_config__get_packed_size + (const WifiStaConfig *message) +{ + assert(message->base.descriptor == &wifi_sta_config__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_sta_config__pack + (const WifiStaConfig *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_sta_config__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_sta_config__pack_to_buffer + (const WifiStaConfig *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_sta_config__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiStaConfig * + wifi_sta_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiStaConfig *) + protobuf_c_message_unpack (&wifi_sta_config__descriptor, + allocator, len, data); +} +void wifi_sta_config__free_unpacked + (WifiStaConfig *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_sta_config__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_config__init + (WifiConfig *message) +{ + static const WifiConfig init_value = WIFI_CONFIG__INIT; + *message = init_value; +} +size_t wifi_config__get_packed_size + (const WifiConfig *message) +{ + assert(message->base.descriptor == &wifi_config__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_config__pack + (const WifiConfig *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_config__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_config__pack_to_buffer + (const WifiConfig *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_config__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiConfig * + wifi_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiConfig *) + protobuf_c_message_unpack (&wifi_config__descriptor, + allocator, len, data); +} +void wifi_config__free_unpacked + (WifiConfig *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_config__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_sta_info__init + (WifiStaInfo *message) +{ + static const WifiStaInfo init_value = WIFI_STA_INFO__INIT; + *message = init_value; +} +size_t wifi_sta_info__get_packed_size + (const WifiStaInfo *message) +{ + assert(message->base.descriptor == &wifi_sta_info__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_sta_info__pack + (const WifiStaInfo *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_sta_info__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_sta_info__pack_to_buffer + (const WifiStaInfo *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_sta_info__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiStaInfo * + wifi_sta_info__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiStaInfo *) + protobuf_c_message_unpack (&wifi_sta_info__descriptor, + allocator, len, data); +} +void wifi_sta_info__free_unpacked + (WifiStaInfo *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_sta_info__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_sta_list__init + (WifiStaList *message) +{ + static const WifiStaList init_value = WIFI_STA_LIST__INIT; + *message = init_value; +} +size_t wifi_sta_list__get_packed_size + (const WifiStaList *message) +{ + assert(message->base.descriptor == &wifi_sta_list__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_sta_list__pack + (const WifiStaList *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_sta_list__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_sta_list__pack_to_buffer + (const WifiStaList *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_sta_list__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiStaList * + wifi_sta_list__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiStaList *) + protobuf_c_message_unpack (&wifi_sta_list__descriptor, + allocator, len, data); +} +void wifi_sta_list__free_unpacked + (WifiStaList *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_sta_list__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_pkt_rx_ctrl__init + (WifiPktRxCtrl *message) +{ + static const WifiPktRxCtrl init_value = WIFI_PKT_RX_CTRL__INIT; + *message = init_value; +} +size_t wifi_pkt_rx_ctrl__get_packed_size + (const WifiPktRxCtrl *message) +{ + assert(message->base.descriptor == &wifi_pkt_rx_ctrl__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_pkt_rx_ctrl__pack + (const WifiPktRxCtrl *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_pkt_rx_ctrl__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_pkt_rx_ctrl__pack_to_buffer + (const WifiPktRxCtrl *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_pkt_rx_ctrl__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiPktRxCtrl * + wifi_pkt_rx_ctrl__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiPktRxCtrl *) + protobuf_c_message_unpack (&wifi_pkt_rx_ctrl__descriptor, + allocator, len, data); +} +void wifi_pkt_rx_ctrl__free_unpacked + (WifiPktRxCtrl *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_pkt_rx_ctrl__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_promiscuous_pkt__init + (WifiPromiscuousPkt *message) +{ + static const WifiPromiscuousPkt init_value = WIFI_PROMISCUOUS_PKT__INIT; + *message = init_value; +} +size_t wifi_promiscuous_pkt__get_packed_size + (const WifiPromiscuousPkt *message) +{ + assert(message->base.descriptor == &wifi_promiscuous_pkt__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_promiscuous_pkt__pack + (const WifiPromiscuousPkt *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_promiscuous_pkt__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_promiscuous_pkt__pack_to_buffer + (const WifiPromiscuousPkt *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_promiscuous_pkt__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiPromiscuousPkt * + wifi_promiscuous_pkt__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiPromiscuousPkt *) + protobuf_c_message_unpack (&wifi_promiscuous_pkt__descriptor, + allocator, len, data); +} +void wifi_promiscuous_pkt__free_unpacked + (WifiPromiscuousPkt *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_promiscuous_pkt__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_promiscuous_filter__init + (WifiPromiscuousFilter *message) +{ + static const WifiPromiscuousFilter init_value = WIFI_PROMISCUOUS_FILTER__INIT; + *message = init_value; +} +size_t wifi_promiscuous_filter__get_packed_size + (const WifiPromiscuousFilter *message) +{ + assert(message->base.descriptor == &wifi_promiscuous_filter__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_promiscuous_filter__pack + (const WifiPromiscuousFilter *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_promiscuous_filter__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_promiscuous_filter__pack_to_buffer + (const WifiPromiscuousFilter *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_promiscuous_filter__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiPromiscuousFilter * + wifi_promiscuous_filter__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiPromiscuousFilter *) + protobuf_c_message_unpack (&wifi_promiscuous_filter__descriptor, + allocator, len, data); +} +void wifi_promiscuous_filter__free_unpacked + (WifiPromiscuousFilter *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_promiscuous_filter__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_csi_config__init + (WifiCsiConfig *message) +{ + static const WifiCsiConfig init_value = WIFI_CSI_CONFIG__INIT; + *message = init_value; +} +size_t wifi_csi_config__get_packed_size + (const WifiCsiConfig *message) +{ + assert(message->base.descriptor == &wifi_csi_config__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_csi_config__pack + (const WifiCsiConfig *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_csi_config__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_csi_config__pack_to_buffer + (const WifiCsiConfig *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_csi_config__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiCsiConfig * + wifi_csi_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiCsiConfig *) + protobuf_c_message_unpack (&wifi_csi_config__descriptor, + allocator, len, data); +} +void wifi_csi_config__free_unpacked + (WifiCsiConfig *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_csi_config__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_csi_info__init + (WifiCsiInfo *message) +{ + static const WifiCsiInfo init_value = WIFI_CSI_INFO__INIT; + *message = init_value; +} +size_t wifi_csi_info__get_packed_size + (const WifiCsiInfo *message) +{ + assert(message->base.descriptor == &wifi_csi_info__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_csi_info__pack + (const WifiCsiInfo *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_csi_info__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_csi_info__pack_to_buffer + (const WifiCsiInfo *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_csi_info__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiCsiInfo * + wifi_csi_info__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiCsiInfo *) + protobuf_c_message_unpack (&wifi_csi_info__descriptor, + allocator, len, data); +} +void wifi_csi_info__free_unpacked + (WifiCsiInfo *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_csi_info__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_ant_gpio__init + (WifiAntGpio *message) +{ + static const WifiAntGpio init_value = WIFI_ANT_GPIO__INIT; + *message = init_value; +} +size_t wifi_ant_gpio__get_packed_size + (const WifiAntGpio *message) +{ + assert(message->base.descriptor == &wifi_ant_gpio__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_ant_gpio__pack + (const WifiAntGpio *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_ant_gpio__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_ant_gpio__pack_to_buffer + (const WifiAntGpio *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_ant_gpio__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiAntGpio * + wifi_ant_gpio__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiAntGpio *) + protobuf_c_message_unpack (&wifi_ant_gpio__descriptor, + allocator, len, data); +} +void wifi_ant_gpio__free_unpacked + (WifiAntGpio *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_ant_gpio__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_ant_gpio_config__init + (WifiAntGpioConfig *message) +{ + static const WifiAntGpioConfig init_value = WIFI_ANT_GPIO_CONFIG__INIT; + *message = init_value; +} +size_t wifi_ant_gpio_config__get_packed_size + (const WifiAntGpioConfig *message) +{ + assert(message->base.descriptor == &wifi_ant_gpio_config__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_ant_gpio_config__pack + (const WifiAntGpioConfig *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_ant_gpio_config__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_ant_gpio_config__pack_to_buffer + (const WifiAntGpioConfig *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_ant_gpio_config__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiAntGpioConfig * + wifi_ant_gpio_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiAntGpioConfig *) + protobuf_c_message_unpack (&wifi_ant_gpio_config__descriptor, + allocator, len, data); +} +void wifi_ant_gpio_config__free_unpacked + (WifiAntGpioConfig *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_ant_gpio_config__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_ant_config__init + (WifiAntConfig *message) +{ + static const WifiAntConfig init_value = WIFI_ANT_CONFIG__INIT; + *message = init_value; +} +size_t wifi_ant_config__get_packed_size + (const WifiAntConfig *message) +{ + assert(message->base.descriptor == &wifi_ant_config__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_ant_config__pack + (const WifiAntConfig *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_ant_config__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_ant_config__pack_to_buffer + (const WifiAntConfig *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_ant_config__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiAntConfig * + wifi_ant_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiAntConfig *) + protobuf_c_message_unpack (&wifi_ant_config__descriptor, + allocator, len, data); +} +void wifi_ant_config__free_unpacked + (WifiAntConfig *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_ant_config__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_action_tx_req__init + (WifiActionTxReq *message) +{ + static const WifiActionTxReq init_value = WIFI_ACTION_TX_REQ__INIT; + *message = init_value; +} +size_t wifi_action_tx_req__get_packed_size + (const WifiActionTxReq *message) +{ + assert(message->base.descriptor == &wifi_action_tx_req__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_action_tx_req__pack + (const WifiActionTxReq *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_action_tx_req__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_action_tx_req__pack_to_buffer + (const WifiActionTxReq *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_action_tx_req__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiActionTxReq * + wifi_action_tx_req__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiActionTxReq *) + protobuf_c_message_unpack (&wifi_action_tx_req__descriptor, + allocator, len, data); +} +void wifi_action_tx_req__free_unpacked + (WifiActionTxReq *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_action_tx_req__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_ftm_initiator_cfg__init + (WifiFtmInitiatorCfg *message) +{ + static const WifiFtmInitiatorCfg init_value = WIFI_FTM_INITIATOR_CFG__INIT; + *message = init_value; +} +size_t wifi_ftm_initiator_cfg__get_packed_size + (const WifiFtmInitiatorCfg *message) +{ + assert(message->base.descriptor == &wifi_ftm_initiator_cfg__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_ftm_initiator_cfg__pack + (const WifiFtmInitiatorCfg *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_ftm_initiator_cfg__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_ftm_initiator_cfg__pack_to_buffer + (const WifiFtmInitiatorCfg *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_ftm_initiator_cfg__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiFtmInitiatorCfg * + wifi_ftm_initiator_cfg__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiFtmInitiatorCfg *) + protobuf_c_message_unpack (&wifi_ftm_initiator_cfg__descriptor, + allocator, len, data); +} +void wifi_ftm_initiator_cfg__free_unpacked + (WifiFtmInitiatorCfg *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_ftm_initiator_cfg__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_event_sta_scan_done__init + (WifiEventStaScanDone *message) +{ + static const WifiEventStaScanDone init_value = WIFI_EVENT_STA_SCAN_DONE__INIT; + *message = init_value; +} +size_t wifi_event_sta_scan_done__get_packed_size + (const WifiEventStaScanDone *message) +{ + assert(message->base.descriptor == &wifi_event_sta_scan_done__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_event_sta_scan_done__pack + (const WifiEventStaScanDone *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_event_sta_scan_done__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_event_sta_scan_done__pack_to_buffer + (const WifiEventStaScanDone *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_event_sta_scan_done__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiEventStaScanDone * + wifi_event_sta_scan_done__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiEventStaScanDone *) + protobuf_c_message_unpack (&wifi_event_sta_scan_done__descriptor, + allocator, len, data); +} +void wifi_event_sta_scan_done__free_unpacked + (WifiEventStaScanDone *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_event_sta_scan_done__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_event_sta_connected__init + (WifiEventStaConnected *message) +{ + static const WifiEventStaConnected init_value = WIFI_EVENT_STA_CONNECTED__INIT; + *message = init_value; +} +size_t wifi_event_sta_connected__get_packed_size + (const WifiEventStaConnected *message) +{ + assert(message->base.descriptor == &wifi_event_sta_connected__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_event_sta_connected__pack + (const WifiEventStaConnected *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_event_sta_connected__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_event_sta_connected__pack_to_buffer + (const WifiEventStaConnected *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_event_sta_connected__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiEventStaConnected * + wifi_event_sta_connected__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiEventStaConnected *) + protobuf_c_message_unpack (&wifi_event_sta_connected__descriptor, + allocator, len, data); +} +void wifi_event_sta_connected__free_unpacked + (WifiEventStaConnected *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_event_sta_connected__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_event_sta_disconnected__init + (WifiEventStaDisconnected *message) +{ + static const WifiEventStaDisconnected init_value = WIFI_EVENT_STA_DISCONNECTED__INIT; + *message = init_value; +} +size_t wifi_event_sta_disconnected__get_packed_size + (const WifiEventStaDisconnected *message) +{ + assert(message->base.descriptor == &wifi_event_sta_disconnected__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_event_sta_disconnected__pack + (const WifiEventStaDisconnected *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_event_sta_disconnected__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_event_sta_disconnected__pack_to_buffer + (const WifiEventStaDisconnected *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_event_sta_disconnected__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiEventStaDisconnected * + wifi_event_sta_disconnected__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiEventStaDisconnected *) + protobuf_c_message_unpack (&wifi_event_sta_disconnected__descriptor, + allocator, len, data); +} +void wifi_event_sta_disconnected__free_unpacked + (WifiEventStaDisconnected *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_event_sta_disconnected__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_event_sta_authmode_change__init + (WifiEventStaAuthmodeChange *message) +{ + static const WifiEventStaAuthmodeChange init_value = WIFI_EVENT_STA_AUTHMODE_CHANGE__INIT; + *message = init_value; +} +size_t wifi_event_sta_authmode_change__get_packed_size + (const WifiEventStaAuthmodeChange *message) +{ + assert(message->base.descriptor == &wifi_event_sta_authmode_change__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_event_sta_authmode_change__pack + (const WifiEventStaAuthmodeChange *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_event_sta_authmode_change__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_event_sta_authmode_change__pack_to_buffer + (const WifiEventStaAuthmodeChange *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_event_sta_authmode_change__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiEventStaAuthmodeChange * + wifi_event_sta_authmode_change__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiEventStaAuthmodeChange *) + protobuf_c_message_unpack (&wifi_event_sta_authmode_change__descriptor, + allocator, len, data); +} +void wifi_event_sta_authmode_change__free_unpacked + (WifiEventStaAuthmodeChange *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_event_sta_authmode_change__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_event_sta_wps_er_pin__init + (WifiEventStaWpsErPin *message) +{ + static const WifiEventStaWpsErPin init_value = WIFI_EVENT_STA_WPS_ER_PIN__INIT; + *message = init_value; +} +size_t wifi_event_sta_wps_er_pin__get_packed_size + (const WifiEventStaWpsErPin *message) +{ + assert(message->base.descriptor == &wifi_event_sta_wps_er_pin__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_event_sta_wps_er_pin__pack + (const WifiEventStaWpsErPin *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_event_sta_wps_er_pin__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_event_sta_wps_er_pin__pack_to_buffer + (const WifiEventStaWpsErPin *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_event_sta_wps_er_pin__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiEventStaWpsErPin * + wifi_event_sta_wps_er_pin__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiEventStaWpsErPin *) + protobuf_c_message_unpack (&wifi_event_sta_wps_er_pin__descriptor, + allocator, len, data); +} +void wifi_event_sta_wps_er_pin__free_unpacked + (WifiEventStaWpsErPin *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_event_sta_wps_er_pin__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void ap_cred__init + (ApCred *message) +{ + static const ApCred init_value = AP_CRED__INIT; + *message = init_value; +} +size_t ap_cred__get_packed_size + (const ApCred *message) +{ + assert(message->base.descriptor == &ap_cred__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t ap_cred__pack + (const ApCred *message, + uint8_t *out) +{ + assert(message->base.descriptor == &ap_cred__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t ap_cred__pack_to_buffer + (const ApCred *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &ap_cred__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +ApCred * + ap_cred__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (ApCred *) + protobuf_c_message_unpack (&ap_cred__descriptor, + allocator, len, data); +} +void ap_cred__free_unpacked + (ApCred *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &ap_cred__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_event_sta_wps_er_success__init + (WifiEventStaWpsErSuccess *message) +{ + static const WifiEventStaWpsErSuccess init_value = WIFI_EVENT_STA_WPS_ER_SUCCESS__INIT; + *message = init_value; +} +size_t wifi_event_sta_wps_er_success__get_packed_size + (const WifiEventStaWpsErSuccess *message) +{ + assert(message->base.descriptor == &wifi_event_sta_wps_er_success__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_event_sta_wps_er_success__pack + (const WifiEventStaWpsErSuccess *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_event_sta_wps_er_success__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_event_sta_wps_er_success__pack_to_buffer + (const WifiEventStaWpsErSuccess *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_event_sta_wps_er_success__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiEventStaWpsErSuccess * + wifi_event_sta_wps_er_success__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiEventStaWpsErSuccess *) + protobuf_c_message_unpack (&wifi_event_sta_wps_er_success__descriptor, + allocator, len, data); +} +void wifi_event_sta_wps_er_success__free_unpacked + (WifiEventStaWpsErSuccess *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_event_sta_wps_er_success__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_event_ap_probe_req_rx__init + (WifiEventApProbeReqRx *message) +{ + static const WifiEventApProbeReqRx init_value = WIFI_EVENT_AP_PROBE_REQ_RX__INIT; + *message = init_value; +} +size_t wifi_event_ap_probe_req_rx__get_packed_size + (const WifiEventApProbeReqRx *message) +{ + assert(message->base.descriptor == &wifi_event_ap_probe_req_rx__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_event_ap_probe_req_rx__pack + (const WifiEventApProbeReqRx *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_event_ap_probe_req_rx__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_event_ap_probe_req_rx__pack_to_buffer + (const WifiEventApProbeReqRx *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_event_ap_probe_req_rx__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiEventApProbeReqRx * + wifi_event_ap_probe_req_rx__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiEventApProbeReqRx *) + protobuf_c_message_unpack (&wifi_event_ap_probe_req_rx__descriptor, + allocator, len, data); +} +void wifi_event_ap_probe_req_rx__free_unpacked + (WifiEventApProbeReqRx *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_event_ap_probe_req_rx__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_event_bss_rssi_low__init + (WifiEventBssRssiLow *message) +{ + static const WifiEventBssRssiLow init_value = WIFI_EVENT_BSS_RSSI_LOW__INIT; + *message = init_value; +} +size_t wifi_event_bss_rssi_low__get_packed_size + (const WifiEventBssRssiLow *message) +{ + assert(message->base.descriptor == &wifi_event_bss_rssi_low__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_event_bss_rssi_low__pack + (const WifiEventBssRssiLow *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_event_bss_rssi_low__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_event_bss_rssi_low__pack_to_buffer + (const WifiEventBssRssiLow *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_event_bss_rssi_low__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiEventBssRssiLow * + wifi_event_bss_rssi_low__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiEventBssRssiLow *) + protobuf_c_message_unpack (&wifi_event_bss_rssi_low__descriptor, + allocator, len, data); +} +void wifi_event_bss_rssi_low__free_unpacked + (WifiEventBssRssiLow *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_event_bss_rssi_low__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_ftm_report_entry__init + (WifiFtmReportEntry *message) +{ + static const WifiFtmReportEntry init_value = WIFI_FTM_REPORT_ENTRY__INIT; + *message = init_value; +} +size_t wifi_ftm_report_entry__get_packed_size + (const WifiFtmReportEntry *message) +{ + assert(message->base.descriptor == &wifi_ftm_report_entry__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_ftm_report_entry__pack + (const WifiFtmReportEntry *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_ftm_report_entry__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_ftm_report_entry__pack_to_buffer + (const WifiFtmReportEntry *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_ftm_report_entry__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiFtmReportEntry * + wifi_ftm_report_entry__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiFtmReportEntry *) + protobuf_c_message_unpack (&wifi_ftm_report_entry__descriptor, + allocator, len, data); +} +void wifi_ftm_report_entry__free_unpacked + (WifiFtmReportEntry *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_ftm_report_entry__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_event_ftm_report__init + (WifiEventFtmReport *message) +{ + static const WifiEventFtmReport init_value = WIFI_EVENT_FTM_REPORT__INIT; + *message = init_value; +} +size_t wifi_event_ftm_report__get_packed_size + (const WifiEventFtmReport *message) +{ + assert(message->base.descriptor == &wifi_event_ftm_report__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_event_ftm_report__pack + (const WifiEventFtmReport *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_event_ftm_report__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_event_ftm_report__pack_to_buffer + (const WifiEventFtmReport *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_event_ftm_report__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiEventFtmReport * + wifi_event_ftm_report__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiEventFtmReport *) + protobuf_c_message_unpack (&wifi_event_ftm_report__descriptor, + allocator, len, data); +} +void wifi_event_ftm_report__free_unpacked + (WifiEventFtmReport *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_event_ftm_report__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_event_action_tx_status__init + (WifiEventActionTxStatus *message) +{ + static const WifiEventActionTxStatus init_value = WIFI_EVENT_ACTION_TX_STATUS__INIT; + *message = init_value; +} +size_t wifi_event_action_tx_status__get_packed_size + (const WifiEventActionTxStatus *message) +{ + assert(message->base.descriptor == &wifi_event_action_tx_status__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_event_action_tx_status__pack + (const WifiEventActionTxStatus *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_event_action_tx_status__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_event_action_tx_status__pack_to_buffer + (const WifiEventActionTxStatus *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_event_action_tx_status__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiEventActionTxStatus * + wifi_event_action_tx_status__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiEventActionTxStatus *) + protobuf_c_message_unpack (&wifi_event_action_tx_status__descriptor, + allocator, len, data); +} +void wifi_event_action_tx_status__free_unpacked + (WifiEventActionTxStatus *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_event_action_tx_status__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_event_roc_done__init + (WifiEventRocDone *message) +{ + static const WifiEventRocDone init_value = WIFI_EVENT_ROC_DONE__INIT; + *message = init_value; +} +size_t wifi_event_roc_done__get_packed_size + (const WifiEventRocDone *message) +{ + assert(message->base.descriptor == &wifi_event_roc_done__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_event_roc_done__pack + (const WifiEventRocDone *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_event_roc_done__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_event_roc_done__pack_to_buffer + (const WifiEventRocDone *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_event_roc_done__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiEventRocDone * + wifi_event_roc_done__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiEventRocDone *) + protobuf_c_message_unpack (&wifi_event_roc_done__descriptor, + allocator, len, data); +} +void wifi_event_roc_done__free_unpacked + (WifiEventRocDone *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_event_roc_done__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_event_ap_wps_rg_pin__init + (WifiEventApWpsRgPin *message) +{ + static const WifiEventApWpsRgPin init_value = WIFI_EVENT_AP_WPS_RG_PIN__INIT; + *message = init_value; +} +size_t wifi_event_ap_wps_rg_pin__get_packed_size + (const WifiEventApWpsRgPin *message) +{ + assert(message->base.descriptor == &wifi_event_ap_wps_rg_pin__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_event_ap_wps_rg_pin__pack + (const WifiEventApWpsRgPin *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_event_ap_wps_rg_pin__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_event_ap_wps_rg_pin__pack_to_buffer + (const WifiEventApWpsRgPin *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_event_ap_wps_rg_pin__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiEventApWpsRgPin * + wifi_event_ap_wps_rg_pin__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiEventApWpsRgPin *) + protobuf_c_message_unpack (&wifi_event_ap_wps_rg_pin__descriptor, + allocator, len, data); +} +void wifi_event_ap_wps_rg_pin__free_unpacked + (WifiEventApWpsRgPin *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_event_ap_wps_rg_pin__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_event_ap_wps_rg_fail_reason__init + (WifiEventApWpsRgFailReason *message) +{ + static const WifiEventApWpsRgFailReason init_value = WIFI_EVENT_AP_WPS_RG_FAIL_REASON__INIT; + *message = init_value; +} +size_t wifi_event_ap_wps_rg_fail_reason__get_packed_size + (const WifiEventApWpsRgFailReason *message) +{ + assert(message->base.descriptor == &wifi_event_ap_wps_rg_fail_reason__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_event_ap_wps_rg_fail_reason__pack + (const WifiEventApWpsRgFailReason *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_event_ap_wps_rg_fail_reason__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_event_ap_wps_rg_fail_reason__pack_to_buffer + (const WifiEventApWpsRgFailReason *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_event_ap_wps_rg_fail_reason__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiEventApWpsRgFailReason * + wifi_event_ap_wps_rg_fail_reason__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiEventApWpsRgFailReason *) + protobuf_c_message_unpack (&wifi_event_ap_wps_rg_fail_reason__descriptor, + allocator, len, data); +} +void wifi_event_ap_wps_rg_fail_reason__free_unpacked + (WifiEventApWpsRgFailReason *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_event_ap_wps_rg_fail_reason__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_event_ap_wps_rg_success__init + (WifiEventApWpsRgSuccess *message) +{ + static const WifiEventApWpsRgSuccess init_value = WIFI_EVENT_AP_WPS_RG_SUCCESS__INIT; + *message = init_value; +} +size_t wifi_event_ap_wps_rg_success__get_packed_size + (const WifiEventApWpsRgSuccess *message) +{ + assert(message->base.descriptor == &wifi_event_ap_wps_rg_success__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_event_ap_wps_rg_success__pack + (const WifiEventApWpsRgSuccess *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_event_ap_wps_rg_success__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_event_ap_wps_rg_success__pack_to_buffer + (const WifiEventApWpsRgSuccess *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_event_ap_wps_rg_success__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiEventApWpsRgSuccess * + wifi_event_ap_wps_rg_success__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiEventApWpsRgSuccess *) + protobuf_c_message_unpack (&wifi_event_ap_wps_rg_success__descriptor, + allocator, len, data); +} +void wifi_event_ap_wps_rg_success__free_unpacked + (WifiEventApWpsRgSuccess *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_event_ap_wps_rg_success__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_protocols__init + (WifiProtocols *message) +{ + static const WifiProtocols init_value = WIFI_PROTOCOLS__INIT; + *message = init_value; +} +size_t wifi_protocols__get_packed_size + (const WifiProtocols *message) +{ + assert(message->base.descriptor == &wifi_protocols__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_protocols__pack + (const WifiProtocols *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_protocols__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_protocols__pack_to_buffer + (const WifiProtocols *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_protocols__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiProtocols * + wifi_protocols__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiProtocols *) + protobuf_c_message_unpack (&wifi_protocols__descriptor, + allocator, len, data); +} +void wifi_protocols__free_unpacked + (WifiProtocols *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_protocols__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_bandwidths__init + (WifiBandwidths *message) +{ + static const WifiBandwidths init_value = WIFI_BANDWIDTHS__INIT; + *message = init_value; +} +size_t wifi_bandwidths__get_packed_size + (const WifiBandwidths *message) +{ + assert(message->base.descriptor == &wifi_bandwidths__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_bandwidths__pack + (const WifiBandwidths *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_bandwidths__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_bandwidths__pack_to_buffer + (const WifiBandwidths *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_bandwidths__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiBandwidths * + wifi_bandwidths__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiBandwidths *) + protobuf_c_message_unpack (&wifi_bandwidths__descriptor, + allocator, len, data); +} +void wifi_bandwidths__free_unpacked + (WifiBandwidths *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_bandwidths__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_itwt_setup_config__init + (WifiItwtSetupConfig *message) +{ + static const WifiItwtSetupConfig init_value = WIFI_ITWT_SETUP_CONFIG__INIT; + *message = init_value; +} +size_t wifi_itwt_setup_config__get_packed_size + (const WifiItwtSetupConfig *message) +{ + assert(message->base.descriptor == &wifi_itwt_setup_config__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_itwt_setup_config__pack + (const WifiItwtSetupConfig *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_itwt_setup_config__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_itwt_setup_config__pack_to_buffer + (const WifiItwtSetupConfig *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_itwt_setup_config__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiItwtSetupConfig * + wifi_itwt_setup_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiItwtSetupConfig *) + protobuf_c_message_unpack (&wifi_itwt_setup_config__descriptor, + allocator, len, data); +} +void wifi_itwt_setup_config__free_unpacked + (WifiItwtSetupConfig *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_itwt_setup_config__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void wifi_twt_config__init + (WifiTwtConfig *message) +{ + static const WifiTwtConfig init_value = WIFI_TWT_CONFIG__INIT; + *message = init_value; +} +size_t wifi_twt_config__get_packed_size + (const WifiTwtConfig *message) +{ + assert(message->base.descriptor == &wifi_twt_config__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t wifi_twt_config__pack + (const WifiTwtConfig *message, + uint8_t *out) +{ + assert(message->base.descriptor == &wifi_twt_config__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t wifi_twt_config__pack_to_buffer + (const WifiTwtConfig *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &wifi_twt_config__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +WifiTwtConfig * + wifi_twt_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (WifiTwtConfig *) + protobuf_c_message_unpack (&wifi_twt_config__descriptor, + allocator, len, data); +} +void wifi_twt_config__free_unpacked + (WifiTwtConfig *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &wifi_twt_config__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void esp_app_desc__init + (EspAppDesc *message) +{ + static const EspAppDesc init_value = ESP_APP_DESC__INIT; + *message = init_value; +} +size_t esp_app_desc__get_packed_size + (const EspAppDesc *message) +{ + assert(message->base.descriptor == &esp_app_desc__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t esp_app_desc__pack + (const EspAppDesc *message, + uint8_t *out) +{ + assert(message->base.descriptor == &esp_app_desc__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t esp_app_desc__pack_to_buffer + (const EspAppDesc *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &esp_app_desc__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +EspAppDesc * + esp_app_desc__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (EspAppDesc *) + protobuf_c_message_unpack (&esp_app_desc__descriptor, + allocator, len, data); +} +void esp_app_desc__free_unpacked + (EspAppDesc *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &esp_app_desc__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void heap_size_threshold__init + (HeapSizeThreshold *message) +{ + static const HeapSizeThreshold init_value = HEAP_SIZE_THRESHOLD__INIT; + *message = init_value; +} +size_t heap_size_threshold__get_packed_size + (const HeapSizeThreshold *message) +{ + assert(message->base.descriptor == &heap_size_threshold__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t heap_size_threshold__pack + (const HeapSizeThreshold *message, + uint8_t *out) +{ + assert(message->base.descriptor == &heap_size_threshold__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t heap_size_threshold__pack_to_buffer + (const HeapSizeThreshold *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &heap_size_threshold__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +HeapSizeThreshold * + heap_size_threshold__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (HeapSizeThreshold *) + protobuf_c_message_unpack (&heap_size_threshold__descriptor, + allocator, len, data); +} +void heap_size_threshold__free_unpacked + (HeapSizeThreshold *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &heap_size_threshold__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void mem_info__init + (MemInfo *message) +{ + static const MemInfo init_value = MEM_INFO__INIT; + *message = init_value; +} +size_t mem_info__get_packed_size + (const MemInfo *message) +{ + assert(message->base.descriptor == &mem_info__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t mem_info__pack + (const MemInfo *message, + uint8_t *out) +{ + assert(message->base.descriptor == &mem_info__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t mem_info__pack_to_buffer + (const MemInfo *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &mem_info__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +MemInfo * + mem_info__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (MemInfo *) + protobuf_c_message_unpack (&mem_info__descriptor, + allocator, len, data); +} +void mem_info__free_unpacked + (MemInfo *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &mem_info__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void heap_info__init + (HeapInfo *message) +{ + static const HeapInfo init_value = HEAP_INFO__INIT; + *message = init_value; +} +size_t heap_info__get_packed_size + (const HeapInfo *message) +{ + assert(message->base.descriptor == &heap_info__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t heap_info__pack + (const HeapInfo *message, + uint8_t *out) +{ + assert(message->base.descriptor == &heap_info__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t heap_info__pack_to_buffer + (const HeapInfo *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &heap_info__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +HeapInfo * + heap_info__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (HeapInfo *) + protobuf_c_message_unpack (&heap_info__descriptor, + allocator, len, data); +} +void heap_info__free_unpacked + (HeapInfo *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &heap_info__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void connected_stalist__init + (ConnectedSTAList *message) +{ + static const ConnectedSTAList init_value = CONNECTED_STALIST__INIT; + *message = init_value; +} +size_t connected_stalist__get_packed_size + (const ConnectedSTAList *message) +{ + assert(message->base.descriptor == &connected_stalist__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t connected_stalist__pack + (const ConnectedSTAList *message, + uint8_t *out) +{ + assert(message->base.descriptor == &connected_stalist__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t connected_stalist__pack_to_buffer + (const ConnectedSTAList *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &connected_stalist__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +ConnectedSTAList * + connected_stalist__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (ConnectedSTAList *) + protobuf_c_message_unpack (&connected_stalist__descriptor, + allocator, len, data); +} +void connected_stalist__free_unpacked + (ConnectedSTAList *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &connected_stalist__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void eap_fast_config__init + (EapFastConfig *message) +{ + static const EapFastConfig init_value = EAP_FAST_CONFIG__INIT; + *message = init_value; +} +size_t eap_fast_config__get_packed_size + (const EapFastConfig *message) +{ + assert(message->base.descriptor == &eap_fast_config__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t eap_fast_config__pack + (const EapFastConfig *message, + uint8_t *out) +{ + assert(message->base.descriptor == &eap_fast_config__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t eap_fast_config__pack_to_buffer + (const EapFastConfig *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &eap_fast_config__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +EapFastConfig * + eap_fast_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (EapFastConfig *) + protobuf_c_message_unpack (&eap_fast_config__descriptor, + allocator, len, data); +} +void eap_fast_config__free_unpacked + (EapFastConfig *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &eap_fast_config__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__get_mac_address__init + (RpcReqGetMacAddress *message) +{ + static const RpcReqGetMacAddress init_value = RPC__REQ__GET_MAC_ADDRESS__INIT; + *message = init_value; +} +size_t rpc__req__get_mac_address__get_packed_size + (const RpcReqGetMacAddress *message) +{ + assert(message->base.descriptor == &rpc__req__get_mac_address__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__get_mac_address__pack + (const RpcReqGetMacAddress *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__get_mac_address__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__get_mac_address__pack_to_buffer + (const RpcReqGetMacAddress *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__get_mac_address__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqGetMacAddress * + rpc__req__get_mac_address__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqGetMacAddress *) + protobuf_c_message_unpack (&rpc__req__get_mac_address__descriptor, + allocator, len, data); +} +void rpc__req__get_mac_address__free_unpacked + (RpcReqGetMacAddress *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__get_mac_address__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__get_mac_address__init + (RpcRespGetMacAddress *message) +{ + static const RpcRespGetMacAddress init_value = RPC__RESP__GET_MAC_ADDRESS__INIT; + *message = init_value; +} +size_t rpc__resp__get_mac_address__get_packed_size + (const RpcRespGetMacAddress *message) +{ + assert(message->base.descriptor == &rpc__resp__get_mac_address__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__get_mac_address__pack + (const RpcRespGetMacAddress *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__get_mac_address__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__get_mac_address__pack_to_buffer + (const RpcRespGetMacAddress *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__get_mac_address__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespGetMacAddress * + rpc__resp__get_mac_address__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespGetMacAddress *) + protobuf_c_message_unpack (&rpc__resp__get_mac_address__descriptor, + allocator, len, data); +} +void rpc__resp__get_mac_address__free_unpacked + (RpcRespGetMacAddress *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__get_mac_address__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__get_mode__init + (RpcReqGetMode *message) +{ + static const RpcReqGetMode init_value = RPC__REQ__GET_MODE__INIT; + *message = init_value; +} +size_t rpc__req__get_mode__get_packed_size + (const RpcReqGetMode *message) +{ + assert(message->base.descriptor == &rpc__req__get_mode__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__get_mode__pack + (const RpcReqGetMode *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__get_mode__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__get_mode__pack_to_buffer + (const RpcReqGetMode *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__get_mode__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqGetMode * + rpc__req__get_mode__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqGetMode *) + protobuf_c_message_unpack (&rpc__req__get_mode__descriptor, + allocator, len, data); +} +void rpc__req__get_mode__free_unpacked + (RpcReqGetMode *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__get_mode__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__get_mode__init + (RpcRespGetMode *message) +{ + static const RpcRespGetMode init_value = RPC__RESP__GET_MODE__INIT; + *message = init_value; +} +size_t rpc__resp__get_mode__get_packed_size + (const RpcRespGetMode *message) +{ + assert(message->base.descriptor == &rpc__resp__get_mode__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__get_mode__pack + (const RpcRespGetMode *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__get_mode__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__get_mode__pack_to_buffer + (const RpcRespGetMode *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__get_mode__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespGetMode * + rpc__resp__get_mode__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespGetMode *) + protobuf_c_message_unpack (&rpc__resp__get_mode__descriptor, + allocator, len, data); +} +void rpc__resp__get_mode__free_unpacked + (RpcRespGetMode *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__get_mode__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__set_mode__init + (RpcReqSetMode *message) +{ + static const RpcReqSetMode init_value = RPC__REQ__SET_MODE__INIT; + *message = init_value; +} +size_t rpc__req__set_mode__get_packed_size + (const RpcReqSetMode *message) +{ + assert(message->base.descriptor == &rpc__req__set_mode__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__set_mode__pack + (const RpcReqSetMode *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__set_mode__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__set_mode__pack_to_buffer + (const RpcReqSetMode *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__set_mode__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqSetMode * + rpc__req__set_mode__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqSetMode *) + protobuf_c_message_unpack (&rpc__req__set_mode__descriptor, + allocator, len, data); +} +void rpc__req__set_mode__free_unpacked + (RpcReqSetMode *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__set_mode__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__set_mode__init + (RpcRespSetMode *message) +{ + static const RpcRespSetMode init_value = RPC__RESP__SET_MODE__INIT; + *message = init_value; +} +size_t rpc__resp__set_mode__get_packed_size + (const RpcRespSetMode *message) +{ + assert(message->base.descriptor == &rpc__resp__set_mode__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__set_mode__pack + (const RpcRespSetMode *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__set_mode__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__set_mode__pack_to_buffer + (const RpcRespSetMode *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__set_mode__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespSetMode * + rpc__resp__set_mode__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespSetMode *) + protobuf_c_message_unpack (&rpc__resp__set_mode__descriptor, + allocator, len, data); +} +void rpc__resp__set_mode__free_unpacked + (RpcRespSetMode *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__set_mode__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__get_ps__init + (RpcReqGetPs *message) +{ + static const RpcReqGetPs init_value = RPC__REQ__GET_PS__INIT; + *message = init_value; +} +size_t rpc__req__get_ps__get_packed_size + (const RpcReqGetPs *message) +{ + assert(message->base.descriptor == &rpc__req__get_ps__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__get_ps__pack + (const RpcReqGetPs *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__get_ps__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__get_ps__pack_to_buffer + (const RpcReqGetPs *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__get_ps__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqGetPs * + rpc__req__get_ps__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqGetPs *) + protobuf_c_message_unpack (&rpc__req__get_ps__descriptor, + allocator, len, data); +} +void rpc__req__get_ps__free_unpacked + (RpcReqGetPs *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__get_ps__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__get_ps__init + (RpcRespGetPs *message) +{ + static const RpcRespGetPs init_value = RPC__RESP__GET_PS__INIT; + *message = init_value; +} +size_t rpc__resp__get_ps__get_packed_size + (const RpcRespGetPs *message) +{ + assert(message->base.descriptor == &rpc__resp__get_ps__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__get_ps__pack + (const RpcRespGetPs *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__get_ps__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__get_ps__pack_to_buffer + (const RpcRespGetPs *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__get_ps__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespGetPs * + rpc__resp__get_ps__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespGetPs *) + protobuf_c_message_unpack (&rpc__resp__get_ps__descriptor, + allocator, len, data); +} +void rpc__resp__get_ps__free_unpacked + (RpcRespGetPs *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__get_ps__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__set_ps__init + (RpcReqSetPs *message) +{ + static const RpcReqSetPs init_value = RPC__REQ__SET_PS__INIT; + *message = init_value; +} +size_t rpc__req__set_ps__get_packed_size + (const RpcReqSetPs *message) +{ + assert(message->base.descriptor == &rpc__req__set_ps__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__set_ps__pack + (const RpcReqSetPs *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__set_ps__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__set_ps__pack_to_buffer + (const RpcReqSetPs *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__set_ps__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqSetPs * + rpc__req__set_ps__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqSetPs *) + protobuf_c_message_unpack (&rpc__req__set_ps__descriptor, + allocator, len, data); +} +void rpc__req__set_ps__free_unpacked + (RpcReqSetPs *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__set_ps__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__set_ps__init + (RpcRespSetPs *message) +{ + static const RpcRespSetPs init_value = RPC__RESP__SET_PS__INIT; + *message = init_value; +} +size_t rpc__resp__set_ps__get_packed_size + (const RpcRespSetPs *message) +{ + assert(message->base.descriptor == &rpc__resp__set_ps__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__set_ps__pack + (const RpcRespSetPs *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__set_ps__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__set_ps__pack_to_buffer + (const RpcRespSetPs *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__set_ps__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespSetPs * + rpc__resp__set_ps__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespSetPs *) + protobuf_c_message_unpack (&rpc__resp__set_ps__descriptor, + allocator, len, data); +} +void rpc__resp__set_ps__free_unpacked + (RpcRespSetPs *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__set_ps__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__set_mac_address__init + (RpcReqSetMacAddress *message) +{ + static const RpcReqSetMacAddress init_value = RPC__REQ__SET_MAC_ADDRESS__INIT; + *message = init_value; +} +size_t rpc__req__set_mac_address__get_packed_size + (const RpcReqSetMacAddress *message) +{ + assert(message->base.descriptor == &rpc__req__set_mac_address__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__set_mac_address__pack + (const RpcReqSetMacAddress *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__set_mac_address__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__set_mac_address__pack_to_buffer + (const RpcReqSetMacAddress *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__set_mac_address__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqSetMacAddress * + rpc__req__set_mac_address__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqSetMacAddress *) + protobuf_c_message_unpack (&rpc__req__set_mac_address__descriptor, + allocator, len, data); +} +void rpc__req__set_mac_address__free_unpacked + (RpcReqSetMacAddress *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__set_mac_address__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__set_mac_address__init + (RpcRespSetMacAddress *message) +{ + static const RpcRespSetMacAddress init_value = RPC__RESP__SET_MAC_ADDRESS__INIT; + *message = init_value; +} +size_t rpc__resp__set_mac_address__get_packed_size + (const RpcRespSetMacAddress *message) +{ + assert(message->base.descriptor == &rpc__resp__set_mac_address__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__set_mac_address__pack + (const RpcRespSetMacAddress *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__set_mac_address__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__set_mac_address__pack_to_buffer + (const RpcRespSetMacAddress *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__set_mac_address__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespSetMacAddress * + rpc__resp__set_mac_address__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespSetMacAddress *) + protobuf_c_message_unpack (&rpc__resp__set_mac_address__descriptor, + allocator, len, data); +} +void rpc__resp__set_mac_address__free_unpacked + (RpcRespSetMacAddress *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__set_mac_address__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__otabegin__init + (RpcReqOTABegin *message) +{ + static const RpcReqOTABegin init_value = RPC__REQ__OTABEGIN__INIT; + *message = init_value; +} +size_t rpc__req__otabegin__get_packed_size + (const RpcReqOTABegin *message) +{ + assert(message->base.descriptor == &rpc__req__otabegin__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__otabegin__pack + (const RpcReqOTABegin *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__otabegin__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__otabegin__pack_to_buffer + (const RpcReqOTABegin *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__otabegin__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqOTABegin * + rpc__req__otabegin__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqOTABegin *) + protobuf_c_message_unpack (&rpc__req__otabegin__descriptor, + allocator, len, data); +} +void rpc__req__otabegin__free_unpacked + (RpcReqOTABegin *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__otabegin__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__otabegin__init + (RpcRespOTABegin *message) +{ + static const RpcRespOTABegin init_value = RPC__RESP__OTABEGIN__INIT; + *message = init_value; +} +size_t rpc__resp__otabegin__get_packed_size + (const RpcRespOTABegin *message) +{ + assert(message->base.descriptor == &rpc__resp__otabegin__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__otabegin__pack + (const RpcRespOTABegin *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__otabegin__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__otabegin__pack_to_buffer + (const RpcRespOTABegin *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__otabegin__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespOTABegin * + rpc__resp__otabegin__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespOTABegin *) + protobuf_c_message_unpack (&rpc__resp__otabegin__descriptor, + allocator, len, data); +} +void rpc__resp__otabegin__free_unpacked + (RpcRespOTABegin *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__otabegin__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__otawrite__init + (RpcReqOTAWrite *message) +{ + static const RpcReqOTAWrite init_value = RPC__REQ__OTAWRITE__INIT; + *message = init_value; +} +size_t rpc__req__otawrite__get_packed_size + (const RpcReqOTAWrite *message) +{ + assert(message->base.descriptor == &rpc__req__otawrite__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__otawrite__pack + (const RpcReqOTAWrite *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__otawrite__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__otawrite__pack_to_buffer + (const RpcReqOTAWrite *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__otawrite__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqOTAWrite * + rpc__req__otawrite__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqOTAWrite *) + protobuf_c_message_unpack (&rpc__req__otawrite__descriptor, + allocator, len, data); +} +void rpc__req__otawrite__free_unpacked + (RpcReqOTAWrite *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__otawrite__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__otawrite__init + (RpcRespOTAWrite *message) +{ + static const RpcRespOTAWrite init_value = RPC__RESP__OTAWRITE__INIT; + *message = init_value; +} +size_t rpc__resp__otawrite__get_packed_size + (const RpcRespOTAWrite *message) +{ + assert(message->base.descriptor == &rpc__resp__otawrite__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__otawrite__pack + (const RpcRespOTAWrite *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__otawrite__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__otawrite__pack_to_buffer + (const RpcRespOTAWrite *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__otawrite__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespOTAWrite * + rpc__resp__otawrite__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespOTAWrite *) + protobuf_c_message_unpack (&rpc__resp__otawrite__descriptor, + allocator, len, data); +} +void rpc__resp__otawrite__free_unpacked + (RpcRespOTAWrite *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__otawrite__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__otaend__init + (RpcReqOTAEnd *message) +{ + static const RpcReqOTAEnd init_value = RPC__REQ__OTAEND__INIT; + *message = init_value; +} +size_t rpc__req__otaend__get_packed_size + (const RpcReqOTAEnd *message) +{ + assert(message->base.descriptor == &rpc__req__otaend__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__otaend__pack + (const RpcReqOTAEnd *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__otaend__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__otaend__pack_to_buffer + (const RpcReqOTAEnd *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__otaend__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqOTAEnd * + rpc__req__otaend__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqOTAEnd *) + protobuf_c_message_unpack (&rpc__req__otaend__descriptor, + allocator, len, data); +} +void rpc__req__otaend__free_unpacked + (RpcReqOTAEnd *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__otaend__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__otaend__init + (RpcRespOTAEnd *message) +{ + static const RpcRespOTAEnd init_value = RPC__RESP__OTAEND__INIT; + *message = init_value; +} +size_t rpc__resp__otaend__get_packed_size + (const RpcRespOTAEnd *message) +{ + assert(message->base.descriptor == &rpc__resp__otaend__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__otaend__pack + (const RpcRespOTAEnd *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__otaend__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__otaend__pack_to_buffer + (const RpcRespOTAEnd *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__otaend__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespOTAEnd * + rpc__resp__otaend__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespOTAEnd *) + protobuf_c_message_unpack (&rpc__resp__otaend__descriptor, + allocator, len, data); +} +void rpc__resp__otaend__free_unpacked + (RpcRespOTAEnd *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__otaend__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__otaactivate__init + (RpcReqOTAActivate *message) +{ + static const RpcReqOTAActivate init_value = RPC__REQ__OTAACTIVATE__INIT; + *message = init_value; +} +size_t rpc__req__otaactivate__get_packed_size + (const RpcReqOTAActivate *message) +{ + assert(message->base.descriptor == &rpc__req__otaactivate__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__otaactivate__pack + (const RpcReqOTAActivate *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__otaactivate__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__otaactivate__pack_to_buffer + (const RpcReqOTAActivate *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__otaactivate__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqOTAActivate * + rpc__req__otaactivate__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqOTAActivate *) + protobuf_c_message_unpack (&rpc__req__otaactivate__descriptor, + allocator, len, data); +} +void rpc__req__otaactivate__free_unpacked + (RpcReqOTAActivate *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__otaactivate__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__otaactivate__init + (RpcRespOTAActivate *message) +{ + static const RpcRespOTAActivate init_value = RPC__RESP__OTAACTIVATE__INIT; + *message = init_value; +} +size_t rpc__resp__otaactivate__get_packed_size + (const RpcRespOTAActivate *message) +{ + assert(message->base.descriptor == &rpc__resp__otaactivate__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__otaactivate__pack + (const RpcRespOTAActivate *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__otaactivate__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__otaactivate__pack_to_buffer + (const RpcRespOTAActivate *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__otaactivate__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespOTAActivate * + rpc__resp__otaactivate__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespOTAActivate *) + protobuf_c_message_unpack (&rpc__resp__otaactivate__descriptor, + allocator, len, data); +} +void rpc__resp__otaactivate__free_unpacked + (RpcRespOTAActivate *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__otaactivate__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__app_get_desc__init + (RpcReqAppGetDesc *message) +{ + static const RpcReqAppGetDesc init_value = RPC__REQ__APP_GET_DESC__INIT; + *message = init_value; +} +size_t rpc__req__app_get_desc__get_packed_size + (const RpcReqAppGetDesc *message) +{ + assert(message->base.descriptor == &rpc__req__app_get_desc__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__app_get_desc__pack + (const RpcReqAppGetDesc *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__app_get_desc__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__app_get_desc__pack_to_buffer + (const RpcReqAppGetDesc *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__app_get_desc__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqAppGetDesc * + rpc__req__app_get_desc__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqAppGetDesc *) + protobuf_c_message_unpack (&rpc__req__app_get_desc__descriptor, + allocator, len, data); +} +void rpc__req__app_get_desc__free_unpacked + (RpcReqAppGetDesc *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__app_get_desc__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__app_get_desc__init + (RpcRespAppGetDesc *message) +{ + static const RpcRespAppGetDesc init_value = RPC__RESP__APP_GET_DESC__INIT; + *message = init_value; +} +size_t rpc__resp__app_get_desc__get_packed_size + (const RpcRespAppGetDesc *message) +{ + assert(message->base.descriptor == &rpc__resp__app_get_desc__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__app_get_desc__pack + (const RpcRespAppGetDesc *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__app_get_desc__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__app_get_desc__pack_to_buffer + (const RpcRespAppGetDesc *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__app_get_desc__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespAppGetDesc * + rpc__resp__app_get_desc__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespAppGetDesc *) + protobuf_c_message_unpack (&rpc__resp__app_get_desc__descriptor, + allocator, len, data); +} +void rpc__resp__app_get_desc__free_unpacked + (RpcRespAppGetDesc *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__app_get_desc__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_set_max_tx_power__init + (RpcReqWifiSetMaxTxPower *message) +{ + static const RpcReqWifiSetMaxTxPower init_value = RPC__REQ__WIFI_SET_MAX_TX_POWER__INIT; + *message = init_value; +} +size_t rpc__req__wifi_set_max_tx_power__get_packed_size + (const RpcReqWifiSetMaxTxPower *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_max_tx_power__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_set_max_tx_power__pack + (const RpcReqWifiSetMaxTxPower *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_max_tx_power__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_set_max_tx_power__pack_to_buffer + (const RpcReqWifiSetMaxTxPower *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_max_tx_power__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiSetMaxTxPower * + rpc__req__wifi_set_max_tx_power__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiSetMaxTxPower *) + protobuf_c_message_unpack (&rpc__req__wifi_set_max_tx_power__descriptor, + allocator, len, data); +} +void rpc__req__wifi_set_max_tx_power__free_unpacked + (RpcReqWifiSetMaxTxPower *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_set_max_tx_power__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_set_max_tx_power__init + (RpcRespWifiSetMaxTxPower *message) +{ + static const RpcRespWifiSetMaxTxPower init_value = RPC__RESP__WIFI_SET_MAX_TX_POWER__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_set_max_tx_power__get_packed_size + (const RpcRespWifiSetMaxTxPower *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_max_tx_power__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_set_max_tx_power__pack + (const RpcRespWifiSetMaxTxPower *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_max_tx_power__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_set_max_tx_power__pack_to_buffer + (const RpcRespWifiSetMaxTxPower *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_max_tx_power__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiSetMaxTxPower * + rpc__resp__wifi_set_max_tx_power__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiSetMaxTxPower *) + protobuf_c_message_unpack (&rpc__resp__wifi_set_max_tx_power__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_set_max_tx_power__free_unpacked + (RpcRespWifiSetMaxTxPower *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_set_max_tx_power__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_get_max_tx_power__init + (RpcReqWifiGetMaxTxPower *message) +{ + static const RpcReqWifiGetMaxTxPower init_value = RPC__REQ__WIFI_GET_MAX_TX_POWER__INIT; + *message = init_value; +} +size_t rpc__req__wifi_get_max_tx_power__get_packed_size + (const RpcReqWifiGetMaxTxPower *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_get_max_tx_power__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_get_max_tx_power__pack + (const RpcReqWifiGetMaxTxPower *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_get_max_tx_power__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_get_max_tx_power__pack_to_buffer + (const RpcReqWifiGetMaxTxPower *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_get_max_tx_power__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiGetMaxTxPower * + rpc__req__wifi_get_max_tx_power__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiGetMaxTxPower *) + protobuf_c_message_unpack (&rpc__req__wifi_get_max_tx_power__descriptor, + allocator, len, data); +} +void rpc__req__wifi_get_max_tx_power__free_unpacked + (RpcReqWifiGetMaxTxPower *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_get_max_tx_power__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_get_max_tx_power__init + (RpcRespWifiGetMaxTxPower *message) +{ + static const RpcRespWifiGetMaxTxPower init_value = RPC__RESP__WIFI_GET_MAX_TX_POWER__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_get_max_tx_power__get_packed_size + (const RpcRespWifiGetMaxTxPower *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_get_max_tx_power__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_get_max_tx_power__pack + (const RpcRespWifiGetMaxTxPower *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_get_max_tx_power__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_get_max_tx_power__pack_to_buffer + (const RpcRespWifiGetMaxTxPower *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_get_max_tx_power__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiGetMaxTxPower * + rpc__resp__wifi_get_max_tx_power__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiGetMaxTxPower *) + protobuf_c_message_unpack (&rpc__resp__wifi_get_max_tx_power__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_get_max_tx_power__free_unpacked + (RpcRespWifiGetMaxTxPower *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_get_max_tx_power__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__config_heartbeat__init + (RpcReqConfigHeartbeat *message) +{ + static const RpcReqConfigHeartbeat init_value = RPC__REQ__CONFIG_HEARTBEAT__INIT; + *message = init_value; +} +size_t rpc__req__config_heartbeat__get_packed_size + (const RpcReqConfigHeartbeat *message) +{ + assert(message->base.descriptor == &rpc__req__config_heartbeat__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__config_heartbeat__pack + (const RpcReqConfigHeartbeat *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__config_heartbeat__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__config_heartbeat__pack_to_buffer + (const RpcReqConfigHeartbeat *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__config_heartbeat__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqConfigHeartbeat * + rpc__req__config_heartbeat__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqConfigHeartbeat *) + protobuf_c_message_unpack (&rpc__req__config_heartbeat__descriptor, + allocator, len, data); +} +void rpc__req__config_heartbeat__free_unpacked + (RpcReqConfigHeartbeat *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__config_heartbeat__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__config_heartbeat__init + (RpcRespConfigHeartbeat *message) +{ + static const RpcRespConfigHeartbeat init_value = RPC__RESP__CONFIG_HEARTBEAT__INIT; + *message = init_value; +} +size_t rpc__resp__config_heartbeat__get_packed_size + (const RpcRespConfigHeartbeat *message) +{ + assert(message->base.descriptor == &rpc__resp__config_heartbeat__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__config_heartbeat__pack + (const RpcRespConfigHeartbeat *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__config_heartbeat__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__config_heartbeat__pack_to_buffer + (const RpcRespConfigHeartbeat *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__config_heartbeat__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespConfigHeartbeat * + rpc__resp__config_heartbeat__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespConfigHeartbeat *) + protobuf_c_message_unpack (&rpc__resp__config_heartbeat__descriptor, + allocator, len, data); +} +void rpc__resp__config_heartbeat__free_unpacked + (RpcRespConfigHeartbeat *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__config_heartbeat__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_init__init + (RpcReqWifiInit *message) +{ + static const RpcReqWifiInit init_value = RPC__REQ__WIFI_INIT__INIT; + *message = init_value; +} +size_t rpc__req__wifi_init__get_packed_size + (const RpcReqWifiInit *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_init__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_init__pack + (const RpcReqWifiInit *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_init__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_init__pack_to_buffer + (const RpcReqWifiInit *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_init__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiInit * + rpc__req__wifi_init__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiInit *) + protobuf_c_message_unpack (&rpc__req__wifi_init__descriptor, + allocator, len, data); +} +void rpc__req__wifi_init__free_unpacked + (RpcReqWifiInit *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_init__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_init__init + (RpcRespWifiInit *message) +{ + static const RpcRespWifiInit init_value = RPC__RESP__WIFI_INIT__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_init__get_packed_size + (const RpcRespWifiInit *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_init__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_init__pack + (const RpcRespWifiInit *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_init__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_init__pack_to_buffer + (const RpcRespWifiInit *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_init__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiInit * + rpc__resp__wifi_init__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiInit *) + protobuf_c_message_unpack (&rpc__resp__wifi_init__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_init__free_unpacked + (RpcRespWifiInit *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_init__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_deinit__init + (RpcReqWifiDeinit *message) +{ + static const RpcReqWifiDeinit init_value = RPC__REQ__WIFI_DEINIT__INIT; + *message = init_value; +} +size_t rpc__req__wifi_deinit__get_packed_size + (const RpcReqWifiDeinit *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_deinit__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_deinit__pack + (const RpcReqWifiDeinit *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_deinit__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_deinit__pack_to_buffer + (const RpcReqWifiDeinit *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_deinit__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiDeinit * + rpc__req__wifi_deinit__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiDeinit *) + protobuf_c_message_unpack (&rpc__req__wifi_deinit__descriptor, + allocator, len, data); +} +void rpc__req__wifi_deinit__free_unpacked + (RpcReqWifiDeinit *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_deinit__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_deinit__init + (RpcRespWifiDeinit *message) +{ + static const RpcRespWifiDeinit init_value = RPC__RESP__WIFI_DEINIT__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_deinit__get_packed_size + (const RpcRespWifiDeinit *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_deinit__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_deinit__pack + (const RpcRespWifiDeinit *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_deinit__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_deinit__pack_to_buffer + (const RpcRespWifiDeinit *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_deinit__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiDeinit * + rpc__resp__wifi_deinit__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiDeinit *) + protobuf_c_message_unpack (&rpc__resp__wifi_deinit__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_deinit__free_unpacked + (RpcRespWifiDeinit *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_deinit__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_set_config__init + (RpcReqWifiSetConfig *message) +{ + static const RpcReqWifiSetConfig init_value = RPC__REQ__WIFI_SET_CONFIG__INIT; + *message = init_value; +} +size_t rpc__req__wifi_set_config__get_packed_size + (const RpcReqWifiSetConfig *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_config__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_set_config__pack + (const RpcReqWifiSetConfig *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_config__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_set_config__pack_to_buffer + (const RpcReqWifiSetConfig *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_config__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiSetConfig * + rpc__req__wifi_set_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiSetConfig *) + protobuf_c_message_unpack (&rpc__req__wifi_set_config__descriptor, + allocator, len, data); +} +void rpc__req__wifi_set_config__free_unpacked + (RpcReqWifiSetConfig *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_set_config__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_set_config__init + (RpcRespWifiSetConfig *message) +{ + static const RpcRespWifiSetConfig init_value = RPC__RESP__WIFI_SET_CONFIG__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_set_config__get_packed_size + (const RpcRespWifiSetConfig *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_config__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_set_config__pack + (const RpcRespWifiSetConfig *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_config__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_set_config__pack_to_buffer + (const RpcRespWifiSetConfig *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_config__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiSetConfig * + rpc__resp__wifi_set_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiSetConfig *) + protobuf_c_message_unpack (&rpc__resp__wifi_set_config__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_set_config__free_unpacked + (RpcRespWifiSetConfig *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_set_config__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_get_config__init + (RpcReqWifiGetConfig *message) +{ + static const RpcReqWifiGetConfig init_value = RPC__REQ__WIFI_GET_CONFIG__INIT; + *message = init_value; +} +size_t rpc__req__wifi_get_config__get_packed_size + (const RpcReqWifiGetConfig *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_get_config__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_get_config__pack + (const RpcReqWifiGetConfig *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_get_config__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_get_config__pack_to_buffer + (const RpcReqWifiGetConfig *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_get_config__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiGetConfig * + rpc__req__wifi_get_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiGetConfig *) + protobuf_c_message_unpack (&rpc__req__wifi_get_config__descriptor, + allocator, len, data); +} +void rpc__req__wifi_get_config__free_unpacked + (RpcReqWifiGetConfig *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_get_config__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_get_config__init + (RpcRespWifiGetConfig *message) +{ + static const RpcRespWifiGetConfig init_value = RPC__RESP__WIFI_GET_CONFIG__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_get_config__get_packed_size + (const RpcRespWifiGetConfig *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_get_config__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_get_config__pack + (const RpcRespWifiGetConfig *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_get_config__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_get_config__pack_to_buffer + (const RpcRespWifiGetConfig *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_get_config__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiGetConfig * + rpc__resp__wifi_get_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiGetConfig *) + protobuf_c_message_unpack (&rpc__resp__wifi_get_config__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_get_config__free_unpacked + (RpcRespWifiGetConfig *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_get_config__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_connect__init + (RpcReqWifiConnect *message) +{ + static const RpcReqWifiConnect init_value = RPC__REQ__WIFI_CONNECT__INIT; + *message = init_value; +} +size_t rpc__req__wifi_connect__get_packed_size + (const RpcReqWifiConnect *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_connect__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_connect__pack + (const RpcReqWifiConnect *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_connect__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_connect__pack_to_buffer + (const RpcReqWifiConnect *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_connect__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiConnect * + rpc__req__wifi_connect__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiConnect *) + protobuf_c_message_unpack (&rpc__req__wifi_connect__descriptor, + allocator, len, data); +} +void rpc__req__wifi_connect__free_unpacked + (RpcReqWifiConnect *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_connect__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_connect__init + (RpcRespWifiConnect *message) +{ + static const RpcRespWifiConnect init_value = RPC__RESP__WIFI_CONNECT__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_connect__get_packed_size + (const RpcRespWifiConnect *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_connect__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_connect__pack + (const RpcRespWifiConnect *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_connect__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_connect__pack_to_buffer + (const RpcRespWifiConnect *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_connect__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiConnect * + rpc__resp__wifi_connect__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiConnect *) + protobuf_c_message_unpack (&rpc__resp__wifi_connect__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_connect__free_unpacked + (RpcRespWifiConnect *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_connect__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_disconnect__init + (RpcReqWifiDisconnect *message) +{ + static const RpcReqWifiDisconnect init_value = RPC__REQ__WIFI_DISCONNECT__INIT; + *message = init_value; +} +size_t rpc__req__wifi_disconnect__get_packed_size + (const RpcReqWifiDisconnect *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_disconnect__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_disconnect__pack + (const RpcReqWifiDisconnect *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_disconnect__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_disconnect__pack_to_buffer + (const RpcReqWifiDisconnect *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_disconnect__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiDisconnect * + rpc__req__wifi_disconnect__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiDisconnect *) + protobuf_c_message_unpack (&rpc__req__wifi_disconnect__descriptor, + allocator, len, data); +} +void rpc__req__wifi_disconnect__free_unpacked + (RpcReqWifiDisconnect *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_disconnect__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_disconnect__init + (RpcRespWifiDisconnect *message) +{ + static const RpcRespWifiDisconnect init_value = RPC__RESP__WIFI_DISCONNECT__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_disconnect__get_packed_size + (const RpcRespWifiDisconnect *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_disconnect__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_disconnect__pack + (const RpcRespWifiDisconnect *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_disconnect__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_disconnect__pack_to_buffer + (const RpcRespWifiDisconnect *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_disconnect__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiDisconnect * + rpc__resp__wifi_disconnect__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiDisconnect *) + protobuf_c_message_unpack (&rpc__resp__wifi_disconnect__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_disconnect__free_unpacked + (RpcRespWifiDisconnect *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_disconnect__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_start__init + (RpcReqWifiStart *message) +{ + static const RpcReqWifiStart init_value = RPC__REQ__WIFI_START__INIT; + *message = init_value; +} +size_t rpc__req__wifi_start__get_packed_size + (const RpcReqWifiStart *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_start__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_start__pack + (const RpcReqWifiStart *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_start__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_start__pack_to_buffer + (const RpcReqWifiStart *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_start__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiStart * + rpc__req__wifi_start__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiStart *) + protobuf_c_message_unpack (&rpc__req__wifi_start__descriptor, + allocator, len, data); +} +void rpc__req__wifi_start__free_unpacked + (RpcReqWifiStart *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_start__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_start__init + (RpcRespWifiStart *message) +{ + static const RpcRespWifiStart init_value = RPC__RESP__WIFI_START__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_start__get_packed_size + (const RpcRespWifiStart *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_start__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_start__pack + (const RpcRespWifiStart *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_start__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_start__pack_to_buffer + (const RpcRespWifiStart *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_start__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiStart * + rpc__resp__wifi_start__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiStart *) + protobuf_c_message_unpack (&rpc__resp__wifi_start__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_start__free_unpacked + (RpcRespWifiStart *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_start__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_stop__init + (RpcReqWifiStop *message) +{ + static const RpcReqWifiStop init_value = RPC__REQ__WIFI_STOP__INIT; + *message = init_value; +} +size_t rpc__req__wifi_stop__get_packed_size + (const RpcReqWifiStop *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_stop__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_stop__pack + (const RpcReqWifiStop *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_stop__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_stop__pack_to_buffer + (const RpcReqWifiStop *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_stop__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiStop * + rpc__req__wifi_stop__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiStop *) + protobuf_c_message_unpack (&rpc__req__wifi_stop__descriptor, + allocator, len, data); +} +void rpc__req__wifi_stop__free_unpacked + (RpcReqWifiStop *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_stop__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_stop__init + (RpcRespWifiStop *message) +{ + static const RpcRespWifiStop init_value = RPC__RESP__WIFI_STOP__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_stop__get_packed_size + (const RpcRespWifiStop *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_stop__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_stop__pack + (const RpcRespWifiStop *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_stop__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_stop__pack_to_buffer + (const RpcRespWifiStop *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_stop__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiStop * + rpc__resp__wifi_stop__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiStop *) + protobuf_c_message_unpack (&rpc__resp__wifi_stop__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_stop__free_unpacked + (RpcRespWifiStop *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_stop__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_scan_start__init + (RpcReqWifiScanStart *message) +{ + static const RpcReqWifiScanStart init_value = RPC__REQ__WIFI_SCAN_START__INIT; + *message = init_value; +} +size_t rpc__req__wifi_scan_start__get_packed_size + (const RpcReqWifiScanStart *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_scan_start__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_scan_start__pack + (const RpcReqWifiScanStart *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_scan_start__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_scan_start__pack_to_buffer + (const RpcReqWifiScanStart *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_scan_start__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiScanStart * + rpc__req__wifi_scan_start__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiScanStart *) + protobuf_c_message_unpack (&rpc__req__wifi_scan_start__descriptor, + allocator, len, data); +} +void rpc__req__wifi_scan_start__free_unpacked + (RpcReqWifiScanStart *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_scan_start__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_scan_start__init + (RpcRespWifiScanStart *message) +{ + static const RpcRespWifiScanStart init_value = RPC__RESP__WIFI_SCAN_START__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_scan_start__get_packed_size + (const RpcRespWifiScanStart *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_scan_start__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_scan_start__pack + (const RpcRespWifiScanStart *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_scan_start__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_scan_start__pack_to_buffer + (const RpcRespWifiScanStart *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_scan_start__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiScanStart * + rpc__resp__wifi_scan_start__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiScanStart *) + protobuf_c_message_unpack (&rpc__resp__wifi_scan_start__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_scan_start__free_unpacked + (RpcRespWifiScanStart *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_scan_start__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_scan_stop__init + (RpcReqWifiScanStop *message) +{ + static const RpcReqWifiScanStop init_value = RPC__REQ__WIFI_SCAN_STOP__INIT; + *message = init_value; +} +size_t rpc__req__wifi_scan_stop__get_packed_size + (const RpcReqWifiScanStop *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_scan_stop__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_scan_stop__pack + (const RpcReqWifiScanStop *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_scan_stop__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_scan_stop__pack_to_buffer + (const RpcReqWifiScanStop *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_scan_stop__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiScanStop * + rpc__req__wifi_scan_stop__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiScanStop *) + protobuf_c_message_unpack (&rpc__req__wifi_scan_stop__descriptor, + allocator, len, data); +} +void rpc__req__wifi_scan_stop__free_unpacked + (RpcReqWifiScanStop *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_scan_stop__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_scan_stop__init + (RpcRespWifiScanStop *message) +{ + static const RpcRespWifiScanStop init_value = RPC__RESP__WIFI_SCAN_STOP__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_scan_stop__get_packed_size + (const RpcRespWifiScanStop *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_scan_stop__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_scan_stop__pack + (const RpcRespWifiScanStop *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_scan_stop__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_scan_stop__pack_to_buffer + (const RpcRespWifiScanStop *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_scan_stop__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiScanStop * + rpc__resp__wifi_scan_stop__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiScanStop *) + protobuf_c_message_unpack (&rpc__resp__wifi_scan_stop__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_scan_stop__free_unpacked + (RpcRespWifiScanStop *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_scan_stop__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_scan_get_ap_num__init + (RpcReqWifiScanGetApNum *message) +{ + static const RpcReqWifiScanGetApNum init_value = RPC__REQ__WIFI_SCAN_GET_AP_NUM__INIT; + *message = init_value; +} +size_t rpc__req__wifi_scan_get_ap_num__get_packed_size + (const RpcReqWifiScanGetApNum *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_scan_get_ap_num__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_scan_get_ap_num__pack + (const RpcReqWifiScanGetApNum *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_scan_get_ap_num__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_scan_get_ap_num__pack_to_buffer + (const RpcReqWifiScanGetApNum *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_scan_get_ap_num__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiScanGetApNum * + rpc__req__wifi_scan_get_ap_num__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiScanGetApNum *) + protobuf_c_message_unpack (&rpc__req__wifi_scan_get_ap_num__descriptor, + allocator, len, data); +} +void rpc__req__wifi_scan_get_ap_num__free_unpacked + (RpcReqWifiScanGetApNum *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_scan_get_ap_num__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_scan_get_ap_num__init + (RpcRespWifiScanGetApNum *message) +{ + static const RpcRespWifiScanGetApNum init_value = RPC__RESP__WIFI_SCAN_GET_AP_NUM__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_scan_get_ap_num__get_packed_size + (const RpcRespWifiScanGetApNum *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_scan_get_ap_num__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_scan_get_ap_num__pack + (const RpcRespWifiScanGetApNum *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_scan_get_ap_num__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_scan_get_ap_num__pack_to_buffer + (const RpcRespWifiScanGetApNum *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_scan_get_ap_num__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiScanGetApNum * + rpc__resp__wifi_scan_get_ap_num__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiScanGetApNum *) + protobuf_c_message_unpack (&rpc__resp__wifi_scan_get_ap_num__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_scan_get_ap_num__free_unpacked + (RpcRespWifiScanGetApNum *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_scan_get_ap_num__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_scan_get_ap_records__init + (RpcReqWifiScanGetApRecords *message) +{ + static const RpcReqWifiScanGetApRecords init_value = RPC__REQ__WIFI_SCAN_GET_AP_RECORDS__INIT; + *message = init_value; +} +size_t rpc__req__wifi_scan_get_ap_records__get_packed_size + (const RpcReqWifiScanGetApRecords *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_scan_get_ap_records__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_scan_get_ap_records__pack + (const RpcReqWifiScanGetApRecords *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_scan_get_ap_records__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_scan_get_ap_records__pack_to_buffer + (const RpcReqWifiScanGetApRecords *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_scan_get_ap_records__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiScanGetApRecords * + rpc__req__wifi_scan_get_ap_records__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiScanGetApRecords *) + protobuf_c_message_unpack (&rpc__req__wifi_scan_get_ap_records__descriptor, + allocator, len, data); +} +void rpc__req__wifi_scan_get_ap_records__free_unpacked + (RpcReqWifiScanGetApRecords *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_scan_get_ap_records__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_scan_get_ap_records__init + (RpcRespWifiScanGetApRecords *message) +{ + static const RpcRespWifiScanGetApRecords init_value = RPC__RESP__WIFI_SCAN_GET_AP_RECORDS__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_scan_get_ap_records__get_packed_size + (const RpcRespWifiScanGetApRecords *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_scan_get_ap_records__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_scan_get_ap_records__pack + (const RpcRespWifiScanGetApRecords *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_scan_get_ap_records__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_scan_get_ap_records__pack_to_buffer + (const RpcRespWifiScanGetApRecords *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_scan_get_ap_records__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiScanGetApRecords * + rpc__resp__wifi_scan_get_ap_records__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiScanGetApRecords *) + protobuf_c_message_unpack (&rpc__resp__wifi_scan_get_ap_records__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_scan_get_ap_records__free_unpacked + (RpcRespWifiScanGetApRecords *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_scan_get_ap_records__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_scan_get_ap_record__init + (RpcReqWifiScanGetApRecord *message) +{ + static const RpcReqWifiScanGetApRecord init_value = RPC__REQ__WIFI_SCAN_GET_AP_RECORD__INIT; + *message = init_value; +} +size_t rpc__req__wifi_scan_get_ap_record__get_packed_size + (const RpcReqWifiScanGetApRecord *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_scan_get_ap_record__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_scan_get_ap_record__pack + (const RpcReqWifiScanGetApRecord *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_scan_get_ap_record__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_scan_get_ap_record__pack_to_buffer + (const RpcReqWifiScanGetApRecord *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_scan_get_ap_record__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiScanGetApRecord * + rpc__req__wifi_scan_get_ap_record__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiScanGetApRecord *) + protobuf_c_message_unpack (&rpc__req__wifi_scan_get_ap_record__descriptor, + allocator, len, data); +} +void rpc__req__wifi_scan_get_ap_record__free_unpacked + (RpcReqWifiScanGetApRecord *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_scan_get_ap_record__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_scan_get_ap_record__init + (RpcRespWifiScanGetApRecord *message) +{ + static const RpcRespWifiScanGetApRecord init_value = RPC__RESP__WIFI_SCAN_GET_AP_RECORD__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_scan_get_ap_record__get_packed_size + (const RpcRespWifiScanGetApRecord *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_scan_get_ap_record__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_scan_get_ap_record__pack + (const RpcRespWifiScanGetApRecord *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_scan_get_ap_record__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_scan_get_ap_record__pack_to_buffer + (const RpcRespWifiScanGetApRecord *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_scan_get_ap_record__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiScanGetApRecord * + rpc__resp__wifi_scan_get_ap_record__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiScanGetApRecord *) + protobuf_c_message_unpack (&rpc__resp__wifi_scan_get_ap_record__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_scan_get_ap_record__free_unpacked + (RpcRespWifiScanGetApRecord *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_scan_get_ap_record__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_clear_ap_list__init + (RpcReqWifiClearApList *message) +{ + static const RpcReqWifiClearApList init_value = RPC__REQ__WIFI_CLEAR_AP_LIST__INIT; + *message = init_value; +} +size_t rpc__req__wifi_clear_ap_list__get_packed_size + (const RpcReqWifiClearApList *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_clear_ap_list__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_clear_ap_list__pack + (const RpcReqWifiClearApList *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_clear_ap_list__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_clear_ap_list__pack_to_buffer + (const RpcReqWifiClearApList *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_clear_ap_list__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiClearApList * + rpc__req__wifi_clear_ap_list__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiClearApList *) + protobuf_c_message_unpack (&rpc__req__wifi_clear_ap_list__descriptor, + allocator, len, data); +} +void rpc__req__wifi_clear_ap_list__free_unpacked + (RpcReqWifiClearApList *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_clear_ap_list__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_clear_ap_list__init + (RpcRespWifiClearApList *message) +{ + static const RpcRespWifiClearApList init_value = RPC__RESP__WIFI_CLEAR_AP_LIST__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_clear_ap_list__get_packed_size + (const RpcRespWifiClearApList *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_clear_ap_list__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_clear_ap_list__pack + (const RpcRespWifiClearApList *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_clear_ap_list__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_clear_ap_list__pack_to_buffer + (const RpcRespWifiClearApList *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_clear_ap_list__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiClearApList * + rpc__resp__wifi_clear_ap_list__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiClearApList *) + protobuf_c_message_unpack (&rpc__resp__wifi_clear_ap_list__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_clear_ap_list__free_unpacked + (RpcRespWifiClearApList *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_clear_ap_list__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_restore__init + (RpcReqWifiRestore *message) +{ + static const RpcReqWifiRestore init_value = RPC__REQ__WIFI_RESTORE__INIT; + *message = init_value; +} +size_t rpc__req__wifi_restore__get_packed_size + (const RpcReqWifiRestore *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_restore__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_restore__pack + (const RpcReqWifiRestore *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_restore__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_restore__pack_to_buffer + (const RpcReqWifiRestore *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_restore__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiRestore * + rpc__req__wifi_restore__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiRestore *) + protobuf_c_message_unpack (&rpc__req__wifi_restore__descriptor, + allocator, len, data); +} +void rpc__req__wifi_restore__free_unpacked + (RpcReqWifiRestore *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_restore__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_restore__init + (RpcRespWifiRestore *message) +{ + static const RpcRespWifiRestore init_value = RPC__RESP__WIFI_RESTORE__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_restore__get_packed_size + (const RpcRespWifiRestore *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_restore__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_restore__pack + (const RpcRespWifiRestore *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_restore__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_restore__pack_to_buffer + (const RpcRespWifiRestore *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_restore__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiRestore * + rpc__resp__wifi_restore__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiRestore *) + protobuf_c_message_unpack (&rpc__resp__wifi_restore__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_restore__free_unpacked + (RpcRespWifiRestore *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_restore__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_clear_fast_connect__init + (RpcReqWifiClearFastConnect *message) +{ + static const RpcReqWifiClearFastConnect init_value = RPC__REQ__WIFI_CLEAR_FAST_CONNECT__INIT; + *message = init_value; +} +size_t rpc__req__wifi_clear_fast_connect__get_packed_size + (const RpcReqWifiClearFastConnect *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_clear_fast_connect__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_clear_fast_connect__pack + (const RpcReqWifiClearFastConnect *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_clear_fast_connect__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_clear_fast_connect__pack_to_buffer + (const RpcReqWifiClearFastConnect *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_clear_fast_connect__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiClearFastConnect * + rpc__req__wifi_clear_fast_connect__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiClearFastConnect *) + protobuf_c_message_unpack (&rpc__req__wifi_clear_fast_connect__descriptor, + allocator, len, data); +} +void rpc__req__wifi_clear_fast_connect__free_unpacked + (RpcReqWifiClearFastConnect *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_clear_fast_connect__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_clear_fast_connect__init + (RpcRespWifiClearFastConnect *message) +{ + static const RpcRespWifiClearFastConnect init_value = RPC__RESP__WIFI_CLEAR_FAST_CONNECT__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_clear_fast_connect__get_packed_size + (const RpcRespWifiClearFastConnect *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_clear_fast_connect__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_clear_fast_connect__pack + (const RpcRespWifiClearFastConnect *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_clear_fast_connect__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_clear_fast_connect__pack_to_buffer + (const RpcRespWifiClearFastConnect *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_clear_fast_connect__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiClearFastConnect * + rpc__resp__wifi_clear_fast_connect__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiClearFastConnect *) + protobuf_c_message_unpack (&rpc__resp__wifi_clear_fast_connect__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_clear_fast_connect__free_unpacked + (RpcRespWifiClearFastConnect *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_clear_fast_connect__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_deauth_sta__init + (RpcReqWifiDeauthSta *message) +{ + static const RpcReqWifiDeauthSta init_value = RPC__REQ__WIFI_DEAUTH_STA__INIT; + *message = init_value; +} +size_t rpc__req__wifi_deauth_sta__get_packed_size + (const RpcReqWifiDeauthSta *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_deauth_sta__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_deauth_sta__pack + (const RpcReqWifiDeauthSta *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_deauth_sta__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_deauth_sta__pack_to_buffer + (const RpcReqWifiDeauthSta *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_deauth_sta__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiDeauthSta * + rpc__req__wifi_deauth_sta__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiDeauthSta *) + protobuf_c_message_unpack (&rpc__req__wifi_deauth_sta__descriptor, + allocator, len, data); +} +void rpc__req__wifi_deauth_sta__free_unpacked + (RpcReqWifiDeauthSta *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_deauth_sta__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_deauth_sta__init + (RpcRespWifiDeauthSta *message) +{ + static const RpcRespWifiDeauthSta init_value = RPC__RESP__WIFI_DEAUTH_STA__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_deauth_sta__get_packed_size + (const RpcRespWifiDeauthSta *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_deauth_sta__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_deauth_sta__pack + (const RpcRespWifiDeauthSta *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_deauth_sta__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_deauth_sta__pack_to_buffer + (const RpcRespWifiDeauthSta *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_deauth_sta__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiDeauthSta * + rpc__resp__wifi_deauth_sta__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiDeauthSta *) + protobuf_c_message_unpack (&rpc__resp__wifi_deauth_sta__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_deauth_sta__free_unpacked + (RpcRespWifiDeauthSta *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_deauth_sta__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_sta_get_ap_info__init + (RpcReqWifiStaGetApInfo *message) +{ + static const RpcReqWifiStaGetApInfo init_value = RPC__REQ__WIFI_STA_GET_AP_INFO__INIT; + *message = init_value; +} +size_t rpc__req__wifi_sta_get_ap_info__get_packed_size + (const RpcReqWifiStaGetApInfo *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_sta_get_ap_info__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_sta_get_ap_info__pack + (const RpcReqWifiStaGetApInfo *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_sta_get_ap_info__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_sta_get_ap_info__pack_to_buffer + (const RpcReqWifiStaGetApInfo *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_sta_get_ap_info__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiStaGetApInfo * + rpc__req__wifi_sta_get_ap_info__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiStaGetApInfo *) + protobuf_c_message_unpack (&rpc__req__wifi_sta_get_ap_info__descriptor, + allocator, len, data); +} +void rpc__req__wifi_sta_get_ap_info__free_unpacked + (RpcReqWifiStaGetApInfo *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_sta_get_ap_info__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_sta_get_ap_info__init + (RpcRespWifiStaGetApInfo *message) +{ + static const RpcRespWifiStaGetApInfo init_value = RPC__RESP__WIFI_STA_GET_AP_INFO__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_sta_get_ap_info__get_packed_size + (const RpcRespWifiStaGetApInfo *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_sta_get_ap_info__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_sta_get_ap_info__pack + (const RpcRespWifiStaGetApInfo *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_sta_get_ap_info__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_sta_get_ap_info__pack_to_buffer + (const RpcRespWifiStaGetApInfo *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_sta_get_ap_info__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiStaGetApInfo * + rpc__resp__wifi_sta_get_ap_info__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiStaGetApInfo *) + protobuf_c_message_unpack (&rpc__resp__wifi_sta_get_ap_info__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_sta_get_ap_info__free_unpacked + (RpcRespWifiStaGetApInfo *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_sta_get_ap_info__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_set_protocol__init + (RpcReqWifiSetProtocol *message) +{ + static const RpcReqWifiSetProtocol init_value = RPC__REQ__WIFI_SET_PROTOCOL__INIT; + *message = init_value; +} +size_t rpc__req__wifi_set_protocol__get_packed_size + (const RpcReqWifiSetProtocol *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_protocol__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_set_protocol__pack + (const RpcReqWifiSetProtocol *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_protocol__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_set_protocol__pack_to_buffer + (const RpcReqWifiSetProtocol *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_protocol__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiSetProtocol * + rpc__req__wifi_set_protocol__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiSetProtocol *) + protobuf_c_message_unpack (&rpc__req__wifi_set_protocol__descriptor, + allocator, len, data); +} +void rpc__req__wifi_set_protocol__free_unpacked + (RpcReqWifiSetProtocol *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_set_protocol__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_set_protocol__init + (RpcRespWifiSetProtocol *message) +{ + static const RpcRespWifiSetProtocol init_value = RPC__RESP__WIFI_SET_PROTOCOL__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_set_protocol__get_packed_size + (const RpcRespWifiSetProtocol *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_protocol__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_set_protocol__pack + (const RpcRespWifiSetProtocol *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_protocol__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_set_protocol__pack_to_buffer + (const RpcRespWifiSetProtocol *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_protocol__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiSetProtocol * + rpc__resp__wifi_set_protocol__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiSetProtocol *) + protobuf_c_message_unpack (&rpc__resp__wifi_set_protocol__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_set_protocol__free_unpacked + (RpcRespWifiSetProtocol *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_set_protocol__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_get_protocol__init + (RpcReqWifiGetProtocol *message) +{ + static const RpcReqWifiGetProtocol init_value = RPC__REQ__WIFI_GET_PROTOCOL__INIT; + *message = init_value; +} +size_t rpc__req__wifi_get_protocol__get_packed_size + (const RpcReqWifiGetProtocol *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_get_protocol__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_get_protocol__pack + (const RpcReqWifiGetProtocol *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_get_protocol__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_get_protocol__pack_to_buffer + (const RpcReqWifiGetProtocol *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_get_protocol__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiGetProtocol * + rpc__req__wifi_get_protocol__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiGetProtocol *) + protobuf_c_message_unpack (&rpc__req__wifi_get_protocol__descriptor, + allocator, len, data); +} +void rpc__req__wifi_get_protocol__free_unpacked + (RpcReqWifiGetProtocol *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_get_protocol__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_get_protocol__init + (RpcRespWifiGetProtocol *message) +{ + static const RpcRespWifiGetProtocol init_value = RPC__RESP__WIFI_GET_PROTOCOL__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_get_protocol__get_packed_size + (const RpcRespWifiGetProtocol *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_get_protocol__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_get_protocol__pack + (const RpcRespWifiGetProtocol *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_get_protocol__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_get_protocol__pack_to_buffer + (const RpcRespWifiGetProtocol *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_get_protocol__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiGetProtocol * + rpc__resp__wifi_get_protocol__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiGetProtocol *) + protobuf_c_message_unpack (&rpc__resp__wifi_get_protocol__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_get_protocol__free_unpacked + (RpcRespWifiGetProtocol *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_get_protocol__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_set_bandwidth__init + (RpcReqWifiSetBandwidth *message) +{ + static const RpcReqWifiSetBandwidth init_value = RPC__REQ__WIFI_SET_BANDWIDTH__INIT; + *message = init_value; +} +size_t rpc__req__wifi_set_bandwidth__get_packed_size + (const RpcReqWifiSetBandwidth *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_bandwidth__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_set_bandwidth__pack + (const RpcReqWifiSetBandwidth *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_bandwidth__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_set_bandwidth__pack_to_buffer + (const RpcReqWifiSetBandwidth *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_bandwidth__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiSetBandwidth * + rpc__req__wifi_set_bandwidth__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiSetBandwidth *) + protobuf_c_message_unpack (&rpc__req__wifi_set_bandwidth__descriptor, + allocator, len, data); +} +void rpc__req__wifi_set_bandwidth__free_unpacked + (RpcReqWifiSetBandwidth *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_set_bandwidth__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_set_bandwidth__init + (RpcRespWifiSetBandwidth *message) +{ + static const RpcRespWifiSetBandwidth init_value = RPC__RESP__WIFI_SET_BANDWIDTH__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_set_bandwidth__get_packed_size + (const RpcRespWifiSetBandwidth *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_bandwidth__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_set_bandwidth__pack + (const RpcRespWifiSetBandwidth *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_bandwidth__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_set_bandwidth__pack_to_buffer + (const RpcRespWifiSetBandwidth *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_bandwidth__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiSetBandwidth * + rpc__resp__wifi_set_bandwidth__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiSetBandwidth *) + protobuf_c_message_unpack (&rpc__resp__wifi_set_bandwidth__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_set_bandwidth__free_unpacked + (RpcRespWifiSetBandwidth *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_set_bandwidth__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_get_bandwidth__init + (RpcReqWifiGetBandwidth *message) +{ + static const RpcReqWifiGetBandwidth init_value = RPC__REQ__WIFI_GET_BANDWIDTH__INIT; + *message = init_value; +} +size_t rpc__req__wifi_get_bandwidth__get_packed_size + (const RpcReqWifiGetBandwidth *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_get_bandwidth__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_get_bandwidth__pack + (const RpcReqWifiGetBandwidth *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_get_bandwidth__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_get_bandwidth__pack_to_buffer + (const RpcReqWifiGetBandwidth *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_get_bandwidth__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiGetBandwidth * + rpc__req__wifi_get_bandwidth__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiGetBandwidth *) + protobuf_c_message_unpack (&rpc__req__wifi_get_bandwidth__descriptor, + allocator, len, data); +} +void rpc__req__wifi_get_bandwidth__free_unpacked + (RpcReqWifiGetBandwidth *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_get_bandwidth__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_get_bandwidth__init + (RpcRespWifiGetBandwidth *message) +{ + static const RpcRespWifiGetBandwidth init_value = RPC__RESP__WIFI_GET_BANDWIDTH__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_get_bandwidth__get_packed_size + (const RpcRespWifiGetBandwidth *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_get_bandwidth__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_get_bandwidth__pack + (const RpcRespWifiGetBandwidth *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_get_bandwidth__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_get_bandwidth__pack_to_buffer + (const RpcRespWifiGetBandwidth *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_get_bandwidth__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiGetBandwidth * + rpc__resp__wifi_get_bandwidth__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiGetBandwidth *) + protobuf_c_message_unpack (&rpc__resp__wifi_get_bandwidth__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_get_bandwidth__free_unpacked + (RpcRespWifiGetBandwidth *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_get_bandwidth__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_set_channel__init + (RpcReqWifiSetChannel *message) +{ + static const RpcReqWifiSetChannel init_value = RPC__REQ__WIFI_SET_CHANNEL__INIT; + *message = init_value; +} +size_t rpc__req__wifi_set_channel__get_packed_size + (const RpcReqWifiSetChannel *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_channel__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_set_channel__pack + (const RpcReqWifiSetChannel *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_channel__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_set_channel__pack_to_buffer + (const RpcReqWifiSetChannel *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_channel__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiSetChannel * + rpc__req__wifi_set_channel__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiSetChannel *) + protobuf_c_message_unpack (&rpc__req__wifi_set_channel__descriptor, + allocator, len, data); +} +void rpc__req__wifi_set_channel__free_unpacked + (RpcReqWifiSetChannel *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_set_channel__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_set_channel__init + (RpcRespWifiSetChannel *message) +{ + static const RpcRespWifiSetChannel init_value = RPC__RESP__WIFI_SET_CHANNEL__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_set_channel__get_packed_size + (const RpcRespWifiSetChannel *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_channel__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_set_channel__pack + (const RpcRespWifiSetChannel *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_channel__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_set_channel__pack_to_buffer + (const RpcRespWifiSetChannel *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_channel__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiSetChannel * + rpc__resp__wifi_set_channel__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiSetChannel *) + protobuf_c_message_unpack (&rpc__resp__wifi_set_channel__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_set_channel__free_unpacked + (RpcRespWifiSetChannel *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_set_channel__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_get_channel__init + (RpcReqWifiGetChannel *message) +{ + static const RpcReqWifiGetChannel init_value = RPC__REQ__WIFI_GET_CHANNEL__INIT; + *message = init_value; +} +size_t rpc__req__wifi_get_channel__get_packed_size + (const RpcReqWifiGetChannel *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_get_channel__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_get_channel__pack + (const RpcReqWifiGetChannel *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_get_channel__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_get_channel__pack_to_buffer + (const RpcReqWifiGetChannel *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_get_channel__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiGetChannel * + rpc__req__wifi_get_channel__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiGetChannel *) + protobuf_c_message_unpack (&rpc__req__wifi_get_channel__descriptor, + allocator, len, data); +} +void rpc__req__wifi_get_channel__free_unpacked + (RpcReqWifiGetChannel *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_get_channel__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_get_channel__init + (RpcRespWifiGetChannel *message) +{ + static const RpcRespWifiGetChannel init_value = RPC__RESP__WIFI_GET_CHANNEL__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_get_channel__get_packed_size + (const RpcRespWifiGetChannel *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_get_channel__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_get_channel__pack + (const RpcRespWifiGetChannel *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_get_channel__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_get_channel__pack_to_buffer + (const RpcRespWifiGetChannel *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_get_channel__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiGetChannel * + rpc__resp__wifi_get_channel__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiGetChannel *) + protobuf_c_message_unpack (&rpc__resp__wifi_get_channel__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_get_channel__free_unpacked + (RpcRespWifiGetChannel *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_get_channel__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_set_storage__init + (RpcReqWifiSetStorage *message) +{ + static const RpcReqWifiSetStorage init_value = RPC__REQ__WIFI_SET_STORAGE__INIT; + *message = init_value; +} +size_t rpc__req__wifi_set_storage__get_packed_size + (const RpcReqWifiSetStorage *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_storage__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_set_storage__pack + (const RpcReqWifiSetStorage *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_storage__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_set_storage__pack_to_buffer + (const RpcReqWifiSetStorage *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_storage__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiSetStorage * + rpc__req__wifi_set_storage__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiSetStorage *) + protobuf_c_message_unpack (&rpc__req__wifi_set_storage__descriptor, + allocator, len, data); +} +void rpc__req__wifi_set_storage__free_unpacked + (RpcReqWifiSetStorage *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_set_storage__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_set_storage__init + (RpcRespWifiSetStorage *message) +{ + static const RpcRespWifiSetStorage init_value = RPC__RESP__WIFI_SET_STORAGE__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_set_storage__get_packed_size + (const RpcRespWifiSetStorage *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_storage__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_set_storage__pack + (const RpcRespWifiSetStorage *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_storage__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_set_storage__pack_to_buffer + (const RpcRespWifiSetStorage *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_storage__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiSetStorage * + rpc__resp__wifi_set_storage__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiSetStorage *) + protobuf_c_message_unpack (&rpc__resp__wifi_set_storage__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_set_storage__free_unpacked + (RpcRespWifiSetStorage *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_set_storage__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_set_country_code__init + (RpcReqWifiSetCountryCode *message) +{ + static const RpcReqWifiSetCountryCode init_value = RPC__REQ__WIFI_SET_COUNTRY_CODE__INIT; + *message = init_value; +} +size_t rpc__req__wifi_set_country_code__get_packed_size + (const RpcReqWifiSetCountryCode *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_country_code__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_set_country_code__pack + (const RpcReqWifiSetCountryCode *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_country_code__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_set_country_code__pack_to_buffer + (const RpcReqWifiSetCountryCode *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_country_code__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiSetCountryCode * + rpc__req__wifi_set_country_code__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiSetCountryCode *) + protobuf_c_message_unpack (&rpc__req__wifi_set_country_code__descriptor, + allocator, len, data); +} +void rpc__req__wifi_set_country_code__free_unpacked + (RpcReqWifiSetCountryCode *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_set_country_code__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_set_country_code__init + (RpcRespWifiSetCountryCode *message) +{ + static const RpcRespWifiSetCountryCode init_value = RPC__RESP__WIFI_SET_COUNTRY_CODE__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_set_country_code__get_packed_size + (const RpcRespWifiSetCountryCode *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_country_code__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_set_country_code__pack + (const RpcRespWifiSetCountryCode *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_country_code__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_set_country_code__pack_to_buffer + (const RpcRespWifiSetCountryCode *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_country_code__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiSetCountryCode * + rpc__resp__wifi_set_country_code__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiSetCountryCode *) + protobuf_c_message_unpack (&rpc__resp__wifi_set_country_code__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_set_country_code__free_unpacked + (RpcRespWifiSetCountryCode *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_set_country_code__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_get_country_code__init + (RpcReqWifiGetCountryCode *message) +{ + static const RpcReqWifiGetCountryCode init_value = RPC__REQ__WIFI_GET_COUNTRY_CODE__INIT; + *message = init_value; +} +size_t rpc__req__wifi_get_country_code__get_packed_size + (const RpcReqWifiGetCountryCode *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_get_country_code__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_get_country_code__pack + (const RpcReqWifiGetCountryCode *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_get_country_code__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_get_country_code__pack_to_buffer + (const RpcReqWifiGetCountryCode *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_get_country_code__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiGetCountryCode * + rpc__req__wifi_get_country_code__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiGetCountryCode *) + protobuf_c_message_unpack (&rpc__req__wifi_get_country_code__descriptor, + allocator, len, data); +} +void rpc__req__wifi_get_country_code__free_unpacked + (RpcReqWifiGetCountryCode *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_get_country_code__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_get_country_code__init + (RpcRespWifiGetCountryCode *message) +{ + static const RpcRespWifiGetCountryCode init_value = RPC__RESP__WIFI_GET_COUNTRY_CODE__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_get_country_code__get_packed_size + (const RpcRespWifiGetCountryCode *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_get_country_code__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_get_country_code__pack + (const RpcRespWifiGetCountryCode *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_get_country_code__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_get_country_code__pack_to_buffer + (const RpcRespWifiGetCountryCode *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_get_country_code__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiGetCountryCode * + rpc__resp__wifi_get_country_code__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiGetCountryCode *) + protobuf_c_message_unpack (&rpc__resp__wifi_get_country_code__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_get_country_code__free_unpacked + (RpcRespWifiGetCountryCode *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_get_country_code__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_set_country__init + (RpcReqWifiSetCountry *message) +{ + static const RpcReqWifiSetCountry init_value = RPC__REQ__WIFI_SET_COUNTRY__INIT; + *message = init_value; +} +size_t rpc__req__wifi_set_country__get_packed_size + (const RpcReqWifiSetCountry *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_country__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_set_country__pack + (const RpcReqWifiSetCountry *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_country__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_set_country__pack_to_buffer + (const RpcReqWifiSetCountry *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_country__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiSetCountry * + rpc__req__wifi_set_country__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiSetCountry *) + protobuf_c_message_unpack (&rpc__req__wifi_set_country__descriptor, + allocator, len, data); +} +void rpc__req__wifi_set_country__free_unpacked + (RpcReqWifiSetCountry *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_set_country__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_set_country__init + (RpcRespWifiSetCountry *message) +{ + static const RpcRespWifiSetCountry init_value = RPC__RESP__WIFI_SET_COUNTRY__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_set_country__get_packed_size + (const RpcRespWifiSetCountry *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_country__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_set_country__pack + (const RpcRespWifiSetCountry *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_country__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_set_country__pack_to_buffer + (const RpcRespWifiSetCountry *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_country__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiSetCountry * + rpc__resp__wifi_set_country__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiSetCountry *) + protobuf_c_message_unpack (&rpc__resp__wifi_set_country__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_set_country__free_unpacked + (RpcRespWifiSetCountry *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_set_country__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_get_country__init + (RpcReqWifiGetCountry *message) +{ + static const RpcReqWifiGetCountry init_value = RPC__REQ__WIFI_GET_COUNTRY__INIT; + *message = init_value; +} +size_t rpc__req__wifi_get_country__get_packed_size + (const RpcReqWifiGetCountry *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_get_country__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_get_country__pack + (const RpcReqWifiGetCountry *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_get_country__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_get_country__pack_to_buffer + (const RpcReqWifiGetCountry *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_get_country__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiGetCountry * + rpc__req__wifi_get_country__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiGetCountry *) + protobuf_c_message_unpack (&rpc__req__wifi_get_country__descriptor, + allocator, len, data); +} +void rpc__req__wifi_get_country__free_unpacked + (RpcReqWifiGetCountry *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_get_country__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_get_country__init + (RpcRespWifiGetCountry *message) +{ + static const RpcRespWifiGetCountry init_value = RPC__RESP__WIFI_GET_COUNTRY__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_get_country__get_packed_size + (const RpcRespWifiGetCountry *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_get_country__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_get_country__pack + (const RpcRespWifiGetCountry *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_get_country__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_get_country__pack_to_buffer + (const RpcRespWifiGetCountry *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_get_country__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiGetCountry * + rpc__resp__wifi_get_country__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiGetCountry *) + protobuf_c_message_unpack (&rpc__resp__wifi_get_country__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_get_country__free_unpacked + (RpcRespWifiGetCountry *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_get_country__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_ap_get_sta_list__init + (RpcReqWifiApGetStaList *message) +{ + static const RpcReqWifiApGetStaList init_value = RPC__REQ__WIFI_AP_GET_STA_LIST__INIT; + *message = init_value; +} +size_t rpc__req__wifi_ap_get_sta_list__get_packed_size + (const RpcReqWifiApGetStaList *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_ap_get_sta_list__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_ap_get_sta_list__pack + (const RpcReqWifiApGetStaList *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_ap_get_sta_list__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_ap_get_sta_list__pack_to_buffer + (const RpcReqWifiApGetStaList *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_ap_get_sta_list__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiApGetStaList * + rpc__req__wifi_ap_get_sta_list__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiApGetStaList *) + protobuf_c_message_unpack (&rpc__req__wifi_ap_get_sta_list__descriptor, + allocator, len, data); +} +void rpc__req__wifi_ap_get_sta_list__free_unpacked + (RpcReqWifiApGetStaList *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_ap_get_sta_list__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_ap_get_sta_list__init + (RpcRespWifiApGetStaList *message) +{ + static const RpcRespWifiApGetStaList init_value = RPC__RESP__WIFI_AP_GET_STA_LIST__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_ap_get_sta_list__get_packed_size + (const RpcRespWifiApGetStaList *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_ap_get_sta_list__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_ap_get_sta_list__pack + (const RpcRespWifiApGetStaList *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_ap_get_sta_list__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_ap_get_sta_list__pack_to_buffer + (const RpcRespWifiApGetStaList *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_ap_get_sta_list__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiApGetStaList * + rpc__resp__wifi_ap_get_sta_list__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiApGetStaList *) + protobuf_c_message_unpack (&rpc__resp__wifi_ap_get_sta_list__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_ap_get_sta_list__free_unpacked + (RpcRespWifiApGetStaList *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_ap_get_sta_list__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_ap_get_sta_aid__init + (RpcReqWifiApGetStaAid *message) +{ + static const RpcReqWifiApGetStaAid init_value = RPC__REQ__WIFI_AP_GET_STA_AID__INIT; + *message = init_value; +} +size_t rpc__req__wifi_ap_get_sta_aid__get_packed_size + (const RpcReqWifiApGetStaAid *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_ap_get_sta_aid__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_ap_get_sta_aid__pack + (const RpcReqWifiApGetStaAid *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_ap_get_sta_aid__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_ap_get_sta_aid__pack_to_buffer + (const RpcReqWifiApGetStaAid *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_ap_get_sta_aid__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiApGetStaAid * + rpc__req__wifi_ap_get_sta_aid__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiApGetStaAid *) + protobuf_c_message_unpack (&rpc__req__wifi_ap_get_sta_aid__descriptor, + allocator, len, data); +} +void rpc__req__wifi_ap_get_sta_aid__free_unpacked + (RpcReqWifiApGetStaAid *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_ap_get_sta_aid__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_sta_get_negotiated_phymode__init + (RpcReqWifiStaGetNegotiatedPhymode *message) +{ + static const RpcReqWifiStaGetNegotiatedPhymode init_value = RPC__REQ__WIFI_STA_GET_NEGOTIATED_PHYMODE__INIT; + *message = init_value; +} +size_t rpc__req__wifi_sta_get_negotiated_phymode__get_packed_size + (const RpcReqWifiStaGetNegotiatedPhymode *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_sta_get_negotiated_phymode__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_sta_get_negotiated_phymode__pack + (const RpcReqWifiStaGetNegotiatedPhymode *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_sta_get_negotiated_phymode__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_sta_get_negotiated_phymode__pack_to_buffer + (const RpcReqWifiStaGetNegotiatedPhymode *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_sta_get_negotiated_phymode__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiStaGetNegotiatedPhymode * + rpc__req__wifi_sta_get_negotiated_phymode__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiStaGetNegotiatedPhymode *) + protobuf_c_message_unpack (&rpc__req__wifi_sta_get_negotiated_phymode__descriptor, + allocator, len, data); +} +void rpc__req__wifi_sta_get_negotiated_phymode__free_unpacked + (RpcReqWifiStaGetNegotiatedPhymode *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_sta_get_negotiated_phymode__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_sta_get_negotiated_phymode__init + (RpcRespWifiStaGetNegotiatedPhymode *message) +{ + static const RpcRespWifiStaGetNegotiatedPhymode init_value = RPC__RESP__WIFI_STA_GET_NEGOTIATED_PHYMODE__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_sta_get_negotiated_phymode__get_packed_size + (const RpcRespWifiStaGetNegotiatedPhymode *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_sta_get_negotiated_phymode__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_sta_get_negotiated_phymode__pack + (const RpcRespWifiStaGetNegotiatedPhymode *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_sta_get_negotiated_phymode__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_sta_get_negotiated_phymode__pack_to_buffer + (const RpcRespWifiStaGetNegotiatedPhymode *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_sta_get_negotiated_phymode__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiStaGetNegotiatedPhymode * + rpc__resp__wifi_sta_get_negotiated_phymode__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiStaGetNegotiatedPhymode *) + protobuf_c_message_unpack (&rpc__resp__wifi_sta_get_negotiated_phymode__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_sta_get_negotiated_phymode__free_unpacked + (RpcRespWifiStaGetNegotiatedPhymode *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_sta_get_negotiated_phymode__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_ap_get_sta_aid__init + (RpcRespWifiApGetStaAid *message) +{ + static const RpcRespWifiApGetStaAid init_value = RPC__RESP__WIFI_AP_GET_STA_AID__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_ap_get_sta_aid__get_packed_size + (const RpcRespWifiApGetStaAid *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_ap_get_sta_aid__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_ap_get_sta_aid__pack + (const RpcRespWifiApGetStaAid *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_ap_get_sta_aid__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_ap_get_sta_aid__pack_to_buffer + (const RpcRespWifiApGetStaAid *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_ap_get_sta_aid__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiApGetStaAid * + rpc__resp__wifi_ap_get_sta_aid__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiApGetStaAid *) + protobuf_c_message_unpack (&rpc__resp__wifi_ap_get_sta_aid__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_ap_get_sta_aid__free_unpacked + (RpcRespWifiApGetStaAid *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_ap_get_sta_aid__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_sta_get_rssi__init + (RpcReqWifiStaGetRssi *message) +{ + static const RpcReqWifiStaGetRssi init_value = RPC__REQ__WIFI_STA_GET_RSSI__INIT; + *message = init_value; +} +size_t rpc__req__wifi_sta_get_rssi__get_packed_size + (const RpcReqWifiStaGetRssi *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_sta_get_rssi__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_sta_get_rssi__pack + (const RpcReqWifiStaGetRssi *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_sta_get_rssi__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_sta_get_rssi__pack_to_buffer + (const RpcReqWifiStaGetRssi *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_sta_get_rssi__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiStaGetRssi * + rpc__req__wifi_sta_get_rssi__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiStaGetRssi *) + protobuf_c_message_unpack (&rpc__req__wifi_sta_get_rssi__descriptor, + allocator, len, data); +} +void rpc__req__wifi_sta_get_rssi__free_unpacked + (RpcReqWifiStaGetRssi *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_sta_get_rssi__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_sta_get_rssi__init + (RpcRespWifiStaGetRssi *message) +{ + static const RpcRespWifiStaGetRssi init_value = RPC__RESP__WIFI_STA_GET_RSSI__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_sta_get_rssi__get_packed_size + (const RpcRespWifiStaGetRssi *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_sta_get_rssi__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_sta_get_rssi__pack + (const RpcRespWifiStaGetRssi *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_sta_get_rssi__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_sta_get_rssi__pack_to_buffer + (const RpcRespWifiStaGetRssi *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_sta_get_rssi__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiStaGetRssi * + rpc__resp__wifi_sta_get_rssi__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiStaGetRssi *) + protobuf_c_message_unpack (&rpc__resp__wifi_sta_get_rssi__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_sta_get_rssi__free_unpacked + (RpcRespWifiStaGetRssi *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_sta_get_rssi__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_scan_params__init + (RpcReqWifiScanParams *message) +{ + static const RpcReqWifiScanParams init_value = RPC__REQ__WIFI_SCAN_PARAMS__INIT; + *message = init_value; +} +size_t rpc__req__wifi_scan_params__get_packed_size + (const RpcReqWifiScanParams *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_scan_params__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_scan_params__pack + (const RpcReqWifiScanParams *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_scan_params__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_scan_params__pack_to_buffer + (const RpcReqWifiScanParams *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_scan_params__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiScanParams * + rpc__req__wifi_scan_params__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiScanParams *) + protobuf_c_message_unpack (&rpc__req__wifi_scan_params__descriptor, + allocator, len, data); +} +void rpc__req__wifi_scan_params__free_unpacked + (RpcReqWifiScanParams *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_scan_params__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_scan_params__init + (RpcRespWifiScanParams *message) +{ + static const RpcRespWifiScanParams init_value = RPC__RESP__WIFI_SCAN_PARAMS__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_scan_params__get_packed_size + (const RpcRespWifiScanParams *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_scan_params__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_scan_params__pack + (const RpcRespWifiScanParams *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_scan_params__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_scan_params__pack_to_buffer + (const RpcRespWifiScanParams *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_scan_params__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiScanParams * + rpc__resp__wifi_scan_params__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiScanParams *) + protobuf_c_message_unpack (&rpc__resp__wifi_scan_params__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_scan_params__free_unpacked + (RpcRespWifiScanParams *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_scan_params__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_sta_get_aid__init + (RpcReqWifiStaGetAid *message) +{ + static const RpcReqWifiStaGetAid init_value = RPC__REQ__WIFI_STA_GET_AID__INIT; + *message = init_value; +} +size_t rpc__req__wifi_sta_get_aid__get_packed_size + (const RpcReqWifiStaGetAid *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_sta_get_aid__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_sta_get_aid__pack + (const RpcReqWifiStaGetAid *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_sta_get_aid__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_sta_get_aid__pack_to_buffer + (const RpcReqWifiStaGetAid *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_sta_get_aid__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiStaGetAid * + rpc__req__wifi_sta_get_aid__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiStaGetAid *) + protobuf_c_message_unpack (&rpc__req__wifi_sta_get_aid__descriptor, + allocator, len, data); +} +void rpc__req__wifi_sta_get_aid__free_unpacked + (RpcReqWifiStaGetAid *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_sta_get_aid__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_sta_get_aid__init + (RpcRespWifiStaGetAid *message) +{ + static const RpcRespWifiStaGetAid init_value = RPC__RESP__WIFI_STA_GET_AID__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_sta_get_aid__get_packed_size + (const RpcRespWifiStaGetAid *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_sta_get_aid__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_sta_get_aid__pack + (const RpcRespWifiStaGetAid *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_sta_get_aid__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_sta_get_aid__pack_to_buffer + (const RpcRespWifiStaGetAid *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_sta_get_aid__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiStaGetAid * + rpc__resp__wifi_sta_get_aid__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiStaGetAid *) + protobuf_c_message_unpack (&rpc__resp__wifi_sta_get_aid__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_sta_get_aid__free_unpacked + (RpcRespWifiStaGetAid *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_sta_get_aid__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_set_protocols__init + (RpcReqWifiSetProtocols *message) +{ + static const RpcReqWifiSetProtocols init_value = RPC__REQ__WIFI_SET_PROTOCOLS__INIT; + *message = init_value; +} +size_t rpc__req__wifi_set_protocols__get_packed_size + (const RpcReqWifiSetProtocols *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_protocols__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_set_protocols__pack + (const RpcReqWifiSetProtocols *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_protocols__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_set_protocols__pack_to_buffer + (const RpcReqWifiSetProtocols *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_protocols__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiSetProtocols * + rpc__req__wifi_set_protocols__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiSetProtocols *) + protobuf_c_message_unpack (&rpc__req__wifi_set_protocols__descriptor, + allocator, len, data); +} +void rpc__req__wifi_set_protocols__free_unpacked + (RpcReqWifiSetProtocols *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_set_protocols__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_set_protocols__init + (RpcRespWifiSetProtocols *message) +{ + static const RpcRespWifiSetProtocols init_value = RPC__RESP__WIFI_SET_PROTOCOLS__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_set_protocols__get_packed_size + (const RpcRespWifiSetProtocols *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_protocols__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_set_protocols__pack + (const RpcRespWifiSetProtocols *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_protocols__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_set_protocols__pack_to_buffer + (const RpcRespWifiSetProtocols *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_protocols__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiSetProtocols * + rpc__resp__wifi_set_protocols__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiSetProtocols *) + protobuf_c_message_unpack (&rpc__resp__wifi_set_protocols__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_set_protocols__free_unpacked + (RpcRespWifiSetProtocols *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_set_protocols__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_get_protocols__init + (RpcReqWifiGetProtocols *message) +{ + static const RpcReqWifiGetProtocols init_value = RPC__REQ__WIFI_GET_PROTOCOLS__INIT; + *message = init_value; +} +size_t rpc__req__wifi_get_protocols__get_packed_size + (const RpcReqWifiGetProtocols *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_get_protocols__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_get_protocols__pack + (const RpcReqWifiGetProtocols *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_get_protocols__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_get_protocols__pack_to_buffer + (const RpcReqWifiGetProtocols *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_get_protocols__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiGetProtocols * + rpc__req__wifi_get_protocols__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiGetProtocols *) + protobuf_c_message_unpack (&rpc__req__wifi_get_protocols__descriptor, + allocator, len, data); +} +void rpc__req__wifi_get_protocols__free_unpacked + (RpcReqWifiGetProtocols *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_get_protocols__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_get_protocols__init + (RpcRespWifiGetProtocols *message) +{ + static const RpcRespWifiGetProtocols init_value = RPC__RESP__WIFI_GET_PROTOCOLS__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_get_protocols__get_packed_size + (const RpcRespWifiGetProtocols *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_get_protocols__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_get_protocols__pack + (const RpcRespWifiGetProtocols *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_get_protocols__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_get_protocols__pack_to_buffer + (const RpcRespWifiGetProtocols *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_get_protocols__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiGetProtocols * + rpc__resp__wifi_get_protocols__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiGetProtocols *) + protobuf_c_message_unpack (&rpc__resp__wifi_get_protocols__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_get_protocols__free_unpacked + (RpcRespWifiGetProtocols *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_get_protocols__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_set_bandwidths__init + (RpcReqWifiSetBandwidths *message) +{ + static const RpcReqWifiSetBandwidths init_value = RPC__REQ__WIFI_SET_BANDWIDTHS__INIT; + *message = init_value; +} +size_t rpc__req__wifi_set_bandwidths__get_packed_size + (const RpcReqWifiSetBandwidths *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_bandwidths__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_set_bandwidths__pack + (const RpcReqWifiSetBandwidths *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_bandwidths__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_set_bandwidths__pack_to_buffer + (const RpcReqWifiSetBandwidths *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_bandwidths__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiSetBandwidths * + rpc__req__wifi_set_bandwidths__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiSetBandwidths *) + protobuf_c_message_unpack (&rpc__req__wifi_set_bandwidths__descriptor, + allocator, len, data); +} +void rpc__req__wifi_set_bandwidths__free_unpacked + (RpcReqWifiSetBandwidths *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_set_bandwidths__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_set_bandwidths__init + (RpcRespWifiSetBandwidths *message) +{ + static const RpcRespWifiSetBandwidths init_value = RPC__RESP__WIFI_SET_BANDWIDTHS__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_set_bandwidths__get_packed_size + (const RpcRespWifiSetBandwidths *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_bandwidths__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_set_bandwidths__pack + (const RpcRespWifiSetBandwidths *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_bandwidths__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_set_bandwidths__pack_to_buffer + (const RpcRespWifiSetBandwidths *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_bandwidths__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiSetBandwidths * + rpc__resp__wifi_set_bandwidths__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiSetBandwidths *) + protobuf_c_message_unpack (&rpc__resp__wifi_set_bandwidths__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_set_bandwidths__free_unpacked + (RpcRespWifiSetBandwidths *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_set_bandwidths__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_get_bandwidths__init + (RpcReqWifiGetBandwidths *message) +{ + static const RpcReqWifiGetBandwidths init_value = RPC__REQ__WIFI_GET_BANDWIDTHS__INIT; + *message = init_value; +} +size_t rpc__req__wifi_get_bandwidths__get_packed_size + (const RpcReqWifiGetBandwidths *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_get_bandwidths__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_get_bandwidths__pack + (const RpcReqWifiGetBandwidths *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_get_bandwidths__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_get_bandwidths__pack_to_buffer + (const RpcReqWifiGetBandwidths *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_get_bandwidths__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiGetBandwidths * + rpc__req__wifi_get_bandwidths__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiGetBandwidths *) + protobuf_c_message_unpack (&rpc__req__wifi_get_bandwidths__descriptor, + allocator, len, data); +} +void rpc__req__wifi_get_bandwidths__free_unpacked + (RpcReqWifiGetBandwidths *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_get_bandwidths__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_get_bandwidths__init + (RpcRespWifiGetBandwidths *message) +{ + static const RpcRespWifiGetBandwidths init_value = RPC__RESP__WIFI_GET_BANDWIDTHS__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_get_bandwidths__get_packed_size + (const RpcRespWifiGetBandwidths *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_get_bandwidths__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_get_bandwidths__pack + (const RpcRespWifiGetBandwidths *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_get_bandwidths__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_get_bandwidths__pack_to_buffer + (const RpcRespWifiGetBandwidths *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_get_bandwidths__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiGetBandwidths * + rpc__resp__wifi_get_bandwidths__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiGetBandwidths *) + protobuf_c_message_unpack (&rpc__resp__wifi_get_bandwidths__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_get_bandwidths__free_unpacked + (RpcRespWifiGetBandwidths *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_get_bandwidths__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_set_band__init + (RpcReqWifiSetBand *message) +{ + static const RpcReqWifiSetBand init_value = RPC__REQ__WIFI_SET_BAND__INIT; + *message = init_value; +} +size_t rpc__req__wifi_set_band__get_packed_size + (const RpcReqWifiSetBand *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_band__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_set_band__pack + (const RpcReqWifiSetBand *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_band__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_set_band__pack_to_buffer + (const RpcReqWifiSetBand *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_band__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiSetBand * + rpc__req__wifi_set_band__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiSetBand *) + protobuf_c_message_unpack (&rpc__req__wifi_set_band__descriptor, + allocator, len, data); +} +void rpc__req__wifi_set_band__free_unpacked + (RpcReqWifiSetBand *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_set_band__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_set_band__init + (RpcRespWifiSetBand *message) +{ + static const RpcRespWifiSetBand init_value = RPC__RESP__WIFI_SET_BAND__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_set_band__get_packed_size + (const RpcRespWifiSetBand *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_band__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_set_band__pack + (const RpcRespWifiSetBand *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_band__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_set_band__pack_to_buffer + (const RpcRespWifiSetBand *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_band__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiSetBand * + rpc__resp__wifi_set_band__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiSetBand *) + protobuf_c_message_unpack (&rpc__resp__wifi_set_band__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_set_band__free_unpacked + (RpcRespWifiSetBand *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_set_band__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_get_band__init + (RpcReqWifiGetBand *message) +{ + static const RpcReqWifiGetBand init_value = RPC__REQ__WIFI_GET_BAND__INIT; + *message = init_value; +} +size_t rpc__req__wifi_get_band__get_packed_size + (const RpcReqWifiGetBand *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_get_band__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_get_band__pack + (const RpcReqWifiGetBand *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_get_band__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_get_band__pack_to_buffer + (const RpcReqWifiGetBand *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_get_band__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiGetBand * + rpc__req__wifi_get_band__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiGetBand *) + protobuf_c_message_unpack (&rpc__req__wifi_get_band__descriptor, + allocator, len, data); +} +void rpc__req__wifi_get_band__free_unpacked + (RpcReqWifiGetBand *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_get_band__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_get_band__init + (RpcRespWifiGetBand *message) +{ + static const RpcRespWifiGetBand init_value = RPC__RESP__WIFI_GET_BAND__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_get_band__get_packed_size + (const RpcRespWifiGetBand *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_get_band__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_get_band__pack + (const RpcRespWifiGetBand *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_get_band__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_get_band__pack_to_buffer + (const RpcRespWifiGetBand *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_get_band__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiGetBand * + rpc__resp__wifi_get_band__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiGetBand *) + protobuf_c_message_unpack (&rpc__resp__wifi_get_band__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_get_band__free_unpacked + (RpcRespWifiGetBand *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_get_band__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_set_band_mode__init + (RpcReqWifiSetBandMode *message) +{ + static const RpcReqWifiSetBandMode init_value = RPC__REQ__WIFI_SET_BAND_MODE__INIT; + *message = init_value; +} +size_t rpc__req__wifi_set_band_mode__get_packed_size + (const RpcReqWifiSetBandMode *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_band_mode__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_set_band_mode__pack + (const RpcReqWifiSetBandMode *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_band_mode__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_set_band_mode__pack_to_buffer + (const RpcReqWifiSetBandMode *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_band_mode__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiSetBandMode * + rpc__req__wifi_set_band_mode__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiSetBandMode *) + protobuf_c_message_unpack (&rpc__req__wifi_set_band_mode__descriptor, + allocator, len, data); +} +void rpc__req__wifi_set_band_mode__free_unpacked + (RpcReqWifiSetBandMode *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_set_band_mode__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_set_band_mode__init + (RpcRespWifiSetBandMode *message) +{ + static const RpcRespWifiSetBandMode init_value = RPC__RESP__WIFI_SET_BAND_MODE__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_set_band_mode__get_packed_size + (const RpcRespWifiSetBandMode *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_band_mode__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_set_band_mode__pack + (const RpcRespWifiSetBandMode *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_band_mode__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_set_band_mode__pack_to_buffer + (const RpcRespWifiSetBandMode *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_band_mode__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiSetBandMode * + rpc__resp__wifi_set_band_mode__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiSetBandMode *) + protobuf_c_message_unpack (&rpc__resp__wifi_set_band_mode__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_set_band_mode__free_unpacked + (RpcRespWifiSetBandMode *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_set_band_mode__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_get_band_mode__init + (RpcReqWifiGetBandMode *message) +{ + static const RpcReqWifiGetBandMode init_value = RPC__REQ__WIFI_GET_BAND_MODE__INIT; + *message = init_value; +} +size_t rpc__req__wifi_get_band_mode__get_packed_size + (const RpcReqWifiGetBandMode *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_get_band_mode__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_get_band_mode__pack + (const RpcReqWifiGetBandMode *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_get_band_mode__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_get_band_mode__pack_to_buffer + (const RpcReqWifiGetBandMode *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_get_band_mode__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiGetBandMode * + rpc__req__wifi_get_band_mode__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiGetBandMode *) + protobuf_c_message_unpack (&rpc__req__wifi_get_band_mode__descriptor, + allocator, len, data); +} +void rpc__req__wifi_get_band_mode__free_unpacked + (RpcReqWifiGetBandMode *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_get_band_mode__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_get_band_mode__init + (RpcRespWifiGetBandMode *message) +{ + static const RpcRespWifiGetBandMode init_value = RPC__RESP__WIFI_GET_BAND_MODE__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_get_band_mode__get_packed_size + (const RpcRespWifiGetBandMode *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_get_band_mode__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_get_band_mode__pack + (const RpcRespWifiGetBandMode *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_get_band_mode__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_get_band_mode__pack_to_buffer + (const RpcRespWifiGetBandMode *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_get_band_mode__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiGetBandMode * + rpc__resp__wifi_get_band_mode__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiGetBandMode *) + protobuf_c_message_unpack (&rpc__resp__wifi_get_band_mode__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_get_band_mode__free_unpacked + (RpcRespWifiGetBandMode *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_get_band_mode__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_set_inactive_time__init + (RpcReqWifiSetInactiveTime *message) +{ + static const RpcReqWifiSetInactiveTime init_value = RPC__REQ__WIFI_SET_INACTIVE_TIME__INIT; + *message = init_value; +} +size_t rpc__req__wifi_set_inactive_time__get_packed_size + (const RpcReqWifiSetInactiveTime *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_inactive_time__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_set_inactive_time__pack + (const RpcReqWifiSetInactiveTime *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_inactive_time__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_set_inactive_time__pack_to_buffer + (const RpcReqWifiSetInactiveTime *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_inactive_time__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiSetInactiveTime * + rpc__req__wifi_set_inactive_time__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiSetInactiveTime *) + protobuf_c_message_unpack (&rpc__req__wifi_set_inactive_time__descriptor, + allocator, len, data); +} +void rpc__req__wifi_set_inactive_time__free_unpacked + (RpcReqWifiSetInactiveTime *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_set_inactive_time__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_set_inactive_time__init + (RpcRespWifiSetInactiveTime *message) +{ + static const RpcRespWifiSetInactiveTime init_value = RPC__RESP__WIFI_SET_INACTIVE_TIME__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_set_inactive_time__get_packed_size + (const RpcRespWifiSetInactiveTime *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_inactive_time__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_set_inactive_time__pack + (const RpcRespWifiSetInactiveTime *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_inactive_time__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_set_inactive_time__pack_to_buffer + (const RpcRespWifiSetInactiveTime *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_inactive_time__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiSetInactiveTime * + rpc__resp__wifi_set_inactive_time__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiSetInactiveTime *) + protobuf_c_message_unpack (&rpc__resp__wifi_set_inactive_time__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_set_inactive_time__free_unpacked + (RpcRespWifiSetInactiveTime *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_set_inactive_time__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_get_inactive_time__init + (RpcReqWifiGetInactiveTime *message) +{ + static const RpcReqWifiGetInactiveTime init_value = RPC__REQ__WIFI_GET_INACTIVE_TIME__INIT; + *message = init_value; +} +size_t rpc__req__wifi_get_inactive_time__get_packed_size + (const RpcReqWifiGetInactiveTime *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_get_inactive_time__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_get_inactive_time__pack + (const RpcReqWifiGetInactiveTime *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_get_inactive_time__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_get_inactive_time__pack_to_buffer + (const RpcReqWifiGetInactiveTime *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_get_inactive_time__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiGetInactiveTime * + rpc__req__wifi_get_inactive_time__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiGetInactiveTime *) + protobuf_c_message_unpack (&rpc__req__wifi_get_inactive_time__descriptor, + allocator, len, data); +} +void rpc__req__wifi_get_inactive_time__free_unpacked + (RpcReqWifiGetInactiveTime *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_get_inactive_time__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_get_inactive_time__init + (RpcRespWifiGetInactiveTime *message) +{ + static const RpcRespWifiGetInactiveTime init_value = RPC__RESP__WIFI_GET_INACTIVE_TIME__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_get_inactive_time__get_packed_size + (const RpcRespWifiGetInactiveTime *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_get_inactive_time__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_get_inactive_time__pack + (const RpcRespWifiGetInactiveTime *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_get_inactive_time__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_get_inactive_time__pack_to_buffer + (const RpcRespWifiGetInactiveTime *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_get_inactive_time__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiGetInactiveTime * + rpc__resp__wifi_get_inactive_time__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiGetInactiveTime *) + protobuf_c_message_unpack (&rpc__resp__wifi_get_inactive_time__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_get_inactive_time__free_unpacked + (RpcRespWifiGetInactiveTime *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_get_inactive_time__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_disable_pmf_config__init + (RpcReqWifiDisablePmfConfig *message) +{ + static const RpcReqWifiDisablePmfConfig init_value = RPC__REQ__WIFI_DISABLE_PMF_CONFIG__INIT; + *message = init_value; +} +size_t rpc__req__wifi_disable_pmf_config__get_packed_size + (const RpcReqWifiDisablePmfConfig *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_disable_pmf_config__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_disable_pmf_config__pack + (const RpcReqWifiDisablePmfConfig *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_disable_pmf_config__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_disable_pmf_config__pack_to_buffer + (const RpcReqWifiDisablePmfConfig *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_disable_pmf_config__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiDisablePmfConfig * + rpc__req__wifi_disable_pmf_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiDisablePmfConfig *) + protobuf_c_message_unpack (&rpc__req__wifi_disable_pmf_config__descriptor, + allocator, len, data); +} +void rpc__req__wifi_disable_pmf_config__free_unpacked + (RpcReqWifiDisablePmfConfig *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_disable_pmf_config__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_disable_pmf_config__init + (RpcRespWifiDisablePmfConfig *message) +{ + static const RpcRespWifiDisablePmfConfig init_value = RPC__RESP__WIFI_DISABLE_PMF_CONFIG__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_disable_pmf_config__get_packed_size + (const RpcRespWifiDisablePmfConfig *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_disable_pmf_config__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_disable_pmf_config__pack + (const RpcRespWifiDisablePmfConfig *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_disable_pmf_config__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_disable_pmf_config__pack_to_buffer + (const RpcRespWifiDisablePmfConfig *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_disable_pmf_config__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiDisablePmfConfig * + rpc__resp__wifi_disable_pmf_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiDisablePmfConfig *) + protobuf_c_message_unpack (&rpc__resp__wifi_disable_pmf_config__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_disable_pmf_config__free_unpacked + (RpcRespWifiDisablePmfConfig *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_disable_pmf_config__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_sta_itwt_setup__init + (RpcReqWifiStaItwtSetup *message) +{ + static const RpcReqWifiStaItwtSetup init_value = RPC__REQ__WIFI_STA_ITWT_SETUP__INIT; + *message = init_value; +} +size_t rpc__req__wifi_sta_itwt_setup__get_packed_size + (const RpcReqWifiStaItwtSetup *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_sta_itwt_setup__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_sta_itwt_setup__pack + (const RpcReqWifiStaItwtSetup *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_sta_itwt_setup__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_sta_itwt_setup__pack_to_buffer + (const RpcReqWifiStaItwtSetup *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_sta_itwt_setup__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiStaItwtSetup * + rpc__req__wifi_sta_itwt_setup__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiStaItwtSetup *) + protobuf_c_message_unpack (&rpc__req__wifi_sta_itwt_setup__descriptor, + allocator, len, data); +} +void rpc__req__wifi_sta_itwt_setup__free_unpacked + (RpcReqWifiStaItwtSetup *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_sta_itwt_setup__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_sta_itwt_setup__init + (RpcRespWifiStaItwtSetup *message) +{ + static const RpcRespWifiStaItwtSetup init_value = RPC__RESP__WIFI_STA_ITWT_SETUP__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_sta_itwt_setup__get_packed_size + (const RpcRespWifiStaItwtSetup *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_sta_itwt_setup__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_sta_itwt_setup__pack + (const RpcRespWifiStaItwtSetup *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_sta_itwt_setup__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_sta_itwt_setup__pack_to_buffer + (const RpcRespWifiStaItwtSetup *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_sta_itwt_setup__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiStaItwtSetup * + rpc__resp__wifi_sta_itwt_setup__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiStaItwtSetup *) + protobuf_c_message_unpack (&rpc__resp__wifi_sta_itwt_setup__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_sta_itwt_setup__free_unpacked + (RpcRespWifiStaItwtSetup *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_sta_itwt_setup__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_sta_itwt_teardown__init + (RpcReqWifiStaItwtTeardown *message) +{ + static const RpcReqWifiStaItwtTeardown init_value = RPC__REQ__WIFI_STA_ITWT_TEARDOWN__INIT; + *message = init_value; +} +size_t rpc__req__wifi_sta_itwt_teardown__get_packed_size + (const RpcReqWifiStaItwtTeardown *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_sta_itwt_teardown__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_sta_itwt_teardown__pack + (const RpcReqWifiStaItwtTeardown *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_sta_itwt_teardown__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_sta_itwt_teardown__pack_to_buffer + (const RpcReqWifiStaItwtTeardown *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_sta_itwt_teardown__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiStaItwtTeardown * + rpc__req__wifi_sta_itwt_teardown__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiStaItwtTeardown *) + protobuf_c_message_unpack (&rpc__req__wifi_sta_itwt_teardown__descriptor, + allocator, len, data); +} +void rpc__req__wifi_sta_itwt_teardown__free_unpacked + (RpcReqWifiStaItwtTeardown *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_sta_itwt_teardown__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_sta_itwt_teardown__init + (RpcRespWifiStaItwtTeardown *message) +{ + static const RpcRespWifiStaItwtTeardown init_value = RPC__RESP__WIFI_STA_ITWT_TEARDOWN__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_sta_itwt_teardown__get_packed_size + (const RpcRespWifiStaItwtTeardown *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_sta_itwt_teardown__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_sta_itwt_teardown__pack + (const RpcRespWifiStaItwtTeardown *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_sta_itwt_teardown__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_sta_itwt_teardown__pack_to_buffer + (const RpcRespWifiStaItwtTeardown *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_sta_itwt_teardown__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiStaItwtTeardown * + rpc__resp__wifi_sta_itwt_teardown__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiStaItwtTeardown *) + protobuf_c_message_unpack (&rpc__resp__wifi_sta_itwt_teardown__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_sta_itwt_teardown__free_unpacked + (RpcRespWifiStaItwtTeardown *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_sta_itwt_teardown__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_sta_itwt_suspend__init + (RpcReqWifiStaItwtSuspend *message) +{ + static const RpcReqWifiStaItwtSuspend init_value = RPC__REQ__WIFI_STA_ITWT_SUSPEND__INIT; + *message = init_value; +} +size_t rpc__req__wifi_sta_itwt_suspend__get_packed_size + (const RpcReqWifiStaItwtSuspend *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_sta_itwt_suspend__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_sta_itwt_suspend__pack + (const RpcReqWifiStaItwtSuspend *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_sta_itwt_suspend__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_sta_itwt_suspend__pack_to_buffer + (const RpcReqWifiStaItwtSuspend *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_sta_itwt_suspend__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiStaItwtSuspend * + rpc__req__wifi_sta_itwt_suspend__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiStaItwtSuspend *) + protobuf_c_message_unpack (&rpc__req__wifi_sta_itwt_suspend__descriptor, + allocator, len, data); +} +void rpc__req__wifi_sta_itwt_suspend__free_unpacked + (RpcReqWifiStaItwtSuspend *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_sta_itwt_suspend__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_sta_itwt_suspend__init + (RpcRespWifiStaItwtSuspend *message) +{ + static const RpcRespWifiStaItwtSuspend init_value = RPC__RESP__WIFI_STA_ITWT_SUSPEND__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_sta_itwt_suspend__get_packed_size + (const RpcRespWifiStaItwtSuspend *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_sta_itwt_suspend__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_sta_itwt_suspend__pack + (const RpcRespWifiStaItwtSuspend *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_sta_itwt_suspend__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_sta_itwt_suspend__pack_to_buffer + (const RpcRespWifiStaItwtSuspend *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_sta_itwt_suspend__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiStaItwtSuspend * + rpc__resp__wifi_sta_itwt_suspend__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiStaItwtSuspend *) + protobuf_c_message_unpack (&rpc__resp__wifi_sta_itwt_suspend__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_sta_itwt_suspend__free_unpacked + (RpcRespWifiStaItwtSuspend *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_sta_itwt_suspend__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_sta_itwt_get_flow_id_status__init + (RpcReqWifiStaItwtGetFlowIdStatus *message) +{ + static const RpcReqWifiStaItwtGetFlowIdStatus init_value = RPC__REQ__WIFI_STA_ITWT_GET_FLOW_ID_STATUS__INIT; + *message = init_value; +} +size_t rpc__req__wifi_sta_itwt_get_flow_id_status__get_packed_size + (const RpcReqWifiStaItwtGetFlowIdStatus *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_sta_itwt_get_flow_id_status__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_sta_itwt_get_flow_id_status__pack + (const RpcReqWifiStaItwtGetFlowIdStatus *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_sta_itwt_get_flow_id_status__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_sta_itwt_get_flow_id_status__pack_to_buffer + (const RpcReqWifiStaItwtGetFlowIdStatus *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_sta_itwt_get_flow_id_status__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiStaItwtGetFlowIdStatus * + rpc__req__wifi_sta_itwt_get_flow_id_status__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiStaItwtGetFlowIdStatus *) + protobuf_c_message_unpack (&rpc__req__wifi_sta_itwt_get_flow_id_status__descriptor, + allocator, len, data); +} +void rpc__req__wifi_sta_itwt_get_flow_id_status__free_unpacked + (RpcReqWifiStaItwtGetFlowIdStatus *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_sta_itwt_get_flow_id_status__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_sta_itwt_get_flow_id_status__init + (RpcRespWifiStaItwtGetFlowIdStatus *message) +{ + static const RpcRespWifiStaItwtGetFlowIdStatus init_value = RPC__RESP__WIFI_STA_ITWT_GET_FLOW_ID_STATUS__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_sta_itwt_get_flow_id_status__get_packed_size + (const RpcRespWifiStaItwtGetFlowIdStatus *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_sta_itwt_get_flow_id_status__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_sta_itwt_get_flow_id_status__pack + (const RpcRespWifiStaItwtGetFlowIdStatus *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_sta_itwt_get_flow_id_status__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_sta_itwt_get_flow_id_status__pack_to_buffer + (const RpcRespWifiStaItwtGetFlowIdStatus *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_sta_itwt_get_flow_id_status__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiStaItwtGetFlowIdStatus * + rpc__resp__wifi_sta_itwt_get_flow_id_status__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiStaItwtGetFlowIdStatus *) + protobuf_c_message_unpack (&rpc__resp__wifi_sta_itwt_get_flow_id_status__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_sta_itwt_get_flow_id_status__free_unpacked + (RpcRespWifiStaItwtGetFlowIdStatus *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_sta_itwt_get_flow_id_status__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_sta_itwt_send_probe_req__init + (RpcReqWifiStaItwtSendProbeReq *message) +{ + static const RpcReqWifiStaItwtSendProbeReq init_value = RPC__REQ__WIFI_STA_ITWT_SEND_PROBE_REQ__INIT; + *message = init_value; +} +size_t rpc__req__wifi_sta_itwt_send_probe_req__get_packed_size + (const RpcReqWifiStaItwtSendProbeReq *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_sta_itwt_send_probe_req__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_sta_itwt_send_probe_req__pack + (const RpcReqWifiStaItwtSendProbeReq *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_sta_itwt_send_probe_req__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_sta_itwt_send_probe_req__pack_to_buffer + (const RpcReqWifiStaItwtSendProbeReq *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_sta_itwt_send_probe_req__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiStaItwtSendProbeReq * + rpc__req__wifi_sta_itwt_send_probe_req__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiStaItwtSendProbeReq *) + protobuf_c_message_unpack (&rpc__req__wifi_sta_itwt_send_probe_req__descriptor, + allocator, len, data); +} +void rpc__req__wifi_sta_itwt_send_probe_req__free_unpacked + (RpcReqWifiStaItwtSendProbeReq *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_sta_itwt_send_probe_req__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_sta_itwt_send_probe_req__init + (RpcRespWifiStaItwtSendProbeReq *message) +{ + static const RpcRespWifiStaItwtSendProbeReq init_value = RPC__RESP__WIFI_STA_ITWT_SEND_PROBE_REQ__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_sta_itwt_send_probe_req__get_packed_size + (const RpcRespWifiStaItwtSendProbeReq *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_sta_itwt_send_probe_req__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_sta_itwt_send_probe_req__pack + (const RpcRespWifiStaItwtSendProbeReq *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_sta_itwt_send_probe_req__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_sta_itwt_send_probe_req__pack_to_buffer + (const RpcRespWifiStaItwtSendProbeReq *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_sta_itwt_send_probe_req__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiStaItwtSendProbeReq * + rpc__resp__wifi_sta_itwt_send_probe_req__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiStaItwtSendProbeReq *) + protobuf_c_message_unpack (&rpc__resp__wifi_sta_itwt_send_probe_req__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_sta_itwt_send_probe_req__free_unpacked + (RpcRespWifiStaItwtSendProbeReq *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_sta_itwt_send_probe_req__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_sta_itwt_set_target_wake_time_offset__init + (RpcReqWifiStaItwtSetTargetWakeTimeOffset *message) +{ + static const RpcReqWifiStaItwtSetTargetWakeTimeOffset init_value = RPC__REQ__WIFI_STA_ITWT_SET_TARGET_WAKE_TIME_OFFSET__INIT; + *message = init_value; +} +size_t rpc__req__wifi_sta_itwt_set_target_wake_time_offset__get_packed_size + (const RpcReqWifiStaItwtSetTargetWakeTimeOffset *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_sta_itwt_set_target_wake_time_offset__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_sta_itwt_set_target_wake_time_offset__pack + (const RpcReqWifiStaItwtSetTargetWakeTimeOffset *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_sta_itwt_set_target_wake_time_offset__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_sta_itwt_set_target_wake_time_offset__pack_to_buffer + (const RpcReqWifiStaItwtSetTargetWakeTimeOffset *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_sta_itwt_set_target_wake_time_offset__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiStaItwtSetTargetWakeTimeOffset * + rpc__req__wifi_sta_itwt_set_target_wake_time_offset__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiStaItwtSetTargetWakeTimeOffset *) + protobuf_c_message_unpack (&rpc__req__wifi_sta_itwt_set_target_wake_time_offset__descriptor, + allocator, len, data); +} +void rpc__req__wifi_sta_itwt_set_target_wake_time_offset__free_unpacked + (RpcReqWifiStaItwtSetTargetWakeTimeOffset *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_sta_itwt_set_target_wake_time_offset__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_sta_itwt_set_target_wake_time_offset__init + (RpcRespWifiStaItwtSetTargetWakeTimeOffset *message) +{ + static const RpcRespWifiStaItwtSetTargetWakeTimeOffset init_value = RPC__RESP__WIFI_STA_ITWT_SET_TARGET_WAKE_TIME_OFFSET__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_sta_itwt_set_target_wake_time_offset__get_packed_size + (const RpcRespWifiStaItwtSetTargetWakeTimeOffset *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_sta_itwt_set_target_wake_time_offset__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_sta_itwt_set_target_wake_time_offset__pack + (const RpcRespWifiStaItwtSetTargetWakeTimeOffset *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_sta_itwt_set_target_wake_time_offset__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_sta_itwt_set_target_wake_time_offset__pack_to_buffer + (const RpcRespWifiStaItwtSetTargetWakeTimeOffset *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_sta_itwt_set_target_wake_time_offset__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiStaItwtSetTargetWakeTimeOffset * + rpc__resp__wifi_sta_itwt_set_target_wake_time_offset__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiStaItwtSetTargetWakeTimeOffset *) + protobuf_c_message_unpack (&rpc__resp__wifi_sta_itwt_set_target_wake_time_offset__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_sta_itwt_set_target_wake_time_offset__free_unpacked + (RpcRespWifiStaItwtSetTargetWakeTimeOffset *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_sta_itwt_set_target_wake_time_offset__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_sta_twt_config__init + (RpcReqWifiStaTwtConfig *message) +{ + static const RpcReqWifiStaTwtConfig init_value = RPC__REQ__WIFI_STA_TWT_CONFIG__INIT; + *message = init_value; +} +size_t rpc__req__wifi_sta_twt_config__get_packed_size + (const RpcReqWifiStaTwtConfig *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_sta_twt_config__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_sta_twt_config__pack + (const RpcReqWifiStaTwtConfig *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_sta_twt_config__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_sta_twt_config__pack_to_buffer + (const RpcReqWifiStaTwtConfig *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_sta_twt_config__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiStaTwtConfig * + rpc__req__wifi_sta_twt_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiStaTwtConfig *) + protobuf_c_message_unpack (&rpc__req__wifi_sta_twt_config__descriptor, + allocator, len, data); +} +void rpc__req__wifi_sta_twt_config__free_unpacked + (RpcReqWifiStaTwtConfig *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_sta_twt_config__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_sta_twt_config__init + (RpcRespWifiStaTwtConfig *message) +{ + static const RpcRespWifiStaTwtConfig init_value = RPC__RESP__WIFI_STA_TWT_CONFIG__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_sta_twt_config__get_packed_size + (const RpcRespWifiStaTwtConfig *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_sta_twt_config__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_sta_twt_config__pack + (const RpcRespWifiStaTwtConfig *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_sta_twt_config__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_sta_twt_config__pack_to_buffer + (const RpcRespWifiStaTwtConfig *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_sta_twt_config__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiStaTwtConfig * + rpc__resp__wifi_sta_twt_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiStaTwtConfig *) + protobuf_c_message_unpack (&rpc__resp__wifi_sta_twt_config__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_sta_twt_config__free_unpacked + (RpcRespWifiStaTwtConfig *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_sta_twt_config__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__get_coprocessor_fw_version__init + (RpcReqGetCoprocessorFwVersion *message) +{ + static const RpcReqGetCoprocessorFwVersion init_value = RPC__REQ__GET_COPROCESSOR_FW_VERSION__INIT; + *message = init_value; +} +size_t rpc__req__get_coprocessor_fw_version__get_packed_size + (const RpcReqGetCoprocessorFwVersion *message) +{ + assert(message->base.descriptor == &rpc__req__get_coprocessor_fw_version__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__get_coprocessor_fw_version__pack + (const RpcReqGetCoprocessorFwVersion *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__get_coprocessor_fw_version__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__get_coprocessor_fw_version__pack_to_buffer + (const RpcReqGetCoprocessorFwVersion *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__get_coprocessor_fw_version__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqGetCoprocessorFwVersion * + rpc__req__get_coprocessor_fw_version__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqGetCoprocessorFwVersion *) + protobuf_c_message_unpack (&rpc__req__get_coprocessor_fw_version__descriptor, + allocator, len, data); +} +void rpc__req__get_coprocessor_fw_version__free_unpacked + (RpcReqGetCoprocessorFwVersion *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__get_coprocessor_fw_version__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__get_coprocessor_fw_version__init + (RpcRespGetCoprocessorFwVersion *message) +{ + static const RpcRespGetCoprocessorFwVersion init_value = RPC__RESP__GET_COPROCESSOR_FW_VERSION__INIT; + *message = init_value; +} +size_t rpc__resp__get_coprocessor_fw_version__get_packed_size + (const RpcRespGetCoprocessorFwVersion *message) +{ + assert(message->base.descriptor == &rpc__resp__get_coprocessor_fw_version__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__get_coprocessor_fw_version__pack + (const RpcRespGetCoprocessorFwVersion *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__get_coprocessor_fw_version__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__get_coprocessor_fw_version__pack_to_buffer + (const RpcRespGetCoprocessorFwVersion *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__get_coprocessor_fw_version__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespGetCoprocessorFwVersion * + rpc__resp__get_coprocessor_fw_version__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespGetCoprocessorFwVersion *) + protobuf_c_message_unpack (&rpc__resp__get_coprocessor_fw_version__descriptor, + allocator, len, data); +} +void rpc__resp__get_coprocessor_fw_version__free_unpacked + (RpcRespGetCoprocessorFwVersion *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__get_coprocessor_fw_version__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__set_dhcp_dns_status__init + (RpcReqSetDhcpDnsStatus *message) +{ + static const RpcReqSetDhcpDnsStatus init_value = RPC__REQ__SET_DHCP_DNS_STATUS__INIT; + *message = init_value; +} +size_t rpc__req__set_dhcp_dns_status__get_packed_size + (const RpcReqSetDhcpDnsStatus *message) +{ + assert(message->base.descriptor == &rpc__req__set_dhcp_dns_status__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__set_dhcp_dns_status__pack + (const RpcReqSetDhcpDnsStatus *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__set_dhcp_dns_status__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__set_dhcp_dns_status__pack_to_buffer + (const RpcReqSetDhcpDnsStatus *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__set_dhcp_dns_status__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqSetDhcpDnsStatus * + rpc__req__set_dhcp_dns_status__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqSetDhcpDnsStatus *) + protobuf_c_message_unpack (&rpc__req__set_dhcp_dns_status__descriptor, + allocator, len, data); +} +void rpc__req__set_dhcp_dns_status__free_unpacked + (RpcReqSetDhcpDnsStatus *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__set_dhcp_dns_status__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__set_dhcp_dns_status__init + (RpcRespSetDhcpDnsStatus *message) +{ + static const RpcRespSetDhcpDnsStatus init_value = RPC__RESP__SET_DHCP_DNS_STATUS__INIT; + *message = init_value; +} +size_t rpc__resp__set_dhcp_dns_status__get_packed_size + (const RpcRespSetDhcpDnsStatus *message) +{ + assert(message->base.descriptor == &rpc__resp__set_dhcp_dns_status__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__set_dhcp_dns_status__pack + (const RpcRespSetDhcpDnsStatus *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__set_dhcp_dns_status__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__set_dhcp_dns_status__pack_to_buffer + (const RpcRespSetDhcpDnsStatus *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__set_dhcp_dns_status__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespSetDhcpDnsStatus * + rpc__resp__set_dhcp_dns_status__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespSetDhcpDnsStatus *) + protobuf_c_message_unpack (&rpc__resp__set_dhcp_dns_status__descriptor, + allocator, len, data); +} +void rpc__resp__set_dhcp_dns_status__free_unpacked + (RpcRespSetDhcpDnsStatus *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__set_dhcp_dns_status__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__get_dhcp_dns_status__init + (RpcReqGetDhcpDnsStatus *message) +{ + static const RpcReqGetDhcpDnsStatus init_value = RPC__REQ__GET_DHCP_DNS_STATUS__INIT; + *message = init_value; +} +size_t rpc__req__get_dhcp_dns_status__get_packed_size + (const RpcReqGetDhcpDnsStatus *message) +{ + assert(message->base.descriptor == &rpc__req__get_dhcp_dns_status__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__get_dhcp_dns_status__pack + (const RpcReqGetDhcpDnsStatus *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__get_dhcp_dns_status__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__get_dhcp_dns_status__pack_to_buffer + (const RpcReqGetDhcpDnsStatus *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__get_dhcp_dns_status__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqGetDhcpDnsStatus * + rpc__req__get_dhcp_dns_status__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqGetDhcpDnsStatus *) + protobuf_c_message_unpack (&rpc__req__get_dhcp_dns_status__descriptor, + allocator, len, data); +} +void rpc__req__get_dhcp_dns_status__free_unpacked + (RpcReqGetDhcpDnsStatus *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__get_dhcp_dns_status__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__get_dhcp_dns_status__init + (RpcRespGetDhcpDnsStatus *message) +{ + static const RpcRespGetDhcpDnsStatus init_value = RPC__RESP__GET_DHCP_DNS_STATUS__INIT; + *message = init_value; +} +size_t rpc__resp__get_dhcp_dns_status__get_packed_size + (const RpcRespGetDhcpDnsStatus *message) +{ + assert(message->base.descriptor == &rpc__resp__get_dhcp_dns_status__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__get_dhcp_dns_status__pack + (const RpcRespGetDhcpDnsStatus *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__get_dhcp_dns_status__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__get_dhcp_dns_status__pack_to_buffer + (const RpcRespGetDhcpDnsStatus *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__get_dhcp_dns_status__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespGetDhcpDnsStatus * + rpc__resp__get_dhcp_dns_status__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespGetDhcpDnsStatus *) + protobuf_c_message_unpack (&rpc__resp__get_dhcp_dns_status__descriptor, + allocator, len, data); +} +void rpc__resp__get_dhcp_dns_status__free_unpacked + (RpcRespGetDhcpDnsStatus *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__get_dhcp_dns_status__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__supp_dpp_init__init + (RpcReqSuppDppInit *message) +{ + static const RpcReqSuppDppInit init_value = RPC__REQ__SUPP_DPP_INIT__INIT; + *message = init_value; +} +size_t rpc__req__supp_dpp_init__get_packed_size + (const RpcReqSuppDppInit *message) +{ + assert(message->base.descriptor == &rpc__req__supp_dpp_init__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__supp_dpp_init__pack + (const RpcReqSuppDppInit *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__supp_dpp_init__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__supp_dpp_init__pack_to_buffer + (const RpcReqSuppDppInit *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__supp_dpp_init__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqSuppDppInit * + rpc__req__supp_dpp_init__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqSuppDppInit *) + protobuf_c_message_unpack (&rpc__req__supp_dpp_init__descriptor, + allocator, len, data); +} +void rpc__req__supp_dpp_init__free_unpacked + (RpcReqSuppDppInit *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__supp_dpp_init__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__supp_dpp_init__init + (RpcRespSuppDppInit *message) +{ + static const RpcRespSuppDppInit init_value = RPC__RESP__SUPP_DPP_INIT__INIT; + *message = init_value; +} +size_t rpc__resp__supp_dpp_init__get_packed_size + (const RpcRespSuppDppInit *message) +{ + assert(message->base.descriptor == &rpc__resp__supp_dpp_init__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__supp_dpp_init__pack + (const RpcRespSuppDppInit *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__supp_dpp_init__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__supp_dpp_init__pack_to_buffer + (const RpcRespSuppDppInit *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__supp_dpp_init__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespSuppDppInit * + rpc__resp__supp_dpp_init__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespSuppDppInit *) + protobuf_c_message_unpack (&rpc__resp__supp_dpp_init__descriptor, + allocator, len, data); +} +void rpc__resp__supp_dpp_init__free_unpacked + (RpcRespSuppDppInit *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__supp_dpp_init__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__supp_dpp_deinit__init + (RpcReqSuppDppDeinit *message) +{ + static const RpcReqSuppDppDeinit init_value = RPC__REQ__SUPP_DPP_DEINIT__INIT; + *message = init_value; +} +size_t rpc__req__supp_dpp_deinit__get_packed_size + (const RpcReqSuppDppDeinit *message) +{ + assert(message->base.descriptor == &rpc__req__supp_dpp_deinit__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__supp_dpp_deinit__pack + (const RpcReqSuppDppDeinit *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__supp_dpp_deinit__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__supp_dpp_deinit__pack_to_buffer + (const RpcReqSuppDppDeinit *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__supp_dpp_deinit__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqSuppDppDeinit * + rpc__req__supp_dpp_deinit__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqSuppDppDeinit *) + protobuf_c_message_unpack (&rpc__req__supp_dpp_deinit__descriptor, + allocator, len, data); +} +void rpc__req__supp_dpp_deinit__free_unpacked + (RpcReqSuppDppDeinit *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__supp_dpp_deinit__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__supp_dpp_deinit__init + (RpcRespSuppDppDeinit *message) +{ + static const RpcRespSuppDppDeinit init_value = RPC__RESP__SUPP_DPP_DEINIT__INIT; + *message = init_value; +} +size_t rpc__resp__supp_dpp_deinit__get_packed_size + (const RpcRespSuppDppDeinit *message) +{ + assert(message->base.descriptor == &rpc__resp__supp_dpp_deinit__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__supp_dpp_deinit__pack + (const RpcRespSuppDppDeinit *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__supp_dpp_deinit__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__supp_dpp_deinit__pack_to_buffer + (const RpcRespSuppDppDeinit *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__supp_dpp_deinit__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespSuppDppDeinit * + rpc__resp__supp_dpp_deinit__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespSuppDppDeinit *) + protobuf_c_message_unpack (&rpc__resp__supp_dpp_deinit__descriptor, + allocator, len, data); +} +void rpc__resp__supp_dpp_deinit__free_unpacked + (RpcRespSuppDppDeinit *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__supp_dpp_deinit__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__supp_dpp_bootstrap_gen__init + (RpcReqSuppDppBootstrapGen *message) +{ + static const RpcReqSuppDppBootstrapGen init_value = RPC__REQ__SUPP_DPP_BOOTSTRAP_GEN__INIT; + *message = init_value; +} +size_t rpc__req__supp_dpp_bootstrap_gen__get_packed_size + (const RpcReqSuppDppBootstrapGen *message) +{ + assert(message->base.descriptor == &rpc__req__supp_dpp_bootstrap_gen__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__supp_dpp_bootstrap_gen__pack + (const RpcReqSuppDppBootstrapGen *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__supp_dpp_bootstrap_gen__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__supp_dpp_bootstrap_gen__pack_to_buffer + (const RpcReqSuppDppBootstrapGen *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__supp_dpp_bootstrap_gen__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqSuppDppBootstrapGen * + rpc__req__supp_dpp_bootstrap_gen__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqSuppDppBootstrapGen *) + protobuf_c_message_unpack (&rpc__req__supp_dpp_bootstrap_gen__descriptor, + allocator, len, data); +} +void rpc__req__supp_dpp_bootstrap_gen__free_unpacked + (RpcReqSuppDppBootstrapGen *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__supp_dpp_bootstrap_gen__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__supp_dpp_bootstrap_gen__init + (RpcRespSuppDppBootstrapGen *message) +{ + static const RpcRespSuppDppBootstrapGen init_value = RPC__RESP__SUPP_DPP_BOOTSTRAP_GEN__INIT; + *message = init_value; +} +size_t rpc__resp__supp_dpp_bootstrap_gen__get_packed_size + (const RpcRespSuppDppBootstrapGen *message) +{ + assert(message->base.descriptor == &rpc__resp__supp_dpp_bootstrap_gen__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__supp_dpp_bootstrap_gen__pack + (const RpcRespSuppDppBootstrapGen *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__supp_dpp_bootstrap_gen__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__supp_dpp_bootstrap_gen__pack_to_buffer + (const RpcRespSuppDppBootstrapGen *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__supp_dpp_bootstrap_gen__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespSuppDppBootstrapGen * + rpc__resp__supp_dpp_bootstrap_gen__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespSuppDppBootstrapGen *) + protobuf_c_message_unpack (&rpc__resp__supp_dpp_bootstrap_gen__descriptor, + allocator, len, data); +} +void rpc__resp__supp_dpp_bootstrap_gen__free_unpacked + (RpcRespSuppDppBootstrapGen *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__supp_dpp_bootstrap_gen__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__supp_dpp_start_listen__init + (RpcReqSuppDppStartListen *message) +{ + static const RpcReqSuppDppStartListen init_value = RPC__REQ__SUPP_DPP_START_LISTEN__INIT; + *message = init_value; +} +size_t rpc__req__supp_dpp_start_listen__get_packed_size + (const RpcReqSuppDppStartListen *message) +{ + assert(message->base.descriptor == &rpc__req__supp_dpp_start_listen__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__supp_dpp_start_listen__pack + (const RpcReqSuppDppStartListen *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__supp_dpp_start_listen__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__supp_dpp_start_listen__pack_to_buffer + (const RpcReqSuppDppStartListen *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__supp_dpp_start_listen__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqSuppDppStartListen * + rpc__req__supp_dpp_start_listen__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqSuppDppStartListen *) + protobuf_c_message_unpack (&rpc__req__supp_dpp_start_listen__descriptor, + allocator, len, data); +} +void rpc__req__supp_dpp_start_listen__free_unpacked + (RpcReqSuppDppStartListen *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__supp_dpp_start_listen__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__supp_dpp_start_listen__init + (RpcRespSuppDppStartListen *message) +{ + static const RpcRespSuppDppStartListen init_value = RPC__RESP__SUPP_DPP_START_LISTEN__INIT; + *message = init_value; +} +size_t rpc__resp__supp_dpp_start_listen__get_packed_size + (const RpcRespSuppDppStartListen *message) +{ + assert(message->base.descriptor == &rpc__resp__supp_dpp_start_listen__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__supp_dpp_start_listen__pack + (const RpcRespSuppDppStartListen *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__supp_dpp_start_listen__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__supp_dpp_start_listen__pack_to_buffer + (const RpcRespSuppDppStartListen *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__supp_dpp_start_listen__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespSuppDppStartListen * + rpc__resp__supp_dpp_start_listen__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespSuppDppStartListen *) + protobuf_c_message_unpack (&rpc__resp__supp_dpp_start_listen__descriptor, + allocator, len, data); +} +void rpc__resp__supp_dpp_start_listen__free_unpacked + (RpcRespSuppDppStartListen *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__supp_dpp_start_listen__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__supp_dpp_stop_listen__init + (RpcReqSuppDppStopListen *message) +{ + static const RpcReqSuppDppStopListen init_value = RPC__REQ__SUPP_DPP_STOP_LISTEN__INIT; + *message = init_value; +} +size_t rpc__req__supp_dpp_stop_listen__get_packed_size + (const RpcReqSuppDppStopListen *message) +{ + assert(message->base.descriptor == &rpc__req__supp_dpp_stop_listen__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__supp_dpp_stop_listen__pack + (const RpcReqSuppDppStopListen *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__supp_dpp_stop_listen__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__supp_dpp_stop_listen__pack_to_buffer + (const RpcReqSuppDppStopListen *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__supp_dpp_stop_listen__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqSuppDppStopListen * + rpc__req__supp_dpp_stop_listen__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqSuppDppStopListen *) + protobuf_c_message_unpack (&rpc__req__supp_dpp_stop_listen__descriptor, + allocator, len, data); +} +void rpc__req__supp_dpp_stop_listen__free_unpacked + (RpcReqSuppDppStopListen *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__supp_dpp_stop_listen__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__supp_dpp_stop_listen__init + (RpcRespSuppDppStopListen *message) +{ + static const RpcRespSuppDppStopListen init_value = RPC__RESP__SUPP_DPP_STOP_LISTEN__INIT; + *message = init_value; +} +size_t rpc__resp__supp_dpp_stop_listen__get_packed_size + (const RpcRespSuppDppStopListen *message) +{ + assert(message->base.descriptor == &rpc__resp__supp_dpp_stop_listen__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__supp_dpp_stop_listen__pack + (const RpcRespSuppDppStopListen *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__supp_dpp_stop_listen__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__supp_dpp_stop_listen__pack_to_buffer + (const RpcRespSuppDppStopListen *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__supp_dpp_stop_listen__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespSuppDppStopListen * + rpc__resp__supp_dpp_stop_listen__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespSuppDppStopListen *) + protobuf_c_message_unpack (&rpc__resp__supp_dpp_stop_listen__descriptor, + allocator, len, data); +} +void rpc__resp__supp_dpp_stop_listen__free_unpacked + (RpcRespSuppDppStopListen *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__supp_dpp_stop_listen__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__iface_mac_addr_set_get__init + (RpcReqIfaceMacAddrSetGet *message) +{ + static const RpcReqIfaceMacAddrSetGet init_value = RPC__REQ__IFACE_MAC_ADDR_SET_GET__INIT; + *message = init_value; +} +size_t rpc__req__iface_mac_addr_set_get__get_packed_size + (const RpcReqIfaceMacAddrSetGet *message) +{ + assert(message->base.descriptor == &rpc__req__iface_mac_addr_set_get__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__iface_mac_addr_set_get__pack + (const RpcReqIfaceMacAddrSetGet *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__iface_mac_addr_set_get__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__iface_mac_addr_set_get__pack_to_buffer + (const RpcReqIfaceMacAddrSetGet *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__iface_mac_addr_set_get__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqIfaceMacAddrSetGet * + rpc__req__iface_mac_addr_set_get__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqIfaceMacAddrSetGet *) + protobuf_c_message_unpack (&rpc__req__iface_mac_addr_set_get__descriptor, + allocator, len, data); +} +void rpc__req__iface_mac_addr_set_get__free_unpacked + (RpcReqIfaceMacAddrSetGet *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__iface_mac_addr_set_get__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__iface_mac_addr_set_get__init + (RpcRespIfaceMacAddrSetGet *message) +{ + static const RpcRespIfaceMacAddrSetGet init_value = RPC__RESP__IFACE_MAC_ADDR_SET_GET__INIT; + *message = init_value; +} +size_t rpc__resp__iface_mac_addr_set_get__get_packed_size + (const RpcRespIfaceMacAddrSetGet *message) +{ + assert(message->base.descriptor == &rpc__resp__iface_mac_addr_set_get__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__iface_mac_addr_set_get__pack + (const RpcRespIfaceMacAddrSetGet *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__iface_mac_addr_set_get__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__iface_mac_addr_set_get__pack_to_buffer + (const RpcRespIfaceMacAddrSetGet *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__iface_mac_addr_set_get__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespIfaceMacAddrSetGet * + rpc__resp__iface_mac_addr_set_get__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespIfaceMacAddrSetGet *) + protobuf_c_message_unpack (&rpc__resp__iface_mac_addr_set_get__descriptor, + allocator, len, data); +} +void rpc__resp__iface_mac_addr_set_get__free_unpacked + (RpcRespIfaceMacAddrSetGet *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__iface_mac_addr_set_get__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__iface_mac_addr_len_get__init + (RpcReqIfaceMacAddrLenGet *message) +{ + static const RpcReqIfaceMacAddrLenGet init_value = RPC__REQ__IFACE_MAC_ADDR_LEN_GET__INIT; + *message = init_value; +} +size_t rpc__req__iface_mac_addr_len_get__get_packed_size + (const RpcReqIfaceMacAddrLenGet *message) +{ + assert(message->base.descriptor == &rpc__req__iface_mac_addr_len_get__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__iface_mac_addr_len_get__pack + (const RpcReqIfaceMacAddrLenGet *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__iface_mac_addr_len_get__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__iface_mac_addr_len_get__pack_to_buffer + (const RpcReqIfaceMacAddrLenGet *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__iface_mac_addr_len_get__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqIfaceMacAddrLenGet * + rpc__req__iface_mac_addr_len_get__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqIfaceMacAddrLenGet *) + protobuf_c_message_unpack (&rpc__req__iface_mac_addr_len_get__descriptor, + allocator, len, data); +} +void rpc__req__iface_mac_addr_len_get__free_unpacked + (RpcReqIfaceMacAddrLenGet *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__iface_mac_addr_len_get__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__iface_mac_addr_len_get__init + (RpcRespIfaceMacAddrLenGet *message) +{ + static const RpcRespIfaceMacAddrLenGet init_value = RPC__RESP__IFACE_MAC_ADDR_LEN_GET__INIT; + *message = init_value; +} +size_t rpc__resp__iface_mac_addr_len_get__get_packed_size + (const RpcRespIfaceMacAddrLenGet *message) +{ + assert(message->base.descriptor == &rpc__resp__iface_mac_addr_len_get__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__iface_mac_addr_len_get__pack + (const RpcRespIfaceMacAddrLenGet *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__iface_mac_addr_len_get__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__iface_mac_addr_len_get__pack_to_buffer + (const RpcRespIfaceMacAddrLenGet *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__iface_mac_addr_len_get__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespIfaceMacAddrLenGet * + rpc__resp__iface_mac_addr_len_get__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespIfaceMacAddrLenGet *) + protobuf_c_message_unpack (&rpc__resp__iface_mac_addr_len_get__descriptor, + allocator, len, data); +} +void rpc__resp__iface_mac_addr_len_get__free_unpacked + (RpcRespIfaceMacAddrLenGet *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__iface_mac_addr_len_get__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__feature_control__init + (RpcReqFeatureControl *message) +{ + static const RpcReqFeatureControl init_value = RPC__REQ__FEATURE_CONTROL__INIT; + *message = init_value; +} +size_t rpc__req__feature_control__get_packed_size + (const RpcReqFeatureControl *message) +{ + assert(message->base.descriptor == &rpc__req__feature_control__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__feature_control__pack + (const RpcReqFeatureControl *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__feature_control__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__feature_control__pack_to_buffer + (const RpcReqFeatureControl *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__feature_control__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqFeatureControl * + rpc__req__feature_control__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqFeatureControl *) + protobuf_c_message_unpack (&rpc__req__feature_control__descriptor, + allocator, len, data); +} +void rpc__req__feature_control__free_unpacked + (RpcReqFeatureControl *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__feature_control__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__feature_control__init + (RpcRespFeatureControl *message) +{ + static const RpcRespFeatureControl init_value = RPC__RESP__FEATURE_CONTROL__INIT; + *message = init_value; +} +size_t rpc__resp__feature_control__get_packed_size + (const RpcRespFeatureControl *message) +{ + assert(message->base.descriptor == &rpc__resp__feature_control__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__feature_control__pack + (const RpcRespFeatureControl *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__feature_control__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__feature_control__pack_to_buffer + (const RpcRespFeatureControl *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__feature_control__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespFeatureControl * + rpc__resp__feature_control__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespFeatureControl *) + protobuf_c_message_unpack (&rpc__resp__feature_control__descriptor, + allocator, len, data); +} +void rpc__resp__feature_control__free_unpacked + (RpcRespFeatureControl *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__feature_control__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__mem_monitor__init + (RpcReqMemMonitor *message) +{ + static const RpcReqMemMonitor init_value = RPC__REQ__MEM_MONITOR__INIT; + *message = init_value; +} +size_t rpc__req__mem_monitor__get_packed_size + (const RpcReqMemMonitor *message) +{ + assert(message->base.descriptor == &rpc__req__mem_monitor__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__mem_monitor__pack + (const RpcReqMemMonitor *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__mem_monitor__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__mem_monitor__pack_to_buffer + (const RpcReqMemMonitor *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__mem_monitor__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqMemMonitor * + rpc__req__mem_monitor__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqMemMonitor *) + protobuf_c_message_unpack (&rpc__req__mem_monitor__descriptor, + allocator, len, data); +} +void rpc__req__mem_monitor__free_unpacked + (RpcReqMemMonitor *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__mem_monitor__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__mem_monitor__init + (RpcRespMemMonitor *message) +{ + static const RpcRespMemMonitor init_value = RPC__RESP__MEM_MONITOR__INIT; + *message = init_value; +} +size_t rpc__resp__mem_monitor__get_packed_size + (const RpcRespMemMonitor *message) +{ + assert(message->base.descriptor == &rpc__resp__mem_monitor__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__mem_monitor__pack + (const RpcRespMemMonitor *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__mem_monitor__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__mem_monitor__pack_to_buffer + (const RpcRespMemMonitor *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__mem_monitor__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespMemMonitor * + rpc__resp__mem_monitor__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespMemMonitor *) + protobuf_c_message_unpack (&rpc__resp__mem_monitor__descriptor, + allocator, len, data); +} +void rpc__resp__mem_monitor__free_unpacked + (RpcRespMemMonitor *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__mem_monitor__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__event__wifi_event_no_args__init + (RpcEventWifiEventNoArgs *message) +{ + static const RpcEventWifiEventNoArgs init_value = RPC__EVENT__WIFI_EVENT_NO_ARGS__INIT; + *message = init_value; +} +size_t rpc__event__wifi_event_no_args__get_packed_size + (const RpcEventWifiEventNoArgs *message) +{ + assert(message->base.descriptor == &rpc__event__wifi_event_no_args__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__event__wifi_event_no_args__pack + (const RpcEventWifiEventNoArgs *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__event__wifi_event_no_args__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__event__wifi_event_no_args__pack_to_buffer + (const RpcEventWifiEventNoArgs *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__event__wifi_event_no_args__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcEventWifiEventNoArgs * + rpc__event__wifi_event_no_args__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcEventWifiEventNoArgs *) + protobuf_c_message_unpack (&rpc__event__wifi_event_no_args__descriptor, + allocator, len, data); +} +void rpc__event__wifi_event_no_args__free_unpacked + (RpcEventWifiEventNoArgs *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__event__wifi_event_no_args__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__event__espinit__init + (RpcEventESPInit *message) +{ + static const RpcEventESPInit init_value = RPC__EVENT__ESPINIT__INIT; + *message = init_value; +} +size_t rpc__event__espinit__get_packed_size + (const RpcEventESPInit *message) +{ + assert(message->base.descriptor == &rpc__event__espinit__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__event__espinit__pack + (const RpcEventESPInit *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__event__espinit__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__event__espinit__pack_to_buffer + (const RpcEventESPInit *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__event__espinit__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcEventESPInit * + rpc__event__espinit__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcEventESPInit *) + protobuf_c_message_unpack (&rpc__event__espinit__descriptor, + allocator, len, data); +} +void rpc__event__espinit__free_unpacked + (RpcEventESPInit *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__event__espinit__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__event__heartbeat__init + (RpcEventHeartbeat *message) +{ + static const RpcEventHeartbeat init_value = RPC__EVENT__HEARTBEAT__INIT; + *message = init_value; +} +size_t rpc__event__heartbeat__get_packed_size + (const RpcEventHeartbeat *message) +{ + assert(message->base.descriptor == &rpc__event__heartbeat__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__event__heartbeat__pack + (const RpcEventHeartbeat *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__event__heartbeat__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__event__heartbeat__pack_to_buffer + (const RpcEventHeartbeat *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__event__heartbeat__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcEventHeartbeat * + rpc__event__heartbeat__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcEventHeartbeat *) + protobuf_c_message_unpack (&rpc__event__heartbeat__descriptor, + allocator, len, data); +} +void rpc__event__heartbeat__free_unpacked + (RpcEventHeartbeat *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__event__heartbeat__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__event__ap__sta_disconnected__init + (RpcEventAPStaDisconnected *message) +{ + static const RpcEventAPStaDisconnected init_value = RPC__EVENT__AP__STA_DISCONNECTED__INIT; + *message = init_value; +} +size_t rpc__event__ap__sta_disconnected__get_packed_size + (const RpcEventAPStaDisconnected *message) +{ + assert(message->base.descriptor == &rpc__event__ap__sta_disconnected__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__event__ap__sta_disconnected__pack + (const RpcEventAPStaDisconnected *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__event__ap__sta_disconnected__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__event__ap__sta_disconnected__pack_to_buffer + (const RpcEventAPStaDisconnected *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__event__ap__sta_disconnected__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcEventAPStaDisconnected * + rpc__event__ap__sta_disconnected__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcEventAPStaDisconnected *) + protobuf_c_message_unpack (&rpc__event__ap__sta_disconnected__descriptor, + allocator, len, data); +} +void rpc__event__ap__sta_disconnected__free_unpacked + (RpcEventAPStaDisconnected *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__event__ap__sta_disconnected__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__event__ap__sta_connected__init + (RpcEventAPStaConnected *message) +{ + static const RpcEventAPStaConnected init_value = RPC__EVENT__AP__STA_CONNECTED__INIT; + *message = init_value; +} +size_t rpc__event__ap__sta_connected__get_packed_size + (const RpcEventAPStaConnected *message) +{ + assert(message->base.descriptor == &rpc__event__ap__sta_connected__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__event__ap__sta_connected__pack + (const RpcEventAPStaConnected *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__event__ap__sta_connected__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__event__ap__sta_connected__pack_to_buffer + (const RpcEventAPStaConnected *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__event__ap__sta_connected__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcEventAPStaConnected * + rpc__event__ap__sta_connected__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcEventAPStaConnected *) + protobuf_c_message_unpack (&rpc__event__ap__sta_connected__descriptor, + allocator, len, data); +} +void rpc__event__ap__sta_connected__free_unpacked + (RpcEventAPStaConnected *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__event__ap__sta_connected__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__event__sta_scan_done__init + (RpcEventStaScanDone *message) +{ + static const RpcEventStaScanDone init_value = RPC__EVENT__STA_SCAN_DONE__INIT; + *message = init_value; +} +size_t rpc__event__sta_scan_done__get_packed_size + (const RpcEventStaScanDone *message) +{ + assert(message->base.descriptor == &rpc__event__sta_scan_done__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__event__sta_scan_done__pack + (const RpcEventStaScanDone *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__event__sta_scan_done__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__event__sta_scan_done__pack_to_buffer + (const RpcEventStaScanDone *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__event__sta_scan_done__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcEventStaScanDone * + rpc__event__sta_scan_done__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcEventStaScanDone *) + protobuf_c_message_unpack (&rpc__event__sta_scan_done__descriptor, + allocator, len, data); +} +void rpc__event__sta_scan_done__free_unpacked + (RpcEventStaScanDone *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__event__sta_scan_done__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__event__sta_connected__init + (RpcEventStaConnected *message) +{ + static const RpcEventStaConnected init_value = RPC__EVENT__STA_CONNECTED__INIT; + *message = init_value; +} +size_t rpc__event__sta_connected__get_packed_size + (const RpcEventStaConnected *message) +{ + assert(message->base.descriptor == &rpc__event__sta_connected__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__event__sta_connected__pack + (const RpcEventStaConnected *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__event__sta_connected__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__event__sta_connected__pack_to_buffer + (const RpcEventStaConnected *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__event__sta_connected__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcEventStaConnected * + rpc__event__sta_connected__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcEventStaConnected *) + protobuf_c_message_unpack (&rpc__event__sta_connected__descriptor, + allocator, len, data); +} +void rpc__event__sta_connected__free_unpacked + (RpcEventStaConnected *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__event__sta_connected__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__event__sta_disconnected__init + (RpcEventStaDisconnected *message) +{ + static const RpcEventStaDisconnected init_value = RPC__EVENT__STA_DISCONNECTED__INIT; + *message = init_value; +} +size_t rpc__event__sta_disconnected__get_packed_size + (const RpcEventStaDisconnected *message) +{ + assert(message->base.descriptor == &rpc__event__sta_disconnected__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__event__sta_disconnected__pack + (const RpcEventStaDisconnected *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__event__sta_disconnected__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__event__sta_disconnected__pack_to_buffer + (const RpcEventStaDisconnected *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__event__sta_disconnected__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcEventStaDisconnected * + rpc__event__sta_disconnected__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcEventStaDisconnected *) + protobuf_c_message_unpack (&rpc__event__sta_disconnected__descriptor, + allocator, len, data); +} +void rpc__event__sta_disconnected__free_unpacked + (RpcEventStaDisconnected *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__event__sta_disconnected__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__gpio_config__init + (RpcGpioConfig *message) +{ + static const RpcGpioConfig init_value = RPC__GPIO_CONFIG__INIT; + *message = init_value; +} +size_t rpc__gpio_config__get_packed_size + (const RpcGpioConfig *message) +{ + assert(message->base.descriptor == &rpc__gpio_config__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__gpio_config__pack + (const RpcGpioConfig *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__gpio_config__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__gpio_config__pack_to_buffer + (const RpcGpioConfig *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__gpio_config__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcGpioConfig * + rpc__gpio_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcGpioConfig *) + protobuf_c_message_unpack (&rpc__gpio_config__descriptor, + allocator, len, data); +} +void rpc__gpio_config__free_unpacked + (RpcGpioConfig *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__gpio_config__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__gpio_config__init + (RpcReqGpioConfig *message) +{ + static const RpcReqGpioConfig init_value = RPC__REQ__GPIO_CONFIG__INIT; + *message = init_value; +} +size_t rpc__req__gpio_config__get_packed_size + (const RpcReqGpioConfig *message) +{ + assert(message->base.descriptor == &rpc__req__gpio_config__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__gpio_config__pack + (const RpcReqGpioConfig *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__gpio_config__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__gpio_config__pack_to_buffer + (const RpcReqGpioConfig *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__gpio_config__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqGpioConfig * + rpc__req__gpio_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqGpioConfig *) + protobuf_c_message_unpack (&rpc__req__gpio_config__descriptor, + allocator, len, data); +} +void rpc__req__gpio_config__free_unpacked + (RpcReqGpioConfig *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__gpio_config__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__gpio_config__init + (RpcRespGpioConfig *message) +{ + static const RpcRespGpioConfig init_value = RPC__RESP__GPIO_CONFIG__INIT; + *message = init_value; +} +size_t rpc__resp__gpio_config__get_packed_size + (const RpcRespGpioConfig *message) +{ + assert(message->base.descriptor == &rpc__resp__gpio_config__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__gpio_config__pack + (const RpcRespGpioConfig *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__gpio_config__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__gpio_config__pack_to_buffer + (const RpcRespGpioConfig *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__gpio_config__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespGpioConfig * + rpc__resp__gpio_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespGpioConfig *) + protobuf_c_message_unpack (&rpc__resp__gpio_config__descriptor, + allocator, len, data); +} +void rpc__resp__gpio_config__free_unpacked + (RpcRespGpioConfig *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__gpio_config__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__gpio_reset_pin__init + (RpcReqGpioResetPin *message) +{ + static const RpcReqGpioResetPin init_value = RPC__REQ__GPIO_RESET_PIN__INIT; + *message = init_value; +} +size_t rpc__req__gpio_reset_pin__get_packed_size + (const RpcReqGpioResetPin *message) +{ + assert(message->base.descriptor == &rpc__req__gpio_reset_pin__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__gpio_reset_pin__pack + (const RpcReqGpioResetPin *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__gpio_reset_pin__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__gpio_reset_pin__pack_to_buffer + (const RpcReqGpioResetPin *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__gpio_reset_pin__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqGpioResetPin * + rpc__req__gpio_reset_pin__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqGpioResetPin *) + protobuf_c_message_unpack (&rpc__req__gpio_reset_pin__descriptor, + allocator, len, data); +} +void rpc__req__gpio_reset_pin__free_unpacked + (RpcReqGpioResetPin *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__gpio_reset_pin__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__gpio_reset_pin__init + (RpcRespGpioResetPin *message) +{ + static const RpcRespGpioResetPin init_value = RPC__RESP__GPIO_RESET_PIN__INIT; + *message = init_value; +} +size_t rpc__resp__gpio_reset_pin__get_packed_size + (const RpcRespGpioResetPin *message) +{ + assert(message->base.descriptor == &rpc__resp__gpio_reset_pin__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__gpio_reset_pin__pack + (const RpcRespGpioResetPin *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__gpio_reset_pin__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__gpio_reset_pin__pack_to_buffer + (const RpcRespGpioResetPin *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__gpio_reset_pin__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespGpioResetPin * + rpc__resp__gpio_reset_pin__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespGpioResetPin *) + protobuf_c_message_unpack (&rpc__resp__gpio_reset_pin__descriptor, + allocator, len, data); +} +void rpc__resp__gpio_reset_pin__free_unpacked + (RpcRespGpioResetPin *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__gpio_reset_pin__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__gpio_set_level__init + (RpcReqGpioSetLevel *message) +{ + static const RpcReqGpioSetLevel init_value = RPC__REQ__GPIO_SET_LEVEL__INIT; + *message = init_value; +} +size_t rpc__req__gpio_set_level__get_packed_size + (const RpcReqGpioSetLevel *message) +{ + assert(message->base.descriptor == &rpc__req__gpio_set_level__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__gpio_set_level__pack + (const RpcReqGpioSetLevel *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__gpio_set_level__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__gpio_set_level__pack_to_buffer + (const RpcReqGpioSetLevel *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__gpio_set_level__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqGpioSetLevel * + rpc__req__gpio_set_level__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqGpioSetLevel *) + protobuf_c_message_unpack (&rpc__req__gpio_set_level__descriptor, + allocator, len, data); +} +void rpc__req__gpio_set_level__free_unpacked + (RpcReqGpioSetLevel *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__gpio_set_level__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__gpio_set_level__init + (RpcRespGpioSetLevel *message) +{ + static const RpcRespGpioSetLevel init_value = RPC__RESP__GPIO_SET_LEVEL__INIT; + *message = init_value; +} +size_t rpc__resp__gpio_set_level__get_packed_size + (const RpcRespGpioSetLevel *message) +{ + assert(message->base.descriptor == &rpc__resp__gpio_set_level__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__gpio_set_level__pack + (const RpcRespGpioSetLevel *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__gpio_set_level__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__gpio_set_level__pack_to_buffer + (const RpcRespGpioSetLevel *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__gpio_set_level__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespGpioSetLevel * + rpc__resp__gpio_set_level__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespGpioSetLevel *) + protobuf_c_message_unpack (&rpc__resp__gpio_set_level__descriptor, + allocator, len, data); +} +void rpc__resp__gpio_set_level__free_unpacked + (RpcRespGpioSetLevel *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__gpio_set_level__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__gpio_get_level__init + (RpcReqGpioGetLevel *message) +{ + static const RpcReqGpioGetLevel init_value = RPC__REQ__GPIO_GET_LEVEL__INIT; + *message = init_value; +} +size_t rpc__req__gpio_get_level__get_packed_size + (const RpcReqGpioGetLevel *message) +{ + assert(message->base.descriptor == &rpc__req__gpio_get_level__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__gpio_get_level__pack + (const RpcReqGpioGetLevel *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__gpio_get_level__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__gpio_get_level__pack_to_buffer + (const RpcReqGpioGetLevel *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__gpio_get_level__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqGpioGetLevel * + rpc__req__gpio_get_level__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqGpioGetLevel *) + protobuf_c_message_unpack (&rpc__req__gpio_get_level__descriptor, + allocator, len, data); +} +void rpc__req__gpio_get_level__free_unpacked + (RpcReqGpioGetLevel *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__gpio_get_level__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__gpio_get_level__init + (RpcRespGpioGetLevel *message) +{ + static const RpcRespGpioGetLevel init_value = RPC__RESP__GPIO_GET_LEVEL__INIT; + *message = init_value; +} +size_t rpc__resp__gpio_get_level__get_packed_size + (const RpcRespGpioGetLevel *message) +{ + assert(message->base.descriptor == &rpc__resp__gpio_get_level__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__gpio_get_level__pack + (const RpcRespGpioGetLevel *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__gpio_get_level__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__gpio_get_level__pack_to_buffer + (const RpcRespGpioGetLevel *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__gpio_get_level__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespGpioGetLevel * + rpc__resp__gpio_get_level__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespGpioGetLevel *) + protobuf_c_message_unpack (&rpc__resp__gpio_get_level__descriptor, + allocator, len, data); +} +void rpc__resp__gpio_get_level__free_unpacked + (RpcRespGpioGetLevel *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__gpio_get_level__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__gpio_set_direction__init + (RpcReqGpioSetDirection *message) +{ + static const RpcReqGpioSetDirection init_value = RPC__REQ__GPIO_SET_DIRECTION__INIT; + *message = init_value; +} +size_t rpc__req__gpio_set_direction__get_packed_size + (const RpcReqGpioSetDirection *message) +{ + assert(message->base.descriptor == &rpc__req__gpio_set_direction__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__gpio_set_direction__pack + (const RpcReqGpioSetDirection *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__gpio_set_direction__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__gpio_set_direction__pack_to_buffer + (const RpcReqGpioSetDirection *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__gpio_set_direction__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqGpioSetDirection * + rpc__req__gpio_set_direction__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqGpioSetDirection *) + protobuf_c_message_unpack (&rpc__req__gpio_set_direction__descriptor, + allocator, len, data); +} +void rpc__req__gpio_set_direction__free_unpacked + (RpcReqGpioSetDirection *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__gpio_set_direction__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__gpio_set_direction__init + (RpcRespGpioSetDirection *message) +{ + static const RpcRespGpioSetDirection init_value = RPC__RESP__GPIO_SET_DIRECTION__INIT; + *message = init_value; +} +size_t rpc__resp__gpio_set_direction__get_packed_size + (const RpcRespGpioSetDirection *message) +{ + assert(message->base.descriptor == &rpc__resp__gpio_set_direction__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__gpio_set_direction__pack + (const RpcRespGpioSetDirection *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__gpio_set_direction__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__gpio_set_direction__pack_to_buffer + (const RpcRespGpioSetDirection *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__gpio_set_direction__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespGpioSetDirection * + rpc__resp__gpio_set_direction__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespGpioSetDirection *) + protobuf_c_message_unpack (&rpc__resp__gpio_set_direction__descriptor, + allocator, len, data); +} +void rpc__resp__gpio_set_direction__free_unpacked + (RpcRespGpioSetDirection *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__gpio_set_direction__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__gpio_input_enable__init + (RpcReqGpioInputEnable *message) +{ + static const RpcReqGpioInputEnable init_value = RPC__REQ__GPIO_INPUT_ENABLE__INIT; + *message = init_value; +} +size_t rpc__req__gpio_input_enable__get_packed_size + (const RpcReqGpioInputEnable *message) +{ + assert(message->base.descriptor == &rpc__req__gpio_input_enable__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__gpio_input_enable__pack + (const RpcReqGpioInputEnable *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__gpio_input_enable__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__gpio_input_enable__pack_to_buffer + (const RpcReqGpioInputEnable *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__gpio_input_enable__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqGpioInputEnable * + rpc__req__gpio_input_enable__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqGpioInputEnable *) + protobuf_c_message_unpack (&rpc__req__gpio_input_enable__descriptor, + allocator, len, data); +} +void rpc__req__gpio_input_enable__free_unpacked + (RpcReqGpioInputEnable *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__gpio_input_enable__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__gpio_input_enable__init + (RpcRespGpioInputEnable *message) +{ + static const RpcRespGpioInputEnable init_value = RPC__RESP__GPIO_INPUT_ENABLE__INIT; + *message = init_value; +} +size_t rpc__resp__gpio_input_enable__get_packed_size + (const RpcRespGpioInputEnable *message) +{ + assert(message->base.descriptor == &rpc__resp__gpio_input_enable__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__gpio_input_enable__pack + (const RpcRespGpioInputEnable *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__gpio_input_enable__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__gpio_input_enable__pack_to_buffer + (const RpcRespGpioInputEnable *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__gpio_input_enable__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespGpioInputEnable * + rpc__resp__gpio_input_enable__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespGpioInputEnable *) + protobuf_c_message_unpack (&rpc__resp__gpio_input_enable__descriptor, + allocator, len, data); +} +void rpc__resp__gpio_input_enable__free_unpacked + (RpcRespGpioInputEnable *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__gpio_input_enable__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__gpio_set_pull_mode__init + (RpcReqGpioSetPullMode *message) +{ + static const RpcReqGpioSetPullMode init_value = RPC__REQ__GPIO_SET_PULL_MODE__INIT; + *message = init_value; +} +size_t rpc__req__gpio_set_pull_mode__get_packed_size + (const RpcReqGpioSetPullMode *message) +{ + assert(message->base.descriptor == &rpc__req__gpio_set_pull_mode__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__gpio_set_pull_mode__pack + (const RpcReqGpioSetPullMode *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__gpio_set_pull_mode__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__gpio_set_pull_mode__pack_to_buffer + (const RpcReqGpioSetPullMode *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__gpio_set_pull_mode__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqGpioSetPullMode * + rpc__req__gpio_set_pull_mode__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqGpioSetPullMode *) + protobuf_c_message_unpack (&rpc__req__gpio_set_pull_mode__descriptor, + allocator, len, data); +} +void rpc__req__gpio_set_pull_mode__free_unpacked + (RpcReqGpioSetPullMode *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__gpio_set_pull_mode__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__gpio_set_pull_mode__init + (RpcRespGpioSetPullMode *message) +{ + static const RpcRespGpioSetPullMode init_value = RPC__RESP__GPIO_SET_PULL_MODE__INIT; + *message = init_value; +} +size_t rpc__resp__gpio_set_pull_mode__get_packed_size + (const RpcRespGpioSetPullMode *message) +{ + assert(message->base.descriptor == &rpc__resp__gpio_set_pull_mode__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__gpio_set_pull_mode__pack + (const RpcRespGpioSetPullMode *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__gpio_set_pull_mode__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__gpio_set_pull_mode__pack_to_buffer + (const RpcRespGpioSetPullMode *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__gpio_set_pull_mode__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespGpioSetPullMode * + rpc__resp__gpio_set_pull_mode__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespGpioSetPullMode *) + protobuf_c_message_unpack (&rpc__resp__gpio_set_pull_mode__descriptor, + allocator, len, data); +} +void rpc__resp__gpio_set_pull_mode__free_unpacked + (RpcRespGpioSetPullMode *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__gpio_set_pull_mode__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__ext_coex__init + (RpcReqExtCoex *message) +{ + static const RpcReqExtCoex init_value = RPC__REQ__EXT_COEX__INIT; + *message = init_value; +} +size_t rpc__req__ext_coex__get_packed_size + (const RpcReqExtCoex *message) +{ + assert(message->base.descriptor == &rpc__req__ext_coex__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__ext_coex__pack + (const RpcReqExtCoex *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__ext_coex__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__ext_coex__pack_to_buffer + (const RpcReqExtCoex *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__ext_coex__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqExtCoex * + rpc__req__ext_coex__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqExtCoex *) + protobuf_c_message_unpack (&rpc__req__ext_coex__descriptor, + allocator, len, data); +} +void rpc__req__ext_coex__free_unpacked + (RpcReqExtCoex *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__ext_coex__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__ext_coex__init + (RpcRespExtCoex *message) +{ + static const RpcRespExtCoex init_value = RPC__RESP__EXT_COEX__INIT; + *message = init_value; +} +size_t rpc__resp__ext_coex__get_packed_size + (const RpcRespExtCoex *message) +{ + assert(message->base.descriptor == &rpc__resp__ext_coex__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__ext_coex__pack + (const RpcRespExtCoex *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__ext_coex__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__ext_coex__pack_to_buffer + (const RpcRespExtCoex *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__ext_coex__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespExtCoex * + rpc__resp__ext_coex__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespExtCoex *) + protobuf_c_message_unpack (&rpc__resp__ext_coex__descriptor, + allocator, len, data); +} +void rpc__resp__ext_coex__free_unpacked + (RpcRespExtCoex *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__ext_coex__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__event__dhcp_dns_status__init + (RpcEventDhcpDnsStatus *message) +{ + static const RpcEventDhcpDnsStatus init_value = RPC__EVENT__DHCP_DNS_STATUS__INIT; + *message = init_value; +} +size_t rpc__event__dhcp_dns_status__get_packed_size + (const RpcEventDhcpDnsStatus *message) +{ + assert(message->base.descriptor == &rpc__event__dhcp_dns_status__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__event__dhcp_dns_status__pack + (const RpcEventDhcpDnsStatus *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__event__dhcp_dns_status__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__event__dhcp_dns_status__pack_to_buffer + (const RpcEventDhcpDnsStatus *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__event__dhcp_dns_status__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcEventDhcpDnsStatus * + rpc__event__dhcp_dns_status__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcEventDhcpDnsStatus *) + protobuf_c_message_unpack (&rpc__event__dhcp_dns_status__descriptor, + allocator, len, data); +} +void rpc__event__dhcp_dns_status__free_unpacked + (RpcEventDhcpDnsStatus *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__event__dhcp_dns_status__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__event__sta_itwt_setup__init + (RpcEventStaItwtSetup *message) +{ + static const RpcEventStaItwtSetup init_value = RPC__EVENT__STA_ITWT_SETUP__INIT; + *message = init_value; +} +size_t rpc__event__sta_itwt_setup__get_packed_size + (const RpcEventStaItwtSetup *message) +{ + assert(message->base.descriptor == &rpc__event__sta_itwt_setup__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__event__sta_itwt_setup__pack + (const RpcEventStaItwtSetup *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__event__sta_itwt_setup__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__event__sta_itwt_setup__pack_to_buffer + (const RpcEventStaItwtSetup *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__event__sta_itwt_setup__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcEventStaItwtSetup * + rpc__event__sta_itwt_setup__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcEventStaItwtSetup *) + protobuf_c_message_unpack (&rpc__event__sta_itwt_setup__descriptor, + allocator, len, data); +} +void rpc__event__sta_itwt_setup__free_unpacked + (RpcEventStaItwtSetup *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__event__sta_itwt_setup__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__event__sta_itwt_teardown__init + (RpcEventStaItwtTeardown *message) +{ + static const RpcEventStaItwtTeardown init_value = RPC__EVENT__STA_ITWT_TEARDOWN__INIT; + *message = init_value; +} +size_t rpc__event__sta_itwt_teardown__get_packed_size + (const RpcEventStaItwtTeardown *message) +{ + assert(message->base.descriptor == &rpc__event__sta_itwt_teardown__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__event__sta_itwt_teardown__pack + (const RpcEventStaItwtTeardown *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__event__sta_itwt_teardown__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__event__sta_itwt_teardown__pack_to_buffer + (const RpcEventStaItwtTeardown *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__event__sta_itwt_teardown__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcEventStaItwtTeardown * + rpc__event__sta_itwt_teardown__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcEventStaItwtTeardown *) + protobuf_c_message_unpack (&rpc__event__sta_itwt_teardown__descriptor, + allocator, len, data); +} +void rpc__event__sta_itwt_teardown__free_unpacked + (RpcEventStaItwtTeardown *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__event__sta_itwt_teardown__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__event__sta_itwt_suspend__init + (RpcEventStaItwtSuspend *message) +{ + static const RpcEventStaItwtSuspend init_value = RPC__EVENT__STA_ITWT_SUSPEND__INIT; + *message = init_value; +} +size_t rpc__event__sta_itwt_suspend__get_packed_size + (const RpcEventStaItwtSuspend *message) +{ + assert(message->base.descriptor == &rpc__event__sta_itwt_suspend__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__event__sta_itwt_suspend__pack + (const RpcEventStaItwtSuspend *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__event__sta_itwt_suspend__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__event__sta_itwt_suspend__pack_to_buffer + (const RpcEventStaItwtSuspend *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__event__sta_itwt_suspend__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcEventStaItwtSuspend * + rpc__event__sta_itwt_suspend__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcEventStaItwtSuspend *) + protobuf_c_message_unpack (&rpc__event__sta_itwt_suspend__descriptor, + allocator, len, data); +} +void rpc__event__sta_itwt_suspend__free_unpacked + (RpcEventStaItwtSuspend *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__event__sta_itwt_suspend__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__event__sta_itwt_probe__init + (RpcEventStaItwtProbe *message) +{ + static const RpcEventStaItwtProbe init_value = RPC__EVENT__STA_ITWT_PROBE__INIT; + *message = init_value; +} +size_t rpc__event__sta_itwt_probe__get_packed_size + (const RpcEventStaItwtProbe *message) +{ + assert(message->base.descriptor == &rpc__event__sta_itwt_probe__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__event__sta_itwt_probe__pack + (const RpcEventStaItwtProbe *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__event__sta_itwt_probe__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__event__sta_itwt_probe__pack_to_buffer + (const RpcEventStaItwtProbe *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__event__sta_itwt_probe__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcEventStaItwtProbe * + rpc__event__sta_itwt_probe__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcEventStaItwtProbe *) + protobuf_c_message_unpack (&rpc__event__sta_itwt_probe__descriptor, + allocator, len, data); +} +void rpc__event__sta_itwt_probe__free_unpacked + (RpcEventStaItwtProbe *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__event__sta_itwt_probe__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_sta_enterprise_enable__init + (RpcReqWifiStaEnterpriseEnable *message) +{ + static const RpcReqWifiStaEnterpriseEnable init_value = RPC__REQ__WIFI_STA_ENTERPRISE_ENABLE__INIT; + *message = init_value; +} +size_t rpc__req__wifi_sta_enterprise_enable__get_packed_size + (const RpcReqWifiStaEnterpriseEnable *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_sta_enterprise_enable__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_sta_enterprise_enable__pack + (const RpcReqWifiStaEnterpriseEnable *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_sta_enterprise_enable__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_sta_enterprise_enable__pack_to_buffer + (const RpcReqWifiStaEnterpriseEnable *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_sta_enterprise_enable__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiStaEnterpriseEnable * + rpc__req__wifi_sta_enterprise_enable__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiStaEnterpriseEnable *) + protobuf_c_message_unpack (&rpc__req__wifi_sta_enterprise_enable__descriptor, + allocator, len, data); +} +void rpc__req__wifi_sta_enterprise_enable__free_unpacked + (RpcReqWifiStaEnterpriseEnable *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_sta_enterprise_enable__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_sta_enterprise_enable__init + (RpcRespWifiStaEnterpriseEnable *message) +{ + static const RpcRespWifiStaEnterpriseEnable init_value = RPC__RESP__WIFI_STA_ENTERPRISE_ENABLE__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_sta_enterprise_enable__get_packed_size + (const RpcRespWifiStaEnterpriseEnable *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_sta_enterprise_enable__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_sta_enterprise_enable__pack + (const RpcRespWifiStaEnterpriseEnable *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_sta_enterprise_enable__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_sta_enterprise_enable__pack_to_buffer + (const RpcRespWifiStaEnterpriseEnable *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_sta_enterprise_enable__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiStaEnterpriseEnable * + rpc__resp__wifi_sta_enterprise_enable__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiStaEnterpriseEnable *) + protobuf_c_message_unpack (&rpc__resp__wifi_sta_enterprise_enable__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_sta_enterprise_enable__free_unpacked + (RpcRespWifiStaEnterpriseEnable *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_sta_enterprise_enable__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_sta_enterprise_disable__init + (RpcReqWifiStaEnterpriseDisable *message) +{ + static const RpcReqWifiStaEnterpriseDisable init_value = RPC__REQ__WIFI_STA_ENTERPRISE_DISABLE__INIT; + *message = init_value; +} +size_t rpc__req__wifi_sta_enterprise_disable__get_packed_size + (const RpcReqWifiStaEnterpriseDisable *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_sta_enterprise_disable__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_sta_enterprise_disable__pack + (const RpcReqWifiStaEnterpriseDisable *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_sta_enterprise_disable__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_sta_enterprise_disable__pack_to_buffer + (const RpcReqWifiStaEnterpriseDisable *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_sta_enterprise_disable__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiStaEnterpriseDisable * + rpc__req__wifi_sta_enterprise_disable__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiStaEnterpriseDisable *) + protobuf_c_message_unpack (&rpc__req__wifi_sta_enterprise_disable__descriptor, + allocator, len, data); +} +void rpc__req__wifi_sta_enterprise_disable__free_unpacked + (RpcReqWifiStaEnterpriseDisable *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_sta_enterprise_disable__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_sta_enterprise_disable__init + (RpcRespWifiStaEnterpriseDisable *message) +{ + static const RpcRespWifiStaEnterpriseDisable init_value = RPC__RESP__WIFI_STA_ENTERPRISE_DISABLE__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_sta_enterprise_disable__get_packed_size + (const RpcRespWifiStaEnterpriseDisable *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_sta_enterprise_disable__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_sta_enterprise_disable__pack + (const RpcRespWifiStaEnterpriseDisable *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_sta_enterprise_disable__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_sta_enterprise_disable__pack_to_buffer + (const RpcRespWifiStaEnterpriseDisable *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_sta_enterprise_disable__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiStaEnterpriseDisable * + rpc__resp__wifi_sta_enterprise_disable__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiStaEnterpriseDisable *) + protobuf_c_message_unpack (&rpc__resp__wifi_sta_enterprise_disable__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_sta_enterprise_disable__free_unpacked + (RpcRespWifiStaEnterpriseDisable *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_sta_enterprise_disable__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__eap_set_identity__init + (RpcReqEapSetIdentity *message) +{ + static const RpcReqEapSetIdentity init_value = RPC__REQ__EAP_SET_IDENTITY__INIT; + *message = init_value; +} +size_t rpc__req__eap_set_identity__get_packed_size + (const RpcReqEapSetIdentity *message) +{ + assert(message->base.descriptor == &rpc__req__eap_set_identity__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__eap_set_identity__pack + (const RpcReqEapSetIdentity *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__eap_set_identity__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__eap_set_identity__pack_to_buffer + (const RpcReqEapSetIdentity *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__eap_set_identity__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqEapSetIdentity * + rpc__req__eap_set_identity__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqEapSetIdentity *) + protobuf_c_message_unpack (&rpc__req__eap_set_identity__descriptor, + allocator, len, data); +} +void rpc__req__eap_set_identity__free_unpacked + (RpcReqEapSetIdentity *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__eap_set_identity__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__eap_set_identity__init + (RpcRespEapSetIdentity *message) +{ + static const RpcRespEapSetIdentity init_value = RPC__RESP__EAP_SET_IDENTITY__INIT; + *message = init_value; +} +size_t rpc__resp__eap_set_identity__get_packed_size + (const RpcRespEapSetIdentity *message) +{ + assert(message->base.descriptor == &rpc__resp__eap_set_identity__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__eap_set_identity__pack + (const RpcRespEapSetIdentity *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__eap_set_identity__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__eap_set_identity__pack_to_buffer + (const RpcRespEapSetIdentity *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__eap_set_identity__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespEapSetIdentity * + rpc__resp__eap_set_identity__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespEapSetIdentity *) + protobuf_c_message_unpack (&rpc__resp__eap_set_identity__descriptor, + allocator, len, data); +} +void rpc__resp__eap_set_identity__free_unpacked + (RpcRespEapSetIdentity *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__eap_set_identity__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__eap_clear_identity__init + (RpcReqEapClearIdentity *message) +{ + static const RpcReqEapClearIdentity init_value = RPC__REQ__EAP_CLEAR_IDENTITY__INIT; + *message = init_value; +} +size_t rpc__req__eap_clear_identity__get_packed_size + (const RpcReqEapClearIdentity *message) +{ + assert(message->base.descriptor == &rpc__req__eap_clear_identity__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__eap_clear_identity__pack + (const RpcReqEapClearIdentity *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__eap_clear_identity__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__eap_clear_identity__pack_to_buffer + (const RpcReqEapClearIdentity *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__eap_clear_identity__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqEapClearIdentity * + rpc__req__eap_clear_identity__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqEapClearIdentity *) + protobuf_c_message_unpack (&rpc__req__eap_clear_identity__descriptor, + allocator, len, data); +} +void rpc__req__eap_clear_identity__free_unpacked + (RpcReqEapClearIdentity *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__eap_clear_identity__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__eap_clear_identity__init + (RpcRespEapClearIdentity *message) +{ + static const RpcRespEapClearIdentity init_value = RPC__RESP__EAP_CLEAR_IDENTITY__INIT; + *message = init_value; +} +size_t rpc__resp__eap_clear_identity__get_packed_size + (const RpcRespEapClearIdentity *message) +{ + assert(message->base.descriptor == &rpc__resp__eap_clear_identity__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__eap_clear_identity__pack + (const RpcRespEapClearIdentity *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__eap_clear_identity__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__eap_clear_identity__pack_to_buffer + (const RpcRespEapClearIdentity *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__eap_clear_identity__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespEapClearIdentity * + rpc__resp__eap_clear_identity__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespEapClearIdentity *) + protobuf_c_message_unpack (&rpc__resp__eap_clear_identity__descriptor, + allocator, len, data); +} +void rpc__resp__eap_clear_identity__free_unpacked + (RpcRespEapClearIdentity *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__eap_clear_identity__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__eap_set_username__init + (RpcReqEapSetUsername *message) +{ + static const RpcReqEapSetUsername init_value = RPC__REQ__EAP_SET_USERNAME__INIT; + *message = init_value; +} +size_t rpc__req__eap_set_username__get_packed_size + (const RpcReqEapSetUsername *message) +{ + assert(message->base.descriptor == &rpc__req__eap_set_username__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__eap_set_username__pack + (const RpcReqEapSetUsername *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__eap_set_username__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__eap_set_username__pack_to_buffer + (const RpcReqEapSetUsername *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__eap_set_username__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqEapSetUsername * + rpc__req__eap_set_username__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqEapSetUsername *) + protobuf_c_message_unpack (&rpc__req__eap_set_username__descriptor, + allocator, len, data); +} +void rpc__req__eap_set_username__free_unpacked + (RpcReqEapSetUsername *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__eap_set_username__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__eap_set_username__init + (RpcRespEapSetUsername *message) +{ + static const RpcRespEapSetUsername init_value = RPC__RESP__EAP_SET_USERNAME__INIT; + *message = init_value; +} +size_t rpc__resp__eap_set_username__get_packed_size + (const RpcRespEapSetUsername *message) +{ + assert(message->base.descriptor == &rpc__resp__eap_set_username__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__eap_set_username__pack + (const RpcRespEapSetUsername *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__eap_set_username__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__eap_set_username__pack_to_buffer + (const RpcRespEapSetUsername *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__eap_set_username__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespEapSetUsername * + rpc__resp__eap_set_username__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespEapSetUsername *) + protobuf_c_message_unpack (&rpc__resp__eap_set_username__descriptor, + allocator, len, data); +} +void rpc__resp__eap_set_username__free_unpacked + (RpcRespEapSetUsername *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__eap_set_username__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__eap_clear_username__init + (RpcReqEapClearUsername *message) +{ + static const RpcReqEapClearUsername init_value = RPC__REQ__EAP_CLEAR_USERNAME__INIT; + *message = init_value; +} +size_t rpc__req__eap_clear_username__get_packed_size + (const RpcReqEapClearUsername *message) +{ + assert(message->base.descriptor == &rpc__req__eap_clear_username__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__eap_clear_username__pack + (const RpcReqEapClearUsername *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__eap_clear_username__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__eap_clear_username__pack_to_buffer + (const RpcReqEapClearUsername *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__eap_clear_username__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqEapClearUsername * + rpc__req__eap_clear_username__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqEapClearUsername *) + protobuf_c_message_unpack (&rpc__req__eap_clear_username__descriptor, + allocator, len, data); +} +void rpc__req__eap_clear_username__free_unpacked + (RpcReqEapClearUsername *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__eap_clear_username__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__eap_clear_username__init + (RpcRespEapClearUsername *message) +{ + static const RpcRespEapClearUsername init_value = RPC__RESP__EAP_CLEAR_USERNAME__INIT; + *message = init_value; +} +size_t rpc__resp__eap_clear_username__get_packed_size + (const RpcRespEapClearUsername *message) +{ + assert(message->base.descriptor == &rpc__resp__eap_clear_username__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__eap_clear_username__pack + (const RpcRespEapClearUsername *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__eap_clear_username__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__eap_clear_username__pack_to_buffer + (const RpcRespEapClearUsername *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__eap_clear_username__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespEapClearUsername * + rpc__resp__eap_clear_username__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespEapClearUsername *) + protobuf_c_message_unpack (&rpc__resp__eap_clear_username__descriptor, + allocator, len, data); +} +void rpc__resp__eap_clear_username__free_unpacked + (RpcRespEapClearUsername *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__eap_clear_username__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__eap_set_password__init + (RpcReqEapSetPassword *message) +{ + static const RpcReqEapSetPassword init_value = RPC__REQ__EAP_SET_PASSWORD__INIT; + *message = init_value; +} +size_t rpc__req__eap_set_password__get_packed_size + (const RpcReqEapSetPassword *message) +{ + assert(message->base.descriptor == &rpc__req__eap_set_password__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__eap_set_password__pack + (const RpcReqEapSetPassword *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__eap_set_password__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__eap_set_password__pack_to_buffer + (const RpcReqEapSetPassword *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__eap_set_password__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqEapSetPassword * + rpc__req__eap_set_password__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqEapSetPassword *) + protobuf_c_message_unpack (&rpc__req__eap_set_password__descriptor, + allocator, len, data); +} +void rpc__req__eap_set_password__free_unpacked + (RpcReqEapSetPassword *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__eap_set_password__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__eap_set_password__init + (RpcRespEapSetPassword *message) +{ + static const RpcRespEapSetPassword init_value = RPC__RESP__EAP_SET_PASSWORD__INIT; + *message = init_value; +} +size_t rpc__resp__eap_set_password__get_packed_size + (const RpcRespEapSetPassword *message) +{ + assert(message->base.descriptor == &rpc__resp__eap_set_password__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__eap_set_password__pack + (const RpcRespEapSetPassword *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__eap_set_password__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__eap_set_password__pack_to_buffer + (const RpcRespEapSetPassword *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__eap_set_password__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespEapSetPassword * + rpc__resp__eap_set_password__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespEapSetPassword *) + protobuf_c_message_unpack (&rpc__resp__eap_set_password__descriptor, + allocator, len, data); +} +void rpc__resp__eap_set_password__free_unpacked + (RpcRespEapSetPassword *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__eap_set_password__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__eap_clear_password__init + (RpcReqEapClearPassword *message) +{ + static const RpcReqEapClearPassword init_value = RPC__REQ__EAP_CLEAR_PASSWORD__INIT; + *message = init_value; +} +size_t rpc__req__eap_clear_password__get_packed_size + (const RpcReqEapClearPassword *message) +{ + assert(message->base.descriptor == &rpc__req__eap_clear_password__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__eap_clear_password__pack + (const RpcReqEapClearPassword *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__eap_clear_password__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__eap_clear_password__pack_to_buffer + (const RpcReqEapClearPassword *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__eap_clear_password__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqEapClearPassword * + rpc__req__eap_clear_password__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqEapClearPassword *) + protobuf_c_message_unpack (&rpc__req__eap_clear_password__descriptor, + allocator, len, data); +} +void rpc__req__eap_clear_password__free_unpacked + (RpcReqEapClearPassword *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__eap_clear_password__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__eap_clear_password__init + (RpcRespEapClearPassword *message) +{ + static const RpcRespEapClearPassword init_value = RPC__RESP__EAP_CLEAR_PASSWORD__INIT; + *message = init_value; +} +size_t rpc__resp__eap_clear_password__get_packed_size + (const RpcRespEapClearPassword *message) +{ + assert(message->base.descriptor == &rpc__resp__eap_clear_password__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__eap_clear_password__pack + (const RpcRespEapClearPassword *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__eap_clear_password__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__eap_clear_password__pack_to_buffer + (const RpcRespEapClearPassword *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__eap_clear_password__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespEapClearPassword * + rpc__resp__eap_clear_password__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespEapClearPassword *) + protobuf_c_message_unpack (&rpc__resp__eap_clear_password__descriptor, + allocator, len, data); +} +void rpc__resp__eap_clear_password__free_unpacked + (RpcRespEapClearPassword *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__eap_clear_password__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__eap_set_new_password__init + (RpcReqEapSetNewPassword *message) +{ + static const RpcReqEapSetNewPassword init_value = RPC__REQ__EAP_SET_NEW_PASSWORD__INIT; + *message = init_value; +} +size_t rpc__req__eap_set_new_password__get_packed_size + (const RpcReqEapSetNewPassword *message) +{ + assert(message->base.descriptor == &rpc__req__eap_set_new_password__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__eap_set_new_password__pack + (const RpcReqEapSetNewPassword *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__eap_set_new_password__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__eap_set_new_password__pack_to_buffer + (const RpcReqEapSetNewPassword *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__eap_set_new_password__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqEapSetNewPassword * + rpc__req__eap_set_new_password__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqEapSetNewPassword *) + protobuf_c_message_unpack (&rpc__req__eap_set_new_password__descriptor, + allocator, len, data); +} +void rpc__req__eap_set_new_password__free_unpacked + (RpcReqEapSetNewPassword *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__eap_set_new_password__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__eap_set_new_password__init + (RpcRespEapSetNewPassword *message) +{ + static const RpcRespEapSetNewPassword init_value = RPC__RESP__EAP_SET_NEW_PASSWORD__INIT; + *message = init_value; +} +size_t rpc__resp__eap_set_new_password__get_packed_size + (const RpcRespEapSetNewPassword *message) +{ + assert(message->base.descriptor == &rpc__resp__eap_set_new_password__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__eap_set_new_password__pack + (const RpcRespEapSetNewPassword *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__eap_set_new_password__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__eap_set_new_password__pack_to_buffer + (const RpcRespEapSetNewPassword *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__eap_set_new_password__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespEapSetNewPassword * + rpc__resp__eap_set_new_password__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespEapSetNewPassword *) + protobuf_c_message_unpack (&rpc__resp__eap_set_new_password__descriptor, + allocator, len, data); +} +void rpc__resp__eap_set_new_password__free_unpacked + (RpcRespEapSetNewPassword *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__eap_set_new_password__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__eap_clear_new_password__init + (RpcReqEapClearNewPassword *message) +{ + static const RpcReqEapClearNewPassword init_value = RPC__REQ__EAP_CLEAR_NEW_PASSWORD__INIT; + *message = init_value; +} +size_t rpc__req__eap_clear_new_password__get_packed_size + (const RpcReqEapClearNewPassword *message) +{ + assert(message->base.descriptor == &rpc__req__eap_clear_new_password__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__eap_clear_new_password__pack + (const RpcReqEapClearNewPassword *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__eap_clear_new_password__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__eap_clear_new_password__pack_to_buffer + (const RpcReqEapClearNewPassword *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__eap_clear_new_password__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqEapClearNewPassword * + rpc__req__eap_clear_new_password__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqEapClearNewPassword *) + protobuf_c_message_unpack (&rpc__req__eap_clear_new_password__descriptor, + allocator, len, data); +} +void rpc__req__eap_clear_new_password__free_unpacked + (RpcReqEapClearNewPassword *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__eap_clear_new_password__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__eap_clear_new_password__init + (RpcRespEapClearNewPassword *message) +{ + static const RpcRespEapClearNewPassword init_value = RPC__RESP__EAP_CLEAR_NEW_PASSWORD__INIT; + *message = init_value; +} +size_t rpc__resp__eap_clear_new_password__get_packed_size + (const RpcRespEapClearNewPassword *message) +{ + assert(message->base.descriptor == &rpc__resp__eap_clear_new_password__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__eap_clear_new_password__pack + (const RpcRespEapClearNewPassword *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__eap_clear_new_password__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__eap_clear_new_password__pack_to_buffer + (const RpcRespEapClearNewPassword *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__eap_clear_new_password__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespEapClearNewPassword * + rpc__resp__eap_clear_new_password__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespEapClearNewPassword *) + protobuf_c_message_unpack (&rpc__resp__eap_clear_new_password__descriptor, + allocator, len, data); +} +void rpc__resp__eap_clear_new_password__free_unpacked + (RpcRespEapClearNewPassword *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__eap_clear_new_password__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__eap_set_ca_cert__init + (RpcReqEapSetCaCert *message) +{ + static const RpcReqEapSetCaCert init_value = RPC__REQ__EAP_SET_CA_CERT__INIT; + *message = init_value; +} +size_t rpc__req__eap_set_ca_cert__get_packed_size + (const RpcReqEapSetCaCert *message) +{ + assert(message->base.descriptor == &rpc__req__eap_set_ca_cert__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__eap_set_ca_cert__pack + (const RpcReqEapSetCaCert *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__eap_set_ca_cert__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__eap_set_ca_cert__pack_to_buffer + (const RpcReqEapSetCaCert *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__eap_set_ca_cert__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqEapSetCaCert * + rpc__req__eap_set_ca_cert__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqEapSetCaCert *) + protobuf_c_message_unpack (&rpc__req__eap_set_ca_cert__descriptor, + allocator, len, data); +} +void rpc__req__eap_set_ca_cert__free_unpacked + (RpcReqEapSetCaCert *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__eap_set_ca_cert__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__eap_set_ca_cert__init + (RpcRespEapSetCaCert *message) +{ + static const RpcRespEapSetCaCert init_value = RPC__RESP__EAP_SET_CA_CERT__INIT; + *message = init_value; +} +size_t rpc__resp__eap_set_ca_cert__get_packed_size + (const RpcRespEapSetCaCert *message) +{ + assert(message->base.descriptor == &rpc__resp__eap_set_ca_cert__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__eap_set_ca_cert__pack + (const RpcRespEapSetCaCert *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__eap_set_ca_cert__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__eap_set_ca_cert__pack_to_buffer + (const RpcRespEapSetCaCert *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__eap_set_ca_cert__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespEapSetCaCert * + rpc__resp__eap_set_ca_cert__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespEapSetCaCert *) + protobuf_c_message_unpack (&rpc__resp__eap_set_ca_cert__descriptor, + allocator, len, data); +} +void rpc__resp__eap_set_ca_cert__free_unpacked + (RpcRespEapSetCaCert *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__eap_set_ca_cert__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__eap_clear_ca_cert__init + (RpcReqEapClearCaCert *message) +{ + static const RpcReqEapClearCaCert init_value = RPC__REQ__EAP_CLEAR_CA_CERT__INIT; + *message = init_value; +} +size_t rpc__req__eap_clear_ca_cert__get_packed_size + (const RpcReqEapClearCaCert *message) +{ + assert(message->base.descriptor == &rpc__req__eap_clear_ca_cert__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__eap_clear_ca_cert__pack + (const RpcReqEapClearCaCert *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__eap_clear_ca_cert__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__eap_clear_ca_cert__pack_to_buffer + (const RpcReqEapClearCaCert *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__eap_clear_ca_cert__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqEapClearCaCert * + rpc__req__eap_clear_ca_cert__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqEapClearCaCert *) + protobuf_c_message_unpack (&rpc__req__eap_clear_ca_cert__descriptor, + allocator, len, data); +} +void rpc__req__eap_clear_ca_cert__free_unpacked + (RpcReqEapClearCaCert *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__eap_clear_ca_cert__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__eap_clear_ca_cert__init + (RpcRespEapClearCaCert *message) +{ + static const RpcRespEapClearCaCert init_value = RPC__RESP__EAP_CLEAR_CA_CERT__INIT; + *message = init_value; +} +size_t rpc__resp__eap_clear_ca_cert__get_packed_size + (const RpcRespEapClearCaCert *message) +{ + assert(message->base.descriptor == &rpc__resp__eap_clear_ca_cert__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__eap_clear_ca_cert__pack + (const RpcRespEapClearCaCert *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__eap_clear_ca_cert__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__eap_clear_ca_cert__pack_to_buffer + (const RpcRespEapClearCaCert *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__eap_clear_ca_cert__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespEapClearCaCert * + rpc__resp__eap_clear_ca_cert__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespEapClearCaCert *) + protobuf_c_message_unpack (&rpc__resp__eap_clear_ca_cert__descriptor, + allocator, len, data); +} +void rpc__resp__eap_clear_ca_cert__free_unpacked + (RpcRespEapClearCaCert *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__eap_clear_ca_cert__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__eap_set_certificate_and_key__init + (RpcReqEapSetCertificateAndKey *message) +{ + static const RpcReqEapSetCertificateAndKey init_value = RPC__REQ__EAP_SET_CERTIFICATE_AND_KEY__INIT; + *message = init_value; +} +size_t rpc__req__eap_set_certificate_and_key__get_packed_size + (const RpcReqEapSetCertificateAndKey *message) +{ + assert(message->base.descriptor == &rpc__req__eap_set_certificate_and_key__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__eap_set_certificate_and_key__pack + (const RpcReqEapSetCertificateAndKey *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__eap_set_certificate_and_key__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__eap_set_certificate_and_key__pack_to_buffer + (const RpcReqEapSetCertificateAndKey *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__eap_set_certificate_and_key__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqEapSetCertificateAndKey * + rpc__req__eap_set_certificate_and_key__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqEapSetCertificateAndKey *) + protobuf_c_message_unpack (&rpc__req__eap_set_certificate_and_key__descriptor, + allocator, len, data); +} +void rpc__req__eap_set_certificate_and_key__free_unpacked + (RpcReqEapSetCertificateAndKey *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__eap_set_certificate_and_key__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__eap_set_certificate_and_key__init + (RpcRespEapSetCertificateAndKey *message) +{ + static const RpcRespEapSetCertificateAndKey init_value = RPC__RESP__EAP_SET_CERTIFICATE_AND_KEY__INIT; + *message = init_value; +} +size_t rpc__resp__eap_set_certificate_and_key__get_packed_size + (const RpcRespEapSetCertificateAndKey *message) +{ + assert(message->base.descriptor == &rpc__resp__eap_set_certificate_and_key__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__eap_set_certificate_and_key__pack + (const RpcRespEapSetCertificateAndKey *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__eap_set_certificate_and_key__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__eap_set_certificate_and_key__pack_to_buffer + (const RpcRespEapSetCertificateAndKey *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__eap_set_certificate_and_key__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespEapSetCertificateAndKey * + rpc__resp__eap_set_certificate_and_key__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespEapSetCertificateAndKey *) + protobuf_c_message_unpack (&rpc__resp__eap_set_certificate_and_key__descriptor, + allocator, len, data); +} +void rpc__resp__eap_set_certificate_and_key__free_unpacked + (RpcRespEapSetCertificateAndKey *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__eap_set_certificate_and_key__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__eap_clear_certificate_and_key__init + (RpcReqEapClearCertificateAndKey *message) +{ + static const RpcReqEapClearCertificateAndKey init_value = RPC__REQ__EAP_CLEAR_CERTIFICATE_AND_KEY__INIT; + *message = init_value; +} +size_t rpc__req__eap_clear_certificate_and_key__get_packed_size + (const RpcReqEapClearCertificateAndKey *message) +{ + assert(message->base.descriptor == &rpc__req__eap_clear_certificate_and_key__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__eap_clear_certificate_and_key__pack + (const RpcReqEapClearCertificateAndKey *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__eap_clear_certificate_and_key__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__eap_clear_certificate_and_key__pack_to_buffer + (const RpcReqEapClearCertificateAndKey *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__eap_clear_certificate_and_key__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqEapClearCertificateAndKey * + rpc__req__eap_clear_certificate_and_key__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqEapClearCertificateAndKey *) + protobuf_c_message_unpack (&rpc__req__eap_clear_certificate_and_key__descriptor, + allocator, len, data); +} +void rpc__req__eap_clear_certificate_and_key__free_unpacked + (RpcReqEapClearCertificateAndKey *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__eap_clear_certificate_and_key__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__eap_clear_certificate_and_key__init + (RpcRespEapClearCertificateAndKey *message) +{ + static const RpcRespEapClearCertificateAndKey init_value = RPC__RESP__EAP_CLEAR_CERTIFICATE_AND_KEY__INIT; + *message = init_value; +} +size_t rpc__resp__eap_clear_certificate_and_key__get_packed_size + (const RpcRespEapClearCertificateAndKey *message) +{ + assert(message->base.descriptor == &rpc__resp__eap_clear_certificate_and_key__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__eap_clear_certificate_and_key__pack + (const RpcRespEapClearCertificateAndKey *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__eap_clear_certificate_and_key__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__eap_clear_certificate_and_key__pack_to_buffer + (const RpcRespEapClearCertificateAndKey *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__eap_clear_certificate_and_key__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespEapClearCertificateAndKey * + rpc__resp__eap_clear_certificate_and_key__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespEapClearCertificateAndKey *) + protobuf_c_message_unpack (&rpc__resp__eap_clear_certificate_and_key__descriptor, + allocator, len, data); +} +void rpc__resp__eap_clear_certificate_and_key__free_unpacked + (RpcRespEapClearCertificateAndKey *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__eap_clear_certificate_and_key__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__eap_set_disable_time_check__init + (RpcReqEapSetDisableTimeCheck *message) +{ + static const RpcReqEapSetDisableTimeCheck init_value = RPC__REQ__EAP_SET_DISABLE_TIME_CHECK__INIT; + *message = init_value; +} +size_t rpc__req__eap_set_disable_time_check__get_packed_size + (const RpcReqEapSetDisableTimeCheck *message) +{ + assert(message->base.descriptor == &rpc__req__eap_set_disable_time_check__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__eap_set_disable_time_check__pack + (const RpcReqEapSetDisableTimeCheck *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__eap_set_disable_time_check__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__eap_set_disable_time_check__pack_to_buffer + (const RpcReqEapSetDisableTimeCheck *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__eap_set_disable_time_check__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqEapSetDisableTimeCheck * + rpc__req__eap_set_disable_time_check__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqEapSetDisableTimeCheck *) + protobuf_c_message_unpack (&rpc__req__eap_set_disable_time_check__descriptor, + allocator, len, data); +} +void rpc__req__eap_set_disable_time_check__free_unpacked + (RpcReqEapSetDisableTimeCheck *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__eap_set_disable_time_check__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__eap_set_disable_time_check__init + (RpcRespEapSetDisableTimeCheck *message) +{ + static const RpcRespEapSetDisableTimeCheck init_value = RPC__RESP__EAP_SET_DISABLE_TIME_CHECK__INIT; + *message = init_value; +} +size_t rpc__resp__eap_set_disable_time_check__get_packed_size + (const RpcRespEapSetDisableTimeCheck *message) +{ + assert(message->base.descriptor == &rpc__resp__eap_set_disable_time_check__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__eap_set_disable_time_check__pack + (const RpcRespEapSetDisableTimeCheck *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__eap_set_disable_time_check__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__eap_set_disable_time_check__pack_to_buffer + (const RpcRespEapSetDisableTimeCheck *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__eap_set_disable_time_check__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespEapSetDisableTimeCheck * + rpc__resp__eap_set_disable_time_check__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespEapSetDisableTimeCheck *) + protobuf_c_message_unpack (&rpc__resp__eap_set_disable_time_check__descriptor, + allocator, len, data); +} +void rpc__resp__eap_set_disable_time_check__free_unpacked + (RpcRespEapSetDisableTimeCheck *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__eap_set_disable_time_check__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__eap_get_disable_time_check__init + (RpcReqEapGetDisableTimeCheck *message) +{ + static const RpcReqEapGetDisableTimeCheck init_value = RPC__REQ__EAP_GET_DISABLE_TIME_CHECK__INIT; + *message = init_value; +} +size_t rpc__req__eap_get_disable_time_check__get_packed_size + (const RpcReqEapGetDisableTimeCheck *message) +{ + assert(message->base.descriptor == &rpc__req__eap_get_disable_time_check__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__eap_get_disable_time_check__pack + (const RpcReqEapGetDisableTimeCheck *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__eap_get_disable_time_check__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__eap_get_disable_time_check__pack_to_buffer + (const RpcReqEapGetDisableTimeCheck *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__eap_get_disable_time_check__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqEapGetDisableTimeCheck * + rpc__req__eap_get_disable_time_check__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqEapGetDisableTimeCheck *) + protobuf_c_message_unpack (&rpc__req__eap_get_disable_time_check__descriptor, + allocator, len, data); +} +void rpc__req__eap_get_disable_time_check__free_unpacked + (RpcReqEapGetDisableTimeCheck *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__eap_get_disable_time_check__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__eap_get_disable_time_check__init + (RpcRespEapGetDisableTimeCheck *message) +{ + static const RpcRespEapGetDisableTimeCheck init_value = RPC__RESP__EAP_GET_DISABLE_TIME_CHECK__INIT; + *message = init_value; +} +size_t rpc__resp__eap_get_disable_time_check__get_packed_size + (const RpcRespEapGetDisableTimeCheck *message) +{ + assert(message->base.descriptor == &rpc__resp__eap_get_disable_time_check__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__eap_get_disable_time_check__pack + (const RpcRespEapGetDisableTimeCheck *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__eap_get_disable_time_check__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__eap_get_disable_time_check__pack_to_buffer + (const RpcRespEapGetDisableTimeCheck *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__eap_get_disable_time_check__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespEapGetDisableTimeCheck * + rpc__resp__eap_get_disable_time_check__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespEapGetDisableTimeCheck *) + protobuf_c_message_unpack (&rpc__resp__eap_get_disable_time_check__descriptor, + allocator, len, data); +} +void rpc__resp__eap_get_disable_time_check__free_unpacked + (RpcRespEapGetDisableTimeCheck *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__eap_get_disable_time_check__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__eap_set_ttls_phase2_method__init + (RpcReqEapSetTtlsPhase2Method *message) +{ + static const RpcReqEapSetTtlsPhase2Method init_value = RPC__REQ__EAP_SET_TTLS_PHASE2_METHOD__INIT; + *message = init_value; +} +size_t rpc__req__eap_set_ttls_phase2_method__get_packed_size + (const RpcReqEapSetTtlsPhase2Method *message) +{ + assert(message->base.descriptor == &rpc__req__eap_set_ttls_phase2_method__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__eap_set_ttls_phase2_method__pack + (const RpcReqEapSetTtlsPhase2Method *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__eap_set_ttls_phase2_method__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__eap_set_ttls_phase2_method__pack_to_buffer + (const RpcReqEapSetTtlsPhase2Method *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__eap_set_ttls_phase2_method__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqEapSetTtlsPhase2Method * + rpc__req__eap_set_ttls_phase2_method__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqEapSetTtlsPhase2Method *) + protobuf_c_message_unpack (&rpc__req__eap_set_ttls_phase2_method__descriptor, + allocator, len, data); +} +void rpc__req__eap_set_ttls_phase2_method__free_unpacked + (RpcReqEapSetTtlsPhase2Method *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__eap_set_ttls_phase2_method__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__eap_set_ttls_phase2_method__init + (RpcRespEapSetTtlsPhase2Method *message) +{ + static const RpcRespEapSetTtlsPhase2Method init_value = RPC__RESP__EAP_SET_TTLS_PHASE2_METHOD__INIT; + *message = init_value; +} +size_t rpc__resp__eap_set_ttls_phase2_method__get_packed_size + (const RpcRespEapSetTtlsPhase2Method *message) +{ + assert(message->base.descriptor == &rpc__resp__eap_set_ttls_phase2_method__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__eap_set_ttls_phase2_method__pack + (const RpcRespEapSetTtlsPhase2Method *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__eap_set_ttls_phase2_method__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__eap_set_ttls_phase2_method__pack_to_buffer + (const RpcRespEapSetTtlsPhase2Method *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__eap_set_ttls_phase2_method__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespEapSetTtlsPhase2Method * + rpc__resp__eap_set_ttls_phase2_method__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespEapSetTtlsPhase2Method *) + protobuf_c_message_unpack (&rpc__resp__eap_set_ttls_phase2_method__descriptor, + allocator, len, data); +} +void rpc__resp__eap_set_ttls_phase2_method__free_unpacked + (RpcRespEapSetTtlsPhase2Method *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__eap_set_ttls_phase2_method__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__eap_set_suiteb192bit_certification__init + (RpcReqEapSetSuiteb192bitCertification *message) +{ + static const RpcReqEapSetSuiteb192bitCertification init_value = RPC__REQ__EAP_SET_SUITEB192BIT_CERTIFICATION__INIT; + *message = init_value; +} +size_t rpc__req__eap_set_suiteb192bit_certification__get_packed_size + (const RpcReqEapSetSuiteb192bitCertification *message) +{ + assert(message->base.descriptor == &rpc__req__eap_set_suiteb192bit_certification__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__eap_set_suiteb192bit_certification__pack + (const RpcReqEapSetSuiteb192bitCertification *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__eap_set_suiteb192bit_certification__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__eap_set_suiteb192bit_certification__pack_to_buffer + (const RpcReqEapSetSuiteb192bitCertification *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__eap_set_suiteb192bit_certification__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqEapSetSuiteb192bitCertification * + rpc__req__eap_set_suiteb192bit_certification__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqEapSetSuiteb192bitCertification *) + protobuf_c_message_unpack (&rpc__req__eap_set_suiteb192bit_certification__descriptor, + allocator, len, data); +} +void rpc__req__eap_set_suiteb192bit_certification__free_unpacked + (RpcReqEapSetSuiteb192bitCertification *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__eap_set_suiteb192bit_certification__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__eap_set_suiteb192bit_certification__init + (RpcRespEapSetSuiteb192bitCertification *message) +{ + static const RpcRespEapSetSuiteb192bitCertification init_value = RPC__RESP__EAP_SET_SUITEB192BIT_CERTIFICATION__INIT; + *message = init_value; +} +size_t rpc__resp__eap_set_suiteb192bit_certification__get_packed_size + (const RpcRespEapSetSuiteb192bitCertification *message) +{ + assert(message->base.descriptor == &rpc__resp__eap_set_suiteb192bit_certification__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__eap_set_suiteb192bit_certification__pack + (const RpcRespEapSetSuiteb192bitCertification *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__eap_set_suiteb192bit_certification__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__eap_set_suiteb192bit_certification__pack_to_buffer + (const RpcRespEapSetSuiteb192bitCertification *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__eap_set_suiteb192bit_certification__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespEapSetSuiteb192bitCertification * + rpc__resp__eap_set_suiteb192bit_certification__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespEapSetSuiteb192bitCertification *) + protobuf_c_message_unpack (&rpc__resp__eap_set_suiteb192bit_certification__descriptor, + allocator, len, data); +} +void rpc__resp__eap_set_suiteb192bit_certification__free_unpacked + (RpcRespEapSetSuiteb192bitCertification *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__eap_set_suiteb192bit_certification__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__eap_set_pac_file__init + (RpcReqEapSetPacFile *message) +{ + static const RpcReqEapSetPacFile init_value = RPC__REQ__EAP_SET_PAC_FILE__INIT; + *message = init_value; +} +size_t rpc__req__eap_set_pac_file__get_packed_size + (const RpcReqEapSetPacFile *message) +{ + assert(message->base.descriptor == &rpc__req__eap_set_pac_file__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__eap_set_pac_file__pack + (const RpcReqEapSetPacFile *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__eap_set_pac_file__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__eap_set_pac_file__pack_to_buffer + (const RpcReqEapSetPacFile *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__eap_set_pac_file__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqEapSetPacFile * + rpc__req__eap_set_pac_file__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqEapSetPacFile *) + protobuf_c_message_unpack (&rpc__req__eap_set_pac_file__descriptor, + allocator, len, data); +} +void rpc__req__eap_set_pac_file__free_unpacked + (RpcReqEapSetPacFile *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__eap_set_pac_file__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__eap_set_pac_file__init + (RpcRespEapSetPacFile *message) +{ + static const RpcRespEapSetPacFile init_value = RPC__RESP__EAP_SET_PAC_FILE__INIT; + *message = init_value; +} +size_t rpc__resp__eap_set_pac_file__get_packed_size + (const RpcRespEapSetPacFile *message) +{ + assert(message->base.descriptor == &rpc__resp__eap_set_pac_file__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__eap_set_pac_file__pack + (const RpcRespEapSetPacFile *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__eap_set_pac_file__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__eap_set_pac_file__pack_to_buffer + (const RpcRespEapSetPacFile *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__eap_set_pac_file__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespEapSetPacFile * + rpc__resp__eap_set_pac_file__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespEapSetPacFile *) + protobuf_c_message_unpack (&rpc__resp__eap_set_pac_file__descriptor, + allocator, len, data); +} +void rpc__resp__eap_set_pac_file__free_unpacked + (RpcRespEapSetPacFile *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__eap_set_pac_file__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__eap_set_fast_params__init + (RpcReqEapSetFastParams *message) +{ + static const RpcReqEapSetFastParams init_value = RPC__REQ__EAP_SET_FAST_PARAMS__INIT; + *message = init_value; +} +size_t rpc__req__eap_set_fast_params__get_packed_size + (const RpcReqEapSetFastParams *message) +{ + assert(message->base.descriptor == &rpc__req__eap_set_fast_params__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__eap_set_fast_params__pack + (const RpcReqEapSetFastParams *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__eap_set_fast_params__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__eap_set_fast_params__pack_to_buffer + (const RpcReqEapSetFastParams *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__eap_set_fast_params__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqEapSetFastParams * + rpc__req__eap_set_fast_params__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqEapSetFastParams *) + protobuf_c_message_unpack (&rpc__req__eap_set_fast_params__descriptor, + allocator, len, data); +} +void rpc__req__eap_set_fast_params__free_unpacked + (RpcReqEapSetFastParams *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__eap_set_fast_params__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__eap_set_fast_params__init + (RpcRespEapSetFastParams *message) +{ + static const RpcRespEapSetFastParams init_value = RPC__RESP__EAP_SET_FAST_PARAMS__INIT; + *message = init_value; +} +size_t rpc__resp__eap_set_fast_params__get_packed_size + (const RpcRespEapSetFastParams *message) +{ + assert(message->base.descriptor == &rpc__resp__eap_set_fast_params__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__eap_set_fast_params__pack + (const RpcRespEapSetFastParams *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__eap_set_fast_params__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__eap_set_fast_params__pack_to_buffer + (const RpcRespEapSetFastParams *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__eap_set_fast_params__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespEapSetFastParams * + rpc__resp__eap_set_fast_params__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespEapSetFastParams *) + protobuf_c_message_unpack (&rpc__resp__eap_set_fast_params__descriptor, + allocator, len, data); +} +void rpc__resp__eap_set_fast_params__free_unpacked + (RpcRespEapSetFastParams *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__eap_set_fast_params__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__eap_use_default_cert_bundle__init + (RpcReqEapUseDefaultCertBundle *message) +{ + static const RpcReqEapUseDefaultCertBundle init_value = RPC__REQ__EAP_USE_DEFAULT_CERT_BUNDLE__INIT; + *message = init_value; +} +size_t rpc__req__eap_use_default_cert_bundle__get_packed_size + (const RpcReqEapUseDefaultCertBundle *message) +{ + assert(message->base.descriptor == &rpc__req__eap_use_default_cert_bundle__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__eap_use_default_cert_bundle__pack + (const RpcReqEapUseDefaultCertBundle *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__eap_use_default_cert_bundle__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__eap_use_default_cert_bundle__pack_to_buffer + (const RpcReqEapUseDefaultCertBundle *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__eap_use_default_cert_bundle__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqEapUseDefaultCertBundle * + rpc__req__eap_use_default_cert_bundle__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqEapUseDefaultCertBundle *) + protobuf_c_message_unpack (&rpc__req__eap_use_default_cert_bundle__descriptor, + allocator, len, data); +} +void rpc__req__eap_use_default_cert_bundle__free_unpacked + (RpcReqEapUseDefaultCertBundle *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__eap_use_default_cert_bundle__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__eap_use_default_cert_bundle__init + (RpcRespEapUseDefaultCertBundle *message) +{ + static const RpcRespEapUseDefaultCertBundle init_value = RPC__RESP__EAP_USE_DEFAULT_CERT_BUNDLE__INIT; + *message = init_value; +} +size_t rpc__resp__eap_use_default_cert_bundle__get_packed_size + (const RpcRespEapUseDefaultCertBundle *message) +{ + assert(message->base.descriptor == &rpc__resp__eap_use_default_cert_bundle__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__eap_use_default_cert_bundle__pack + (const RpcRespEapUseDefaultCertBundle *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__eap_use_default_cert_bundle__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__eap_use_default_cert_bundle__pack_to_buffer + (const RpcRespEapUseDefaultCertBundle *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__eap_use_default_cert_bundle__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespEapUseDefaultCertBundle * + rpc__resp__eap_use_default_cert_bundle__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespEapUseDefaultCertBundle *) + protobuf_c_message_unpack (&rpc__resp__eap_use_default_cert_bundle__descriptor, + allocator, len, data); +} +void rpc__resp__eap_use_default_cert_bundle__free_unpacked + (RpcRespEapUseDefaultCertBundle *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__eap_use_default_cert_bundle__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__wifi_set_okc_support__init + (RpcReqWifiSetOkcSupport *message) +{ + static const RpcReqWifiSetOkcSupport init_value = RPC__REQ__WIFI_SET_OKC_SUPPORT__INIT; + *message = init_value; +} +size_t rpc__req__wifi_set_okc_support__get_packed_size + (const RpcReqWifiSetOkcSupport *message) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_okc_support__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__wifi_set_okc_support__pack + (const RpcReqWifiSetOkcSupport *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_okc_support__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__wifi_set_okc_support__pack_to_buffer + (const RpcReqWifiSetOkcSupport *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__wifi_set_okc_support__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqWifiSetOkcSupport * + rpc__req__wifi_set_okc_support__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqWifiSetOkcSupport *) + protobuf_c_message_unpack (&rpc__req__wifi_set_okc_support__descriptor, + allocator, len, data); +} +void rpc__req__wifi_set_okc_support__free_unpacked + (RpcReqWifiSetOkcSupport *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__wifi_set_okc_support__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__wifi_set_okc_support__init + (RpcRespWifiSetOkcSupport *message) +{ + static const RpcRespWifiSetOkcSupport init_value = RPC__RESP__WIFI_SET_OKC_SUPPORT__INIT; + *message = init_value; +} +size_t rpc__resp__wifi_set_okc_support__get_packed_size + (const RpcRespWifiSetOkcSupport *message) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_okc_support__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__wifi_set_okc_support__pack + (const RpcRespWifiSetOkcSupport *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_okc_support__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__wifi_set_okc_support__pack_to_buffer + (const RpcRespWifiSetOkcSupport *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__wifi_set_okc_support__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespWifiSetOkcSupport * + rpc__resp__wifi_set_okc_support__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespWifiSetOkcSupport *) + protobuf_c_message_unpack (&rpc__resp__wifi_set_okc_support__descriptor, + allocator, len, data); +} +void rpc__resp__wifi_set_okc_support__free_unpacked + (RpcRespWifiSetOkcSupport *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__wifi_set_okc_support__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__eap_set_domain_name__init + (RpcReqEapSetDomainName *message) +{ + static const RpcReqEapSetDomainName init_value = RPC__REQ__EAP_SET_DOMAIN_NAME__INIT; + *message = init_value; +} +size_t rpc__req__eap_set_domain_name__get_packed_size + (const RpcReqEapSetDomainName *message) +{ + assert(message->base.descriptor == &rpc__req__eap_set_domain_name__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__eap_set_domain_name__pack + (const RpcReqEapSetDomainName *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__eap_set_domain_name__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__eap_set_domain_name__pack_to_buffer + (const RpcReqEapSetDomainName *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__eap_set_domain_name__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqEapSetDomainName * + rpc__req__eap_set_domain_name__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqEapSetDomainName *) + protobuf_c_message_unpack (&rpc__req__eap_set_domain_name__descriptor, + allocator, len, data); +} +void rpc__req__eap_set_domain_name__free_unpacked + (RpcReqEapSetDomainName *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__eap_set_domain_name__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__eap_set_domain_name__init + (RpcRespEapSetDomainName *message) +{ + static const RpcRespEapSetDomainName init_value = RPC__RESP__EAP_SET_DOMAIN_NAME__INIT; + *message = init_value; +} +size_t rpc__resp__eap_set_domain_name__get_packed_size + (const RpcRespEapSetDomainName *message) +{ + assert(message->base.descriptor == &rpc__resp__eap_set_domain_name__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__eap_set_domain_name__pack + (const RpcRespEapSetDomainName *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__eap_set_domain_name__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__eap_set_domain_name__pack_to_buffer + (const RpcRespEapSetDomainName *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__eap_set_domain_name__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespEapSetDomainName * + rpc__resp__eap_set_domain_name__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespEapSetDomainName *) + protobuf_c_message_unpack (&rpc__resp__eap_set_domain_name__descriptor, + allocator, len, data); +} +void rpc__resp__eap_set_domain_name__free_unpacked + (RpcRespEapSetDomainName *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__eap_set_domain_name__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__eap_set_eap_methods__init + (RpcReqEapSetEapMethods *message) +{ + static const RpcReqEapSetEapMethods init_value = RPC__REQ__EAP_SET_EAP_METHODS__INIT; + *message = init_value; +} +size_t rpc__req__eap_set_eap_methods__get_packed_size + (const RpcReqEapSetEapMethods *message) +{ + assert(message->base.descriptor == &rpc__req__eap_set_eap_methods__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__eap_set_eap_methods__pack + (const RpcReqEapSetEapMethods *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__eap_set_eap_methods__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__eap_set_eap_methods__pack_to_buffer + (const RpcReqEapSetEapMethods *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__eap_set_eap_methods__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqEapSetEapMethods * + rpc__req__eap_set_eap_methods__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqEapSetEapMethods *) + protobuf_c_message_unpack (&rpc__req__eap_set_eap_methods__descriptor, + allocator, len, data); +} +void rpc__req__eap_set_eap_methods__free_unpacked + (RpcReqEapSetEapMethods *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__eap_set_eap_methods__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__eap_set_eap_methods__init + (RpcRespEapSetEapMethods *message) +{ + static const RpcRespEapSetEapMethods init_value = RPC__RESP__EAP_SET_EAP_METHODS__INIT; + *message = init_value; +} +size_t rpc__resp__eap_set_eap_methods__get_packed_size + (const RpcRespEapSetEapMethods *message) +{ + assert(message->base.descriptor == &rpc__resp__eap_set_eap_methods__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__eap_set_eap_methods__pack + (const RpcRespEapSetEapMethods *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__eap_set_eap_methods__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__eap_set_eap_methods__pack_to_buffer + (const RpcRespEapSetEapMethods *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__eap_set_eap_methods__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespEapSetEapMethods * + rpc__resp__eap_set_eap_methods__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespEapSetEapMethods *) + protobuf_c_message_unpack (&rpc__resp__eap_set_eap_methods__descriptor, + allocator, len, data); +} +void rpc__resp__eap_set_eap_methods__free_unpacked + (RpcRespEapSetEapMethods *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__eap_set_eap_methods__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__event__supp_dpp_uri_ready__init + (RpcEventSuppDppUriReady *message) +{ + static const RpcEventSuppDppUriReady init_value = RPC__EVENT__SUPP_DPP_URI_READY__INIT; + *message = init_value; +} +size_t rpc__event__supp_dpp_uri_ready__get_packed_size + (const RpcEventSuppDppUriReady *message) +{ + assert(message->base.descriptor == &rpc__event__supp_dpp_uri_ready__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__event__supp_dpp_uri_ready__pack + (const RpcEventSuppDppUriReady *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__event__supp_dpp_uri_ready__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__event__supp_dpp_uri_ready__pack_to_buffer + (const RpcEventSuppDppUriReady *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__event__supp_dpp_uri_ready__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcEventSuppDppUriReady * + rpc__event__supp_dpp_uri_ready__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcEventSuppDppUriReady *) + protobuf_c_message_unpack (&rpc__event__supp_dpp_uri_ready__descriptor, + allocator, len, data); +} +void rpc__event__supp_dpp_uri_ready__free_unpacked + (RpcEventSuppDppUriReady *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__event__supp_dpp_uri_ready__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__event__supp_dpp_cfg_recvd__init + (RpcEventSuppDppCfgRecvd *message) +{ + static const RpcEventSuppDppCfgRecvd init_value = RPC__EVENT__SUPP_DPP_CFG_RECVD__INIT; + *message = init_value; +} +size_t rpc__event__supp_dpp_cfg_recvd__get_packed_size + (const RpcEventSuppDppCfgRecvd *message) +{ + assert(message->base.descriptor == &rpc__event__supp_dpp_cfg_recvd__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__event__supp_dpp_cfg_recvd__pack + (const RpcEventSuppDppCfgRecvd *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__event__supp_dpp_cfg_recvd__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__event__supp_dpp_cfg_recvd__pack_to_buffer + (const RpcEventSuppDppCfgRecvd *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__event__supp_dpp_cfg_recvd__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcEventSuppDppCfgRecvd * + rpc__event__supp_dpp_cfg_recvd__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcEventSuppDppCfgRecvd *) + protobuf_c_message_unpack (&rpc__event__supp_dpp_cfg_recvd__descriptor, + allocator, len, data); +} +void rpc__event__supp_dpp_cfg_recvd__free_unpacked + (RpcEventSuppDppCfgRecvd *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__event__supp_dpp_cfg_recvd__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__event__supp_dpp_fail__init + (RpcEventSuppDppFail *message) +{ + static const RpcEventSuppDppFail init_value = RPC__EVENT__SUPP_DPP_FAIL__INIT; + *message = init_value; +} +size_t rpc__event__supp_dpp_fail__get_packed_size + (const RpcEventSuppDppFail *message) +{ + assert(message->base.descriptor == &rpc__event__supp_dpp_fail__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__event__supp_dpp_fail__pack + (const RpcEventSuppDppFail *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__event__supp_dpp_fail__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__event__supp_dpp_fail__pack_to_buffer + (const RpcEventSuppDppFail *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__event__supp_dpp_fail__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcEventSuppDppFail * + rpc__event__supp_dpp_fail__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcEventSuppDppFail *) + protobuf_c_message_unpack (&rpc__event__supp_dpp_fail__descriptor, + allocator, len, data); +} +void rpc__event__supp_dpp_fail__free_unpacked + (RpcEventSuppDppFail *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__event__supp_dpp_fail__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__event__wifi_dpp_uri_ready__init + (RpcEventWifiDppUriReady *message) +{ + static const RpcEventWifiDppUriReady init_value = RPC__EVENT__WIFI_DPP_URI_READY__INIT; + *message = init_value; +} +size_t rpc__event__wifi_dpp_uri_ready__get_packed_size + (const RpcEventWifiDppUriReady *message) +{ + assert(message->base.descriptor == &rpc__event__wifi_dpp_uri_ready__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__event__wifi_dpp_uri_ready__pack + (const RpcEventWifiDppUriReady *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__event__wifi_dpp_uri_ready__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__event__wifi_dpp_uri_ready__pack_to_buffer + (const RpcEventWifiDppUriReady *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__event__wifi_dpp_uri_ready__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcEventWifiDppUriReady * + rpc__event__wifi_dpp_uri_ready__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcEventWifiDppUriReady *) + protobuf_c_message_unpack (&rpc__event__wifi_dpp_uri_ready__descriptor, + allocator, len, data); +} +void rpc__event__wifi_dpp_uri_ready__free_unpacked + (RpcEventWifiDppUriReady *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__event__wifi_dpp_uri_ready__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__event__wifi_dpp_cfg_recvd__init + (RpcEventWifiDppCfgRecvd *message) +{ + static const RpcEventWifiDppCfgRecvd init_value = RPC__EVENT__WIFI_DPP_CFG_RECVD__INIT; + *message = init_value; +} +size_t rpc__event__wifi_dpp_cfg_recvd__get_packed_size + (const RpcEventWifiDppCfgRecvd *message) +{ + assert(message->base.descriptor == &rpc__event__wifi_dpp_cfg_recvd__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__event__wifi_dpp_cfg_recvd__pack + (const RpcEventWifiDppCfgRecvd *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__event__wifi_dpp_cfg_recvd__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__event__wifi_dpp_cfg_recvd__pack_to_buffer + (const RpcEventWifiDppCfgRecvd *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__event__wifi_dpp_cfg_recvd__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcEventWifiDppCfgRecvd * + rpc__event__wifi_dpp_cfg_recvd__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcEventWifiDppCfgRecvd *) + protobuf_c_message_unpack (&rpc__event__wifi_dpp_cfg_recvd__descriptor, + allocator, len, data); +} +void rpc__event__wifi_dpp_cfg_recvd__free_unpacked + (RpcEventWifiDppCfgRecvd *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__event__wifi_dpp_cfg_recvd__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__event__wifi_dpp_fail__init + (RpcEventWifiDppFail *message) +{ + static const RpcEventWifiDppFail init_value = RPC__EVENT__WIFI_DPP_FAIL__INIT; + *message = init_value; +} +size_t rpc__event__wifi_dpp_fail__get_packed_size + (const RpcEventWifiDppFail *message) +{ + assert(message->base.descriptor == &rpc__event__wifi_dpp_fail__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__event__wifi_dpp_fail__pack + (const RpcEventWifiDppFail *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__event__wifi_dpp_fail__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__event__wifi_dpp_fail__pack_to_buffer + (const RpcEventWifiDppFail *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__event__wifi_dpp_fail__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcEventWifiDppFail * + rpc__event__wifi_dpp_fail__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcEventWifiDppFail *) + protobuf_c_message_unpack (&rpc__event__wifi_dpp_fail__descriptor, + allocator, len, data); +} +void rpc__event__wifi_dpp_fail__free_unpacked + (RpcEventWifiDppFail *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__event__wifi_dpp_fail__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__req__custom_rpc__init + (RpcReqCustomRpc *message) +{ + static const RpcReqCustomRpc init_value = RPC__REQ__CUSTOM_RPC__INIT; + *message = init_value; +} +size_t rpc__req__custom_rpc__get_packed_size + (const RpcReqCustomRpc *message) +{ + assert(message->base.descriptor == &rpc__req__custom_rpc__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__req__custom_rpc__pack + (const RpcReqCustomRpc *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__req__custom_rpc__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__req__custom_rpc__pack_to_buffer + (const RpcReqCustomRpc *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__req__custom_rpc__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcReqCustomRpc * + rpc__req__custom_rpc__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcReqCustomRpc *) + protobuf_c_message_unpack (&rpc__req__custom_rpc__descriptor, + allocator, len, data); +} +void rpc__req__custom_rpc__free_unpacked + (RpcReqCustomRpc *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__req__custom_rpc__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__resp__custom_rpc__init + (RpcRespCustomRpc *message) +{ + static const RpcRespCustomRpc init_value = RPC__RESP__CUSTOM_RPC__INIT; + *message = init_value; +} +size_t rpc__resp__custom_rpc__get_packed_size + (const RpcRespCustomRpc *message) +{ + assert(message->base.descriptor == &rpc__resp__custom_rpc__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__resp__custom_rpc__pack + (const RpcRespCustomRpc *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__resp__custom_rpc__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__resp__custom_rpc__pack_to_buffer + (const RpcRespCustomRpc *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__resp__custom_rpc__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcRespCustomRpc * + rpc__resp__custom_rpc__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcRespCustomRpc *) + protobuf_c_message_unpack (&rpc__resp__custom_rpc__descriptor, + allocator, len, data); +} +void rpc__resp__custom_rpc__free_unpacked + (RpcRespCustomRpc *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__resp__custom_rpc__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__event__custom_rpc__init + (RpcEventCustomRpc *message) +{ + static const RpcEventCustomRpc init_value = RPC__EVENT__CUSTOM_RPC__INIT; + *message = init_value; +} +size_t rpc__event__custom_rpc__get_packed_size + (const RpcEventCustomRpc *message) +{ + assert(message->base.descriptor == &rpc__event__custom_rpc__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__event__custom_rpc__pack + (const RpcEventCustomRpc *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__event__custom_rpc__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__event__custom_rpc__pack_to_buffer + (const RpcEventCustomRpc *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__event__custom_rpc__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcEventCustomRpc * + rpc__event__custom_rpc__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcEventCustomRpc *) + protobuf_c_message_unpack (&rpc__event__custom_rpc__descriptor, + allocator, len, data); +} +void rpc__event__custom_rpc__free_unpacked + (RpcEventCustomRpc *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__event__custom_rpc__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__event__mem_monitor__init + (RpcEventMemMonitor *message) +{ + static const RpcEventMemMonitor init_value = RPC__EVENT__MEM_MONITOR__INIT; + *message = init_value; +} +size_t rpc__event__mem_monitor__get_packed_size + (const RpcEventMemMonitor *message) +{ + assert(message->base.descriptor == &rpc__event__mem_monitor__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__event__mem_monitor__pack + (const RpcEventMemMonitor *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__event__mem_monitor__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__event__mem_monitor__pack_to_buffer + (const RpcEventMemMonitor *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__event__mem_monitor__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +RpcEventMemMonitor * + rpc__event__mem_monitor__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (RpcEventMemMonitor *) + protobuf_c_message_unpack (&rpc__event__mem_monitor__descriptor, + allocator, len, data); +} +void rpc__event__mem_monitor__free_unpacked + (RpcEventMemMonitor *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__event__mem_monitor__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +void rpc__init + (Rpc *message) +{ + static const Rpc init_value = RPC__INIT; + *message = init_value; +} +size_t rpc__get_packed_size + (const Rpc *message) +{ + assert(message->base.descriptor == &rpc__descriptor); + return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message)); +} +size_t rpc__pack + (const Rpc *message, + uint8_t *out) +{ + assert(message->base.descriptor == &rpc__descriptor); + return protobuf_c_message_pack ((const ProtobufCMessage*)message, out); +} +size_t rpc__pack_to_buffer + (const Rpc *message, + ProtobufCBuffer *buffer) +{ + assert(message->base.descriptor == &rpc__descriptor); + return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer); +} +Rpc * + rpc__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data) +{ + return (Rpc *) + protobuf_c_message_unpack (&rpc__descriptor, + allocator, len, data); +} +void rpc__free_unpacked + (Rpc *message, + ProtobufCAllocator *allocator) +{ + if(!message) + return; + assert(message->base.descriptor == &rpc__descriptor); + protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator); +} +static const ProtobufCFieldDescriptor wifi_init_config__field_descriptors[24] = +{ + { + "static_rx_buf_num", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiInitConfig, static_rx_buf_num), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "dynamic_rx_buf_num", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiInitConfig, dynamic_rx_buf_num), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "tx_buf_type", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiInitConfig, tx_buf_type), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "static_tx_buf_num", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiInitConfig, static_tx_buf_num), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "dynamic_tx_buf_num", + 5, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiInitConfig, dynamic_tx_buf_num), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "cache_tx_buf_num", + 6, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiInitConfig, cache_tx_buf_num), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "csi_enable", + 7, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiInitConfig, csi_enable), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "ampdu_rx_enable", + 8, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiInitConfig, ampdu_rx_enable), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "ampdu_tx_enable", + 9, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiInitConfig, ampdu_tx_enable), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "amsdu_tx_enable", + 10, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiInitConfig, amsdu_tx_enable), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "nvs_enable", + 11, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiInitConfig, nvs_enable), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "nano_enable", + 12, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiInitConfig, nano_enable), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "rx_ba_win", + 13, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiInitConfig, rx_ba_win), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "wifi_task_core_id", + 14, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiInitConfig, wifi_task_core_id), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "beacon_max_len", + 15, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiInitConfig, beacon_max_len), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "mgmt_sbuf_num", + 16, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiInitConfig, mgmt_sbuf_num), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "feature_caps", + 17, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT64, + 0, /* quantifier_offset */ + offsetof(WifiInitConfig, feature_caps), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "sta_disconnected_pm", + 18, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(WifiInitConfig, sta_disconnected_pm), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "espnow_max_encrypt_num", + 19, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiInitConfig, espnow_max_encrypt_num), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "magic", + 20, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiInitConfig, magic), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "rx_mgmt_buf_type", + 21, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiInitConfig, rx_mgmt_buf_type), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "rx_mgmt_buf_num", + 22, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiInitConfig, rx_mgmt_buf_num), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "tx_hetb_queue_num", + 23, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiInitConfig, tx_hetb_queue_num), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "dump_hesigb_enable", + 24, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiInitConfig, dump_hesigb_enable), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_init_config__field_indices_by_name[] = { + 7, /* field[7] = ampdu_rx_enable */ + 8, /* field[8] = ampdu_tx_enable */ + 9, /* field[9] = amsdu_tx_enable */ + 14, /* field[14] = beacon_max_len */ + 5, /* field[5] = cache_tx_buf_num */ + 6, /* field[6] = csi_enable */ + 23, /* field[23] = dump_hesigb_enable */ + 1, /* field[1] = dynamic_rx_buf_num */ + 4, /* field[4] = dynamic_tx_buf_num */ + 18, /* field[18] = espnow_max_encrypt_num */ + 16, /* field[16] = feature_caps */ + 19, /* field[19] = magic */ + 15, /* field[15] = mgmt_sbuf_num */ + 11, /* field[11] = nano_enable */ + 10, /* field[10] = nvs_enable */ + 12, /* field[12] = rx_ba_win */ + 21, /* field[21] = rx_mgmt_buf_num */ + 20, /* field[20] = rx_mgmt_buf_type */ + 17, /* field[17] = sta_disconnected_pm */ + 0, /* field[0] = static_rx_buf_num */ + 3, /* field[3] = static_tx_buf_num */ + 2, /* field[2] = tx_buf_type */ + 22, /* field[22] = tx_hetb_queue_num */ + 13, /* field[13] = wifi_task_core_id */ +}; +static const ProtobufCIntRange wifi_init_config__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 24 } +}; +const ProtobufCMessageDescriptor wifi_init_config__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_init_config", + "WifiInitConfig", + "WifiInitConfig", + "", + sizeof(WifiInitConfig), + 24, + wifi_init_config__field_descriptors, + wifi_init_config__field_indices_by_name, + 1, wifi_init_config__number_ranges, + (ProtobufCMessageInit) wifi_init_config__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_country__field_descriptors[5] = +{ + { + "cc", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(WifiCountry, cc), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "schan", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiCountry, schan), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "nchan", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiCountry, nchan), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "max_tx_power", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiCountry, max_tx_power), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "policy", + 5, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiCountry, policy), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_country__field_indices_by_name[] = { + 0, /* field[0] = cc */ + 3, /* field[3] = max_tx_power */ + 2, /* field[2] = nchan */ + 4, /* field[4] = policy */ + 1, /* field[1] = schan */ +}; +static const ProtobufCIntRange wifi_country__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 5 } +}; +const ProtobufCMessageDescriptor wifi_country__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_country", + "WifiCountry", + "WifiCountry", + "", + sizeof(WifiCountry), + 5, + wifi_country__field_descriptors, + wifi_country__field_indices_by_name, + 1, wifi_country__number_ranges, + (ProtobufCMessageInit) wifi_country__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_active_scan_time__field_descriptors[2] = +{ + { + "min", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiActiveScanTime, min), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "max", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiActiveScanTime, max), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_active_scan_time__field_indices_by_name[] = { + 1, /* field[1] = max */ + 0, /* field[0] = min */ +}; +static const ProtobufCIntRange wifi_active_scan_time__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor wifi_active_scan_time__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_active_scan_time", + "WifiActiveScanTime", + "WifiActiveScanTime", + "", + sizeof(WifiActiveScanTime), + 2, + wifi_active_scan_time__field_descriptors, + wifi_active_scan_time__field_indices_by_name, + 1, wifi_active_scan_time__number_ranges, + (ProtobufCMessageInit) wifi_active_scan_time__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_scan_time__field_descriptors[2] = +{ + { + "active", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(WifiScanTime, active), + &wifi_active_scan_time__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "passive", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiScanTime, passive), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_scan_time__field_indices_by_name[] = { + 0, /* field[0] = active */ + 1, /* field[1] = passive */ +}; +static const ProtobufCIntRange wifi_scan_time__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor wifi_scan_time__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_scan_time", + "WifiScanTime", + "WifiScanTime", + "", + sizeof(WifiScanTime), + 2, + wifi_scan_time__field_descriptors, + wifi_scan_time__field_indices_by_name, + 1, wifi_scan_time__number_ranges, + (ProtobufCMessageInit) wifi_scan_time__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_scan_channel_bitmap__field_descriptors[2] = +{ + { + "ghz_2_channels", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiScanChannelBitmap, ghz_2_channels), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "ghz_5_channels", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiScanChannelBitmap, ghz_5_channels), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_scan_channel_bitmap__field_indices_by_name[] = { + 0, /* field[0] = ghz_2_channels */ + 1, /* field[1] = ghz_5_channels */ +}; +static const ProtobufCIntRange wifi_scan_channel_bitmap__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor wifi_scan_channel_bitmap__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_scan_channel_bitmap", + "WifiScanChannelBitmap", + "WifiScanChannelBitmap", + "", + sizeof(WifiScanChannelBitmap), + 2, + wifi_scan_channel_bitmap__field_descriptors, + wifi_scan_channel_bitmap__field_indices_by_name, + 1, wifi_scan_channel_bitmap__number_ranges, + (ProtobufCMessageInit) wifi_scan_channel_bitmap__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_scan_config__field_descriptors[8] = +{ + { + "ssid", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(WifiScanConfig, ssid), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "bssid", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(WifiScanConfig, bssid), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "channel", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiScanConfig, channel), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "show_hidden", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(WifiScanConfig, show_hidden), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "scan_type", + 5, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiScanConfig, scan_type), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "scan_time", + 6, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(WifiScanConfig, scan_time), + &wifi_scan_time__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "home_chan_dwell_time", + 7, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiScanConfig, home_chan_dwell_time), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "channel_bitmap", + 8, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(WifiScanConfig, channel_bitmap), + &wifi_scan_channel_bitmap__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_scan_config__field_indices_by_name[] = { + 1, /* field[1] = bssid */ + 2, /* field[2] = channel */ + 7, /* field[7] = channel_bitmap */ + 6, /* field[6] = home_chan_dwell_time */ + 5, /* field[5] = scan_time */ + 4, /* field[4] = scan_type */ + 3, /* field[3] = show_hidden */ + 0, /* field[0] = ssid */ +}; +static const ProtobufCIntRange wifi_scan_config__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 8 } +}; +const ProtobufCMessageDescriptor wifi_scan_config__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_scan_config", + "WifiScanConfig", + "WifiScanConfig", + "", + sizeof(WifiScanConfig), + 8, + wifi_scan_config__field_descriptors, + wifi_scan_config__field_indices_by_name, + 1, wifi_scan_config__number_ranges, + (ProtobufCMessageInit) wifi_scan_config__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_scan_default_params__field_descriptors[2] = +{ + { + "scan_time", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(WifiScanDefaultParams, scan_time), + &wifi_scan_time__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "home_chan_dwell_time", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiScanDefaultParams, home_chan_dwell_time), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_scan_default_params__field_indices_by_name[] = { + 1, /* field[1] = home_chan_dwell_time */ + 0, /* field[0] = scan_time */ +}; +static const ProtobufCIntRange wifi_scan_default_params__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor wifi_scan_default_params__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_scan_default_params", + "WifiScanDefaultParams", + "WifiScanDefaultParams", + "", + sizeof(WifiScanDefaultParams), + 2, + wifi_scan_default_params__field_descriptors, + wifi_scan_default_params__field_indices_by_name, + 1, wifi_scan_default_params__number_ranges, + (ProtobufCMessageInit) wifi_scan_default_params__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_he_ap_info__field_descriptors[2] = +{ + { + "bitmask", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiHeApInfo, bitmask), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "bssid_index", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiHeApInfo, bssid_index), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_he_ap_info__field_indices_by_name[] = { + 0, /* field[0] = bitmask */ + 1, /* field[1] = bssid_index */ +}; +static const ProtobufCIntRange wifi_he_ap_info__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor wifi_he_ap_info__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_he_ap_info", + "WifiHeApInfo", + "WifiHeApInfo", + "", + sizeof(WifiHeApInfo), + 2, + wifi_he_ap_info__field_descriptors, + wifi_he_ap_info__field_indices_by_name, + 1, wifi_he_ap_info__number_ranges, + (ProtobufCMessageInit) wifi_he_ap_info__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_ap_record__field_descriptors[15] = +{ + { + "bssid", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(WifiApRecord, bssid), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "ssid", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(WifiApRecord, ssid), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "primary", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiApRecord, primary), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "second", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiApRecord, second), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "rssi", + 5, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiApRecord, rssi), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "authmode", + 6, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiApRecord, authmode), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "pairwise_cipher", + 7, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiApRecord, pairwise_cipher), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "group_cipher", + 8, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiApRecord, group_cipher), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "ant", + 9, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiApRecord, ant), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "bitmask", + 10, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiApRecord, bitmask), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "country", + 11, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(WifiApRecord, country), + &wifi_country__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "he_ap", + 12, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(WifiApRecord, he_ap), + &wifi_he_ap_info__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "bandwidth", + 13, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiApRecord, bandwidth), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "vht_ch_freq1", + 14, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiApRecord, vht_ch_freq1), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "vht_ch_freq2", + 15, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiApRecord, vht_ch_freq2), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_ap_record__field_indices_by_name[] = { + 8, /* field[8] = ant */ + 5, /* field[5] = authmode */ + 12, /* field[12] = bandwidth */ + 9, /* field[9] = bitmask */ + 0, /* field[0] = bssid */ + 10, /* field[10] = country */ + 7, /* field[7] = group_cipher */ + 11, /* field[11] = he_ap */ + 6, /* field[6] = pairwise_cipher */ + 2, /* field[2] = primary */ + 4, /* field[4] = rssi */ + 3, /* field[3] = second */ + 1, /* field[1] = ssid */ + 13, /* field[13] = vht_ch_freq1 */ + 14, /* field[14] = vht_ch_freq2 */ +}; +static const ProtobufCIntRange wifi_ap_record__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 15 } +}; +const ProtobufCMessageDescriptor wifi_ap_record__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_ap_record", + "WifiApRecord", + "WifiApRecord", + "", + sizeof(WifiApRecord), + 15, + wifi_ap_record__field_descriptors, + wifi_ap_record__field_indices_by_name, + 1, wifi_ap_record__number_ranges, + (ProtobufCMessageInit) wifi_ap_record__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_scan_threshold__field_descriptors[3] = +{ + { + "rssi", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiScanThreshold, rssi), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "authmode", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiScanThreshold, authmode), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "rssi_5g_adjustment", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiScanThreshold, rssi_5g_adjustment), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_scan_threshold__field_indices_by_name[] = { + 1, /* field[1] = authmode */ + 0, /* field[0] = rssi */ + 2, /* field[2] = rssi_5g_adjustment */ +}; +static const ProtobufCIntRange wifi_scan_threshold__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 3 } +}; +const ProtobufCMessageDescriptor wifi_scan_threshold__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_scan_threshold", + "WifiScanThreshold", + "WifiScanThreshold", + "", + sizeof(WifiScanThreshold), + 3, + wifi_scan_threshold__field_descriptors, + wifi_scan_threshold__field_indices_by_name, + 1, wifi_scan_threshold__number_ranges, + (ProtobufCMessageInit) wifi_scan_threshold__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_pmf_config__field_descriptors[2] = +{ + { + "capable", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(WifiPmfConfig, capable), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "required", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(WifiPmfConfig, required), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_pmf_config__field_indices_by_name[] = { + 0, /* field[0] = capable */ + 1, /* field[1] = required */ +}; +static const ProtobufCIntRange wifi_pmf_config__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor wifi_pmf_config__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_pmf_config", + "WifiPmfConfig", + "WifiPmfConfig", + "", + sizeof(WifiPmfConfig), + 2, + wifi_pmf_config__field_descriptors, + wifi_pmf_config__field_indices_by_name, + 1, wifi_pmf_config__number_ranges, + (ProtobufCMessageInit) wifi_pmf_config__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_bss_max_idle_config__field_descriptors[2] = +{ + { + "period", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiBssMaxIdleConfig, period), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "protected_keep_alive", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(WifiBssMaxIdleConfig, protected_keep_alive), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_bss_max_idle_config__field_indices_by_name[] = { + 0, /* field[0] = period */ + 1, /* field[1] = protected_keep_alive */ +}; +static const ProtobufCIntRange wifi_bss_max_idle_config__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor wifi_bss_max_idle_config__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_bss_max_idle_config", + "WifiBssMaxIdleConfig", + "WifiBssMaxIdleConfig", + "", + sizeof(WifiBssMaxIdleConfig), + 2, + wifi_bss_max_idle_config__field_descriptors, + wifi_bss_max_idle_config__field_indices_by_name, + 1, wifi_bss_max_idle_config__number_ranges, + (ProtobufCMessageInit) wifi_bss_max_idle_config__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_ap_config__field_descriptors[18] = +{ + { + "ssid", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(WifiApConfig, ssid), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "password", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(WifiApConfig, password), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "ssid_len", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiApConfig, ssid_len), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "channel", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiApConfig, channel), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "authmode", + 5, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiApConfig, authmode), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "ssid_hidden", + 6, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiApConfig, ssid_hidden), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "max_connection", + 7, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiApConfig, max_connection), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "beacon_interval", + 8, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiApConfig, beacon_interval), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "pairwise_cipher", + 9, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiApConfig, pairwise_cipher), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "ftm_responder", + 10, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(WifiApConfig, ftm_responder), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "pmf_cfg", + 11, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(WifiApConfig, pmf_cfg), + &wifi_pmf_config__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "sae_pwe_h2e", + 12, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiApConfig, sae_pwe_h2e), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "csa_count", + 13, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiApConfig, csa_count), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "dtim_period", + 14, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiApConfig, dtim_period), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "transition_disable", + 15, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiApConfig, transition_disable), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "sae_ext", + 16, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiApConfig, sae_ext), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "bss_max_idle_cfg", + 17, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(WifiApConfig, bss_max_idle_cfg), + &wifi_bss_max_idle_config__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "gtk_rekey_interval", + 18, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiApConfig, gtk_rekey_interval), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_ap_config__field_indices_by_name[] = { + 4, /* field[4] = authmode */ + 7, /* field[7] = beacon_interval */ + 16, /* field[16] = bss_max_idle_cfg */ + 3, /* field[3] = channel */ + 12, /* field[12] = csa_count */ + 13, /* field[13] = dtim_period */ + 9, /* field[9] = ftm_responder */ + 17, /* field[17] = gtk_rekey_interval */ + 6, /* field[6] = max_connection */ + 8, /* field[8] = pairwise_cipher */ + 1, /* field[1] = password */ + 10, /* field[10] = pmf_cfg */ + 15, /* field[15] = sae_ext */ + 11, /* field[11] = sae_pwe_h2e */ + 0, /* field[0] = ssid */ + 5, /* field[5] = ssid_hidden */ + 2, /* field[2] = ssid_len */ + 14, /* field[14] = transition_disable */ +}; +static const ProtobufCIntRange wifi_ap_config__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 18 } +}; +const ProtobufCMessageDescriptor wifi_ap_config__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_ap_config", + "WifiApConfig", + "WifiApConfig", + "", + sizeof(WifiApConfig), + 18, + wifi_ap_config__field_descriptors, + wifi_ap_config__field_indices_by_name, + 1, wifi_ap_config__number_ranges, + (ProtobufCMessageInit) wifi_ap_config__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_sta_config__field_descriptors[16] = +{ + { + "ssid", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(WifiStaConfig, ssid), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "password", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(WifiStaConfig, password), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "scan_method", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiStaConfig, scan_method), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "bssid_set", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(WifiStaConfig, bssid_set), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "bssid", + 5, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(WifiStaConfig, bssid), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "channel", + 6, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiStaConfig, channel), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "listen_interval", + 7, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiStaConfig, listen_interval), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "sort_method", + 8, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiStaConfig, sort_method), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "threshold", + 9, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(WifiStaConfig, threshold), + &wifi_scan_threshold__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "pmf_cfg", + 10, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(WifiStaConfig, pmf_cfg), + &wifi_pmf_config__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "bitmask", + 11, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiStaConfig, bitmask), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "sae_pwe_h2e", + 12, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiStaConfig, sae_pwe_h2e), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "failure_retry_cnt", + 13, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiStaConfig, failure_retry_cnt), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "he_bitmask", + 14, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiStaConfig, he_bitmask), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "sae_h2e_identifier", + 15, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(WifiStaConfig, sae_h2e_identifier), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "sae_pk_mode", + 16, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiStaConfig, sae_pk_mode), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_sta_config__field_indices_by_name[] = { + 10, /* field[10] = bitmask */ + 4, /* field[4] = bssid */ + 3, /* field[3] = bssid_set */ + 5, /* field[5] = channel */ + 12, /* field[12] = failure_retry_cnt */ + 13, /* field[13] = he_bitmask */ + 6, /* field[6] = listen_interval */ + 1, /* field[1] = password */ + 9, /* field[9] = pmf_cfg */ + 14, /* field[14] = sae_h2e_identifier */ + 15, /* field[15] = sae_pk_mode */ + 11, /* field[11] = sae_pwe_h2e */ + 2, /* field[2] = scan_method */ + 7, /* field[7] = sort_method */ + 0, /* field[0] = ssid */ + 8, /* field[8] = threshold */ +}; +static const ProtobufCIntRange wifi_sta_config__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 16 } +}; +const ProtobufCMessageDescriptor wifi_sta_config__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_sta_config", + "WifiStaConfig", + "WifiStaConfig", + "", + sizeof(WifiStaConfig), + 16, + wifi_sta_config__field_descriptors, + wifi_sta_config__field_indices_by_name, + 1, wifi_sta_config__number_ranges, + (ProtobufCMessageInit) wifi_sta_config__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_config__field_descriptors[2] = +{ + { + "ap", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(WifiConfig, u_case), + offsetof(WifiConfig, ap), + &wifi_ap_config__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "sta", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(WifiConfig, u_case), + offsetof(WifiConfig, sta), + &wifi_sta_config__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_config__field_indices_by_name[] = { + 0, /* field[0] = ap */ + 1, /* field[1] = sta */ +}; +static const ProtobufCIntRange wifi_config__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor wifi_config__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_config", + "WifiConfig", + "WifiConfig", + "", + sizeof(WifiConfig), + 2, + wifi_config__field_descriptors, + wifi_config__field_indices_by_name, + 1, wifi_config__number_ranges, + (ProtobufCMessageInit) wifi_config__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_sta_info__field_descriptors[3] = +{ + { + "mac", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(WifiStaInfo, mac), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "rssi", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiStaInfo, rssi), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "bitmask", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiStaInfo, bitmask), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_sta_info__field_indices_by_name[] = { + 2, /* field[2] = bitmask */ + 0, /* field[0] = mac */ + 1, /* field[1] = rssi */ +}; +static const ProtobufCIntRange wifi_sta_info__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 3 } +}; +const ProtobufCMessageDescriptor wifi_sta_info__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_sta_info", + "WifiStaInfo", + "WifiStaInfo", + "", + sizeof(WifiStaInfo), + 3, + wifi_sta_info__field_descriptors, + wifi_sta_info__field_indices_by_name, + 1, wifi_sta_info__number_ranges, + (ProtobufCMessageInit) wifi_sta_info__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_sta_list__field_descriptors[2] = +{ + { + "sta", + 1, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(WifiStaList, n_sta), + offsetof(WifiStaList, sta), + &wifi_sta_info__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "num", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiStaList, num), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_sta_list__field_indices_by_name[] = { + 1, /* field[1] = num */ + 0, /* field[0] = sta */ +}; +static const ProtobufCIntRange wifi_sta_list__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor wifi_sta_list__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_sta_list", + "WifiStaList", + "WifiStaList", + "", + sizeof(WifiStaList), + 2, + wifi_sta_list__field_descriptors, + wifi_sta_list__field_indices_by_name, + 1, wifi_sta_list__number_ranges, + (ProtobufCMessageInit) wifi_sta_list__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_pkt_rx_ctrl__field_descriptors[19] = +{ + { + "rssi", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiPktRxCtrl, rssi), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "rate", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiPktRxCtrl, rate), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "sig_mode", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiPktRxCtrl, sig_mode), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "mcs", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiPktRxCtrl, mcs), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "cwb", + 5, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiPktRxCtrl, cwb), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "smoothing", + 6, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiPktRxCtrl, smoothing), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "not_sounding", + 7, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiPktRxCtrl, not_sounding), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "aggregation", + 8, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiPktRxCtrl, aggregation), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "stbc", + 9, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiPktRxCtrl, stbc), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "fec_coding", + 10, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiPktRxCtrl, fec_coding), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "sgi", + 11, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiPktRxCtrl, sgi), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "noise_floor", + 12, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiPktRxCtrl, noise_floor), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "ampdu_cnt", + 13, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiPktRxCtrl, ampdu_cnt), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "channel", + 14, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiPktRxCtrl, channel), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "secondary_channel", + 15, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiPktRxCtrl, secondary_channel), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "timestamp", + 16, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiPktRxCtrl, timestamp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "ant", + 17, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiPktRxCtrl, ant), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "sig_len", + 18, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiPktRxCtrl, sig_len), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "rx_state", + 19, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiPktRxCtrl, rx_state), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_pkt_rx_ctrl__field_indices_by_name[] = { + 7, /* field[7] = aggregation */ + 12, /* field[12] = ampdu_cnt */ + 16, /* field[16] = ant */ + 13, /* field[13] = channel */ + 4, /* field[4] = cwb */ + 9, /* field[9] = fec_coding */ + 3, /* field[3] = mcs */ + 11, /* field[11] = noise_floor */ + 6, /* field[6] = not_sounding */ + 1, /* field[1] = rate */ + 0, /* field[0] = rssi */ + 18, /* field[18] = rx_state */ + 14, /* field[14] = secondary_channel */ + 10, /* field[10] = sgi */ + 17, /* field[17] = sig_len */ + 2, /* field[2] = sig_mode */ + 5, /* field[5] = smoothing */ + 8, /* field[8] = stbc */ + 15, /* field[15] = timestamp */ +}; +static const ProtobufCIntRange wifi_pkt_rx_ctrl__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 19 } +}; +const ProtobufCMessageDescriptor wifi_pkt_rx_ctrl__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_pkt_rx_ctrl", + "WifiPktRxCtrl", + "WifiPktRxCtrl", + "", + sizeof(WifiPktRxCtrl), + 19, + wifi_pkt_rx_ctrl__field_descriptors, + wifi_pkt_rx_ctrl__field_indices_by_name, + 1, wifi_pkt_rx_ctrl__number_ranges, + (ProtobufCMessageInit) wifi_pkt_rx_ctrl__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_promiscuous_pkt__field_descriptors[2] = +{ + { + "rx_ctrl", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(WifiPromiscuousPkt, rx_ctrl), + &wifi_pkt_rx_ctrl__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "payload", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(WifiPromiscuousPkt, payload), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_promiscuous_pkt__field_indices_by_name[] = { + 1, /* field[1] = payload */ + 0, /* field[0] = rx_ctrl */ +}; +static const ProtobufCIntRange wifi_promiscuous_pkt__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor wifi_promiscuous_pkt__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_promiscuous_pkt", + "WifiPromiscuousPkt", + "WifiPromiscuousPkt", + "", + sizeof(WifiPromiscuousPkt), + 2, + wifi_promiscuous_pkt__field_descriptors, + wifi_promiscuous_pkt__field_indices_by_name, + 1, wifi_promiscuous_pkt__number_ranges, + (ProtobufCMessageInit) wifi_promiscuous_pkt__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_promiscuous_filter__field_descriptors[1] = +{ + { + "filter_mask", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiPromiscuousFilter, filter_mask), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_promiscuous_filter__field_indices_by_name[] = { + 0, /* field[0] = filter_mask */ +}; +static const ProtobufCIntRange wifi_promiscuous_filter__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor wifi_promiscuous_filter__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_promiscuous_filter", + "WifiPromiscuousFilter", + "WifiPromiscuousFilter", + "", + sizeof(WifiPromiscuousFilter), + 1, + wifi_promiscuous_filter__field_descriptors, + wifi_promiscuous_filter__field_indices_by_name, + 1, wifi_promiscuous_filter__number_ranges, + (ProtobufCMessageInit) wifi_promiscuous_filter__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_csi_config__field_descriptors[7] = +{ + { + "lltf_en", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(WifiCsiConfig, lltf_en), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "htltf_en", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(WifiCsiConfig, htltf_en), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "stbc_htltf2_en", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(WifiCsiConfig, stbc_htltf2_en), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "ltf_merge_en", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(WifiCsiConfig, ltf_merge_en), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "channel_filter_en", + 5, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(WifiCsiConfig, channel_filter_en), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "manu_scale", + 6, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(WifiCsiConfig, manu_scale), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "shift", + 7, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiCsiConfig, shift), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_csi_config__field_indices_by_name[] = { + 4, /* field[4] = channel_filter_en */ + 1, /* field[1] = htltf_en */ + 0, /* field[0] = lltf_en */ + 3, /* field[3] = ltf_merge_en */ + 5, /* field[5] = manu_scale */ + 6, /* field[6] = shift */ + 2, /* field[2] = stbc_htltf2_en */ +}; +static const ProtobufCIntRange wifi_csi_config__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 7 } +}; +const ProtobufCMessageDescriptor wifi_csi_config__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_csi_config", + "WifiCsiConfig", + "WifiCsiConfig", + "", + sizeof(WifiCsiConfig), + 7, + wifi_csi_config__field_descriptors, + wifi_csi_config__field_indices_by_name, + 1, wifi_csi_config__number_ranges, + (ProtobufCMessageInit) wifi_csi_config__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_csi_info__field_descriptors[6] = +{ + { + "rx_ctrl", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(WifiCsiInfo, rx_ctrl), + &wifi_pkt_rx_ctrl__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "mac", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(WifiCsiInfo, mac), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "dmac", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(WifiCsiInfo, dmac), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "first_word_invalid", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(WifiCsiInfo, first_word_invalid), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "buf", + 5, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(WifiCsiInfo, buf), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "len", + 6, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiCsiInfo, len), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_csi_info__field_indices_by_name[] = { + 4, /* field[4] = buf */ + 2, /* field[2] = dmac */ + 3, /* field[3] = first_word_invalid */ + 5, /* field[5] = len */ + 1, /* field[1] = mac */ + 0, /* field[0] = rx_ctrl */ +}; +static const ProtobufCIntRange wifi_csi_info__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 6 } +}; +const ProtobufCMessageDescriptor wifi_csi_info__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_csi_info", + "WifiCsiInfo", + "WifiCsiInfo", + "", + sizeof(WifiCsiInfo), + 6, + wifi_csi_info__field_descriptors, + wifi_csi_info__field_indices_by_name, + 1, wifi_csi_info__number_ranges, + (ProtobufCMessageInit) wifi_csi_info__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_ant_gpio__field_descriptors[2] = +{ + { + "gpio_select", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiAntGpio, gpio_select), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "gpio_num", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiAntGpio, gpio_num), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_ant_gpio__field_indices_by_name[] = { + 1, /* field[1] = gpio_num */ + 0, /* field[0] = gpio_select */ +}; +static const ProtobufCIntRange wifi_ant_gpio__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor wifi_ant_gpio__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_ant_gpio", + "WifiAntGpio", + "WifiAntGpio", + "", + sizeof(WifiAntGpio), + 2, + wifi_ant_gpio__field_descriptors, + wifi_ant_gpio__field_indices_by_name, + 1, wifi_ant_gpio__number_ranges, + (ProtobufCMessageInit) wifi_ant_gpio__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_ant_gpio_config__field_descriptors[1] = +{ + { + "gpio_cfgs", + 1, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(WifiAntGpioConfig, n_gpio_cfgs), + offsetof(WifiAntGpioConfig, gpio_cfgs), + &wifi_ant_gpio__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_ant_gpio_config__field_indices_by_name[] = { + 0, /* field[0] = gpio_cfgs */ +}; +static const ProtobufCIntRange wifi_ant_gpio_config__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor wifi_ant_gpio_config__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_ant_gpio_config", + "WifiAntGpioConfig", + "WifiAntGpioConfig", + "", + sizeof(WifiAntGpioConfig), + 1, + wifi_ant_gpio_config__field_descriptors, + wifi_ant_gpio_config__field_indices_by_name, + 1, wifi_ant_gpio_config__number_ranges, + (ProtobufCMessageInit) wifi_ant_gpio_config__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_ant_config__field_descriptors[5] = +{ + { + "rx_ant_mode", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiAntConfig, rx_ant_mode), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "rx_ant_default", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiAntConfig, rx_ant_default), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "tx_ant_mode", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiAntConfig, tx_ant_mode), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "enabled_ant0", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiAntConfig, enabled_ant0), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "enabled_ant1", + 5, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiAntConfig, enabled_ant1), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_ant_config__field_indices_by_name[] = { + 3, /* field[3] = enabled_ant0 */ + 4, /* field[4] = enabled_ant1 */ + 1, /* field[1] = rx_ant_default */ + 0, /* field[0] = rx_ant_mode */ + 2, /* field[2] = tx_ant_mode */ +}; +static const ProtobufCIntRange wifi_ant_config__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 5 } +}; +const ProtobufCMessageDescriptor wifi_ant_config__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_ant_config", + "WifiAntConfig", + "WifiAntConfig", + "", + sizeof(WifiAntConfig), + 5, + wifi_ant_config__field_descriptors, + wifi_ant_config__field_indices_by_name, + 1, wifi_ant_config__number_ranges, + (ProtobufCMessageInit) wifi_ant_config__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_action_tx_req__field_descriptors[5] = +{ + { + "ifx", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiActionTxReq, ifx), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "dest_mac", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(WifiActionTxReq, dest_mac), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "no_ack", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(WifiActionTxReq, no_ack), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "data_len", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiActionTxReq, data_len), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "data", + 5, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(WifiActionTxReq, data), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_action_tx_req__field_indices_by_name[] = { + 4, /* field[4] = data */ + 3, /* field[3] = data_len */ + 1, /* field[1] = dest_mac */ + 0, /* field[0] = ifx */ + 2, /* field[2] = no_ack */ +}; +static const ProtobufCIntRange wifi_action_tx_req__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 5 } +}; +const ProtobufCMessageDescriptor wifi_action_tx_req__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_action_tx_req", + "WifiActionTxReq", + "WifiActionTxReq", + "", + sizeof(WifiActionTxReq), + 5, + wifi_action_tx_req__field_descriptors, + wifi_action_tx_req__field_indices_by_name, + 1, wifi_action_tx_req__number_ranges, + (ProtobufCMessageInit) wifi_action_tx_req__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_ftm_initiator_cfg__field_descriptors[4] = +{ + { + "resp_mac", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(WifiFtmInitiatorCfg, resp_mac), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "channel", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiFtmInitiatorCfg, channel), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "frm_count", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiFtmInitiatorCfg, frm_count), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "burst_period", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiFtmInitiatorCfg, burst_period), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_ftm_initiator_cfg__field_indices_by_name[] = { + 3, /* field[3] = burst_period */ + 1, /* field[1] = channel */ + 2, /* field[2] = frm_count */ + 0, /* field[0] = resp_mac */ +}; +static const ProtobufCIntRange wifi_ftm_initiator_cfg__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 4 } +}; +const ProtobufCMessageDescriptor wifi_ftm_initiator_cfg__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_ftm_initiator_cfg", + "WifiFtmInitiatorCfg", + "WifiFtmInitiatorCfg", + "", + sizeof(WifiFtmInitiatorCfg), + 4, + wifi_ftm_initiator_cfg__field_descriptors, + wifi_ftm_initiator_cfg__field_indices_by_name, + 1, wifi_ftm_initiator_cfg__number_ranges, + (ProtobufCMessageInit) wifi_ftm_initiator_cfg__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_event_sta_scan_done__field_descriptors[3] = +{ + { + "status", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiEventStaScanDone, status), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "number", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiEventStaScanDone, number), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "scan_id", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiEventStaScanDone, scan_id), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_event_sta_scan_done__field_indices_by_name[] = { + 1, /* field[1] = number */ + 2, /* field[2] = scan_id */ + 0, /* field[0] = status */ +}; +static const ProtobufCIntRange wifi_event_sta_scan_done__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 3 } +}; +const ProtobufCMessageDescriptor wifi_event_sta_scan_done__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_event_sta_scan_done", + "WifiEventStaScanDone", + "WifiEventStaScanDone", + "", + sizeof(WifiEventStaScanDone), + 3, + wifi_event_sta_scan_done__field_descriptors, + wifi_event_sta_scan_done__field_indices_by_name, + 1, wifi_event_sta_scan_done__number_ranges, + (ProtobufCMessageInit) wifi_event_sta_scan_done__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_event_sta_connected__field_descriptors[6] = +{ + { + "ssid", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(WifiEventStaConnected, ssid), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "ssid_len", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiEventStaConnected, ssid_len), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "bssid", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(WifiEventStaConnected, bssid), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "channel", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiEventStaConnected, channel), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "authmode", + 5, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiEventStaConnected, authmode), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "aid", + 6, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiEventStaConnected, aid), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_event_sta_connected__field_indices_by_name[] = { + 5, /* field[5] = aid */ + 4, /* field[4] = authmode */ + 2, /* field[2] = bssid */ + 3, /* field[3] = channel */ + 0, /* field[0] = ssid */ + 1, /* field[1] = ssid_len */ +}; +static const ProtobufCIntRange wifi_event_sta_connected__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 6 } +}; +const ProtobufCMessageDescriptor wifi_event_sta_connected__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_event_sta_connected", + "WifiEventStaConnected", + "WifiEventStaConnected", + "", + sizeof(WifiEventStaConnected), + 6, + wifi_event_sta_connected__field_descriptors, + wifi_event_sta_connected__field_indices_by_name, + 1, wifi_event_sta_connected__number_ranges, + (ProtobufCMessageInit) wifi_event_sta_connected__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_event_sta_disconnected__field_descriptors[5] = +{ + { + "ssid", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(WifiEventStaDisconnected, ssid), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "ssid_len", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiEventStaDisconnected, ssid_len), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "bssid", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(WifiEventStaDisconnected, bssid), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "reason", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiEventStaDisconnected, reason), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "rssi", + 5, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiEventStaDisconnected, rssi), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_event_sta_disconnected__field_indices_by_name[] = { + 2, /* field[2] = bssid */ + 3, /* field[3] = reason */ + 4, /* field[4] = rssi */ + 0, /* field[0] = ssid */ + 1, /* field[1] = ssid_len */ +}; +static const ProtobufCIntRange wifi_event_sta_disconnected__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 5 } +}; +const ProtobufCMessageDescriptor wifi_event_sta_disconnected__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_event_sta_disconnected", + "WifiEventStaDisconnected", + "WifiEventStaDisconnected", + "", + sizeof(WifiEventStaDisconnected), + 5, + wifi_event_sta_disconnected__field_descriptors, + wifi_event_sta_disconnected__field_indices_by_name, + 1, wifi_event_sta_disconnected__number_ranges, + (ProtobufCMessageInit) wifi_event_sta_disconnected__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_event_sta_authmode_change__field_descriptors[2] = +{ + { + "old_mode", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiEventStaAuthmodeChange, old_mode), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "new_mode", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiEventStaAuthmodeChange, new_mode), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_event_sta_authmode_change__field_indices_by_name[] = { + 1, /* field[1] = new_mode */ + 0, /* field[0] = old_mode */ +}; +static const ProtobufCIntRange wifi_event_sta_authmode_change__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor wifi_event_sta_authmode_change__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_event_sta_authmode_change", + "WifiEventStaAuthmodeChange", + "WifiEventStaAuthmodeChange", + "", + sizeof(WifiEventStaAuthmodeChange), + 2, + wifi_event_sta_authmode_change__field_descriptors, + wifi_event_sta_authmode_change__field_indices_by_name, + 1, wifi_event_sta_authmode_change__number_ranges, + (ProtobufCMessageInit) wifi_event_sta_authmode_change__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_event_sta_wps_er_pin__field_descriptors[1] = +{ + { + "pin_code", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(WifiEventStaWpsErPin, pin_code), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_event_sta_wps_er_pin__field_indices_by_name[] = { + 0, /* field[0] = pin_code */ +}; +static const ProtobufCIntRange wifi_event_sta_wps_er_pin__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor wifi_event_sta_wps_er_pin__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_event_sta_wps_er_pin", + "WifiEventStaWpsErPin", + "WifiEventStaWpsErPin", + "", + sizeof(WifiEventStaWpsErPin), + 1, + wifi_event_sta_wps_er_pin__field_descriptors, + wifi_event_sta_wps_er_pin__field_indices_by_name, + 1, wifi_event_sta_wps_er_pin__number_ranges, + (ProtobufCMessageInit) wifi_event_sta_wps_er_pin__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor ap_cred__field_descriptors[2] = +{ + { + "ssid", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(ApCred, ssid), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "passphrase", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(ApCred, passphrase), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned ap_cred__field_indices_by_name[] = { + 1, /* field[1] = passphrase */ + 0, /* field[0] = ssid */ +}; +static const ProtobufCIntRange ap_cred__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor ap_cred__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "ap_cred", + "ApCred", + "ApCred", + "", + sizeof(ApCred), + 2, + ap_cred__field_descriptors, + ap_cred__field_indices_by_name, + 1, ap_cred__number_ranges, + (ProtobufCMessageInit) ap_cred__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_event_sta_wps_er_success__field_descriptors[2] = +{ + { + "ap_cred_cnt", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiEventStaWpsErSuccess, ap_cred_cnt), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "ap_creds", + 2, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(WifiEventStaWpsErSuccess, n_ap_creds), + offsetof(WifiEventStaWpsErSuccess, ap_creds), + &ap_cred__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_event_sta_wps_er_success__field_indices_by_name[] = { + 0, /* field[0] = ap_cred_cnt */ + 1, /* field[1] = ap_creds */ +}; +static const ProtobufCIntRange wifi_event_sta_wps_er_success__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor wifi_event_sta_wps_er_success__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_event_sta_wps_er_success", + "WifiEventStaWpsErSuccess", + "WifiEventStaWpsErSuccess", + "", + sizeof(WifiEventStaWpsErSuccess), + 2, + wifi_event_sta_wps_er_success__field_descriptors, + wifi_event_sta_wps_er_success__field_indices_by_name, + 1, wifi_event_sta_wps_er_success__number_ranges, + (ProtobufCMessageInit) wifi_event_sta_wps_er_success__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_event_ap_probe_req_rx__field_descriptors[2] = +{ + { + "rssi", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiEventApProbeReqRx, rssi), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "mac", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiEventApProbeReqRx, mac), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_event_ap_probe_req_rx__field_indices_by_name[] = { + 1, /* field[1] = mac */ + 0, /* field[0] = rssi */ +}; +static const ProtobufCIntRange wifi_event_ap_probe_req_rx__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor wifi_event_ap_probe_req_rx__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_event_ap_probe_req_rx", + "WifiEventApProbeReqRx", + "WifiEventApProbeReqRx", + "", + sizeof(WifiEventApProbeReqRx), + 2, + wifi_event_ap_probe_req_rx__field_descriptors, + wifi_event_ap_probe_req_rx__field_indices_by_name, + 1, wifi_event_ap_probe_req_rx__number_ranges, + (ProtobufCMessageInit) wifi_event_ap_probe_req_rx__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_event_bss_rssi_low__field_descriptors[1] = +{ + { + "rssi", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiEventBssRssiLow, rssi), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_event_bss_rssi_low__field_indices_by_name[] = { + 0, /* field[0] = rssi */ +}; +static const ProtobufCIntRange wifi_event_bss_rssi_low__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor wifi_event_bss_rssi_low__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_event_bss_rssi_low", + "WifiEventBssRssiLow", + "WifiEventBssRssiLow", + "", + sizeof(WifiEventBssRssiLow), + 1, + wifi_event_bss_rssi_low__field_descriptors, + wifi_event_bss_rssi_low__field_indices_by_name, + 1, wifi_event_bss_rssi_low__number_ranges, + (ProtobufCMessageInit) wifi_event_bss_rssi_low__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_ftm_report_entry__field_descriptors[7] = +{ + { + "dlog_token", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiFtmReportEntry, dlog_token), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "rssi", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiFtmReportEntry, rssi), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "rtt", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiFtmReportEntry, rtt), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "t1", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT64, + 0, /* quantifier_offset */ + offsetof(WifiFtmReportEntry, t1), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "t2", + 5, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT64, + 0, /* quantifier_offset */ + offsetof(WifiFtmReportEntry, t2), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "t3", + 6, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT64, + 0, /* quantifier_offset */ + offsetof(WifiFtmReportEntry, t3), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "t4", + 7, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT64, + 0, /* quantifier_offset */ + offsetof(WifiFtmReportEntry, t4), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_ftm_report_entry__field_indices_by_name[] = { + 0, /* field[0] = dlog_token */ + 1, /* field[1] = rssi */ + 2, /* field[2] = rtt */ + 3, /* field[3] = t1 */ + 4, /* field[4] = t2 */ + 5, /* field[5] = t3 */ + 6, /* field[6] = t4 */ +}; +static const ProtobufCIntRange wifi_ftm_report_entry__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 7 } +}; +const ProtobufCMessageDescriptor wifi_ftm_report_entry__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_ftm_report_entry", + "WifiFtmReportEntry", + "WifiFtmReportEntry", + "", + sizeof(WifiFtmReportEntry), + 7, + wifi_ftm_report_entry__field_descriptors, + wifi_ftm_report_entry__field_indices_by_name, + 1, wifi_ftm_report_entry__number_ranges, + (ProtobufCMessageInit) wifi_ftm_report_entry__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_event_ftm_report__field_descriptors[7] = +{ + { + "peer_mac", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(WifiEventFtmReport, peer_mac), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "status", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiEventFtmReport, status), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "rtt_raw", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiEventFtmReport, rtt_raw), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "rtt_est", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiEventFtmReport, rtt_est), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "dist_est", + 5, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiEventFtmReport, dist_est), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "ftm_report_data", + 6, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(WifiEventFtmReport, n_ftm_report_data), + offsetof(WifiEventFtmReport, ftm_report_data), + &wifi_ftm_report_entry__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "ftm_report_num_entries", + 7, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiEventFtmReport, ftm_report_num_entries), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_event_ftm_report__field_indices_by_name[] = { + 4, /* field[4] = dist_est */ + 5, /* field[5] = ftm_report_data */ + 6, /* field[6] = ftm_report_num_entries */ + 0, /* field[0] = peer_mac */ + 3, /* field[3] = rtt_est */ + 2, /* field[2] = rtt_raw */ + 1, /* field[1] = status */ +}; +static const ProtobufCIntRange wifi_event_ftm_report__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 7 } +}; +const ProtobufCMessageDescriptor wifi_event_ftm_report__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_event_ftm_report", + "WifiEventFtmReport", + "WifiEventFtmReport", + "", + sizeof(WifiEventFtmReport), + 7, + wifi_event_ftm_report__field_descriptors, + wifi_event_ftm_report__field_indices_by_name, + 1, wifi_event_ftm_report__number_ranges, + (ProtobufCMessageInit) wifi_event_ftm_report__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_event_action_tx_status__field_descriptors[4] = +{ + { + "ifx", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiEventActionTxStatus, ifx), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "context", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiEventActionTxStatus, context), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "da", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(WifiEventActionTxStatus, da), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "status", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiEventActionTxStatus, status), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_event_action_tx_status__field_indices_by_name[] = { + 1, /* field[1] = context */ + 2, /* field[2] = da */ + 0, /* field[0] = ifx */ + 3, /* field[3] = status */ +}; +static const ProtobufCIntRange wifi_event_action_tx_status__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 4 } +}; +const ProtobufCMessageDescriptor wifi_event_action_tx_status__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_event_action_tx_status", + "WifiEventActionTxStatus", + "WifiEventActionTxStatus", + "", + sizeof(WifiEventActionTxStatus), + 4, + wifi_event_action_tx_status__field_descriptors, + wifi_event_action_tx_status__field_indices_by_name, + 1, wifi_event_action_tx_status__number_ranges, + (ProtobufCMessageInit) wifi_event_action_tx_status__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_event_roc_done__field_descriptors[1] = +{ + { + "context", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiEventRocDone, context), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_event_roc_done__field_indices_by_name[] = { + 0, /* field[0] = context */ +}; +static const ProtobufCIntRange wifi_event_roc_done__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor wifi_event_roc_done__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_event_roc_done", + "WifiEventRocDone", + "WifiEventRocDone", + "", + sizeof(WifiEventRocDone), + 1, + wifi_event_roc_done__field_descriptors, + wifi_event_roc_done__field_indices_by_name, + 1, wifi_event_roc_done__number_ranges, + (ProtobufCMessageInit) wifi_event_roc_done__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_event_ap_wps_rg_pin__field_descriptors[1] = +{ + { + "pin_code", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(WifiEventApWpsRgPin, pin_code), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_event_ap_wps_rg_pin__field_indices_by_name[] = { + 0, /* field[0] = pin_code */ +}; +static const ProtobufCIntRange wifi_event_ap_wps_rg_pin__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor wifi_event_ap_wps_rg_pin__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_event_ap_wps_rg_pin", + "WifiEventApWpsRgPin", + "WifiEventApWpsRgPin", + "", + sizeof(WifiEventApWpsRgPin), + 1, + wifi_event_ap_wps_rg_pin__field_descriptors, + wifi_event_ap_wps_rg_pin__field_indices_by_name, + 1, wifi_event_ap_wps_rg_pin__number_ranges, + (ProtobufCMessageInit) wifi_event_ap_wps_rg_pin__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_event_ap_wps_rg_fail_reason__field_descriptors[2] = +{ + { + "reason", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(WifiEventApWpsRgFailReason, reason), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "peer_macaddr", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(WifiEventApWpsRgFailReason, peer_macaddr), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_event_ap_wps_rg_fail_reason__field_indices_by_name[] = { + 1, /* field[1] = peer_macaddr */ + 0, /* field[0] = reason */ +}; +static const ProtobufCIntRange wifi_event_ap_wps_rg_fail_reason__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor wifi_event_ap_wps_rg_fail_reason__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_event_ap_wps_rg_fail_reason", + "WifiEventApWpsRgFailReason", + "WifiEventApWpsRgFailReason", + "", + sizeof(WifiEventApWpsRgFailReason), + 2, + wifi_event_ap_wps_rg_fail_reason__field_descriptors, + wifi_event_ap_wps_rg_fail_reason__field_indices_by_name, + 1, wifi_event_ap_wps_rg_fail_reason__number_ranges, + (ProtobufCMessageInit) wifi_event_ap_wps_rg_fail_reason__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_event_ap_wps_rg_success__field_descriptors[1] = +{ + { + "peer_macaddr", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(WifiEventApWpsRgSuccess, peer_macaddr), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_event_ap_wps_rg_success__field_indices_by_name[] = { + 0, /* field[0] = peer_macaddr */ +}; +static const ProtobufCIntRange wifi_event_ap_wps_rg_success__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor wifi_event_ap_wps_rg_success__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_event_ap_wps_rg_success", + "WifiEventApWpsRgSuccess", + "WifiEventApWpsRgSuccess", + "", + sizeof(WifiEventApWpsRgSuccess), + 1, + wifi_event_ap_wps_rg_success__field_descriptors, + wifi_event_ap_wps_rg_success__field_indices_by_name, + 1, wifi_event_ap_wps_rg_success__number_ranges, + (ProtobufCMessageInit) wifi_event_ap_wps_rg_success__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_protocols__field_descriptors[2] = +{ + { + "ghz_2g", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiProtocols, ghz_2g), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "ghz_5g", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiProtocols, ghz_5g), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_protocols__field_indices_by_name[] = { + 0, /* field[0] = ghz_2g */ + 1, /* field[1] = ghz_5g */ +}; +static const ProtobufCIntRange wifi_protocols__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor wifi_protocols__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_protocols", + "WifiProtocols", + "WifiProtocols", + "", + sizeof(WifiProtocols), + 2, + wifi_protocols__field_descriptors, + wifi_protocols__field_indices_by_name, + 1, wifi_protocols__number_ranges, + (ProtobufCMessageInit) wifi_protocols__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_bandwidths__field_descriptors[2] = +{ + { + "ghz_2g", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiBandwidths, ghz_2g), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "ghz_5g", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiBandwidths, ghz_5g), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_bandwidths__field_indices_by_name[] = { + 0, /* field[0] = ghz_2g */ + 1, /* field[1] = ghz_5g */ +}; +static const ProtobufCIntRange wifi_bandwidths__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor wifi_bandwidths__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_bandwidths", + "WifiBandwidths", + "WifiBandwidths", + "", + sizeof(WifiBandwidths), + 2, + wifi_bandwidths__field_descriptors, + wifi_bandwidths__field_indices_by_name, + 1, wifi_bandwidths__number_ranges, + (ProtobufCMessageInit) wifi_bandwidths__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_itwt_setup_config__field_descriptors[6] = +{ + { + "setup_cmd", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiItwtSetupConfig, setup_cmd), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "bitmask_1", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiItwtSetupConfig, bitmask_1), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "min_wake_dura", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiItwtSetupConfig, min_wake_dura), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "wake_invl_mant", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiItwtSetupConfig, wake_invl_mant), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "twt_id", + 5, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiItwtSetupConfig, twt_id), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "timeout_time_ms", + 6, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(WifiItwtSetupConfig, timeout_time_ms), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_itwt_setup_config__field_indices_by_name[] = { + 1, /* field[1] = bitmask_1 */ + 2, /* field[2] = min_wake_dura */ + 0, /* field[0] = setup_cmd */ + 5, /* field[5] = timeout_time_ms */ + 4, /* field[4] = twt_id */ + 3, /* field[3] = wake_invl_mant */ +}; +static const ProtobufCIntRange wifi_itwt_setup_config__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 6 } +}; +const ProtobufCMessageDescriptor wifi_itwt_setup_config__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_itwt_setup_config", + "WifiItwtSetupConfig", + "WifiItwtSetupConfig", + "", + sizeof(WifiItwtSetupConfig), + 6, + wifi_itwt_setup_config__field_descriptors, + wifi_itwt_setup_config__field_indices_by_name, + 1, wifi_itwt_setup_config__number_ranges, + (ProtobufCMessageInit) wifi_itwt_setup_config__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor wifi_twt_config__field_descriptors[2] = +{ + { + "post_wakeup_event", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(WifiTwtConfig, post_wakeup_event), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "twt_enable_keep_alive", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(WifiTwtConfig, twt_enable_keep_alive), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned wifi_twt_config__field_indices_by_name[] = { + 0, /* field[0] = post_wakeup_event */ + 1, /* field[1] = twt_enable_keep_alive */ +}; +static const ProtobufCIntRange wifi_twt_config__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor wifi_twt_config__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "wifi_twt_config", + "WifiTwtConfig", + "WifiTwtConfig", + "", + sizeof(WifiTwtConfig), + 2, + wifi_twt_config__field_descriptors, + wifi_twt_config__field_indices_by_name, + 1, wifi_twt_config__number_ranges, + (ProtobufCMessageInit) wifi_twt_config__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor esp_app_desc__field_descriptors[14] = +{ + { + "magic_word", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(EspAppDesc, magic_word), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "secure_version", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(EspAppDesc, secure_version), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "reserv1", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(EspAppDesc, reserv1), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "version", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(EspAppDesc, version), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "project_name", + 5, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(EspAppDesc, project_name), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "time", + 6, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(EspAppDesc, time), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "date", + 7, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(EspAppDesc, date), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "idf_ver", + 8, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(EspAppDesc, idf_ver), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "app_elf_sha256", + 9, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(EspAppDesc, app_elf_sha256), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "min_efuse_blk_rev_full", + 10, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(EspAppDesc, min_efuse_blk_rev_full), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "max_efuse_blk_rev_full", + 11, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(EspAppDesc, max_efuse_blk_rev_full), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "mmu_page_size", + 12, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(EspAppDesc, mmu_page_size), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "reserv3", + 13, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(EspAppDesc, reserv3), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "reserv2", + 14, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(EspAppDesc, reserv2), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned esp_app_desc__field_indices_by_name[] = { + 8, /* field[8] = app_elf_sha256 */ + 6, /* field[6] = date */ + 7, /* field[7] = idf_ver */ + 0, /* field[0] = magic_word */ + 10, /* field[10] = max_efuse_blk_rev_full */ + 9, /* field[9] = min_efuse_blk_rev_full */ + 11, /* field[11] = mmu_page_size */ + 4, /* field[4] = project_name */ + 2, /* field[2] = reserv1 */ + 13, /* field[13] = reserv2 */ + 12, /* field[12] = reserv3 */ + 1, /* field[1] = secure_version */ + 5, /* field[5] = time */ + 3, /* field[3] = version */ +}; +static const ProtobufCIntRange esp_app_desc__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 14 } +}; +const ProtobufCMessageDescriptor esp_app_desc__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "esp_app_desc", + "EspAppDesc", + "EspAppDesc", + "", + sizeof(EspAppDesc), + 14, + esp_app_desc__field_descriptors, + esp_app_desc__field_indices_by_name, + 1, esp_app_desc__number_ranges, + (ProtobufCMessageInit) esp_app_desc__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor heap_size_threshold__field_descriptors[2] = +{ + { + "threshold_mem_dma", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(HeapSizeThreshold, threshold_mem_dma), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "threshold_mem_8bit", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(HeapSizeThreshold, threshold_mem_8bit), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned heap_size_threshold__field_indices_by_name[] = { + 1, /* field[1] = threshold_mem_8bit */ + 0, /* field[0] = threshold_mem_dma */ +}; +static const ProtobufCIntRange heap_size_threshold__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor heap_size_threshold__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "heap_size_threshold", + "HeapSizeThreshold", + "HeapSizeThreshold", + "", + sizeof(HeapSizeThreshold), + 2, + heap_size_threshold__field_descriptors, + heap_size_threshold__field_indices_by_name, + 1, heap_size_threshold__number_ranges, + (ProtobufCMessageInit) heap_size_threshold__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor mem_info__field_descriptors[2] = +{ + { + "free_size", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(MemInfo, free_size), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "largest_free_block", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(MemInfo, largest_free_block), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned mem_info__field_indices_by_name[] = { + 0, /* field[0] = free_size */ + 1, /* field[1] = largest_free_block */ +}; +static const ProtobufCIntRange mem_info__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor mem_info__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "mem_info", + "MemInfo", + "MemInfo", + "", + sizeof(MemInfo), + 2, + mem_info__field_descriptors, + mem_info__field_indices_by_name, + 1, mem_info__number_ranges, + (ProtobufCMessageInit) mem_info__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor heap_info__field_descriptors[2] = +{ + { + "mem_dma", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(HeapInfo, mem_dma), + &mem_info__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "mem_8bit", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(HeapInfo, mem_8bit), + &mem_info__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned heap_info__field_indices_by_name[] = { + 1, /* field[1] = mem_8bit */ + 0, /* field[0] = mem_dma */ +}; +static const ProtobufCIntRange heap_info__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor heap_info__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "heap_info", + "HeapInfo", + "HeapInfo", + "", + sizeof(HeapInfo), + 2, + heap_info__field_descriptors, + heap_info__field_indices_by_name, + 1, heap_info__number_ranges, + (ProtobufCMessageInit) heap_info__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor connected_stalist__field_descriptors[2] = +{ + { + "mac", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(ConnectedSTAList, mac), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "rssi", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(ConnectedSTAList, rssi), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned connected_stalist__field_indices_by_name[] = { + 0, /* field[0] = mac */ + 1, /* field[1] = rssi */ +}; +static const ProtobufCIntRange connected_stalist__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor connected_stalist__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "ConnectedSTAList", + "ConnectedSTAList", + "ConnectedSTAList", + "", + sizeof(ConnectedSTAList), + 2, + connected_stalist__field_descriptors, + connected_stalist__field_indices_by_name, + 1, connected_stalist__number_ranges, + (ProtobufCMessageInit) connected_stalist__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor eap_fast_config__field_descriptors[3] = +{ + { + "fast_provisioning", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(EapFastConfig, fast_provisioning), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "fast_max_pac_list_len", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(EapFastConfig, fast_max_pac_list_len), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "fast_pac_format_binary", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(EapFastConfig, fast_pac_format_binary), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned eap_fast_config__field_indices_by_name[] = { + 1, /* field[1] = fast_max_pac_list_len */ + 2, /* field[2] = fast_pac_format_binary */ + 0, /* field[0] = fast_provisioning */ +}; +static const ProtobufCIntRange eap_fast_config__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 3 } +}; +const ProtobufCMessageDescriptor eap_fast_config__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "eap_fast_config", + "EapFastConfig", + "EapFastConfig", + "", + sizeof(EapFastConfig), + 3, + eap_fast_config__field_descriptors, + eap_fast_config__field_indices_by_name, + 1, eap_fast_config__number_ranges, + (ProtobufCMessageInit) eap_fast_config__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__get_mac_address__field_descriptors[1] = +{ + { + "mode", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqGetMacAddress, mode), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__get_mac_address__field_indices_by_name[] = { + 0, /* field[0] = mode */ +}; +static const ProtobufCIntRange rpc__req__get_mac_address__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__get_mac_address__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_GetMacAddress", + "RpcReqGetMacAddress", + "RpcReqGetMacAddress", + "", + sizeof(RpcReqGetMacAddress), + 1, + rpc__req__get_mac_address__field_descriptors, + rpc__req__get_mac_address__field_indices_by_name, + 1, rpc__req__get_mac_address__number_ranges, + (ProtobufCMessageInit) rpc__req__get_mac_address__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__get_mac_address__field_descriptors[2] = +{ + { + "mac", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcRespGetMacAddress, mac), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespGetMacAddress, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__get_mac_address__field_indices_by_name[] = { + 0, /* field[0] = mac */ + 1, /* field[1] = resp */ +}; +static const ProtobufCIntRange rpc__resp__get_mac_address__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__resp__get_mac_address__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_GetMacAddress", + "RpcRespGetMacAddress", + "RpcRespGetMacAddress", + "", + sizeof(RpcRespGetMacAddress), + 2, + rpc__resp__get_mac_address__field_descriptors, + rpc__resp__get_mac_address__field_indices_by_name, + 1, rpc__resp__get_mac_address__number_ranges, + (ProtobufCMessageInit) rpc__resp__get_mac_address__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__get_mode__field_descriptors NULL +#define rpc__req__get_mode__field_indices_by_name NULL +#define rpc__req__get_mode__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__get_mode__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_GetMode", + "RpcReqGetMode", + "RpcReqGetMode", + "", + sizeof(RpcReqGetMode), + 0, + rpc__req__get_mode__field_descriptors, + rpc__req__get_mode__field_indices_by_name, + 0, rpc__req__get_mode__number_ranges, + (ProtobufCMessageInit) rpc__req__get_mode__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__get_mode__field_descriptors[2] = +{ + { + "mode", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespGetMode, mode), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespGetMode, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__get_mode__field_indices_by_name[] = { + 0, /* field[0] = mode */ + 1, /* field[1] = resp */ +}; +static const ProtobufCIntRange rpc__resp__get_mode__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__resp__get_mode__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_GetMode", + "RpcRespGetMode", + "RpcRespGetMode", + "", + sizeof(RpcRespGetMode), + 2, + rpc__resp__get_mode__field_descriptors, + rpc__resp__get_mode__field_indices_by_name, + 1, rpc__resp__get_mode__number_ranges, + (ProtobufCMessageInit) rpc__resp__get_mode__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__set_mode__field_descriptors[1] = +{ + { + "mode", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqSetMode, mode), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__set_mode__field_indices_by_name[] = { + 0, /* field[0] = mode */ +}; +static const ProtobufCIntRange rpc__req__set_mode__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__set_mode__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_SetMode", + "RpcReqSetMode", + "RpcReqSetMode", + "", + sizeof(RpcReqSetMode), + 1, + rpc__req__set_mode__field_descriptors, + rpc__req__set_mode__field_indices_by_name, + 1, rpc__req__set_mode__number_ranges, + (ProtobufCMessageInit) rpc__req__set_mode__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__set_mode__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespSetMode, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__set_mode__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__set_mode__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__set_mode__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_SetMode", + "RpcRespSetMode", + "RpcRespSetMode", + "", + sizeof(RpcRespSetMode), + 1, + rpc__resp__set_mode__field_descriptors, + rpc__resp__set_mode__field_indices_by_name, + 1, rpc__resp__set_mode__number_ranges, + (ProtobufCMessageInit) rpc__resp__set_mode__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__get_ps__field_descriptors NULL +#define rpc__req__get_ps__field_indices_by_name NULL +#define rpc__req__get_ps__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__get_ps__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_GetPs", + "RpcReqGetPs", + "RpcReqGetPs", + "", + sizeof(RpcReqGetPs), + 0, + rpc__req__get_ps__field_descriptors, + rpc__req__get_ps__field_indices_by_name, + 0, rpc__req__get_ps__number_ranges, + (ProtobufCMessageInit) rpc__req__get_ps__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__get_ps__field_descriptors[2] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespGetPs, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "type", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespGetPs, type), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__get_ps__field_indices_by_name[] = { + 0, /* field[0] = resp */ + 1, /* field[1] = type */ +}; +static const ProtobufCIntRange rpc__resp__get_ps__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__resp__get_ps__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_GetPs", + "RpcRespGetPs", + "RpcRespGetPs", + "", + sizeof(RpcRespGetPs), + 2, + rpc__resp__get_ps__field_descriptors, + rpc__resp__get_ps__field_indices_by_name, + 1, rpc__resp__get_ps__number_ranges, + (ProtobufCMessageInit) rpc__resp__get_ps__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__set_ps__field_descriptors[1] = +{ + { + "type", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqSetPs, type), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__set_ps__field_indices_by_name[] = { + 0, /* field[0] = type */ +}; +static const ProtobufCIntRange rpc__req__set_ps__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__set_ps__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_SetPs", + "RpcReqSetPs", + "RpcReqSetPs", + "", + sizeof(RpcReqSetPs), + 1, + rpc__req__set_ps__field_descriptors, + rpc__req__set_ps__field_indices_by_name, + 1, rpc__req__set_ps__number_ranges, + (ProtobufCMessageInit) rpc__req__set_ps__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__set_ps__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespSetPs, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__set_ps__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__set_ps__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__set_ps__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_SetPs", + "RpcRespSetPs", + "RpcRespSetPs", + "", + sizeof(RpcRespSetPs), + 1, + rpc__resp__set_ps__field_descriptors, + rpc__resp__set_ps__field_indices_by_name, + 1, rpc__resp__set_ps__number_ranges, + (ProtobufCMessageInit) rpc__resp__set_ps__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__set_mac_address__field_descriptors[2] = +{ + { + "mac", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcReqSetMacAddress, mac), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "mode", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqSetMacAddress, mode), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__set_mac_address__field_indices_by_name[] = { + 0, /* field[0] = mac */ + 1, /* field[1] = mode */ +}; +static const ProtobufCIntRange rpc__req__set_mac_address__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__req__set_mac_address__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_SetMacAddress", + "RpcReqSetMacAddress", + "RpcReqSetMacAddress", + "", + sizeof(RpcReqSetMacAddress), + 2, + rpc__req__set_mac_address__field_descriptors, + rpc__req__set_mac_address__field_indices_by_name, + 1, rpc__req__set_mac_address__number_ranges, + (ProtobufCMessageInit) rpc__req__set_mac_address__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__set_mac_address__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespSetMacAddress, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__set_mac_address__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__set_mac_address__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__set_mac_address__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_SetMacAddress", + "RpcRespSetMacAddress", + "RpcRespSetMacAddress", + "", + sizeof(RpcRespSetMacAddress), + 1, + rpc__resp__set_mac_address__field_descriptors, + rpc__resp__set_mac_address__field_indices_by_name, + 1, rpc__resp__set_mac_address__number_ranges, + (ProtobufCMessageInit) rpc__resp__set_mac_address__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__otabegin__field_descriptors NULL +#define rpc__req__otabegin__field_indices_by_name NULL +#define rpc__req__otabegin__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__otabegin__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_OTABegin", + "RpcReqOTABegin", + "RpcReqOTABegin", + "", + sizeof(RpcReqOTABegin), + 0, + rpc__req__otabegin__field_descriptors, + rpc__req__otabegin__field_indices_by_name, + 0, rpc__req__otabegin__number_ranges, + (ProtobufCMessageInit) rpc__req__otabegin__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__otabegin__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespOTABegin, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__otabegin__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__otabegin__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__otabegin__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_OTABegin", + "RpcRespOTABegin", + "RpcRespOTABegin", + "", + sizeof(RpcRespOTABegin), + 1, + rpc__resp__otabegin__field_descriptors, + rpc__resp__otabegin__field_indices_by_name, + 1, rpc__resp__otabegin__number_ranges, + (ProtobufCMessageInit) rpc__resp__otabegin__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__otawrite__field_descriptors[1] = +{ + { + "ota_data", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcReqOTAWrite, ota_data), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__otawrite__field_indices_by_name[] = { + 0, /* field[0] = ota_data */ +}; +static const ProtobufCIntRange rpc__req__otawrite__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__otawrite__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_OTAWrite", + "RpcReqOTAWrite", + "RpcReqOTAWrite", + "", + sizeof(RpcReqOTAWrite), + 1, + rpc__req__otawrite__field_descriptors, + rpc__req__otawrite__field_indices_by_name, + 1, rpc__req__otawrite__number_ranges, + (ProtobufCMessageInit) rpc__req__otawrite__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__otawrite__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespOTAWrite, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__otawrite__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__otawrite__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__otawrite__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_OTAWrite", + "RpcRespOTAWrite", + "RpcRespOTAWrite", + "", + sizeof(RpcRespOTAWrite), + 1, + rpc__resp__otawrite__field_descriptors, + rpc__resp__otawrite__field_indices_by_name, + 1, rpc__resp__otawrite__number_ranges, + (ProtobufCMessageInit) rpc__resp__otawrite__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__otaend__field_descriptors NULL +#define rpc__req__otaend__field_indices_by_name NULL +#define rpc__req__otaend__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__otaend__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_OTAEnd", + "RpcReqOTAEnd", + "RpcReqOTAEnd", + "", + sizeof(RpcReqOTAEnd), + 0, + rpc__req__otaend__field_descriptors, + rpc__req__otaend__field_indices_by_name, + 0, rpc__req__otaend__number_ranges, + (ProtobufCMessageInit) rpc__req__otaend__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__otaend__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespOTAEnd, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__otaend__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__otaend__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__otaend__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_OTAEnd", + "RpcRespOTAEnd", + "RpcRespOTAEnd", + "", + sizeof(RpcRespOTAEnd), + 1, + rpc__resp__otaend__field_descriptors, + rpc__resp__otaend__field_indices_by_name, + 1, rpc__resp__otaend__number_ranges, + (ProtobufCMessageInit) rpc__resp__otaend__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__otaactivate__field_descriptors NULL +#define rpc__req__otaactivate__field_indices_by_name NULL +#define rpc__req__otaactivate__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__otaactivate__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_OTAActivate", + "RpcReqOTAActivate", + "RpcReqOTAActivate", + "", + sizeof(RpcReqOTAActivate), + 0, + rpc__req__otaactivate__field_descriptors, + rpc__req__otaactivate__field_indices_by_name, + 0, rpc__req__otaactivate__number_ranges, + (ProtobufCMessageInit) rpc__req__otaactivate__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__otaactivate__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespOTAActivate, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__otaactivate__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__otaactivate__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__otaactivate__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_OTAActivate", + "RpcRespOTAActivate", + "RpcRespOTAActivate", + "", + sizeof(RpcRespOTAActivate), + 1, + rpc__resp__otaactivate__field_descriptors, + rpc__resp__otaactivate__field_indices_by_name, + 1, rpc__resp__otaactivate__number_ranges, + (ProtobufCMessageInit) rpc__resp__otaactivate__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__app_get_desc__field_descriptors NULL +#define rpc__req__app_get_desc__field_indices_by_name NULL +#define rpc__req__app_get_desc__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__app_get_desc__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_AppGetDesc", + "RpcReqAppGetDesc", + "RpcReqAppGetDesc", + "", + sizeof(RpcReqAppGetDesc), + 0, + rpc__req__app_get_desc__field_descriptors, + rpc__req__app_get_desc__field_indices_by_name, + 0, rpc__req__app_get_desc__number_ranges, + (ProtobufCMessageInit) rpc__req__app_get_desc__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__app_get_desc__field_descriptors[2] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespAppGetDesc, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "app_desc", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(RpcRespAppGetDesc, app_desc), + &esp_app_desc__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__app_get_desc__field_indices_by_name[] = { + 1, /* field[1] = app_desc */ + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__app_get_desc__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__resp__app_get_desc__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_AppGetDesc", + "RpcRespAppGetDesc", + "RpcRespAppGetDesc", + "", + sizeof(RpcRespAppGetDesc), + 2, + rpc__resp__app_get_desc__field_descriptors, + rpc__resp__app_get_desc__field_indices_by_name, + 1, rpc__resp__app_get_desc__number_ranges, + (ProtobufCMessageInit) rpc__resp__app_get_desc__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__wifi_set_max_tx_power__field_descriptors[1] = +{ + { + "power", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiSetMaxTxPower, power), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__wifi_set_max_tx_power__field_indices_by_name[] = { + 0, /* field[0] = power */ +}; +static const ProtobufCIntRange rpc__req__wifi_set_max_tx_power__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__wifi_set_max_tx_power__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiSetMaxTxPower", + "RpcReqWifiSetMaxTxPower", + "RpcReqWifiSetMaxTxPower", + "", + sizeof(RpcReqWifiSetMaxTxPower), + 1, + rpc__req__wifi_set_max_tx_power__field_descriptors, + rpc__req__wifi_set_max_tx_power__field_indices_by_name, + 1, rpc__req__wifi_set_max_tx_power__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_set_max_tx_power__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_set_max_tx_power__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiSetMaxTxPower, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_set_max_tx_power__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_set_max_tx_power__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_set_max_tx_power__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiSetMaxTxPower", + "RpcRespWifiSetMaxTxPower", + "RpcRespWifiSetMaxTxPower", + "", + sizeof(RpcRespWifiSetMaxTxPower), + 1, + rpc__resp__wifi_set_max_tx_power__field_descriptors, + rpc__resp__wifi_set_max_tx_power__field_indices_by_name, + 1, rpc__resp__wifi_set_max_tx_power__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_set_max_tx_power__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__wifi_get_max_tx_power__field_descriptors NULL +#define rpc__req__wifi_get_max_tx_power__field_indices_by_name NULL +#define rpc__req__wifi_get_max_tx_power__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__wifi_get_max_tx_power__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiGetMaxTxPower", + "RpcReqWifiGetMaxTxPower", + "RpcReqWifiGetMaxTxPower", + "", + sizeof(RpcReqWifiGetMaxTxPower), + 0, + rpc__req__wifi_get_max_tx_power__field_descriptors, + rpc__req__wifi_get_max_tx_power__field_indices_by_name, + 0, rpc__req__wifi_get_max_tx_power__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_get_max_tx_power__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_get_max_tx_power__field_descriptors[2] = +{ + { + "power", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiGetMaxTxPower, power), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiGetMaxTxPower, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_get_max_tx_power__field_indices_by_name[] = { + 0, /* field[0] = power */ + 1, /* field[1] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_get_max_tx_power__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_get_max_tx_power__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiGetMaxTxPower", + "RpcRespWifiGetMaxTxPower", + "RpcRespWifiGetMaxTxPower", + "", + sizeof(RpcRespWifiGetMaxTxPower), + 2, + rpc__resp__wifi_get_max_tx_power__field_descriptors, + rpc__resp__wifi_get_max_tx_power__field_indices_by_name, + 1, rpc__resp__wifi_get_max_tx_power__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_get_max_tx_power__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__config_heartbeat__field_descriptors[2] = +{ + { + "enable", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(RpcReqConfigHeartbeat, enable), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "duration", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqConfigHeartbeat, duration), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__config_heartbeat__field_indices_by_name[] = { + 1, /* field[1] = duration */ + 0, /* field[0] = enable */ +}; +static const ProtobufCIntRange rpc__req__config_heartbeat__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__req__config_heartbeat__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_ConfigHeartbeat", + "RpcReqConfigHeartbeat", + "RpcReqConfigHeartbeat", + "", + sizeof(RpcReqConfigHeartbeat), + 2, + rpc__req__config_heartbeat__field_descriptors, + rpc__req__config_heartbeat__field_indices_by_name, + 1, rpc__req__config_heartbeat__number_ranges, + (ProtobufCMessageInit) rpc__req__config_heartbeat__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__config_heartbeat__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespConfigHeartbeat, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__config_heartbeat__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__config_heartbeat__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__config_heartbeat__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_ConfigHeartbeat", + "RpcRespConfigHeartbeat", + "RpcRespConfigHeartbeat", + "", + sizeof(RpcRespConfigHeartbeat), + 1, + rpc__resp__config_heartbeat__field_descriptors, + rpc__resp__config_heartbeat__field_indices_by_name, + 1, rpc__resp__config_heartbeat__number_ranges, + (ProtobufCMessageInit) rpc__resp__config_heartbeat__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__wifi_init__field_descriptors[1] = +{ + { + "cfg", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiInit, cfg), + &wifi_init_config__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__wifi_init__field_indices_by_name[] = { + 0, /* field[0] = cfg */ +}; +static const ProtobufCIntRange rpc__req__wifi_init__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__wifi_init__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiInit", + "RpcReqWifiInit", + "RpcReqWifiInit", + "", + sizeof(RpcReqWifiInit), + 1, + rpc__req__wifi_init__field_descriptors, + rpc__req__wifi_init__field_indices_by_name, + 1, rpc__req__wifi_init__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_init__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_init__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiInit, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_init__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_init__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_init__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiInit", + "RpcRespWifiInit", + "RpcRespWifiInit", + "", + sizeof(RpcRespWifiInit), + 1, + rpc__resp__wifi_init__field_descriptors, + rpc__resp__wifi_init__field_indices_by_name, + 1, rpc__resp__wifi_init__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_init__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__wifi_deinit__field_descriptors NULL +#define rpc__req__wifi_deinit__field_indices_by_name NULL +#define rpc__req__wifi_deinit__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__wifi_deinit__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiDeinit", + "RpcReqWifiDeinit", + "RpcReqWifiDeinit", + "", + sizeof(RpcReqWifiDeinit), + 0, + rpc__req__wifi_deinit__field_descriptors, + rpc__req__wifi_deinit__field_indices_by_name, + 0, rpc__req__wifi_deinit__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_deinit__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_deinit__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiDeinit, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_deinit__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_deinit__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_deinit__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiDeinit", + "RpcRespWifiDeinit", + "RpcRespWifiDeinit", + "", + sizeof(RpcRespWifiDeinit), + 1, + rpc__resp__wifi_deinit__field_descriptors, + rpc__resp__wifi_deinit__field_indices_by_name, + 1, rpc__resp__wifi_deinit__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_deinit__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__wifi_set_config__field_descriptors[2] = +{ + { + "iface", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiSetConfig, iface), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "cfg", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiSetConfig, cfg), + &wifi_config__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__wifi_set_config__field_indices_by_name[] = { + 1, /* field[1] = cfg */ + 0, /* field[0] = iface */ +}; +static const ProtobufCIntRange rpc__req__wifi_set_config__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__req__wifi_set_config__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiSetConfig", + "RpcReqWifiSetConfig", + "RpcReqWifiSetConfig", + "", + sizeof(RpcReqWifiSetConfig), + 2, + rpc__req__wifi_set_config__field_descriptors, + rpc__req__wifi_set_config__field_indices_by_name, + 1, rpc__req__wifi_set_config__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_set_config__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_set_config__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiSetConfig, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_set_config__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_set_config__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_set_config__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiSetConfig", + "RpcRespWifiSetConfig", + "RpcRespWifiSetConfig", + "", + sizeof(RpcRespWifiSetConfig), + 1, + rpc__resp__wifi_set_config__field_descriptors, + rpc__resp__wifi_set_config__field_indices_by_name, + 1, rpc__resp__wifi_set_config__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_set_config__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__wifi_get_config__field_descriptors[1] = +{ + { + "iface", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiGetConfig, iface), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__wifi_get_config__field_indices_by_name[] = { + 0, /* field[0] = iface */ +}; +static const ProtobufCIntRange rpc__req__wifi_get_config__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__wifi_get_config__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiGetConfig", + "RpcReqWifiGetConfig", + "RpcReqWifiGetConfig", + "", + sizeof(RpcReqWifiGetConfig), + 1, + rpc__req__wifi_get_config__field_descriptors, + rpc__req__wifi_get_config__field_indices_by_name, + 1, rpc__req__wifi_get_config__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_get_config__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_get_config__field_descriptors[3] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiGetConfig, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "iface", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiGetConfig, iface), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "cfg", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiGetConfig, cfg), + &wifi_config__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_get_config__field_indices_by_name[] = { + 2, /* field[2] = cfg */ + 1, /* field[1] = iface */ + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_get_config__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 3 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_get_config__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiGetConfig", + "RpcRespWifiGetConfig", + "RpcRespWifiGetConfig", + "", + sizeof(RpcRespWifiGetConfig), + 3, + rpc__resp__wifi_get_config__field_descriptors, + rpc__resp__wifi_get_config__field_indices_by_name, + 1, rpc__resp__wifi_get_config__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_get_config__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__wifi_connect__field_descriptors NULL +#define rpc__req__wifi_connect__field_indices_by_name NULL +#define rpc__req__wifi_connect__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__wifi_connect__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiConnect", + "RpcReqWifiConnect", + "RpcReqWifiConnect", + "", + sizeof(RpcReqWifiConnect), + 0, + rpc__req__wifi_connect__field_descriptors, + rpc__req__wifi_connect__field_indices_by_name, + 0, rpc__req__wifi_connect__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_connect__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_connect__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiConnect, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_connect__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_connect__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_connect__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiConnect", + "RpcRespWifiConnect", + "RpcRespWifiConnect", + "", + sizeof(RpcRespWifiConnect), + 1, + rpc__resp__wifi_connect__field_descriptors, + rpc__resp__wifi_connect__field_indices_by_name, + 1, rpc__resp__wifi_connect__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_connect__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__wifi_disconnect__field_descriptors NULL +#define rpc__req__wifi_disconnect__field_indices_by_name NULL +#define rpc__req__wifi_disconnect__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__wifi_disconnect__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiDisconnect", + "RpcReqWifiDisconnect", + "RpcReqWifiDisconnect", + "", + sizeof(RpcReqWifiDisconnect), + 0, + rpc__req__wifi_disconnect__field_descriptors, + rpc__req__wifi_disconnect__field_indices_by_name, + 0, rpc__req__wifi_disconnect__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_disconnect__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_disconnect__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiDisconnect, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_disconnect__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_disconnect__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_disconnect__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiDisconnect", + "RpcRespWifiDisconnect", + "RpcRespWifiDisconnect", + "", + sizeof(RpcRespWifiDisconnect), + 1, + rpc__resp__wifi_disconnect__field_descriptors, + rpc__resp__wifi_disconnect__field_indices_by_name, + 1, rpc__resp__wifi_disconnect__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_disconnect__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__wifi_start__field_descriptors NULL +#define rpc__req__wifi_start__field_indices_by_name NULL +#define rpc__req__wifi_start__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__wifi_start__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiStart", + "RpcReqWifiStart", + "RpcReqWifiStart", + "", + sizeof(RpcReqWifiStart), + 0, + rpc__req__wifi_start__field_descriptors, + rpc__req__wifi_start__field_indices_by_name, + 0, rpc__req__wifi_start__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_start__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_start__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiStart, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_start__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_start__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_start__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiStart", + "RpcRespWifiStart", + "RpcRespWifiStart", + "", + sizeof(RpcRespWifiStart), + 1, + rpc__resp__wifi_start__field_descriptors, + rpc__resp__wifi_start__field_indices_by_name, + 1, rpc__resp__wifi_start__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_start__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__wifi_stop__field_descriptors NULL +#define rpc__req__wifi_stop__field_indices_by_name NULL +#define rpc__req__wifi_stop__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__wifi_stop__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiStop", + "RpcReqWifiStop", + "RpcReqWifiStop", + "", + sizeof(RpcReqWifiStop), + 0, + rpc__req__wifi_stop__field_descriptors, + rpc__req__wifi_stop__field_indices_by_name, + 0, rpc__req__wifi_stop__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_stop__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_stop__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiStop, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_stop__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_stop__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_stop__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiStop", + "RpcRespWifiStop", + "RpcRespWifiStop", + "", + sizeof(RpcRespWifiStop), + 1, + rpc__resp__wifi_stop__field_descriptors, + rpc__resp__wifi_stop__field_indices_by_name, + 1, rpc__resp__wifi_stop__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_stop__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__wifi_scan_start__field_descriptors[3] = +{ + { + "config", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiScanStart, config), + &wifi_scan_config__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "block", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiScanStart, block), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "config_set", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiScanStart, config_set), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__wifi_scan_start__field_indices_by_name[] = { + 1, /* field[1] = block */ + 0, /* field[0] = config */ + 2, /* field[2] = config_set */ +}; +static const ProtobufCIntRange rpc__req__wifi_scan_start__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 3 } +}; +const ProtobufCMessageDescriptor rpc__req__wifi_scan_start__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiScanStart", + "RpcReqWifiScanStart", + "RpcReqWifiScanStart", + "", + sizeof(RpcReqWifiScanStart), + 3, + rpc__req__wifi_scan_start__field_descriptors, + rpc__req__wifi_scan_start__field_indices_by_name, + 1, rpc__req__wifi_scan_start__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_scan_start__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_scan_start__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiScanStart, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_scan_start__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_scan_start__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_scan_start__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiScanStart", + "RpcRespWifiScanStart", + "RpcRespWifiScanStart", + "", + sizeof(RpcRespWifiScanStart), + 1, + rpc__resp__wifi_scan_start__field_descriptors, + rpc__resp__wifi_scan_start__field_indices_by_name, + 1, rpc__resp__wifi_scan_start__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_scan_start__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__wifi_scan_stop__field_descriptors NULL +#define rpc__req__wifi_scan_stop__field_indices_by_name NULL +#define rpc__req__wifi_scan_stop__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__wifi_scan_stop__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiScanStop", + "RpcReqWifiScanStop", + "RpcReqWifiScanStop", + "", + sizeof(RpcReqWifiScanStop), + 0, + rpc__req__wifi_scan_stop__field_descriptors, + rpc__req__wifi_scan_stop__field_indices_by_name, + 0, rpc__req__wifi_scan_stop__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_scan_stop__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_scan_stop__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiScanStop, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_scan_stop__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_scan_stop__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_scan_stop__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiScanStop", + "RpcRespWifiScanStop", + "RpcRespWifiScanStop", + "", + sizeof(RpcRespWifiScanStop), + 1, + rpc__resp__wifi_scan_stop__field_descriptors, + rpc__resp__wifi_scan_stop__field_indices_by_name, + 1, rpc__resp__wifi_scan_stop__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_scan_stop__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__wifi_scan_get_ap_num__field_descriptors NULL +#define rpc__req__wifi_scan_get_ap_num__field_indices_by_name NULL +#define rpc__req__wifi_scan_get_ap_num__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__wifi_scan_get_ap_num__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiScanGetApNum", + "RpcReqWifiScanGetApNum", + "RpcReqWifiScanGetApNum", + "", + sizeof(RpcReqWifiScanGetApNum), + 0, + rpc__req__wifi_scan_get_ap_num__field_descriptors, + rpc__req__wifi_scan_get_ap_num__field_indices_by_name, + 0, rpc__req__wifi_scan_get_ap_num__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_scan_get_ap_num__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_scan_get_ap_num__field_descriptors[2] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiScanGetApNum, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "number", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiScanGetApNum, number), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_scan_get_ap_num__field_indices_by_name[] = { + 1, /* field[1] = number */ + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_scan_get_ap_num__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_scan_get_ap_num__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiScanGetApNum", + "RpcRespWifiScanGetApNum", + "RpcRespWifiScanGetApNum", + "", + sizeof(RpcRespWifiScanGetApNum), + 2, + rpc__resp__wifi_scan_get_ap_num__field_descriptors, + rpc__resp__wifi_scan_get_ap_num__field_indices_by_name, + 1, rpc__resp__wifi_scan_get_ap_num__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_scan_get_ap_num__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__wifi_scan_get_ap_records__field_descriptors[1] = +{ + { + "number", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiScanGetApRecords, number), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__wifi_scan_get_ap_records__field_indices_by_name[] = { + 0, /* field[0] = number */ +}; +static const ProtobufCIntRange rpc__req__wifi_scan_get_ap_records__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__wifi_scan_get_ap_records__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiScanGetApRecords", + "RpcReqWifiScanGetApRecords", + "RpcReqWifiScanGetApRecords", + "", + sizeof(RpcReqWifiScanGetApRecords), + 1, + rpc__req__wifi_scan_get_ap_records__field_descriptors, + rpc__req__wifi_scan_get_ap_records__field_indices_by_name, + 1, rpc__req__wifi_scan_get_ap_records__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_scan_get_ap_records__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_scan_get_ap_records__field_descriptors[3] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiScanGetApRecords, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "number", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiScanGetApRecords, number), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "ap_records", + 3, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(RpcRespWifiScanGetApRecords, n_ap_records), + offsetof(RpcRespWifiScanGetApRecords, ap_records), + &wifi_ap_record__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_scan_get_ap_records__field_indices_by_name[] = { + 2, /* field[2] = ap_records */ + 1, /* field[1] = number */ + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_scan_get_ap_records__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 3 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_scan_get_ap_records__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiScanGetApRecords", + "RpcRespWifiScanGetApRecords", + "RpcRespWifiScanGetApRecords", + "", + sizeof(RpcRespWifiScanGetApRecords), + 3, + rpc__resp__wifi_scan_get_ap_records__field_descriptors, + rpc__resp__wifi_scan_get_ap_records__field_indices_by_name, + 1, rpc__resp__wifi_scan_get_ap_records__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_scan_get_ap_records__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__wifi_scan_get_ap_record__field_descriptors NULL +#define rpc__req__wifi_scan_get_ap_record__field_indices_by_name NULL +#define rpc__req__wifi_scan_get_ap_record__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__wifi_scan_get_ap_record__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiScanGetApRecord", + "RpcReqWifiScanGetApRecord", + "RpcReqWifiScanGetApRecord", + "", + sizeof(RpcReqWifiScanGetApRecord), + 0, + rpc__req__wifi_scan_get_ap_record__field_descriptors, + rpc__req__wifi_scan_get_ap_record__field_indices_by_name, + 0, rpc__req__wifi_scan_get_ap_record__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_scan_get_ap_record__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_scan_get_ap_record__field_descriptors[2] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiScanGetApRecord, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "ap_record", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiScanGetApRecord, ap_record), + &wifi_ap_record__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_scan_get_ap_record__field_indices_by_name[] = { + 1, /* field[1] = ap_record */ + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_scan_get_ap_record__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_scan_get_ap_record__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiScanGetApRecord", + "RpcRespWifiScanGetApRecord", + "RpcRespWifiScanGetApRecord", + "", + sizeof(RpcRespWifiScanGetApRecord), + 2, + rpc__resp__wifi_scan_get_ap_record__field_descriptors, + rpc__resp__wifi_scan_get_ap_record__field_indices_by_name, + 1, rpc__resp__wifi_scan_get_ap_record__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_scan_get_ap_record__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__wifi_clear_ap_list__field_descriptors NULL +#define rpc__req__wifi_clear_ap_list__field_indices_by_name NULL +#define rpc__req__wifi_clear_ap_list__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__wifi_clear_ap_list__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiClearApList", + "RpcReqWifiClearApList", + "RpcReqWifiClearApList", + "", + sizeof(RpcReqWifiClearApList), + 0, + rpc__req__wifi_clear_ap_list__field_descriptors, + rpc__req__wifi_clear_ap_list__field_indices_by_name, + 0, rpc__req__wifi_clear_ap_list__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_clear_ap_list__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_clear_ap_list__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiClearApList, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_clear_ap_list__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_clear_ap_list__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_clear_ap_list__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiClearApList", + "RpcRespWifiClearApList", + "RpcRespWifiClearApList", + "", + sizeof(RpcRespWifiClearApList), + 1, + rpc__resp__wifi_clear_ap_list__field_descriptors, + rpc__resp__wifi_clear_ap_list__field_indices_by_name, + 1, rpc__resp__wifi_clear_ap_list__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_clear_ap_list__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__wifi_restore__field_descriptors NULL +#define rpc__req__wifi_restore__field_indices_by_name NULL +#define rpc__req__wifi_restore__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__wifi_restore__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiRestore", + "RpcReqWifiRestore", + "RpcReqWifiRestore", + "", + sizeof(RpcReqWifiRestore), + 0, + rpc__req__wifi_restore__field_descriptors, + rpc__req__wifi_restore__field_indices_by_name, + 0, rpc__req__wifi_restore__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_restore__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_restore__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiRestore, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_restore__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_restore__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_restore__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiRestore", + "RpcRespWifiRestore", + "RpcRespWifiRestore", + "", + sizeof(RpcRespWifiRestore), + 1, + rpc__resp__wifi_restore__field_descriptors, + rpc__resp__wifi_restore__field_indices_by_name, + 1, rpc__resp__wifi_restore__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_restore__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__wifi_clear_fast_connect__field_descriptors NULL +#define rpc__req__wifi_clear_fast_connect__field_indices_by_name NULL +#define rpc__req__wifi_clear_fast_connect__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__wifi_clear_fast_connect__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiClearFastConnect", + "RpcReqWifiClearFastConnect", + "RpcReqWifiClearFastConnect", + "", + sizeof(RpcReqWifiClearFastConnect), + 0, + rpc__req__wifi_clear_fast_connect__field_descriptors, + rpc__req__wifi_clear_fast_connect__field_indices_by_name, + 0, rpc__req__wifi_clear_fast_connect__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_clear_fast_connect__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_clear_fast_connect__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiClearFastConnect, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_clear_fast_connect__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_clear_fast_connect__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_clear_fast_connect__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiClearFastConnect", + "RpcRespWifiClearFastConnect", + "RpcRespWifiClearFastConnect", + "", + sizeof(RpcRespWifiClearFastConnect), + 1, + rpc__resp__wifi_clear_fast_connect__field_descriptors, + rpc__resp__wifi_clear_fast_connect__field_indices_by_name, + 1, rpc__resp__wifi_clear_fast_connect__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_clear_fast_connect__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__wifi_deauth_sta__field_descriptors[1] = +{ + { + "aid", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiDeauthSta, aid), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__wifi_deauth_sta__field_indices_by_name[] = { + 0, /* field[0] = aid */ +}; +static const ProtobufCIntRange rpc__req__wifi_deauth_sta__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__wifi_deauth_sta__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiDeauthSta", + "RpcReqWifiDeauthSta", + "RpcReqWifiDeauthSta", + "", + sizeof(RpcReqWifiDeauthSta), + 1, + rpc__req__wifi_deauth_sta__field_descriptors, + rpc__req__wifi_deauth_sta__field_indices_by_name, + 1, rpc__req__wifi_deauth_sta__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_deauth_sta__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_deauth_sta__field_descriptors[2] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiDeauthSta, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "aid", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiDeauthSta, aid), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_deauth_sta__field_indices_by_name[] = { + 1, /* field[1] = aid */ + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_deauth_sta__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_deauth_sta__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiDeauthSta", + "RpcRespWifiDeauthSta", + "RpcRespWifiDeauthSta", + "", + sizeof(RpcRespWifiDeauthSta), + 2, + rpc__resp__wifi_deauth_sta__field_descriptors, + rpc__resp__wifi_deauth_sta__field_indices_by_name, + 1, rpc__resp__wifi_deauth_sta__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_deauth_sta__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__wifi_sta_get_ap_info__field_descriptors NULL +#define rpc__req__wifi_sta_get_ap_info__field_indices_by_name NULL +#define rpc__req__wifi_sta_get_ap_info__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__wifi_sta_get_ap_info__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiStaGetApInfo", + "RpcReqWifiStaGetApInfo", + "RpcReqWifiStaGetApInfo", + "", + sizeof(RpcReqWifiStaGetApInfo), + 0, + rpc__req__wifi_sta_get_ap_info__field_descriptors, + rpc__req__wifi_sta_get_ap_info__field_indices_by_name, + 0, rpc__req__wifi_sta_get_ap_info__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_sta_get_ap_info__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_sta_get_ap_info__field_descriptors[2] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiStaGetApInfo, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "ap_record", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiStaGetApInfo, ap_record), + &wifi_ap_record__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_sta_get_ap_info__field_indices_by_name[] = { + 1, /* field[1] = ap_record */ + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_sta_get_ap_info__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_sta_get_ap_info__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiStaGetApInfo", + "RpcRespWifiStaGetApInfo", + "RpcRespWifiStaGetApInfo", + "", + sizeof(RpcRespWifiStaGetApInfo), + 2, + rpc__resp__wifi_sta_get_ap_info__field_descriptors, + rpc__resp__wifi_sta_get_ap_info__field_indices_by_name, + 1, rpc__resp__wifi_sta_get_ap_info__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_sta_get_ap_info__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__wifi_set_protocol__field_descriptors[2] = +{ + { + "ifx", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiSetProtocol, ifx), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "protocol_bitmap", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiSetProtocol, protocol_bitmap), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__wifi_set_protocol__field_indices_by_name[] = { + 0, /* field[0] = ifx */ + 1, /* field[1] = protocol_bitmap */ +}; +static const ProtobufCIntRange rpc__req__wifi_set_protocol__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__req__wifi_set_protocol__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiSetProtocol", + "RpcReqWifiSetProtocol", + "RpcReqWifiSetProtocol", + "", + sizeof(RpcReqWifiSetProtocol), + 2, + rpc__req__wifi_set_protocol__field_descriptors, + rpc__req__wifi_set_protocol__field_indices_by_name, + 1, rpc__req__wifi_set_protocol__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_set_protocol__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_set_protocol__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiSetProtocol, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_set_protocol__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_set_protocol__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_set_protocol__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiSetProtocol", + "RpcRespWifiSetProtocol", + "RpcRespWifiSetProtocol", + "", + sizeof(RpcRespWifiSetProtocol), + 1, + rpc__resp__wifi_set_protocol__field_descriptors, + rpc__resp__wifi_set_protocol__field_indices_by_name, + 1, rpc__resp__wifi_set_protocol__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_set_protocol__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__wifi_get_protocol__field_descriptors[1] = +{ + { + "ifx", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiGetProtocol, ifx), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__wifi_get_protocol__field_indices_by_name[] = { + 0, /* field[0] = ifx */ +}; +static const ProtobufCIntRange rpc__req__wifi_get_protocol__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__wifi_get_protocol__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiGetProtocol", + "RpcReqWifiGetProtocol", + "RpcReqWifiGetProtocol", + "", + sizeof(RpcReqWifiGetProtocol), + 1, + rpc__req__wifi_get_protocol__field_descriptors, + rpc__req__wifi_get_protocol__field_indices_by_name, + 1, rpc__req__wifi_get_protocol__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_get_protocol__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_get_protocol__field_descriptors[2] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiGetProtocol, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "protocol_bitmap", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiGetProtocol, protocol_bitmap), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_get_protocol__field_indices_by_name[] = { + 1, /* field[1] = protocol_bitmap */ + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_get_protocol__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_get_protocol__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiGetProtocol", + "RpcRespWifiGetProtocol", + "RpcRespWifiGetProtocol", + "", + sizeof(RpcRespWifiGetProtocol), + 2, + rpc__resp__wifi_get_protocol__field_descriptors, + rpc__resp__wifi_get_protocol__field_indices_by_name, + 1, rpc__resp__wifi_get_protocol__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_get_protocol__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__wifi_set_bandwidth__field_descriptors[2] = +{ + { + "ifx", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiSetBandwidth, ifx), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "bw", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiSetBandwidth, bw), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__wifi_set_bandwidth__field_indices_by_name[] = { + 1, /* field[1] = bw */ + 0, /* field[0] = ifx */ +}; +static const ProtobufCIntRange rpc__req__wifi_set_bandwidth__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__req__wifi_set_bandwidth__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiSetBandwidth", + "RpcReqWifiSetBandwidth", + "RpcReqWifiSetBandwidth", + "", + sizeof(RpcReqWifiSetBandwidth), + 2, + rpc__req__wifi_set_bandwidth__field_descriptors, + rpc__req__wifi_set_bandwidth__field_indices_by_name, + 1, rpc__req__wifi_set_bandwidth__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_set_bandwidth__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_set_bandwidth__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiSetBandwidth, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_set_bandwidth__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_set_bandwidth__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_set_bandwidth__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiSetBandwidth", + "RpcRespWifiSetBandwidth", + "RpcRespWifiSetBandwidth", + "", + sizeof(RpcRespWifiSetBandwidth), + 1, + rpc__resp__wifi_set_bandwidth__field_descriptors, + rpc__resp__wifi_set_bandwidth__field_indices_by_name, + 1, rpc__resp__wifi_set_bandwidth__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_set_bandwidth__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__wifi_get_bandwidth__field_descriptors[1] = +{ + { + "ifx", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiGetBandwidth, ifx), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__wifi_get_bandwidth__field_indices_by_name[] = { + 0, /* field[0] = ifx */ +}; +static const ProtobufCIntRange rpc__req__wifi_get_bandwidth__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__wifi_get_bandwidth__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiGetBandwidth", + "RpcReqWifiGetBandwidth", + "RpcReqWifiGetBandwidth", + "", + sizeof(RpcReqWifiGetBandwidth), + 1, + rpc__req__wifi_get_bandwidth__field_descriptors, + rpc__req__wifi_get_bandwidth__field_indices_by_name, + 1, rpc__req__wifi_get_bandwidth__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_get_bandwidth__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_get_bandwidth__field_descriptors[2] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiGetBandwidth, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "bw", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiGetBandwidth, bw), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_get_bandwidth__field_indices_by_name[] = { + 1, /* field[1] = bw */ + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_get_bandwidth__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_get_bandwidth__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiGetBandwidth", + "RpcRespWifiGetBandwidth", + "RpcRespWifiGetBandwidth", + "", + sizeof(RpcRespWifiGetBandwidth), + 2, + rpc__resp__wifi_get_bandwidth__field_descriptors, + rpc__resp__wifi_get_bandwidth__field_indices_by_name, + 1, rpc__resp__wifi_get_bandwidth__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_get_bandwidth__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__wifi_set_channel__field_descriptors[2] = +{ + { + "primary", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiSetChannel, primary), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "second", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiSetChannel, second), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__wifi_set_channel__field_indices_by_name[] = { + 0, /* field[0] = primary */ + 1, /* field[1] = second */ +}; +static const ProtobufCIntRange rpc__req__wifi_set_channel__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__req__wifi_set_channel__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiSetChannel", + "RpcReqWifiSetChannel", + "RpcReqWifiSetChannel", + "", + sizeof(RpcReqWifiSetChannel), + 2, + rpc__req__wifi_set_channel__field_descriptors, + rpc__req__wifi_set_channel__field_indices_by_name, + 1, rpc__req__wifi_set_channel__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_set_channel__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_set_channel__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiSetChannel, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_set_channel__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_set_channel__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_set_channel__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiSetChannel", + "RpcRespWifiSetChannel", + "RpcRespWifiSetChannel", + "", + sizeof(RpcRespWifiSetChannel), + 1, + rpc__resp__wifi_set_channel__field_descriptors, + rpc__resp__wifi_set_channel__field_indices_by_name, + 1, rpc__resp__wifi_set_channel__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_set_channel__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__wifi_get_channel__field_descriptors NULL +#define rpc__req__wifi_get_channel__field_indices_by_name NULL +#define rpc__req__wifi_get_channel__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__wifi_get_channel__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiGetChannel", + "RpcReqWifiGetChannel", + "RpcReqWifiGetChannel", + "", + sizeof(RpcReqWifiGetChannel), + 0, + rpc__req__wifi_get_channel__field_descriptors, + rpc__req__wifi_get_channel__field_indices_by_name, + 0, rpc__req__wifi_get_channel__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_get_channel__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_get_channel__field_descriptors[3] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiGetChannel, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "primary", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiGetChannel, primary), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "second", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiGetChannel, second), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_get_channel__field_indices_by_name[] = { + 1, /* field[1] = primary */ + 0, /* field[0] = resp */ + 2, /* field[2] = second */ +}; +static const ProtobufCIntRange rpc__resp__wifi_get_channel__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 3 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_get_channel__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiGetChannel", + "RpcRespWifiGetChannel", + "RpcRespWifiGetChannel", + "", + sizeof(RpcRespWifiGetChannel), + 3, + rpc__resp__wifi_get_channel__field_descriptors, + rpc__resp__wifi_get_channel__field_indices_by_name, + 1, rpc__resp__wifi_get_channel__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_get_channel__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__wifi_set_storage__field_descriptors[1] = +{ + { + "storage", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiSetStorage, storage), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__wifi_set_storage__field_indices_by_name[] = { + 0, /* field[0] = storage */ +}; +static const ProtobufCIntRange rpc__req__wifi_set_storage__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__wifi_set_storage__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiSetStorage", + "RpcReqWifiSetStorage", + "RpcReqWifiSetStorage", + "", + sizeof(RpcReqWifiSetStorage), + 1, + rpc__req__wifi_set_storage__field_descriptors, + rpc__req__wifi_set_storage__field_indices_by_name, + 1, rpc__req__wifi_set_storage__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_set_storage__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_set_storage__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiSetStorage, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_set_storage__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_set_storage__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_set_storage__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiSetStorage", + "RpcRespWifiSetStorage", + "RpcRespWifiSetStorage", + "", + sizeof(RpcRespWifiSetStorage), + 1, + rpc__resp__wifi_set_storage__field_descriptors, + rpc__resp__wifi_set_storage__field_indices_by_name, + 1, rpc__resp__wifi_set_storage__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_set_storage__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__wifi_set_country_code__field_descriptors[2] = +{ + { + "country", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiSetCountryCode, country), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "ieee80211d_enabled", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiSetCountryCode, ieee80211d_enabled), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__wifi_set_country_code__field_indices_by_name[] = { + 0, /* field[0] = country */ + 1, /* field[1] = ieee80211d_enabled */ +}; +static const ProtobufCIntRange rpc__req__wifi_set_country_code__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__req__wifi_set_country_code__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiSetCountryCode", + "RpcReqWifiSetCountryCode", + "RpcReqWifiSetCountryCode", + "", + sizeof(RpcReqWifiSetCountryCode), + 2, + rpc__req__wifi_set_country_code__field_descriptors, + rpc__req__wifi_set_country_code__field_indices_by_name, + 1, rpc__req__wifi_set_country_code__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_set_country_code__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_set_country_code__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiSetCountryCode, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_set_country_code__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_set_country_code__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_set_country_code__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiSetCountryCode", + "RpcRespWifiSetCountryCode", + "RpcRespWifiSetCountryCode", + "", + sizeof(RpcRespWifiSetCountryCode), + 1, + rpc__resp__wifi_set_country_code__field_descriptors, + rpc__resp__wifi_set_country_code__field_indices_by_name, + 1, rpc__resp__wifi_set_country_code__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_set_country_code__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__wifi_get_country_code__field_descriptors NULL +#define rpc__req__wifi_get_country_code__field_indices_by_name NULL +#define rpc__req__wifi_get_country_code__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__wifi_get_country_code__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiGetCountryCode", + "RpcReqWifiGetCountryCode", + "RpcReqWifiGetCountryCode", + "", + sizeof(RpcReqWifiGetCountryCode), + 0, + rpc__req__wifi_get_country_code__field_descriptors, + rpc__req__wifi_get_country_code__field_indices_by_name, + 0, rpc__req__wifi_get_country_code__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_get_country_code__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_get_country_code__field_descriptors[2] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiGetCountryCode, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "country", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiGetCountryCode, country), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_get_country_code__field_indices_by_name[] = { + 1, /* field[1] = country */ + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_get_country_code__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_get_country_code__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiGetCountryCode", + "RpcRespWifiGetCountryCode", + "RpcRespWifiGetCountryCode", + "", + sizeof(RpcRespWifiGetCountryCode), + 2, + rpc__resp__wifi_get_country_code__field_descriptors, + rpc__resp__wifi_get_country_code__field_indices_by_name, + 1, rpc__resp__wifi_get_country_code__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_get_country_code__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__wifi_set_country__field_descriptors[1] = +{ + { + "country", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiSetCountry, country), + &wifi_country__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__wifi_set_country__field_indices_by_name[] = { + 0, /* field[0] = country */ +}; +static const ProtobufCIntRange rpc__req__wifi_set_country__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__wifi_set_country__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiSetCountry", + "RpcReqWifiSetCountry", + "RpcReqWifiSetCountry", + "", + sizeof(RpcReqWifiSetCountry), + 1, + rpc__req__wifi_set_country__field_descriptors, + rpc__req__wifi_set_country__field_indices_by_name, + 1, rpc__req__wifi_set_country__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_set_country__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_set_country__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiSetCountry, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_set_country__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_set_country__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_set_country__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiSetCountry", + "RpcRespWifiSetCountry", + "RpcRespWifiSetCountry", + "", + sizeof(RpcRespWifiSetCountry), + 1, + rpc__resp__wifi_set_country__field_descriptors, + rpc__resp__wifi_set_country__field_indices_by_name, + 1, rpc__resp__wifi_set_country__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_set_country__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__wifi_get_country__field_descriptors NULL +#define rpc__req__wifi_get_country__field_indices_by_name NULL +#define rpc__req__wifi_get_country__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__wifi_get_country__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiGetCountry", + "RpcReqWifiGetCountry", + "RpcReqWifiGetCountry", + "", + sizeof(RpcReqWifiGetCountry), + 0, + rpc__req__wifi_get_country__field_descriptors, + rpc__req__wifi_get_country__field_indices_by_name, + 0, rpc__req__wifi_get_country__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_get_country__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_get_country__field_descriptors[2] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiGetCountry, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "country", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiGetCountry, country), + &wifi_country__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_get_country__field_indices_by_name[] = { + 1, /* field[1] = country */ + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_get_country__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_get_country__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiGetCountry", + "RpcRespWifiGetCountry", + "RpcRespWifiGetCountry", + "", + sizeof(RpcRespWifiGetCountry), + 2, + rpc__resp__wifi_get_country__field_descriptors, + rpc__resp__wifi_get_country__field_indices_by_name, + 1, rpc__resp__wifi_get_country__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_get_country__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__wifi_ap_get_sta_list__field_descriptors NULL +#define rpc__req__wifi_ap_get_sta_list__field_indices_by_name NULL +#define rpc__req__wifi_ap_get_sta_list__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__wifi_ap_get_sta_list__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiApGetStaList", + "RpcReqWifiApGetStaList", + "RpcReqWifiApGetStaList", + "", + sizeof(RpcReqWifiApGetStaList), + 0, + rpc__req__wifi_ap_get_sta_list__field_descriptors, + rpc__req__wifi_ap_get_sta_list__field_indices_by_name, + 0, rpc__req__wifi_ap_get_sta_list__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_ap_get_sta_list__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_ap_get_sta_list__field_descriptors[2] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiApGetStaList, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "sta_list", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiApGetStaList, sta_list), + &wifi_sta_list__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_ap_get_sta_list__field_indices_by_name[] = { + 0, /* field[0] = resp */ + 1, /* field[1] = sta_list */ +}; +static const ProtobufCIntRange rpc__resp__wifi_ap_get_sta_list__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_ap_get_sta_list__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiApGetStaList", + "RpcRespWifiApGetStaList", + "RpcRespWifiApGetStaList", + "", + sizeof(RpcRespWifiApGetStaList), + 2, + rpc__resp__wifi_ap_get_sta_list__field_descriptors, + rpc__resp__wifi_ap_get_sta_list__field_indices_by_name, + 1, rpc__resp__wifi_ap_get_sta_list__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_ap_get_sta_list__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__wifi_ap_get_sta_aid__field_descriptors[1] = +{ + { + "mac", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiApGetStaAid, mac), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__wifi_ap_get_sta_aid__field_indices_by_name[] = { + 0, /* field[0] = mac */ +}; +static const ProtobufCIntRange rpc__req__wifi_ap_get_sta_aid__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__wifi_ap_get_sta_aid__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiApGetStaAid", + "RpcReqWifiApGetStaAid", + "RpcReqWifiApGetStaAid", + "", + sizeof(RpcReqWifiApGetStaAid), + 1, + rpc__req__wifi_ap_get_sta_aid__field_descriptors, + rpc__req__wifi_ap_get_sta_aid__field_indices_by_name, + 1, rpc__req__wifi_ap_get_sta_aid__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_ap_get_sta_aid__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__wifi_sta_get_negotiated_phymode__field_descriptors NULL +#define rpc__req__wifi_sta_get_negotiated_phymode__field_indices_by_name NULL +#define rpc__req__wifi_sta_get_negotiated_phymode__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__wifi_sta_get_negotiated_phymode__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiStaGetNegotiatedPhymode", + "RpcReqWifiStaGetNegotiatedPhymode", + "RpcReqWifiStaGetNegotiatedPhymode", + "", + sizeof(RpcReqWifiStaGetNegotiatedPhymode), + 0, + rpc__req__wifi_sta_get_negotiated_phymode__field_descriptors, + rpc__req__wifi_sta_get_negotiated_phymode__field_indices_by_name, + 0, rpc__req__wifi_sta_get_negotiated_phymode__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_sta_get_negotiated_phymode__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_sta_get_negotiated_phymode__field_descriptors[2] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiStaGetNegotiatedPhymode, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "phymode", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiStaGetNegotiatedPhymode, phymode), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_sta_get_negotiated_phymode__field_indices_by_name[] = { + 1, /* field[1] = phymode */ + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_sta_get_negotiated_phymode__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_sta_get_negotiated_phymode__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiStaGetNegotiatedPhymode", + "RpcRespWifiStaGetNegotiatedPhymode", + "RpcRespWifiStaGetNegotiatedPhymode", + "", + sizeof(RpcRespWifiStaGetNegotiatedPhymode), + 2, + rpc__resp__wifi_sta_get_negotiated_phymode__field_descriptors, + rpc__resp__wifi_sta_get_negotiated_phymode__field_indices_by_name, + 1, rpc__resp__wifi_sta_get_negotiated_phymode__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_sta_get_negotiated_phymode__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_ap_get_sta_aid__field_descriptors[2] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiApGetStaAid, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "aid", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiApGetStaAid, aid), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_ap_get_sta_aid__field_indices_by_name[] = { + 1, /* field[1] = aid */ + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_ap_get_sta_aid__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_ap_get_sta_aid__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiApGetStaAid", + "RpcRespWifiApGetStaAid", + "RpcRespWifiApGetStaAid", + "", + sizeof(RpcRespWifiApGetStaAid), + 2, + rpc__resp__wifi_ap_get_sta_aid__field_descriptors, + rpc__resp__wifi_ap_get_sta_aid__field_indices_by_name, + 1, rpc__resp__wifi_ap_get_sta_aid__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_ap_get_sta_aid__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__wifi_sta_get_rssi__field_descriptors NULL +#define rpc__req__wifi_sta_get_rssi__field_indices_by_name NULL +#define rpc__req__wifi_sta_get_rssi__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__wifi_sta_get_rssi__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiStaGetRssi", + "RpcReqWifiStaGetRssi", + "RpcReqWifiStaGetRssi", + "", + sizeof(RpcReqWifiStaGetRssi), + 0, + rpc__req__wifi_sta_get_rssi__field_descriptors, + rpc__req__wifi_sta_get_rssi__field_indices_by_name, + 0, rpc__req__wifi_sta_get_rssi__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_sta_get_rssi__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_sta_get_rssi__field_descriptors[2] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiStaGetRssi, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "rssi", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiStaGetRssi, rssi), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_sta_get_rssi__field_indices_by_name[] = { + 0, /* field[0] = resp */ + 1, /* field[1] = rssi */ +}; +static const ProtobufCIntRange rpc__resp__wifi_sta_get_rssi__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_sta_get_rssi__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiStaGetRssi", + "RpcRespWifiStaGetRssi", + "RpcRespWifiStaGetRssi", + "", + sizeof(RpcRespWifiStaGetRssi), + 2, + rpc__resp__wifi_sta_get_rssi__field_descriptors, + rpc__resp__wifi_sta_get_rssi__field_indices_by_name, + 1, rpc__resp__wifi_sta_get_rssi__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_sta_get_rssi__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__wifi_scan_params__field_descriptors[3] = +{ + { + "cmd", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiScanParams, cmd), + &rpc_cmd__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "config", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiScanParams, config), + &wifi_scan_default_params__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "is_config_null", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiScanParams, is_config_null), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__wifi_scan_params__field_indices_by_name[] = { + 0, /* field[0] = cmd */ + 1, /* field[1] = config */ + 2, /* field[2] = is_config_null */ +}; +static const ProtobufCIntRange rpc__req__wifi_scan_params__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 3 } +}; +const ProtobufCMessageDescriptor rpc__req__wifi_scan_params__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiScanParams", + "RpcReqWifiScanParams", + "RpcReqWifiScanParams", + "", + sizeof(RpcReqWifiScanParams), + 3, + rpc__req__wifi_scan_params__field_descriptors, + rpc__req__wifi_scan_params__field_indices_by_name, + 1, rpc__req__wifi_scan_params__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_scan_params__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_scan_params__field_descriptors[2] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiScanParams, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "config", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiScanParams, config), + &wifi_scan_default_params__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_scan_params__field_indices_by_name[] = { + 1, /* field[1] = config */ + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_scan_params__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_scan_params__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiScanParams", + "RpcRespWifiScanParams", + "RpcRespWifiScanParams", + "", + sizeof(RpcRespWifiScanParams), + 2, + rpc__resp__wifi_scan_params__field_descriptors, + rpc__resp__wifi_scan_params__field_indices_by_name, + 1, rpc__resp__wifi_scan_params__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_scan_params__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__wifi_sta_get_aid__field_descriptors NULL +#define rpc__req__wifi_sta_get_aid__field_indices_by_name NULL +#define rpc__req__wifi_sta_get_aid__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__wifi_sta_get_aid__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiStaGetAid", + "RpcReqWifiStaGetAid", + "RpcReqWifiStaGetAid", + "", + sizeof(RpcReqWifiStaGetAid), + 0, + rpc__req__wifi_sta_get_aid__field_descriptors, + rpc__req__wifi_sta_get_aid__field_indices_by_name, + 0, rpc__req__wifi_sta_get_aid__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_sta_get_aid__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_sta_get_aid__field_descriptors[2] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiStaGetAid, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "aid", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiStaGetAid, aid), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_sta_get_aid__field_indices_by_name[] = { + 1, /* field[1] = aid */ + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_sta_get_aid__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_sta_get_aid__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiStaGetAid", + "RpcRespWifiStaGetAid", + "RpcRespWifiStaGetAid", + "", + sizeof(RpcRespWifiStaGetAid), + 2, + rpc__resp__wifi_sta_get_aid__field_descriptors, + rpc__resp__wifi_sta_get_aid__field_indices_by_name, + 1, rpc__resp__wifi_sta_get_aid__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_sta_get_aid__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__wifi_set_protocols__field_descriptors[2] = +{ + { + "ifx", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiSetProtocols, ifx), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "protocols", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiSetProtocols, protocols), + &wifi_protocols__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__wifi_set_protocols__field_indices_by_name[] = { + 0, /* field[0] = ifx */ + 1, /* field[1] = protocols */ +}; +static const ProtobufCIntRange rpc__req__wifi_set_protocols__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__req__wifi_set_protocols__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiSetProtocols", + "RpcReqWifiSetProtocols", + "RpcReqWifiSetProtocols", + "", + sizeof(RpcReqWifiSetProtocols), + 2, + rpc__req__wifi_set_protocols__field_descriptors, + rpc__req__wifi_set_protocols__field_indices_by_name, + 1, rpc__req__wifi_set_protocols__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_set_protocols__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_set_protocols__field_descriptors[2] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiSetProtocols, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "ifx", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiSetProtocols, ifx), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_set_protocols__field_indices_by_name[] = { + 1, /* field[1] = ifx */ + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_set_protocols__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_set_protocols__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiSetProtocols", + "RpcRespWifiSetProtocols", + "RpcRespWifiSetProtocols", + "", + sizeof(RpcRespWifiSetProtocols), + 2, + rpc__resp__wifi_set_protocols__field_descriptors, + rpc__resp__wifi_set_protocols__field_indices_by_name, + 1, rpc__resp__wifi_set_protocols__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_set_protocols__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__wifi_get_protocols__field_descriptors[1] = +{ + { + "ifx", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiGetProtocols, ifx), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__wifi_get_protocols__field_indices_by_name[] = { + 0, /* field[0] = ifx */ +}; +static const ProtobufCIntRange rpc__req__wifi_get_protocols__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__wifi_get_protocols__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiGetProtocols", + "RpcReqWifiGetProtocols", + "RpcReqWifiGetProtocols", + "", + sizeof(RpcReqWifiGetProtocols), + 1, + rpc__req__wifi_get_protocols__field_descriptors, + rpc__req__wifi_get_protocols__field_indices_by_name, + 1, rpc__req__wifi_get_protocols__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_get_protocols__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_get_protocols__field_descriptors[3] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiGetProtocols, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "ifx", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiGetProtocols, ifx), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "protocols", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiGetProtocols, protocols), + &wifi_protocols__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_get_protocols__field_indices_by_name[] = { + 1, /* field[1] = ifx */ + 2, /* field[2] = protocols */ + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_get_protocols__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 3 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_get_protocols__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiGetProtocols", + "RpcRespWifiGetProtocols", + "RpcRespWifiGetProtocols", + "", + sizeof(RpcRespWifiGetProtocols), + 3, + rpc__resp__wifi_get_protocols__field_descriptors, + rpc__resp__wifi_get_protocols__field_indices_by_name, + 1, rpc__resp__wifi_get_protocols__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_get_protocols__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__wifi_set_bandwidths__field_descriptors[2] = +{ + { + "ifx", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiSetBandwidths, ifx), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "bandwidths", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiSetBandwidths, bandwidths), + &wifi_bandwidths__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__wifi_set_bandwidths__field_indices_by_name[] = { + 1, /* field[1] = bandwidths */ + 0, /* field[0] = ifx */ +}; +static const ProtobufCIntRange rpc__req__wifi_set_bandwidths__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__req__wifi_set_bandwidths__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiSetBandwidths", + "RpcReqWifiSetBandwidths", + "RpcReqWifiSetBandwidths", + "", + sizeof(RpcReqWifiSetBandwidths), + 2, + rpc__req__wifi_set_bandwidths__field_descriptors, + rpc__req__wifi_set_bandwidths__field_indices_by_name, + 1, rpc__req__wifi_set_bandwidths__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_set_bandwidths__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_set_bandwidths__field_descriptors[2] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiSetBandwidths, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "ifx", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiSetBandwidths, ifx), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_set_bandwidths__field_indices_by_name[] = { + 1, /* field[1] = ifx */ + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_set_bandwidths__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_set_bandwidths__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiSetBandwidths", + "RpcRespWifiSetBandwidths", + "RpcRespWifiSetBandwidths", + "", + sizeof(RpcRespWifiSetBandwidths), + 2, + rpc__resp__wifi_set_bandwidths__field_descriptors, + rpc__resp__wifi_set_bandwidths__field_indices_by_name, + 1, rpc__resp__wifi_set_bandwidths__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_set_bandwidths__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__wifi_get_bandwidths__field_descriptors[1] = +{ + { + "ifx", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiGetBandwidths, ifx), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__wifi_get_bandwidths__field_indices_by_name[] = { + 0, /* field[0] = ifx */ +}; +static const ProtobufCIntRange rpc__req__wifi_get_bandwidths__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__wifi_get_bandwidths__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiGetBandwidths", + "RpcReqWifiGetBandwidths", + "RpcReqWifiGetBandwidths", + "", + sizeof(RpcReqWifiGetBandwidths), + 1, + rpc__req__wifi_get_bandwidths__field_descriptors, + rpc__req__wifi_get_bandwidths__field_indices_by_name, + 1, rpc__req__wifi_get_bandwidths__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_get_bandwidths__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_get_bandwidths__field_descriptors[3] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiGetBandwidths, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "ifx", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiGetBandwidths, ifx), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "bandwidths", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiGetBandwidths, bandwidths), + &wifi_bandwidths__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_get_bandwidths__field_indices_by_name[] = { + 2, /* field[2] = bandwidths */ + 1, /* field[1] = ifx */ + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_get_bandwidths__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 3 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_get_bandwidths__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiGetBandwidths", + "RpcRespWifiGetBandwidths", + "RpcRespWifiGetBandwidths", + "", + sizeof(RpcRespWifiGetBandwidths), + 3, + rpc__resp__wifi_get_bandwidths__field_descriptors, + rpc__resp__wifi_get_bandwidths__field_indices_by_name, + 1, rpc__resp__wifi_get_bandwidths__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_get_bandwidths__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__wifi_set_band__field_descriptors[1] = +{ + { + "band", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiSetBand, band), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__wifi_set_band__field_indices_by_name[] = { + 0, /* field[0] = band */ +}; +static const ProtobufCIntRange rpc__req__wifi_set_band__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__wifi_set_band__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiSetBand", + "RpcReqWifiSetBand", + "RpcReqWifiSetBand", + "", + sizeof(RpcReqWifiSetBand), + 1, + rpc__req__wifi_set_band__field_descriptors, + rpc__req__wifi_set_band__field_indices_by_name, + 1, rpc__req__wifi_set_band__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_set_band__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_set_band__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiSetBand, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_set_band__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_set_band__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_set_band__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiSetBand", + "RpcRespWifiSetBand", + "RpcRespWifiSetBand", + "", + sizeof(RpcRespWifiSetBand), + 1, + rpc__resp__wifi_set_band__field_descriptors, + rpc__resp__wifi_set_band__field_indices_by_name, + 1, rpc__resp__wifi_set_band__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_set_band__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__wifi_get_band__field_descriptors NULL +#define rpc__req__wifi_get_band__field_indices_by_name NULL +#define rpc__req__wifi_get_band__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__wifi_get_band__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiGetBand", + "RpcReqWifiGetBand", + "RpcReqWifiGetBand", + "", + sizeof(RpcReqWifiGetBand), + 0, + rpc__req__wifi_get_band__field_descriptors, + rpc__req__wifi_get_band__field_indices_by_name, + 0, rpc__req__wifi_get_band__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_get_band__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_get_band__field_descriptors[2] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiGetBand, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "band", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiGetBand, band), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_get_band__field_indices_by_name[] = { + 1, /* field[1] = band */ + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_get_band__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_get_band__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiGetBand", + "RpcRespWifiGetBand", + "RpcRespWifiGetBand", + "", + sizeof(RpcRespWifiGetBand), + 2, + rpc__resp__wifi_get_band__field_descriptors, + rpc__resp__wifi_get_band__field_indices_by_name, + 1, rpc__resp__wifi_get_band__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_get_band__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__wifi_set_band_mode__field_descriptors[1] = +{ + { + "bandmode", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiSetBandMode, bandmode), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__wifi_set_band_mode__field_indices_by_name[] = { + 0, /* field[0] = bandmode */ +}; +static const ProtobufCIntRange rpc__req__wifi_set_band_mode__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__wifi_set_band_mode__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiSetBandMode", + "RpcReqWifiSetBandMode", + "RpcReqWifiSetBandMode", + "", + sizeof(RpcReqWifiSetBandMode), + 1, + rpc__req__wifi_set_band_mode__field_descriptors, + rpc__req__wifi_set_band_mode__field_indices_by_name, + 1, rpc__req__wifi_set_band_mode__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_set_band_mode__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_set_band_mode__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiSetBandMode, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_set_band_mode__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_set_band_mode__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_set_band_mode__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiSetBandMode", + "RpcRespWifiSetBandMode", + "RpcRespWifiSetBandMode", + "", + sizeof(RpcRespWifiSetBandMode), + 1, + rpc__resp__wifi_set_band_mode__field_descriptors, + rpc__resp__wifi_set_band_mode__field_indices_by_name, + 1, rpc__resp__wifi_set_band_mode__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_set_band_mode__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__wifi_get_band_mode__field_descriptors NULL +#define rpc__req__wifi_get_band_mode__field_indices_by_name NULL +#define rpc__req__wifi_get_band_mode__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__wifi_get_band_mode__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiGetBandMode", + "RpcReqWifiGetBandMode", + "RpcReqWifiGetBandMode", + "", + sizeof(RpcReqWifiGetBandMode), + 0, + rpc__req__wifi_get_band_mode__field_descriptors, + rpc__req__wifi_get_band_mode__field_indices_by_name, + 0, rpc__req__wifi_get_band_mode__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_get_band_mode__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_get_band_mode__field_descriptors[2] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiGetBandMode, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "bandmode", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiGetBandMode, bandmode), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_get_band_mode__field_indices_by_name[] = { + 1, /* field[1] = bandmode */ + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_get_band_mode__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_get_band_mode__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiGetBandMode", + "RpcRespWifiGetBandMode", + "RpcRespWifiGetBandMode", + "", + sizeof(RpcRespWifiGetBandMode), + 2, + rpc__resp__wifi_get_band_mode__field_descriptors, + rpc__resp__wifi_get_band_mode__field_indices_by_name, + 1, rpc__resp__wifi_get_band_mode__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_get_band_mode__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__wifi_set_inactive_time__field_descriptors[2] = +{ + { + "ifx", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiSetInactiveTime, ifx), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "sec", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiSetInactiveTime, sec), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__wifi_set_inactive_time__field_indices_by_name[] = { + 0, /* field[0] = ifx */ + 1, /* field[1] = sec */ +}; +static const ProtobufCIntRange rpc__req__wifi_set_inactive_time__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__req__wifi_set_inactive_time__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiSetInactiveTime", + "RpcReqWifiSetInactiveTime", + "RpcReqWifiSetInactiveTime", + "", + sizeof(RpcReqWifiSetInactiveTime), + 2, + rpc__req__wifi_set_inactive_time__field_descriptors, + rpc__req__wifi_set_inactive_time__field_indices_by_name, + 1, rpc__req__wifi_set_inactive_time__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_set_inactive_time__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_set_inactive_time__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiSetInactiveTime, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_set_inactive_time__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_set_inactive_time__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_set_inactive_time__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiSetInactiveTime", + "RpcRespWifiSetInactiveTime", + "RpcRespWifiSetInactiveTime", + "", + sizeof(RpcRespWifiSetInactiveTime), + 1, + rpc__resp__wifi_set_inactive_time__field_descriptors, + rpc__resp__wifi_set_inactive_time__field_indices_by_name, + 1, rpc__resp__wifi_set_inactive_time__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_set_inactive_time__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__wifi_get_inactive_time__field_descriptors[1] = +{ + { + "ifx", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiGetInactiveTime, ifx), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__wifi_get_inactive_time__field_indices_by_name[] = { + 0, /* field[0] = ifx */ +}; +static const ProtobufCIntRange rpc__req__wifi_get_inactive_time__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__wifi_get_inactive_time__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiGetInactiveTime", + "RpcReqWifiGetInactiveTime", + "RpcReqWifiGetInactiveTime", + "", + sizeof(RpcReqWifiGetInactiveTime), + 1, + rpc__req__wifi_get_inactive_time__field_descriptors, + rpc__req__wifi_get_inactive_time__field_indices_by_name, + 1, rpc__req__wifi_get_inactive_time__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_get_inactive_time__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_get_inactive_time__field_descriptors[2] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiGetInactiveTime, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "sec", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiGetInactiveTime, sec), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_get_inactive_time__field_indices_by_name[] = { + 0, /* field[0] = resp */ + 1, /* field[1] = sec */ +}; +static const ProtobufCIntRange rpc__resp__wifi_get_inactive_time__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_get_inactive_time__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiGetInactiveTime", + "RpcRespWifiGetInactiveTime", + "RpcRespWifiGetInactiveTime", + "", + sizeof(RpcRespWifiGetInactiveTime), + 2, + rpc__resp__wifi_get_inactive_time__field_descriptors, + rpc__resp__wifi_get_inactive_time__field_indices_by_name, + 1, rpc__resp__wifi_get_inactive_time__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_get_inactive_time__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__wifi_disable_pmf_config__field_descriptors[1] = +{ + { + "ifx", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiDisablePmfConfig, ifx), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__wifi_disable_pmf_config__field_indices_by_name[] = { + 0, /* field[0] = ifx */ +}; +static const ProtobufCIntRange rpc__req__wifi_disable_pmf_config__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__wifi_disable_pmf_config__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiDisablePmfConfig", + "RpcReqWifiDisablePmfConfig", + "RpcReqWifiDisablePmfConfig", + "", + sizeof(RpcReqWifiDisablePmfConfig), + 1, + rpc__req__wifi_disable_pmf_config__field_descriptors, + rpc__req__wifi_disable_pmf_config__field_indices_by_name, + 1, rpc__req__wifi_disable_pmf_config__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_disable_pmf_config__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_disable_pmf_config__field_descriptors[2] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiDisablePmfConfig, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "ifx", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiDisablePmfConfig, ifx), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_disable_pmf_config__field_indices_by_name[] = { + 1, /* field[1] = ifx */ + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_disable_pmf_config__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_disable_pmf_config__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiDisablePmfConfig", + "RpcRespWifiDisablePmfConfig", + "RpcRespWifiDisablePmfConfig", + "", + sizeof(RpcRespWifiDisablePmfConfig), + 2, + rpc__resp__wifi_disable_pmf_config__field_descriptors, + rpc__resp__wifi_disable_pmf_config__field_indices_by_name, + 1, rpc__resp__wifi_disable_pmf_config__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_disable_pmf_config__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__wifi_sta_itwt_setup__field_descriptors[1] = +{ + { + "setup_config", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiStaItwtSetup, setup_config), + &wifi_itwt_setup_config__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__wifi_sta_itwt_setup__field_indices_by_name[] = { + 0, /* field[0] = setup_config */ +}; +static const ProtobufCIntRange rpc__req__wifi_sta_itwt_setup__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__wifi_sta_itwt_setup__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiStaItwtSetup", + "RpcReqWifiStaItwtSetup", + "RpcReqWifiStaItwtSetup", + "", + sizeof(RpcReqWifiStaItwtSetup), + 1, + rpc__req__wifi_sta_itwt_setup__field_descriptors, + rpc__req__wifi_sta_itwt_setup__field_indices_by_name, + 1, rpc__req__wifi_sta_itwt_setup__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_sta_itwt_setup__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_sta_itwt_setup__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiStaItwtSetup, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_sta_itwt_setup__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_sta_itwt_setup__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_sta_itwt_setup__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiStaItwtSetup", + "RpcRespWifiStaItwtSetup", + "RpcRespWifiStaItwtSetup", + "", + sizeof(RpcRespWifiStaItwtSetup), + 1, + rpc__resp__wifi_sta_itwt_setup__field_descriptors, + rpc__resp__wifi_sta_itwt_setup__field_indices_by_name, + 1, rpc__resp__wifi_sta_itwt_setup__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_sta_itwt_setup__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__wifi_sta_itwt_teardown__field_descriptors[1] = +{ + { + "flow_id", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiStaItwtTeardown, flow_id), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__wifi_sta_itwt_teardown__field_indices_by_name[] = { + 0, /* field[0] = flow_id */ +}; +static const ProtobufCIntRange rpc__req__wifi_sta_itwt_teardown__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__wifi_sta_itwt_teardown__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiStaItwtTeardown", + "RpcReqWifiStaItwtTeardown", + "RpcReqWifiStaItwtTeardown", + "", + sizeof(RpcReqWifiStaItwtTeardown), + 1, + rpc__req__wifi_sta_itwt_teardown__field_descriptors, + rpc__req__wifi_sta_itwt_teardown__field_indices_by_name, + 1, rpc__req__wifi_sta_itwt_teardown__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_sta_itwt_teardown__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_sta_itwt_teardown__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiStaItwtTeardown, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_sta_itwt_teardown__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_sta_itwt_teardown__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_sta_itwt_teardown__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiStaItwtTeardown", + "RpcRespWifiStaItwtTeardown", + "RpcRespWifiStaItwtTeardown", + "", + sizeof(RpcRespWifiStaItwtTeardown), + 1, + rpc__resp__wifi_sta_itwt_teardown__field_descriptors, + rpc__resp__wifi_sta_itwt_teardown__field_indices_by_name, + 1, rpc__resp__wifi_sta_itwt_teardown__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_sta_itwt_teardown__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__wifi_sta_itwt_suspend__field_descriptors[2] = +{ + { + "flow_id", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiStaItwtSuspend, flow_id), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "suspend_time_ms", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiStaItwtSuspend, suspend_time_ms), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__wifi_sta_itwt_suspend__field_indices_by_name[] = { + 0, /* field[0] = flow_id */ + 1, /* field[1] = suspend_time_ms */ +}; +static const ProtobufCIntRange rpc__req__wifi_sta_itwt_suspend__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__req__wifi_sta_itwt_suspend__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiStaItwtSuspend", + "RpcReqWifiStaItwtSuspend", + "RpcReqWifiStaItwtSuspend", + "", + sizeof(RpcReqWifiStaItwtSuspend), + 2, + rpc__req__wifi_sta_itwt_suspend__field_descriptors, + rpc__req__wifi_sta_itwt_suspend__field_indices_by_name, + 1, rpc__req__wifi_sta_itwt_suspend__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_sta_itwt_suspend__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_sta_itwt_suspend__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiStaItwtSuspend, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_sta_itwt_suspend__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_sta_itwt_suspend__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_sta_itwt_suspend__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiStaItwtSuspend", + "RpcRespWifiStaItwtSuspend", + "RpcRespWifiStaItwtSuspend", + "", + sizeof(RpcRespWifiStaItwtSuspend), + 1, + rpc__resp__wifi_sta_itwt_suspend__field_descriptors, + rpc__resp__wifi_sta_itwt_suspend__field_indices_by_name, + 1, rpc__resp__wifi_sta_itwt_suspend__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_sta_itwt_suspend__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__wifi_sta_itwt_get_flow_id_status__field_descriptors NULL +#define rpc__req__wifi_sta_itwt_get_flow_id_status__field_indices_by_name NULL +#define rpc__req__wifi_sta_itwt_get_flow_id_status__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__wifi_sta_itwt_get_flow_id_status__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiStaItwtGetFlowIdStatus", + "RpcReqWifiStaItwtGetFlowIdStatus", + "RpcReqWifiStaItwtGetFlowIdStatus", + "", + sizeof(RpcReqWifiStaItwtGetFlowIdStatus), + 0, + rpc__req__wifi_sta_itwt_get_flow_id_status__field_descriptors, + rpc__req__wifi_sta_itwt_get_flow_id_status__field_indices_by_name, + 0, rpc__req__wifi_sta_itwt_get_flow_id_status__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_sta_itwt_get_flow_id_status__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_sta_itwt_get_flow_id_status__field_descriptors[2] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiStaItwtGetFlowIdStatus, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "flow_id_bitmap", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiStaItwtGetFlowIdStatus, flow_id_bitmap), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_sta_itwt_get_flow_id_status__field_indices_by_name[] = { + 1, /* field[1] = flow_id_bitmap */ + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_sta_itwt_get_flow_id_status__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_sta_itwt_get_flow_id_status__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiStaItwtGetFlowIdStatus", + "RpcRespWifiStaItwtGetFlowIdStatus", + "RpcRespWifiStaItwtGetFlowIdStatus", + "", + sizeof(RpcRespWifiStaItwtGetFlowIdStatus), + 2, + rpc__resp__wifi_sta_itwt_get_flow_id_status__field_descriptors, + rpc__resp__wifi_sta_itwt_get_flow_id_status__field_indices_by_name, + 1, rpc__resp__wifi_sta_itwt_get_flow_id_status__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_sta_itwt_get_flow_id_status__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__wifi_sta_itwt_send_probe_req__field_descriptors[1] = +{ + { + "timeout_ms", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiStaItwtSendProbeReq, timeout_ms), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__wifi_sta_itwt_send_probe_req__field_indices_by_name[] = { + 0, /* field[0] = timeout_ms */ +}; +static const ProtobufCIntRange rpc__req__wifi_sta_itwt_send_probe_req__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__wifi_sta_itwt_send_probe_req__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiStaItwtSendProbeReq", + "RpcReqWifiStaItwtSendProbeReq", + "RpcReqWifiStaItwtSendProbeReq", + "", + sizeof(RpcReqWifiStaItwtSendProbeReq), + 1, + rpc__req__wifi_sta_itwt_send_probe_req__field_descriptors, + rpc__req__wifi_sta_itwt_send_probe_req__field_indices_by_name, + 1, rpc__req__wifi_sta_itwt_send_probe_req__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_sta_itwt_send_probe_req__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_sta_itwt_send_probe_req__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiStaItwtSendProbeReq, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_sta_itwt_send_probe_req__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_sta_itwt_send_probe_req__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_sta_itwt_send_probe_req__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiStaItwtSendProbeReq", + "RpcRespWifiStaItwtSendProbeReq", + "RpcRespWifiStaItwtSendProbeReq", + "", + sizeof(RpcRespWifiStaItwtSendProbeReq), + 1, + rpc__resp__wifi_sta_itwt_send_probe_req__field_descriptors, + rpc__resp__wifi_sta_itwt_send_probe_req__field_indices_by_name, + 1, rpc__resp__wifi_sta_itwt_send_probe_req__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_sta_itwt_send_probe_req__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__wifi_sta_itwt_set_target_wake_time_offset__field_descriptors[1] = +{ + { + "offset_us", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiStaItwtSetTargetWakeTimeOffset, offset_us), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__wifi_sta_itwt_set_target_wake_time_offset__field_indices_by_name[] = { + 0, /* field[0] = offset_us */ +}; +static const ProtobufCIntRange rpc__req__wifi_sta_itwt_set_target_wake_time_offset__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__wifi_sta_itwt_set_target_wake_time_offset__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiStaItwtSetTargetWakeTimeOffset", + "RpcReqWifiStaItwtSetTargetWakeTimeOffset", + "RpcReqWifiStaItwtSetTargetWakeTimeOffset", + "", + sizeof(RpcReqWifiStaItwtSetTargetWakeTimeOffset), + 1, + rpc__req__wifi_sta_itwt_set_target_wake_time_offset__field_descriptors, + rpc__req__wifi_sta_itwt_set_target_wake_time_offset__field_indices_by_name, + 1, rpc__req__wifi_sta_itwt_set_target_wake_time_offset__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_sta_itwt_set_target_wake_time_offset__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_sta_itwt_set_target_wake_time_offset__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiStaItwtSetTargetWakeTimeOffset, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_sta_itwt_set_target_wake_time_offset__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_sta_itwt_set_target_wake_time_offset__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_sta_itwt_set_target_wake_time_offset__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiStaItwtSetTargetWakeTimeOffset", + "RpcRespWifiStaItwtSetTargetWakeTimeOffset", + "RpcRespWifiStaItwtSetTargetWakeTimeOffset", + "", + sizeof(RpcRespWifiStaItwtSetTargetWakeTimeOffset), + 1, + rpc__resp__wifi_sta_itwt_set_target_wake_time_offset__field_descriptors, + rpc__resp__wifi_sta_itwt_set_target_wake_time_offset__field_indices_by_name, + 1, rpc__resp__wifi_sta_itwt_set_target_wake_time_offset__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_sta_itwt_set_target_wake_time_offset__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__wifi_sta_twt_config__field_descriptors[1] = +{ + { + "config", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiStaTwtConfig, config), + &wifi_twt_config__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__wifi_sta_twt_config__field_indices_by_name[] = { + 0, /* field[0] = config */ +}; +static const ProtobufCIntRange rpc__req__wifi_sta_twt_config__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__wifi_sta_twt_config__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiStaTwtConfig", + "RpcReqWifiStaTwtConfig", + "RpcReqWifiStaTwtConfig", + "", + sizeof(RpcReqWifiStaTwtConfig), + 1, + rpc__req__wifi_sta_twt_config__field_descriptors, + rpc__req__wifi_sta_twt_config__field_indices_by_name, + 1, rpc__req__wifi_sta_twt_config__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_sta_twt_config__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_sta_twt_config__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiStaTwtConfig, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_sta_twt_config__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_sta_twt_config__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_sta_twt_config__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiStaTwtConfig", + "RpcRespWifiStaTwtConfig", + "RpcRespWifiStaTwtConfig", + "", + sizeof(RpcRespWifiStaTwtConfig), + 1, + rpc__resp__wifi_sta_twt_config__field_descriptors, + rpc__resp__wifi_sta_twt_config__field_indices_by_name, + 1, rpc__resp__wifi_sta_twt_config__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_sta_twt_config__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__get_coprocessor_fw_version__field_descriptors NULL +#define rpc__req__get_coprocessor_fw_version__field_indices_by_name NULL +#define rpc__req__get_coprocessor_fw_version__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__get_coprocessor_fw_version__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_GetCoprocessorFwVersion", + "RpcReqGetCoprocessorFwVersion", + "RpcReqGetCoprocessorFwVersion", + "", + sizeof(RpcReqGetCoprocessorFwVersion), + 0, + rpc__req__get_coprocessor_fw_version__field_descriptors, + rpc__req__get_coprocessor_fw_version__field_indices_by_name, + 0, rpc__req__get_coprocessor_fw_version__number_ranges, + (ProtobufCMessageInit) rpc__req__get_coprocessor_fw_version__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__get_coprocessor_fw_version__field_descriptors[9] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespGetCoprocessorFwVersion, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "major1", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcRespGetCoprocessorFwVersion, major1), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "minor1", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcRespGetCoprocessorFwVersion, minor1), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "patch1", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcRespGetCoprocessorFwVersion, patch1), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "revision", + 5, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespGetCoprocessorFwVersion, revision), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "prerelease", + 6, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespGetCoprocessorFwVersion, prerelease), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "build", + 7, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespGetCoprocessorFwVersion, build), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "chip_id", + 8, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcRespGetCoprocessorFwVersion, chip_id), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "idf_target", + 9, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcRespGetCoprocessorFwVersion, idf_target), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__get_coprocessor_fw_version__field_indices_by_name[] = { + 6, /* field[6] = build */ + 7, /* field[7] = chip_id */ + 8, /* field[8] = idf_target */ + 1, /* field[1] = major1 */ + 2, /* field[2] = minor1 */ + 3, /* field[3] = patch1 */ + 5, /* field[5] = prerelease */ + 0, /* field[0] = resp */ + 4, /* field[4] = revision */ +}; +static const ProtobufCIntRange rpc__resp__get_coprocessor_fw_version__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 9 } +}; +const ProtobufCMessageDescriptor rpc__resp__get_coprocessor_fw_version__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_GetCoprocessorFwVersion", + "RpcRespGetCoprocessorFwVersion", + "RpcRespGetCoprocessorFwVersion", + "", + sizeof(RpcRespGetCoprocessorFwVersion), + 9, + rpc__resp__get_coprocessor_fw_version__field_descriptors, + rpc__resp__get_coprocessor_fw_version__field_indices_by_name, + 1, rpc__resp__get_coprocessor_fw_version__number_ranges, + (ProtobufCMessageInit) rpc__resp__get_coprocessor_fw_version__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__set_dhcp_dns_status__field_descriptors[9] = +{ + { + "iface", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqSetDhcpDnsStatus, iface), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "net_link_up", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqSetDhcpDnsStatus, net_link_up), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "dhcp_up", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqSetDhcpDnsStatus, dhcp_up), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "dhcp_ip", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcReqSetDhcpDnsStatus, dhcp_ip), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "dhcp_nm", + 5, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcReqSetDhcpDnsStatus, dhcp_nm), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "dhcp_gw", + 6, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcReqSetDhcpDnsStatus, dhcp_gw), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "dns_up", + 7, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqSetDhcpDnsStatus, dns_up), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "dns_ip", + 8, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcReqSetDhcpDnsStatus, dns_ip), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "dns_type", + 9, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqSetDhcpDnsStatus, dns_type), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__set_dhcp_dns_status__field_indices_by_name[] = { + 5, /* field[5] = dhcp_gw */ + 3, /* field[3] = dhcp_ip */ + 4, /* field[4] = dhcp_nm */ + 2, /* field[2] = dhcp_up */ + 7, /* field[7] = dns_ip */ + 8, /* field[8] = dns_type */ + 6, /* field[6] = dns_up */ + 0, /* field[0] = iface */ + 1, /* field[1] = net_link_up */ +}; +static const ProtobufCIntRange rpc__req__set_dhcp_dns_status__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 9 } +}; +const ProtobufCMessageDescriptor rpc__req__set_dhcp_dns_status__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_SetDhcpDnsStatus", + "RpcReqSetDhcpDnsStatus", + "RpcReqSetDhcpDnsStatus", + "", + sizeof(RpcReqSetDhcpDnsStatus), + 9, + rpc__req__set_dhcp_dns_status__field_descriptors, + rpc__req__set_dhcp_dns_status__field_indices_by_name, + 1, rpc__req__set_dhcp_dns_status__number_ranges, + (ProtobufCMessageInit) rpc__req__set_dhcp_dns_status__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__set_dhcp_dns_status__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespSetDhcpDnsStatus, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__set_dhcp_dns_status__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__set_dhcp_dns_status__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__set_dhcp_dns_status__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_SetDhcpDnsStatus", + "RpcRespSetDhcpDnsStatus", + "RpcRespSetDhcpDnsStatus", + "", + sizeof(RpcRespSetDhcpDnsStatus), + 1, + rpc__resp__set_dhcp_dns_status__field_descriptors, + rpc__resp__set_dhcp_dns_status__field_indices_by_name, + 1, rpc__resp__set_dhcp_dns_status__number_ranges, + (ProtobufCMessageInit) rpc__resp__set_dhcp_dns_status__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__get_dhcp_dns_status__field_descriptors[1] = +{ + { + "iface", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqGetDhcpDnsStatus, iface), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__get_dhcp_dns_status__field_indices_by_name[] = { + 0, /* field[0] = iface */ +}; +static const ProtobufCIntRange rpc__req__get_dhcp_dns_status__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__get_dhcp_dns_status__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_GetDhcpDnsStatus", + "RpcReqGetDhcpDnsStatus", + "RpcReqGetDhcpDnsStatus", + "", + sizeof(RpcReqGetDhcpDnsStatus), + 1, + rpc__req__get_dhcp_dns_status__field_descriptors, + rpc__req__get_dhcp_dns_status__field_indices_by_name, + 1, rpc__req__get_dhcp_dns_status__number_ranges, + (ProtobufCMessageInit) rpc__req__get_dhcp_dns_status__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__get_dhcp_dns_status__field_descriptors[10] = +{ + { + "iface", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespGetDhcpDnsStatus, iface), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "net_link_up", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespGetDhcpDnsStatus, net_link_up), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "dhcp_up", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespGetDhcpDnsStatus, dhcp_up), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "dhcp_ip", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcRespGetDhcpDnsStatus, dhcp_ip), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "dhcp_nm", + 5, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcRespGetDhcpDnsStatus, dhcp_nm), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "dhcp_gw", + 6, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcRespGetDhcpDnsStatus, dhcp_gw), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "dns_up", + 7, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespGetDhcpDnsStatus, dns_up), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "dns_ip", + 8, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcRespGetDhcpDnsStatus, dns_ip), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "dns_type", + 9, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespGetDhcpDnsStatus, dns_type), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp", + 10, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespGetDhcpDnsStatus, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__get_dhcp_dns_status__field_indices_by_name[] = { + 5, /* field[5] = dhcp_gw */ + 3, /* field[3] = dhcp_ip */ + 4, /* field[4] = dhcp_nm */ + 2, /* field[2] = dhcp_up */ + 7, /* field[7] = dns_ip */ + 8, /* field[8] = dns_type */ + 6, /* field[6] = dns_up */ + 0, /* field[0] = iface */ + 1, /* field[1] = net_link_up */ + 9, /* field[9] = resp */ +}; +static const ProtobufCIntRange rpc__resp__get_dhcp_dns_status__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 10 } +}; +const ProtobufCMessageDescriptor rpc__resp__get_dhcp_dns_status__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_GetDhcpDnsStatus", + "RpcRespGetDhcpDnsStatus", + "RpcRespGetDhcpDnsStatus", + "", + sizeof(RpcRespGetDhcpDnsStatus), + 10, + rpc__resp__get_dhcp_dns_status__field_descriptors, + rpc__resp__get_dhcp_dns_status__field_indices_by_name, + 1, rpc__resp__get_dhcp_dns_status__number_ranges, + (ProtobufCMessageInit) rpc__resp__get_dhcp_dns_status__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__supp_dpp_init__field_descriptors[1] = +{ + { + "cb", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(RpcReqSuppDppInit, cb), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__supp_dpp_init__field_indices_by_name[] = { + 0, /* field[0] = cb */ +}; +static const ProtobufCIntRange rpc__req__supp_dpp_init__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__supp_dpp_init__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_SuppDppInit", + "RpcReqSuppDppInit", + "RpcReqSuppDppInit", + "", + sizeof(RpcReqSuppDppInit), + 1, + rpc__req__supp_dpp_init__field_descriptors, + rpc__req__supp_dpp_init__field_indices_by_name, + 1, rpc__req__supp_dpp_init__number_ranges, + (ProtobufCMessageInit) rpc__req__supp_dpp_init__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__supp_dpp_init__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespSuppDppInit, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__supp_dpp_init__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__supp_dpp_init__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__supp_dpp_init__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_SuppDppInit", + "RpcRespSuppDppInit", + "RpcRespSuppDppInit", + "", + sizeof(RpcRespSuppDppInit), + 1, + rpc__resp__supp_dpp_init__field_descriptors, + rpc__resp__supp_dpp_init__field_indices_by_name, + 1, rpc__resp__supp_dpp_init__number_ranges, + (ProtobufCMessageInit) rpc__resp__supp_dpp_init__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__supp_dpp_deinit__field_descriptors NULL +#define rpc__req__supp_dpp_deinit__field_indices_by_name NULL +#define rpc__req__supp_dpp_deinit__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__supp_dpp_deinit__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_SuppDppDeinit", + "RpcReqSuppDppDeinit", + "RpcReqSuppDppDeinit", + "", + sizeof(RpcReqSuppDppDeinit), + 0, + rpc__req__supp_dpp_deinit__field_descriptors, + rpc__req__supp_dpp_deinit__field_indices_by_name, + 0, rpc__req__supp_dpp_deinit__number_ranges, + (ProtobufCMessageInit) rpc__req__supp_dpp_deinit__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__supp_dpp_deinit__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespSuppDppDeinit, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__supp_dpp_deinit__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__supp_dpp_deinit__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__supp_dpp_deinit__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_SuppDppDeinit", + "RpcRespSuppDppDeinit", + "RpcRespSuppDppDeinit", + "", + sizeof(RpcRespSuppDppDeinit), + 1, + rpc__resp__supp_dpp_deinit__field_descriptors, + rpc__resp__supp_dpp_deinit__field_indices_by_name, + 1, rpc__resp__supp_dpp_deinit__number_ranges, + (ProtobufCMessageInit) rpc__resp__supp_dpp_deinit__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__supp_dpp_bootstrap_gen__field_descriptors[4] = +{ + { + "chan_list", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcReqSuppDppBootstrapGen, chan_list), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "type", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqSuppDppBootstrapGen, type), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "key", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcReqSuppDppBootstrapGen, key), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "info", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcReqSuppDppBootstrapGen, info), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__supp_dpp_bootstrap_gen__field_indices_by_name[] = { + 0, /* field[0] = chan_list */ + 3, /* field[3] = info */ + 2, /* field[2] = key */ + 1, /* field[1] = type */ +}; +static const ProtobufCIntRange rpc__req__supp_dpp_bootstrap_gen__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 4 } +}; +const ProtobufCMessageDescriptor rpc__req__supp_dpp_bootstrap_gen__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_SuppDppBootstrapGen", + "RpcReqSuppDppBootstrapGen", + "RpcReqSuppDppBootstrapGen", + "", + sizeof(RpcReqSuppDppBootstrapGen), + 4, + rpc__req__supp_dpp_bootstrap_gen__field_descriptors, + rpc__req__supp_dpp_bootstrap_gen__field_indices_by_name, + 1, rpc__req__supp_dpp_bootstrap_gen__number_ranges, + (ProtobufCMessageInit) rpc__req__supp_dpp_bootstrap_gen__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__supp_dpp_bootstrap_gen__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespSuppDppBootstrapGen, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__supp_dpp_bootstrap_gen__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__supp_dpp_bootstrap_gen__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__supp_dpp_bootstrap_gen__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_SuppDppBootstrapGen", + "RpcRespSuppDppBootstrapGen", + "RpcRespSuppDppBootstrapGen", + "", + sizeof(RpcRespSuppDppBootstrapGen), + 1, + rpc__resp__supp_dpp_bootstrap_gen__field_descriptors, + rpc__resp__supp_dpp_bootstrap_gen__field_indices_by_name, + 1, rpc__resp__supp_dpp_bootstrap_gen__number_ranges, + (ProtobufCMessageInit) rpc__resp__supp_dpp_bootstrap_gen__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__supp_dpp_start_listen__field_descriptors NULL +#define rpc__req__supp_dpp_start_listen__field_indices_by_name NULL +#define rpc__req__supp_dpp_start_listen__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__supp_dpp_start_listen__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_SuppDppStartListen", + "RpcReqSuppDppStartListen", + "RpcReqSuppDppStartListen", + "", + sizeof(RpcReqSuppDppStartListen), + 0, + rpc__req__supp_dpp_start_listen__field_descriptors, + rpc__req__supp_dpp_start_listen__field_indices_by_name, + 0, rpc__req__supp_dpp_start_listen__number_ranges, + (ProtobufCMessageInit) rpc__req__supp_dpp_start_listen__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__supp_dpp_start_listen__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespSuppDppStartListen, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__supp_dpp_start_listen__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__supp_dpp_start_listen__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__supp_dpp_start_listen__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_SuppDppStartListen", + "RpcRespSuppDppStartListen", + "RpcRespSuppDppStartListen", + "", + sizeof(RpcRespSuppDppStartListen), + 1, + rpc__resp__supp_dpp_start_listen__field_descriptors, + rpc__resp__supp_dpp_start_listen__field_indices_by_name, + 1, rpc__resp__supp_dpp_start_listen__number_ranges, + (ProtobufCMessageInit) rpc__resp__supp_dpp_start_listen__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__supp_dpp_stop_listen__field_descriptors NULL +#define rpc__req__supp_dpp_stop_listen__field_indices_by_name NULL +#define rpc__req__supp_dpp_stop_listen__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__supp_dpp_stop_listen__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_SuppDppStopListen", + "RpcReqSuppDppStopListen", + "RpcReqSuppDppStopListen", + "", + sizeof(RpcReqSuppDppStopListen), + 0, + rpc__req__supp_dpp_stop_listen__field_descriptors, + rpc__req__supp_dpp_stop_listen__field_indices_by_name, + 0, rpc__req__supp_dpp_stop_listen__number_ranges, + (ProtobufCMessageInit) rpc__req__supp_dpp_stop_listen__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__supp_dpp_stop_listen__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespSuppDppStopListen, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__supp_dpp_stop_listen__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__supp_dpp_stop_listen__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__supp_dpp_stop_listen__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_SuppDppStopListen", + "RpcRespSuppDppStopListen", + "RpcRespSuppDppStopListen", + "", + sizeof(RpcRespSuppDppStopListen), + 1, + rpc__resp__supp_dpp_stop_listen__field_descriptors, + rpc__resp__supp_dpp_stop_listen__field_indices_by_name, + 1, rpc__resp__supp_dpp_stop_listen__number_ranges, + (ProtobufCMessageInit) rpc__resp__supp_dpp_stop_listen__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__iface_mac_addr_set_get__field_descriptors[3] = +{ + { + "set", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(RpcReqIfaceMacAddrSetGet, set), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "type", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcReqIfaceMacAddrSetGet, type), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "mac", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcReqIfaceMacAddrSetGet, mac), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__iface_mac_addr_set_get__field_indices_by_name[] = { + 2, /* field[2] = mac */ + 0, /* field[0] = set */ + 1, /* field[1] = type */ +}; +static const ProtobufCIntRange rpc__req__iface_mac_addr_set_get__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 3 } +}; +const ProtobufCMessageDescriptor rpc__req__iface_mac_addr_set_get__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_IfaceMacAddrSetGet", + "RpcReqIfaceMacAddrSetGet", + "RpcReqIfaceMacAddrSetGet", + "", + sizeof(RpcReqIfaceMacAddrSetGet), + 3, + rpc__req__iface_mac_addr_set_get__field_descriptors, + rpc__req__iface_mac_addr_set_get__field_indices_by_name, + 1, rpc__req__iface_mac_addr_set_get__number_ranges, + (ProtobufCMessageInit) rpc__req__iface_mac_addr_set_get__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__iface_mac_addr_set_get__field_descriptors[4] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespIfaceMacAddrSetGet, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "set", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(RpcRespIfaceMacAddrSetGet, set), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "type", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcRespIfaceMacAddrSetGet, type), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "mac", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcRespIfaceMacAddrSetGet, mac), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__iface_mac_addr_set_get__field_indices_by_name[] = { + 3, /* field[3] = mac */ + 0, /* field[0] = resp */ + 1, /* field[1] = set */ + 2, /* field[2] = type */ +}; +static const ProtobufCIntRange rpc__resp__iface_mac_addr_set_get__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 4 } +}; +const ProtobufCMessageDescriptor rpc__resp__iface_mac_addr_set_get__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_IfaceMacAddrSetGet", + "RpcRespIfaceMacAddrSetGet", + "RpcRespIfaceMacAddrSetGet", + "", + sizeof(RpcRespIfaceMacAddrSetGet), + 4, + rpc__resp__iface_mac_addr_set_get__field_descriptors, + rpc__resp__iface_mac_addr_set_get__field_indices_by_name, + 1, rpc__resp__iface_mac_addr_set_get__number_ranges, + (ProtobufCMessageInit) rpc__resp__iface_mac_addr_set_get__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__iface_mac_addr_len_get__field_descriptors[1] = +{ + { + "type", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcReqIfaceMacAddrLenGet, type), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__iface_mac_addr_len_get__field_indices_by_name[] = { + 0, /* field[0] = type */ +}; +static const ProtobufCIntRange rpc__req__iface_mac_addr_len_get__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__iface_mac_addr_len_get__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_IfaceMacAddrLenGet", + "RpcReqIfaceMacAddrLenGet", + "RpcReqIfaceMacAddrLenGet", + "", + sizeof(RpcReqIfaceMacAddrLenGet), + 1, + rpc__req__iface_mac_addr_len_get__field_descriptors, + rpc__req__iface_mac_addr_len_get__field_indices_by_name, + 1, rpc__req__iface_mac_addr_len_get__number_ranges, + (ProtobufCMessageInit) rpc__req__iface_mac_addr_len_get__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__iface_mac_addr_len_get__field_descriptors[3] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespIfaceMacAddrLenGet, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "type", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcRespIfaceMacAddrLenGet, type), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "len", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcRespIfaceMacAddrLenGet, len), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__iface_mac_addr_len_get__field_indices_by_name[] = { + 2, /* field[2] = len */ + 0, /* field[0] = resp */ + 1, /* field[1] = type */ +}; +static const ProtobufCIntRange rpc__resp__iface_mac_addr_len_get__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 3 } +}; +const ProtobufCMessageDescriptor rpc__resp__iface_mac_addr_len_get__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_IfaceMacAddrLenGet", + "RpcRespIfaceMacAddrLenGet", + "RpcRespIfaceMacAddrLenGet", + "", + sizeof(RpcRespIfaceMacAddrLenGet), + 3, + rpc__resp__iface_mac_addr_len_get__field_descriptors, + rpc__resp__iface_mac_addr_len_get__field_indices_by_name, + 1, rpc__resp__iface_mac_addr_len_get__number_ranges, + (ProtobufCMessageInit) rpc__resp__iface_mac_addr_len_get__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__feature_control__field_descriptors[3] = +{ + { + "feature", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(RpcReqFeatureControl, feature), + &rpc_feature__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "command", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(RpcReqFeatureControl, command), + &rpc_feature_command__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "option", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(RpcReqFeatureControl, option), + &rpc_feature_option__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__feature_control__field_indices_by_name[] = { + 1, /* field[1] = command */ + 0, /* field[0] = feature */ + 2, /* field[2] = option */ +}; +static const ProtobufCIntRange rpc__req__feature_control__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 3 } +}; +const ProtobufCMessageDescriptor rpc__req__feature_control__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_FeatureControl", + "RpcReqFeatureControl", + "RpcReqFeatureControl", + "", + sizeof(RpcReqFeatureControl), + 3, + rpc__req__feature_control__field_descriptors, + rpc__req__feature_control__field_indices_by_name, + 1, rpc__req__feature_control__number_ranges, + (ProtobufCMessageInit) rpc__req__feature_control__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__feature_control__field_descriptors[4] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespFeatureControl, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "feature", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(RpcRespFeatureControl, feature), + &rpc_feature__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "command", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(RpcRespFeatureControl, command), + &rpc_feature_command__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "option", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(RpcRespFeatureControl, option), + &rpc_feature_option__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__feature_control__field_indices_by_name[] = { + 2, /* field[2] = command */ + 1, /* field[1] = feature */ + 3, /* field[3] = option */ + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__feature_control__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 4 } +}; +const ProtobufCMessageDescriptor rpc__resp__feature_control__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_FeatureControl", + "RpcRespFeatureControl", + "RpcRespFeatureControl", + "", + sizeof(RpcRespFeatureControl), + 4, + rpc__resp__feature_control__field_descriptors, + rpc__resp__feature_control__field_indices_by_name, + 1, rpc__resp__feature_control__number_ranges, + (ProtobufCMessageInit) rpc__resp__feature_control__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__mem_monitor__field_descriptors[5] = +{ + { + "config", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(RpcReqMemMonitor, config), + &rpc__mem_monitor_config__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "report_always", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(RpcReqMemMonitor, report_always), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "interval_sec", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcReqMemMonitor, interval_sec), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "internal", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(RpcReqMemMonitor, internal), + &heap_size_threshold__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "external", + 5, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(RpcReqMemMonitor, external), + &heap_size_threshold__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__mem_monitor__field_indices_by_name[] = { + 0, /* field[0] = config */ + 4, /* field[4] = external */ + 3, /* field[3] = internal */ + 2, /* field[2] = interval_sec */ + 1, /* field[1] = report_always */ +}; +static const ProtobufCIntRange rpc__req__mem_monitor__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 5 } +}; +const ProtobufCMessageDescriptor rpc__req__mem_monitor__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_MemMonitor", + "RpcReqMemMonitor", + "RpcReqMemMonitor", + "", + sizeof(RpcReqMemMonitor), + 5, + rpc__req__mem_monitor__field_descriptors, + rpc__req__mem_monitor__field_indices_by_name, + 1, rpc__req__mem_monitor__number_ranges, + (ProtobufCMessageInit) rpc__req__mem_monitor__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__mem_monitor__field_descriptors[7] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespMemMonitor, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "config", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(RpcRespMemMonitor, config), + &rpc__mem_monitor_config__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "report_always", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(RpcRespMemMonitor, report_always), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "interval_sec", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcRespMemMonitor, interval_sec), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "curr_total_heap_size", + 5, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcRespMemMonitor, curr_total_heap_size), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "curr_internal", + 6, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(RpcRespMemMonitor, curr_internal), + &heap_info__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "curr_external", + 7, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(RpcRespMemMonitor, curr_external), + &heap_info__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__mem_monitor__field_indices_by_name[] = { + 1, /* field[1] = config */ + 6, /* field[6] = curr_external */ + 5, /* field[5] = curr_internal */ + 4, /* field[4] = curr_total_heap_size */ + 3, /* field[3] = interval_sec */ + 2, /* field[2] = report_always */ + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__mem_monitor__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 7 } +}; +const ProtobufCMessageDescriptor rpc__resp__mem_monitor__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_MemMonitor", + "RpcRespMemMonitor", + "RpcRespMemMonitor", + "", + sizeof(RpcRespMemMonitor), + 7, + rpc__resp__mem_monitor__field_descriptors, + rpc__resp__mem_monitor__field_indices_by_name, + 1, rpc__resp__mem_monitor__number_ranges, + (ProtobufCMessageInit) rpc__resp__mem_monitor__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__event__wifi_event_no_args__field_descriptors[2] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcEventWifiEventNoArgs, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "event_id", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcEventWifiEventNoArgs, event_id), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__event__wifi_event_no_args__field_indices_by_name[] = { + 1, /* field[1] = event_id */ + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__event__wifi_event_no_args__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__event__wifi_event_no_args__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Event_WifiEventNoArgs", + "RpcEventWifiEventNoArgs", + "RpcEventWifiEventNoArgs", + "", + sizeof(RpcEventWifiEventNoArgs), + 2, + rpc__event__wifi_event_no_args__field_descriptors, + rpc__event__wifi_event_no_args__field_indices_by_name, + 1, rpc__event__wifi_event_no_args__number_ranges, + (ProtobufCMessageInit) rpc__event__wifi_event_no_args__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__event__espinit__field_descriptors[2] = +{ + { + "init_data", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcEventESPInit, init_data), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "cp_reset_reason", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcEventESPInit, cp_reset_reason), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__event__espinit__field_indices_by_name[] = { + 1, /* field[1] = cp_reset_reason */ + 0, /* field[0] = init_data */ +}; +static const ProtobufCIntRange rpc__event__espinit__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__event__espinit__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Event_ESPInit", + "RpcEventESPInit", + "RpcEventESPInit", + "", + sizeof(RpcEventESPInit), + 2, + rpc__event__espinit__field_descriptors, + rpc__event__espinit__field_indices_by_name, + 1, rpc__event__espinit__number_ranges, + (ProtobufCMessageInit) rpc__event__espinit__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__event__heartbeat__field_descriptors[1] = +{ + { + "hb_num", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcEventHeartbeat, hb_num), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__event__heartbeat__field_indices_by_name[] = { + 0, /* field[0] = hb_num */ +}; +static const ProtobufCIntRange rpc__event__heartbeat__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__event__heartbeat__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Event_Heartbeat", + "RpcEventHeartbeat", + "RpcEventHeartbeat", + "", + sizeof(RpcEventHeartbeat), + 1, + rpc__event__heartbeat__field_descriptors, + rpc__event__heartbeat__field_indices_by_name, + 1, rpc__event__heartbeat__number_ranges, + (ProtobufCMessageInit) rpc__event__heartbeat__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__event__ap__sta_disconnected__field_descriptors[5] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcEventAPStaDisconnected, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "mac", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcEventAPStaDisconnected, mac), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "aid", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcEventAPStaDisconnected, aid), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "is_mesh_child", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(RpcEventAPStaDisconnected, is_mesh_child), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "reason", + 5, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcEventAPStaDisconnected, reason), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__event__ap__sta_disconnected__field_indices_by_name[] = { + 2, /* field[2] = aid */ + 3, /* field[3] = is_mesh_child */ + 1, /* field[1] = mac */ + 4, /* field[4] = reason */ + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__event__ap__sta_disconnected__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 5 } +}; +const ProtobufCMessageDescriptor rpc__event__ap__sta_disconnected__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Event_AP_StaDisconnected", + "RpcEventAPStaDisconnected", + "RpcEventAPStaDisconnected", + "", + sizeof(RpcEventAPStaDisconnected), + 5, + rpc__event__ap__sta_disconnected__field_descriptors, + rpc__event__ap__sta_disconnected__field_indices_by_name, + 1, rpc__event__ap__sta_disconnected__number_ranges, + (ProtobufCMessageInit) rpc__event__ap__sta_disconnected__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__event__ap__sta_connected__field_descriptors[4] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcEventAPStaConnected, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "mac", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcEventAPStaConnected, mac), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "aid", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcEventAPStaConnected, aid), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "is_mesh_child", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(RpcEventAPStaConnected, is_mesh_child), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__event__ap__sta_connected__field_indices_by_name[] = { + 2, /* field[2] = aid */ + 3, /* field[3] = is_mesh_child */ + 1, /* field[1] = mac */ + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__event__ap__sta_connected__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 4 } +}; +const ProtobufCMessageDescriptor rpc__event__ap__sta_connected__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Event_AP_StaConnected", + "RpcEventAPStaConnected", + "RpcEventAPStaConnected", + "", + sizeof(RpcEventAPStaConnected), + 4, + rpc__event__ap__sta_connected__field_descriptors, + rpc__event__ap__sta_connected__field_indices_by_name, + 1, rpc__event__ap__sta_connected__number_ranges, + (ProtobufCMessageInit) rpc__event__ap__sta_connected__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__event__sta_scan_done__field_descriptors[2] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcEventStaScanDone, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "scan_done", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(RpcEventStaScanDone, scan_done), + &wifi_event_sta_scan_done__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__event__sta_scan_done__field_indices_by_name[] = { + 0, /* field[0] = resp */ + 1, /* field[1] = scan_done */ +}; +static const ProtobufCIntRange rpc__event__sta_scan_done__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__event__sta_scan_done__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Event_StaScanDone", + "RpcEventStaScanDone", + "RpcEventStaScanDone", + "", + sizeof(RpcEventStaScanDone), + 2, + rpc__event__sta_scan_done__field_descriptors, + rpc__event__sta_scan_done__field_indices_by_name, + 1, rpc__event__sta_scan_done__number_ranges, + (ProtobufCMessageInit) rpc__event__sta_scan_done__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__event__sta_connected__field_descriptors[2] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcEventStaConnected, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "sta_connected", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(RpcEventStaConnected, sta_connected), + &wifi_event_sta_connected__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__event__sta_connected__field_indices_by_name[] = { + 0, /* field[0] = resp */ + 1, /* field[1] = sta_connected */ +}; +static const ProtobufCIntRange rpc__event__sta_connected__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__event__sta_connected__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Event_StaConnected", + "RpcEventStaConnected", + "RpcEventStaConnected", + "", + sizeof(RpcEventStaConnected), + 2, + rpc__event__sta_connected__field_descriptors, + rpc__event__sta_connected__field_indices_by_name, + 1, rpc__event__sta_connected__number_ranges, + (ProtobufCMessageInit) rpc__event__sta_connected__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__event__sta_disconnected__field_descriptors[2] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcEventStaDisconnected, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "sta_disconnected", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(RpcEventStaDisconnected, sta_disconnected), + &wifi_event_sta_disconnected__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__event__sta_disconnected__field_indices_by_name[] = { + 0, /* field[0] = resp */ + 1, /* field[1] = sta_disconnected */ +}; +static const ProtobufCIntRange rpc__event__sta_disconnected__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__event__sta_disconnected__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Event_StaDisconnected", + "RpcEventStaDisconnected", + "RpcEventStaDisconnected", + "", + sizeof(RpcEventStaDisconnected), + 2, + rpc__event__sta_disconnected__field_descriptors, + rpc__event__sta_disconnected__field_indices_by_name, + 1, rpc__event__sta_disconnected__number_ranges, + (ProtobufCMessageInit) rpc__event__sta_disconnected__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__gpio_config__field_descriptors[5] = +{ + { + "pin_bit_mask", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT64, + 0, /* quantifier_offset */ + offsetof(RpcGpioConfig, pin_bit_mask), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "mode", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(RpcGpioConfig, mode), + &rpc__gpio_mode__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "pull_up_en", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(RpcGpioConfig, pull_up_en), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "pull_down_en", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(RpcGpioConfig, pull_down_en), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "intr_type", + 5, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcGpioConfig, intr_type), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__gpio_config__field_indices_by_name[] = { + 4, /* field[4] = intr_type */ + 1, /* field[1] = mode */ + 0, /* field[0] = pin_bit_mask */ + 3, /* field[3] = pull_down_en */ + 2, /* field[2] = pull_up_en */ +}; +static const ProtobufCIntRange rpc__gpio_config__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 5 } +}; +const ProtobufCMessageDescriptor rpc__gpio_config__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_GpioConfig", + "RpcGpioConfig", + "RpcGpioConfig", + "", + sizeof(RpcGpioConfig), + 5, + rpc__gpio_config__field_descriptors, + rpc__gpio_config__field_indices_by_name, + 1, rpc__gpio_config__number_ranges, + (ProtobufCMessageInit) rpc__gpio_config__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__gpio_config__field_descriptors[1] = +{ + { + "config", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(RpcReqGpioConfig, config), + &rpc__gpio_config__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__gpio_config__field_indices_by_name[] = { + 0, /* field[0] = config */ +}; +static const ProtobufCIntRange rpc__req__gpio_config__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__gpio_config__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_GpioConfig", + "RpcReqGpioConfig", + "RpcReqGpioConfig", + "", + sizeof(RpcReqGpioConfig), + 1, + rpc__req__gpio_config__field_descriptors, + rpc__req__gpio_config__field_indices_by_name, + 1, rpc__req__gpio_config__number_ranges, + (ProtobufCMessageInit) rpc__req__gpio_config__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__gpio_config__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespGpioConfig, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__gpio_config__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__gpio_config__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__gpio_config__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_GpioConfig", + "RpcRespGpioConfig", + "RpcRespGpioConfig", + "", + sizeof(RpcRespGpioConfig), + 1, + rpc__resp__gpio_config__field_descriptors, + rpc__resp__gpio_config__field_indices_by_name, + 1, rpc__resp__gpio_config__number_ranges, + (ProtobufCMessageInit) rpc__resp__gpio_config__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__gpio_reset_pin__field_descriptors[1] = +{ + { + "gpio_num", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqGpioResetPin, gpio_num), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__gpio_reset_pin__field_indices_by_name[] = { + 0, /* field[0] = gpio_num */ +}; +static const ProtobufCIntRange rpc__req__gpio_reset_pin__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__gpio_reset_pin__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_GpioResetPin", + "RpcReqGpioResetPin", + "RpcReqGpioResetPin", + "", + sizeof(RpcReqGpioResetPin), + 1, + rpc__req__gpio_reset_pin__field_descriptors, + rpc__req__gpio_reset_pin__field_indices_by_name, + 1, rpc__req__gpio_reset_pin__number_ranges, + (ProtobufCMessageInit) rpc__req__gpio_reset_pin__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__gpio_reset_pin__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespGpioResetPin, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__gpio_reset_pin__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__gpio_reset_pin__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__gpio_reset_pin__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_GpioResetPin", + "RpcRespGpioResetPin", + "RpcRespGpioResetPin", + "", + sizeof(RpcRespGpioResetPin), + 1, + rpc__resp__gpio_reset_pin__field_descriptors, + rpc__resp__gpio_reset_pin__field_indices_by_name, + 1, rpc__resp__gpio_reset_pin__number_ranges, + (ProtobufCMessageInit) rpc__resp__gpio_reset_pin__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__gpio_set_level__field_descriptors[2] = +{ + { + "gpio_num", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqGpioSetLevel, gpio_num), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "level", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcReqGpioSetLevel, level), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__gpio_set_level__field_indices_by_name[] = { + 0, /* field[0] = gpio_num */ + 1, /* field[1] = level */ +}; +static const ProtobufCIntRange rpc__req__gpio_set_level__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__req__gpio_set_level__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_GpioSetLevel", + "RpcReqGpioSetLevel", + "RpcReqGpioSetLevel", + "", + sizeof(RpcReqGpioSetLevel), + 2, + rpc__req__gpio_set_level__field_descriptors, + rpc__req__gpio_set_level__field_indices_by_name, + 1, rpc__req__gpio_set_level__number_ranges, + (ProtobufCMessageInit) rpc__req__gpio_set_level__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__gpio_set_level__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespGpioSetLevel, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__gpio_set_level__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__gpio_set_level__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__gpio_set_level__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_GpioSetLevel", + "RpcRespGpioSetLevel", + "RpcRespGpioSetLevel", + "", + sizeof(RpcRespGpioSetLevel), + 1, + rpc__resp__gpio_set_level__field_descriptors, + rpc__resp__gpio_set_level__field_indices_by_name, + 1, rpc__resp__gpio_set_level__number_ranges, + (ProtobufCMessageInit) rpc__resp__gpio_set_level__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__gpio_get_level__field_descriptors[1] = +{ + { + "gpio_num", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqGpioGetLevel, gpio_num), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__gpio_get_level__field_indices_by_name[] = { + 0, /* field[0] = gpio_num */ +}; +static const ProtobufCIntRange rpc__req__gpio_get_level__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__gpio_get_level__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_GpioGetLevel", + "RpcReqGpioGetLevel", + "RpcReqGpioGetLevel", + "", + sizeof(RpcReqGpioGetLevel), + 1, + rpc__req__gpio_get_level__field_descriptors, + rpc__req__gpio_get_level__field_indices_by_name, + 1, rpc__req__gpio_get_level__number_ranges, + (ProtobufCMessageInit) rpc__req__gpio_get_level__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__gpio_get_level__field_descriptors[2] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespGpioGetLevel, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "level", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcRespGpioGetLevel, level), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__gpio_get_level__field_indices_by_name[] = { + 1, /* field[1] = level */ + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__gpio_get_level__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__resp__gpio_get_level__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_GpioGetLevel", + "RpcRespGpioGetLevel", + "RpcRespGpioGetLevel", + "", + sizeof(RpcRespGpioGetLevel), + 2, + rpc__resp__gpio_get_level__field_descriptors, + rpc__resp__gpio_get_level__field_indices_by_name, + 1, rpc__resp__gpio_get_level__number_ranges, + (ProtobufCMessageInit) rpc__resp__gpio_get_level__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__gpio_set_direction__field_descriptors[2] = +{ + { + "gpio_num", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqGpioSetDirection, gpio_num), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "mode", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(RpcReqGpioSetDirection, mode), + &rpc__gpio_mode__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__gpio_set_direction__field_indices_by_name[] = { + 0, /* field[0] = gpio_num */ + 1, /* field[1] = mode */ +}; +static const ProtobufCIntRange rpc__req__gpio_set_direction__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__req__gpio_set_direction__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_GpioSetDirection", + "RpcReqGpioSetDirection", + "RpcReqGpioSetDirection", + "", + sizeof(RpcReqGpioSetDirection), + 2, + rpc__req__gpio_set_direction__field_descriptors, + rpc__req__gpio_set_direction__field_indices_by_name, + 1, rpc__req__gpio_set_direction__number_ranges, + (ProtobufCMessageInit) rpc__req__gpio_set_direction__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__gpio_set_direction__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespGpioSetDirection, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__gpio_set_direction__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__gpio_set_direction__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__gpio_set_direction__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_GpioSetDirection", + "RpcRespGpioSetDirection", + "RpcRespGpioSetDirection", + "", + sizeof(RpcRespGpioSetDirection), + 1, + rpc__resp__gpio_set_direction__field_descriptors, + rpc__resp__gpio_set_direction__field_indices_by_name, + 1, rpc__resp__gpio_set_direction__number_ranges, + (ProtobufCMessageInit) rpc__resp__gpio_set_direction__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__gpio_input_enable__field_descriptors[1] = +{ + { + "gpio_num", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqGpioInputEnable, gpio_num), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__gpio_input_enable__field_indices_by_name[] = { + 0, /* field[0] = gpio_num */ +}; +static const ProtobufCIntRange rpc__req__gpio_input_enable__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__gpio_input_enable__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_GpioInputEnable", + "RpcReqGpioInputEnable", + "RpcReqGpioInputEnable", + "", + sizeof(RpcReqGpioInputEnable), + 1, + rpc__req__gpio_input_enable__field_descriptors, + rpc__req__gpio_input_enable__field_indices_by_name, + 1, rpc__req__gpio_input_enable__number_ranges, + (ProtobufCMessageInit) rpc__req__gpio_input_enable__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__gpio_input_enable__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespGpioInputEnable, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__gpio_input_enable__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__gpio_input_enable__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__gpio_input_enable__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_GpioInputEnable", + "RpcRespGpioInputEnable", + "RpcRespGpioInputEnable", + "", + sizeof(RpcRespGpioInputEnable), + 1, + rpc__resp__gpio_input_enable__field_descriptors, + rpc__resp__gpio_input_enable__field_indices_by_name, + 1, rpc__resp__gpio_input_enable__number_ranges, + (ProtobufCMessageInit) rpc__resp__gpio_input_enable__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__gpio_set_pull_mode__field_descriptors[2] = +{ + { + "gpio_num", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqGpioSetPullMode, gpio_num), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "pull", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(RpcReqGpioSetPullMode, pull), + &rpc__gpio_pull_mode__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__gpio_set_pull_mode__field_indices_by_name[] = { + 0, /* field[0] = gpio_num */ + 1, /* field[1] = pull */ +}; +static const ProtobufCIntRange rpc__req__gpio_set_pull_mode__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__req__gpio_set_pull_mode__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_GpioSetPullMode", + "RpcReqGpioSetPullMode", + "RpcReqGpioSetPullMode", + "", + sizeof(RpcReqGpioSetPullMode), + 2, + rpc__req__gpio_set_pull_mode__field_descriptors, + rpc__req__gpio_set_pull_mode__field_indices_by_name, + 1, rpc__req__gpio_set_pull_mode__number_ranges, + (ProtobufCMessageInit) rpc__req__gpio_set_pull_mode__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__gpio_set_pull_mode__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespGpioSetPullMode, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__gpio_set_pull_mode__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__gpio_set_pull_mode__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__gpio_set_pull_mode__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_GpioSetPullMode", + "RpcRespGpioSetPullMode", + "RpcRespGpioSetPullMode", + "", + sizeof(RpcRespGpioSetPullMode), + 1, + rpc__resp__gpio_set_pull_mode__field_descriptors, + rpc__resp__gpio_set_pull_mode__field_indices_by_name, + 1, rpc__resp__gpio_set_pull_mode__number_ranges, + (ProtobufCMessageInit) rpc__resp__gpio_set_pull_mode__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__ext_coex__field_descriptors[9] = +{ + { + "cmd", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcReqExtCoex, cmd), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "set_gpio_wire_type", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcReqExtCoex, set_gpio_wire_type), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "set_gpio_request_pin", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqExtCoex, set_gpio_request_pin), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "set_gpio_priority_pin", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqExtCoex, set_gpio_priority_pin), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "set_gpio_grant_pin", + 5, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqExtCoex, set_gpio_grant_pin), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "set_gpio_tx_line_pin", + 6, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqExtCoex, set_gpio_tx_line_pin), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "set_work_mode", + 7, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcReqExtCoex, set_work_mode), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "set_grant_delay_us", + 8, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcReqExtCoex, set_grant_delay_us), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "set_validate_high", + 9, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(RpcReqExtCoex, set_validate_high), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__ext_coex__field_indices_by_name[] = { + 0, /* field[0] = cmd */ + 4, /* field[4] = set_gpio_grant_pin */ + 3, /* field[3] = set_gpio_priority_pin */ + 2, /* field[2] = set_gpio_request_pin */ + 5, /* field[5] = set_gpio_tx_line_pin */ + 1, /* field[1] = set_gpio_wire_type */ + 7, /* field[7] = set_grant_delay_us */ + 8, /* field[8] = set_validate_high */ + 6, /* field[6] = set_work_mode */ +}; +static const ProtobufCIntRange rpc__req__ext_coex__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 9 } +}; +const ProtobufCMessageDescriptor rpc__req__ext_coex__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_ExtCoex", + "RpcReqExtCoex", + "RpcReqExtCoex", + "", + sizeof(RpcReqExtCoex), + 9, + rpc__req__ext_coex__field_descriptors, + rpc__req__ext_coex__field_indices_by_name, + 1, rpc__req__ext_coex__number_ranges, + (ProtobufCMessageInit) rpc__req__ext_coex__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__ext_coex__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespExtCoex, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__ext_coex__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__ext_coex__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__ext_coex__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_ExtCoex", + "RpcRespExtCoex", + "RpcRespExtCoex", + "", + sizeof(RpcRespExtCoex), + 1, + rpc__resp__ext_coex__field_descriptors, + rpc__resp__ext_coex__field_indices_by_name, + 1, rpc__resp__ext_coex__number_ranges, + (ProtobufCMessageInit) rpc__resp__ext_coex__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__event__dhcp_dns_status__field_descriptors[10] = +{ + { + "iface", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcEventDhcpDnsStatus, iface), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "net_link_up", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcEventDhcpDnsStatus, net_link_up), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "dhcp_up", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcEventDhcpDnsStatus, dhcp_up), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "dhcp_ip", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcEventDhcpDnsStatus, dhcp_ip), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "dhcp_nm", + 5, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcEventDhcpDnsStatus, dhcp_nm), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "dhcp_gw", + 6, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcEventDhcpDnsStatus, dhcp_gw), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "dns_up", + 7, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcEventDhcpDnsStatus, dns_up), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "dns_ip", + 8, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcEventDhcpDnsStatus, dns_ip), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "dns_type", + 9, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcEventDhcpDnsStatus, dns_type), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp", + 10, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcEventDhcpDnsStatus, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__event__dhcp_dns_status__field_indices_by_name[] = { + 5, /* field[5] = dhcp_gw */ + 3, /* field[3] = dhcp_ip */ + 4, /* field[4] = dhcp_nm */ + 2, /* field[2] = dhcp_up */ + 7, /* field[7] = dns_ip */ + 8, /* field[8] = dns_type */ + 6, /* field[6] = dns_up */ + 0, /* field[0] = iface */ + 1, /* field[1] = net_link_up */ + 9, /* field[9] = resp */ +}; +static const ProtobufCIntRange rpc__event__dhcp_dns_status__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 10 } +}; +const ProtobufCMessageDescriptor rpc__event__dhcp_dns_status__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Event_DhcpDnsStatus", + "RpcEventDhcpDnsStatus", + "RpcEventDhcpDnsStatus", + "", + sizeof(RpcEventDhcpDnsStatus), + 10, + rpc__event__dhcp_dns_status__field_descriptors, + rpc__event__dhcp_dns_status__field_indices_by_name, + 1, rpc__event__dhcp_dns_status__number_ranges, + (ProtobufCMessageInit) rpc__event__dhcp_dns_status__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__event__sta_itwt_setup__field_descriptors[5] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcEventStaItwtSetup, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "config", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(RpcEventStaItwtSetup, config), + &wifi_itwt_setup_config__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "status", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcEventStaItwtSetup, status), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "reason", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcEventStaItwtSetup, reason), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "target_wake_time", + 5, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT64, + 0, /* quantifier_offset */ + offsetof(RpcEventStaItwtSetup, target_wake_time), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__event__sta_itwt_setup__field_indices_by_name[] = { + 1, /* field[1] = config */ + 3, /* field[3] = reason */ + 0, /* field[0] = resp */ + 2, /* field[2] = status */ + 4, /* field[4] = target_wake_time */ +}; +static const ProtobufCIntRange rpc__event__sta_itwt_setup__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 5 } +}; +const ProtobufCMessageDescriptor rpc__event__sta_itwt_setup__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Event_StaItwtSetup", + "RpcEventStaItwtSetup", + "RpcEventStaItwtSetup", + "", + sizeof(RpcEventStaItwtSetup), + 5, + rpc__event__sta_itwt_setup__field_descriptors, + rpc__event__sta_itwt_setup__field_indices_by_name, + 1, rpc__event__sta_itwt_setup__number_ranges, + (ProtobufCMessageInit) rpc__event__sta_itwt_setup__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__event__sta_itwt_teardown__field_descriptors[3] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcEventStaItwtTeardown, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "flow_id", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcEventStaItwtTeardown, flow_id), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "status", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcEventStaItwtTeardown, status), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__event__sta_itwt_teardown__field_indices_by_name[] = { + 1, /* field[1] = flow_id */ + 0, /* field[0] = resp */ + 2, /* field[2] = status */ +}; +static const ProtobufCIntRange rpc__event__sta_itwt_teardown__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 3 } +}; +const ProtobufCMessageDescriptor rpc__event__sta_itwt_teardown__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Event_StaItwtTeardown", + "RpcEventStaItwtTeardown", + "RpcEventStaItwtTeardown", + "", + sizeof(RpcEventStaItwtTeardown), + 3, + rpc__event__sta_itwt_teardown__field_descriptors, + rpc__event__sta_itwt_teardown__field_indices_by_name, + 1, rpc__event__sta_itwt_teardown__number_ranges, + (ProtobufCMessageInit) rpc__event__sta_itwt_teardown__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__event__sta_itwt_suspend__field_descriptors[4] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcEventStaItwtSuspend, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "status", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcEventStaItwtSuspend, status), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "flow_id_bitmap", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcEventStaItwtSuspend, flow_id_bitmap), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "actual_suspend_time_ms", + 4, + PROTOBUF_C_LABEL_REPEATED, + PROTOBUF_C_TYPE_UINT32, + offsetof(RpcEventStaItwtSuspend, n_actual_suspend_time_ms), + offsetof(RpcEventStaItwtSuspend, actual_suspend_time_ms), + NULL, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_PACKED, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__event__sta_itwt_suspend__field_indices_by_name[] = { + 3, /* field[3] = actual_suspend_time_ms */ + 2, /* field[2] = flow_id_bitmap */ + 0, /* field[0] = resp */ + 1, /* field[1] = status */ +}; +static const ProtobufCIntRange rpc__event__sta_itwt_suspend__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 4 } +}; +const ProtobufCMessageDescriptor rpc__event__sta_itwt_suspend__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Event_StaItwtSuspend", + "RpcEventStaItwtSuspend", + "RpcEventStaItwtSuspend", + "", + sizeof(RpcEventStaItwtSuspend), + 4, + rpc__event__sta_itwt_suspend__field_descriptors, + rpc__event__sta_itwt_suspend__field_indices_by_name, + 1, rpc__event__sta_itwt_suspend__number_ranges, + (ProtobufCMessageInit) rpc__event__sta_itwt_suspend__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__event__sta_itwt_probe__field_descriptors[3] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcEventStaItwtProbe, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "status", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcEventStaItwtProbe, status), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "reason", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcEventStaItwtProbe, reason), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__event__sta_itwt_probe__field_indices_by_name[] = { + 2, /* field[2] = reason */ + 0, /* field[0] = resp */ + 1, /* field[1] = status */ +}; +static const ProtobufCIntRange rpc__event__sta_itwt_probe__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 3 } +}; +const ProtobufCMessageDescriptor rpc__event__sta_itwt_probe__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Event_StaItwtProbe", + "RpcEventStaItwtProbe", + "RpcEventStaItwtProbe", + "", + sizeof(RpcEventStaItwtProbe), + 3, + rpc__event__sta_itwt_probe__field_descriptors, + rpc__event__sta_itwt_probe__field_indices_by_name, + 1, rpc__event__sta_itwt_probe__number_ranges, + (ProtobufCMessageInit) rpc__event__sta_itwt_probe__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__wifi_sta_enterprise_enable__field_descriptors NULL +#define rpc__req__wifi_sta_enterprise_enable__field_indices_by_name NULL +#define rpc__req__wifi_sta_enterprise_enable__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__wifi_sta_enterprise_enable__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiStaEnterpriseEnable", + "RpcReqWifiStaEnterpriseEnable", + "RpcReqWifiStaEnterpriseEnable", + "", + sizeof(RpcReqWifiStaEnterpriseEnable), + 0, + rpc__req__wifi_sta_enterprise_enable__field_descriptors, + rpc__req__wifi_sta_enterprise_enable__field_indices_by_name, + 0, rpc__req__wifi_sta_enterprise_enable__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_sta_enterprise_enable__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_sta_enterprise_enable__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiStaEnterpriseEnable, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_sta_enterprise_enable__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_sta_enterprise_enable__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_sta_enterprise_enable__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiStaEnterpriseEnable", + "RpcRespWifiStaEnterpriseEnable", + "RpcRespWifiStaEnterpriseEnable", + "", + sizeof(RpcRespWifiStaEnterpriseEnable), + 1, + rpc__resp__wifi_sta_enterprise_enable__field_descriptors, + rpc__resp__wifi_sta_enterprise_enable__field_indices_by_name, + 1, rpc__resp__wifi_sta_enterprise_enable__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_sta_enterprise_enable__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__wifi_sta_enterprise_disable__field_descriptors NULL +#define rpc__req__wifi_sta_enterprise_disable__field_indices_by_name NULL +#define rpc__req__wifi_sta_enterprise_disable__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__wifi_sta_enterprise_disable__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiStaEnterpriseDisable", + "RpcReqWifiStaEnterpriseDisable", + "RpcReqWifiStaEnterpriseDisable", + "", + sizeof(RpcReqWifiStaEnterpriseDisable), + 0, + rpc__req__wifi_sta_enterprise_disable__field_descriptors, + rpc__req__wifi_sta_enterprise_disable__field_indices_by_name, + 0, rpc__req__wifi_sta_enterprise_disable__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_sta_enterprise_disable__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_sta_enterprise_disable__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiStaEnterpriseDisable, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_sta_enterprise_disable__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_sta_enterprise_disable__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_sta_enterprise_disable__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiStaEnterpriseDisable", + "RpcRespWifiStaEnterpriseDisable", + "RpcRespWifiStaEnterpriseDisable", + "", + sizeof(RpcRespWifiStaEnterpriseDisable), + 1, + rpc__resp__wifi_sta_enterprise_disable__field_descriptors, + rpc__resp__wifi_sta_enterprise_disable__field_indices_by_name, + 1, rpc__resp__wifi_sta_enterprise_disable__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_sta_enterprise_disable__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__eap_set_identity__field_descriptors[2] = +{ + { + "identity", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcReqEapSetIdentity, identity), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "len", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqEapSetIdentity, len), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__eap_set_identity__field_indices_by_name[] = { + 0, /* field[0] = identity */ + 1, /* field[1] = len */ +}; +static const ProtobufCIntRange rpc__req__eap_set_identity__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__req__eap_set_identity__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_EapSetIdentity", + "RpcReqEapSetIdentity", + "RpcReqEapSetIdentity", + "", + sizeof(RpcReqEapSetIdentity), + 2, + rpc__req__eap_set_identity__field_descriptors, + rpc__req__eap_set_identity__field_indices_by_name, + 1, rpc__req__eap_set_identity__number_ranges, + (ProtobufCMessageInit) rpc__req__eap_set_identity__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__eap_set_identity__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespEapSetIdentity, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__eap_set_identity__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__eap_set_identity__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__eap_set_identity__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_EapSetIdentity", + "RpcRespEapSetIdentity", + "RpcRespEapSetIdentity", + "", + sizeof(RpcRespEapSetIdentity), + 1, + rpc__resp__eap_set_identity__field_descriptors, + rpc__resp__eap_set_identity__field_indices_by_name, + 1, rpc__resp__eap_set_identity__number_ranges, + (ProtobufCMessageInit) rpc__resp__eap_set_identity__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__eap_clear_identity__field_descriptors NULL +#define rpc__req__eap_clear_identity__field_indices_by_name NULL +#define rpc__req__eap_clear_identity__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__eap_clear_identity__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_EapClearIdentity", + "RpcReqEapClearIdentity", + "RpcReqEapClearIdentity", + "", + sizeof(RpcReqEapClearIdentity), + 0, + rpc__req__eap_clear_identity__field_descriptors, + rpc__req__eap_clear_identity__field_indices_by_name, + 0, rpc__req__eap_clear_identity__number_ranges, + (ProtobufCMessageInit) rpc__req__eap_clear_identity__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__eap_clear_identity__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespEapClearIdentity, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__eap_clear_identity__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__eap_clear_identity__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__eap_clear_identity__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_EapClearIdentity", + "RpcRespEapClearIdentity", + "RpcRespEapClearIdentity", + "", + sizeof(RpcRespEapClearIdentity), + 1, + rpc__resp__eap_clear_identity__field_descriptors, + rpc__resp__eap_clear_identity__field_indices_by_name, + 1, rpc__resp__eap_clear_identity__number_ranges, + (ProtobufCMessageInit) rpc__resp__eap_clear_identity__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__eap_set_username__field_descriptors[2] = +{ + { + "username", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcReqEapSetUsername, username), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "len", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqEapSetUsername, len), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__eap_set_username__field_indices_by_name[] = { + 1, /* field[1] = len */ + 0, /* field[0] = username */ +}; +static const ProtobufCIntRange rpc__req__eap_set_username__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__req__eap_set_username__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_EapSetUsername", + "RpcReqEapSetUsername", + "RpcReqEapSetUsername", + "", + sizeof(RpcReqEapSetUsername), + 2, + rpc__req__eap_set_username__field_descriptors, + rpc__req__eap_set_username__field_indices_by_name, + 1, rpc__req__eap_set_username__number_ranges, + (ProtobufCMessageInit) rpc__req__eap_set_username__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__eap_set_username__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespEapSetUsername, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__eap_set_username__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__eap_set_username__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__eap_set_username__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_EapSetUsername", + "RpcRespEapSetUsername", + "RpcRespEapSetUsername", + "", + sizeof(RpcRespEapSetUsername), + 1, + rpc__resp__eap_set_username__field_descriptors, + rpc__resp__eap_set_username__field_indices_by_name, + 1, rpc__resp__eap_set_username__number_ranges, + (ProtobufCMessageInit) rpc__resp__eap_set_username__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__eap_clear_username__field_descriptors NULL +#define rpc__req__eap_clear_username__field_indices_by_name NULL +#define rpc__req__eap_clear_username__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__eap_clear_username__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_EapClearUsername", + "RpcReqEapClearUsername", + "RpcReqEapClearUsername", + "", + sizeof(RpcReqEapClearUsername), + 0, + rpc__req__eap_clear_username__field_descriptors, + rpc__req__eap_clear_username__field_indices_by_name, + 0, rpc__req__eap_clear_username__number_ranges, + (ProtobufCMessageInit) rpc__req__eap_clear_username__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__eap_clear_username__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespEapClearUsername, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__eap_clear_username__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__eap_clear_username__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__eap_clear_username__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_EapClearUsername", + "RpcRespEapClearUsername", + "RpcRespEapClearUsername", + "", + sizeof(RpcRespEapClearUsername), + 1, + rpc__resp__eap_clear_username__field_descriptors, + rpc__resp__eap_clear_username__field_indices_by_name, + 1, rpc__resp__eap_clear_username__number_ranges, + (ProtobufCMessageInit) rpc__resp__eap_clear_username__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__eap_set_password__field_descriptors[2] = +{ + { + "password", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcReqEapSetPassword, password), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "len", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqEapSetPassword, len), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__eap_set_password__field_indices_by_name[] = { + 1, /* field[1] = len */ + 0, /* field[0] = password */ +}; +static const ProtobufCIntRange rpc__req__eap_set_password__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__req__eap_set_password__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_EapSetPassword", + "RpcReqEapSetPassword", + "RpcReqEapSetPassword", + "", + sizeof(RpcReqEapSetPassword), + 2, + rpc__req__eap_set_password__field_descriptors, + rpc__req__eap_set_password__field_indices_by_name, + 1, rpc__req__eap_set_password__number_ranges, + (ProtobufCMessageInit) rpc__req__eap_set_password__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__eap_set_password__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespEapSetPassword, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__eap_set_password__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__eap_set_password__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__eap_set_password__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_EapSetPassword", + "RpcRespEapSetPassword", + "RpcRespEapSetPassword", + "", + sizeof(RpcRespEapSetPassword), + 1, + rpc__resp__eap_set_password__field_descriptors, + rpc__resp__eap_set_password__field_indices_by_name, + 1, rpc__resp__eap_set_password__number_ranges, + (ProtobufCMessageInit) rpc__resp__eap_set_password__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__eap_clear_password__field_descriptors NULL +#define rpc__req__eap_clear_password__field_indices_by_name NULL +#define rpc__req__eap_clear_password__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__eap_clear_password__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_EapClearPassword", + "RpcReqEapClearPassword", + "RpcReqEapClearPassword", + "", + sizeof(RpcReqEapClearPassword), + 0, + rpc__req__eap_clear_password__field_descriptors, + rpc__req__eap_clear_password__field_indices_by_name, + 0, rpc__req__eap_clear_password__number_ranges, + (ProtobufCMessageInit) rpc__req__eap_clear_password__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__eap_clear_password__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespEapClearPassword, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__eap_clear_password__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__eap_clear_password__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__eap_clear_password__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_EapClearPassword", + "RpcRespEapClearPassword", + "RpcRespEapClearPassword", + "", + sizeof(RpcRespEapClearPassword), + 1, + rpc__resp__eap_clear_password__field_descriptors, + rpc__resp__eap_clear_password__field_indices_by_name, + 1, rpc__resp__eap_clear_password__number_ranges, + (ProtobufCMessageInit) rpc__resp__eap_clear_password__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__eap_set_new_password__field_descriptors[2] = +{ + { + "new_password", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcReqEapSetNewPassword, new_password), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "len", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqEapSetNewPassword, len), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__eap_set_new_password__field_indices_by_name[] = { + 1, /* field[1] = len */ + 0, /* field[0] = new_password */ +}; +static const ProtobufCIntRange rpc__req__eap_set_new_password__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__req__eap_set_new_password__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_EapSetNewPassword", + "RpcReqEapSetNewPassword", + "RpcReqEapSetNewPassword", + "", + sizeof(RpcReqEapSetNewPassword), + 2, + rpc__req__eap_set_new_password__field_descriptors, + rpc__req__eap_set_new_password__field_indices_by_name, + 1, rpc__req__eap_set_new_password__number_ranges, + (ProtobufCMessageInit) rpc__req__eap_set_new_password__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__eap_set_new_password__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespEapSetNewPassword, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__eap_set_new_password__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__eap_set_new_password__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__eap_set_new_password__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_EapSetNewPassword", + "RpcRespEapSetNewPassword", + "RpcRespEapSetNewPassword", + "", + sizeof(RpcRespEapSetNewPassword), + 1, + rpc__resp__eap_set_new_password__field_descriptors, + rpc__resp__eap_set_new_password__field_indices_by_name, + 1, rpc__resp__eap_set_new_password__number_ranges, + (ProtobufCMessageInit) rpc__resp__eap_set_new_password__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__eap_clear_new_password__field_descriptors NULL +#define rpc__req__eap_clear_new_password__field_indices_by_name NULL +#define rpc__req__eap_clear_new_password__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__eap_clear_new_password__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_EapClearNewPassword", + "RpcReqEapClearNewPassword", + "RpcReqEapClearNewPassword", + "", + sizeof(RpcReqEapClearNewPassword), + 0, + rpc__req__eap_clear_new_password__field_descriptors, + rpc__req__eap_clear_new_password__field_indices_by_name, + 0, rpc__req__eap_clear_new_password__number_ranges, + (ProtobufCMessageInit) rpc__req__eap_clear_new_password__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__eap_clear_new_password__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespEapClearNewPassword, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__eap_clear_new_password__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__eap_clear_new_password__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__eap_clear_new_password__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_EapClearNewPassword", + "RpcRespEapClearNewPassword", + "RpcRespEapClearNewPassword", + "", + sizeof(RpcRespEapClearNewPassword), + 1, + rpc__resp__eap_clear_new_password__field_descriptors, + rpc__resp__eap_clear_new_password__field_indices_by_name, + 1, rpc__resp__eap_clear_new_password__number_ranges, + (ProtobufCMessageInit) rpc__resp__eap_clear_new_password__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__eap_set_ca_cert__field_descriptors[2] = +{ + { + "ca_cert", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcReqEapSetCaCert, ca_cert), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "ca_cert_len", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqEapSetCaCert, ca_cert_len), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__eap_set_ca_cert__field_indices_by_name[] = { + 0, /* field[0] = ca_cert */ + 1, /* field[1] = ca_cert_len */ +}; +static const ProtobufCIntRange rpc__req__eap_set_ca_cert__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__req__eap_set_ca_cert__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_EapSetCaCert", + "RpcReqEapSetCaCert", + "RpcReqEapSetCaCert", + "", + sizeof(RpcReqEapSetCaCert), + 2, + rpc__req__eap_set_ca_cert__field_descriptors, + rpc__req__eap_set_ca_cert__field_indices_by_name, + 1, rpc__req__eap_set_ca_cert__number_ranges, + (ProtobufCMessageInit) rpc__req__eap_set_ca_cert__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__eap_set_ca_cert__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespEapSetCaCert, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__eap_set_ca_cert__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__eap_set_ca_cert__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__eap_set_ca_cert__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_EapSetCaCert", + "RpcRespEapSetCaCert", + "RpcRespEapSetCaCert", + "", + sizeof(RpcRespEapSetCaCert), + 1, + rpc__resp__eap_set_ca_cert__field_descriptors, + rpc__resp__eap_set_ca_cert__field_indices_by_name, + 1, rpc__resp__eap_set_ca_cert__number_ranges, + (ProtobufCMessageInit) rpc__resp__eap_set_ca_cert__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__eap_clear_ca_cert__field_descriptors NULL +#define rpc__req__eap_clear_ca_cert__field_indices_by_name NULL +#define rpc__req__eap_clear_ca_cert__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__eap_clear_ca_cert__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_EapClearCaCert", + "RpcReqEapClearCaCert", + "RpcReqEapClearCaCert", + "", + sizeof(RpcReqEapClearCaCert), + 0, + rpc__req__eap_clear_ca_cert__field_descriptors, + rpc__req__eap_clear_ca_cert__field_indices_by_name, + 0, rpc__req__eap_clear_ca_cert__number_ranges, + (ProtobufCMessageInit) rpc__req__eap_clear_ca_cert__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__eap_clear_ca_cert__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespEapClearCaCert, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__eap_clear_ca_cert__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__eap_clear_ca_cert__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__eap_clear_ca_cert__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_EapClearCaCert", + "RpcRespEapClearCaCert", + "RpcRespEapClearCaCert", + "", + sizeof(RpcRespEapClearCaCert), + 1, + rpc__resp__eap_clear_ca_cert__field_descriptors, + rpc__resp__eap_clear_ca_cert__field_indices_by_name, + 1, rpc__resp__eap_clear_ca_cert__number_ranges, + (ProtobufCMessageInit) rpc__resp__eap_clear_ca_cert__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__eap_set_certificate_and_key__field_descriptors[6] = +{ + { + "client_cert", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcReqEapSetCertificateAndKey, client_cert), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "client_cert_len", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqEapSetCertificateAndKey, client_cert_len), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "private_key", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcReqEapSetCertificateAndKey, private_key), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "private_key_len", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqEapSetCertificateAndKey, private_key_len), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "private_key_password", + 5, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcReqEapSetCertificateAndKey, private_key_password), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "private_key_passwd_len", + 6, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqEapSetCertificateAndKey, private_key_passwd_len), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__eap_set_certificate_and_key__field_indices_by_name[] = { + 0, /* field[0] = client_cert */ + 1, /* field[1] = client_cert_len */ + 2, /* field[2] = private_key */ + 3, /* field[3] = private_key_len */ + 5, /* field[5] = private_key_passwd_len */ + 4, /* field[4] = private_key_password */ +}; +static const ProtobufCIntRange rpc__req__eap_set_certificate_and_key__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 6 } +}; +const ProtobufCMessageDescriptor rpc__req__eap_set_certificate_and_key__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_EapSetCertificateAndKey", + "RpcReqEapSetCertificateAndKey", + "RpcReqEapSetCertificateAndKey", + "", + sizeof(RpcReqEapSetCertificateAndKey), + 6, + rpc__req__eap_set_certificate_and_key__field_descriptors, + rpc__req__eap_set_certificate_and_key__field_indices_by_name, + 1, rpc__req__eap_set_certificate_and_key__number_ranges, + (ProtobufCMessageInit) rpc__req__eap_set_certificate_and_key__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__eap_set_certificate_and_key__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespEapSetCertificateAndKey, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__eap_set_certificate_and_key__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__eap_set_certificate_and_key__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__eap_set_certificate_and_key__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_EapSetCertificateAndKey", + "RpcRespEapSetCertificateAndKey", + "RpcRespEapSetCertificateAndKey", + "", + sizeof(RpcRespEapSetCertificateAndKey), + 1, + rpc__resp__eap_set_certificate_and_key__field_descriptors, + rpc__resp__eap_set_certificate_and_key__field_indices_by_name, + 1, rpc__resp__eap_set_certificate_and_key__number_ranges, + (ProtobufCMessageInit) rpc__resp__eap_set_certificate_and_key__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__eap_clear_certificate_and_key__field_descriptors NULL +#define rpc__req__eap_clear_certificate_and_key__field_indices_by_name NULL +#define rpc__req__eap_clear_certificate_and_key__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__eap_clear_certificate_and_key__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_EapClearCertificateAndKey", + "RpcReqEapClearCertificateAndKey", + "RpcReqEapClearCertificateAndKey", + "", + sizeof(RpcReqEapClearCertificateAndKey), + 0, + rpc__req__eap_clear_certificate_and_key__field_descriptors, + rpc__req__eap_clear_certificate_and_key__field_indices_by_name, + 0, rpc__req__eap_clear_certificate_and_key__number_ranges, + (ProtobufCMessageInit) rpc__req__eap_clear_certificate_and_key__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__eap_clear_certificate_and_key__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespEapClearCertificateAndKey, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__eap_clear_certificate_and_key__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__eap_clear_certificate_and_key__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__eap_clear_certificate_and_key__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_EapClearCertificateAndKey", + "RpcRespEapClearCertificateAndKey", + "RpcRespEapClearCertificateAndKey", + "", + sizeof(RpcRespEapClearCertificateAndKey), + 1, + rpc__resp__eap_clear_certificate_and_key__field_descriptors, + rpc__resp__eap_clear_certificate_and_key__field_indices_by_name, + 1, rpc__resp__eap_clear_certificate_and_key__number_ranges, + (ProtobufCMessageInit) rpc__resp__eap_clear_certificate_and_key__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__eap_set_disable_time_check__field_descriptors[1] = +{ + { + "disable", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(RpcReqEapSetDisableTimeCheck, disable), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__eap_set_disable_time_check__field_indices_by_name[] = { + 0, /* field[0] = disable */ +}; +static const ProtobufCIntRange rpc__req__eap_set_disable_time_check__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__eap_set_disable_time_check__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_EapSetDisableTimeCheck", + "RpcReqEapSetDisableTimeCheck", + "RpcReqEapSetDisableTimeCheck", + "", + sizeof(RpcReqEapSetDisableTimeCheck), + 1, + rpc__req__eap_set_disable_time_check__field_descriptors, + rpc__req__eap_set_disable_time_check__field_indices_by_name, + 1, rpc__req__eap_set_disable_time_check__number_ranges, + (ProtobufCMessageInit) rpc__req__eap_set_disable_time_check__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__eap_set_disable_time_check__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespEapSetDisableTimeCheck, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__eap_set_disable_time_check__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__eap_set_disable_time_check__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__eap_set_disable_time_check__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_EapSetDisableTimeCheck", + "RpcRespEapSetDisableTimeCheck", + "RpcRespEapSetDisableTimeCheck", + "", + sizeof(RpcRespEapSetDisableTimeCheck), + 1, + rpc__resp__eap_set_disable_time_check__field_descriptors, + rpc__resp__eap_set_disable_time_check__field_indices_by_name, + 1, rpc__resp__eap_set_disable_time_check__number_ranges, + (ProtobufCMessageInit) rpc__resp__eap_set_disable_time_check__init, + NULL,NULL,NULL /* reserved[123] */ +}; +#define rpc__req__eap_get_disable_time_check__field_descriptors NULL +#define rpc__req__eap_get_disable_time_check__field_indices_by_name NULL +#define rpc__req__eap_get_disable_time_check__number_ranges NULL +const ProtobufCMessageDescriptor rpc__req__eap_get_disable_time_check__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_EapGetDisableTimeCheck", + "RpcReqEapGetDisableTimeCheck", + "RpcReqEapGetDisableTimeCheck", + "", + sizeof(RpcReqEapGetDisableTimeCheck), + 0, + rpc__req__eap_get_disable_time_check__field_descriptors, + rpc__req__eap_get_disable_time_check__field_indices_by_name, + 0, rpc__req__eap_get_disable_time_check__number_ranges, + (ProtobufCMessageInit) rpc__req__eap_get_disable_time_check__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__eap_get_disable_time_check__field_descriptors[2] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespEapGetDisableTimeCheck, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "disable", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(RpcRespEapGetDisableTimeCheck, disable), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__eap_get_disable_time_check__field_indices_by_name[] = { + 1, /* field[1] = disable */ + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__eap_get_disable_time_check__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__resp__eap_get_disable_time_check__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_EapGetDisableTimeCheck", + "RpcRespEapGetDisableTimeCheck", + "RpcRespEapGetDisableTimeCheck", + "", + sizeof(RpcRespEapGetDisableTimeCheck), + 2, + rpc__resp__eap_get_disable_time_check__field_descriptors, + rpc__resp__eap_get_disable_time_check__field_indices_by_name, + 1, rpc__resp__eap_get_disable_time_check__number_ranges, + (ProtobufCMessageInit) rpc__resp__eap_get_disable_time_check__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__eap_set_ttls_phase2_method__field_descriptors[1] = +{ + { + "type", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqEapSetTtlsPhase2Method, type), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__eap_set_ttls_phase2_method__field_indices_by_name[] = { + 0, /* field[0] = type */ +}; +static const ProtobufCIntRange rpc__req__eap_set_ttls_phase2_method__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__eap_set_ttls_phase2_method__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_EapSetTtlsPhase2Method", + "RpcReqEapSetTtlsPhase2Method", + "RpcReqEapSetTtlsPhase2Method", + "", + sizeof(RpcReqEapSetTtlsPhase2Method), + 1, + rpc__req__eap_set_ttls_phase2_method__field_descriptors, + rpc__req__eap_set_ttls_phase2_method__field_indices_by_name, + 1, rpc__req__eap_set_ttls_phase2_method__number_ranges, + (ProtobufCMessageInit) rpc__req__eap_set_ttls_phase2_method__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__eap_set_ttls_phase2_method__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespEapSetTtlsPhase2Method, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__eap_set_ttls_phase2_method__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__eap_set_ttls_phase2_method__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__eap_set_ttls_phase2_method__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_EapSetTtlsPhase2Method", + "RpcRespEapSetTtlsPhase2Method", + "RpcRespEapSetTtlsPhase2Method", + "", + sizeof(RpcRespEapSetTtlsPhase2Method), + 1, + rpc__resp__eap_set_ttls_phase2_method__field_descriptors, + rpc__resp__eap_set_ttls_phase2_method__field_indices_by_name, + 1, rpc__resp__eap_set_ttls_phase2_method__number_ranges, + (ProtobufCMessageInit) rpc__resp__eap_set_ttls_phase2_method__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__eap_set_suiteb192bit_certification__field_descriptors[1] = +{ + { + "enable", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(RpcReqEapSetSuiteb192bitCertification, enable), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__eap_set_suiteb192bit_certification__field_indices_by_name[] = { + 0, /* field[0] = enable */ +}; +static const ProtobufCIntRange rpc__req__eap_set_suiteb192bit_certification__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__eap_set_suiteb192bit_certification__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_EapSetSuiteb192bitCertification", + "RpcReqEapSetSuiteb192bitCertification", + "RpcReqEapSetSuiteb192bitCertification", + "", + sizeof(RpcReqEapSetSuiteb192bitCertification), + 1, + rpc__req__eap_set_suiteb192bit_certification__field_descriptors, + rpc__req__eap_set_suiteb192bit_certification__field_indices_by_name, + 1, rpc__req__eap_set_suiteb192bit_certification__number_ranges, + (ProtobufCMessageInit) rpc__req__eap_set_suiteb192bit_certification__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__eap_set_suiteb192bit_certification__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespEapSetSuiteb192bitCertification, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__eap_set_suiteb192bit_certification__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__eap_set_suiteb192bit_certification__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__eap_set_suiteb192bit_certification__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_EapSetSuiteb192bitCertification", + "RpcRespEapSetSuiteb192bitCertification", + "RpcRespEapSetSuiteb192bitCertification", + "", + sizeof(RpcRespEapSetSuiteb192bitCertification), + 1, + rpc__resp__eap_set_suiteb192bit_certification__field_descriptors, + rpc__resp__eap_set_suiteb192bit_certification__field_indices_by_name, + 1, rpc__resp__eap_set_suiteb192bit_certification__number_ranges, + (ProtobufCMessageInit) rpc__resp__eap_set_suiteb192bit_certification__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__eap_set_pac_file__field_descriptors[2] = +{ + { + "pac_file", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcReqEapSetPacFile, pac_file), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "pac_file_len", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqEapSetPacFile, pac_file_len), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__eap_set_pac_file__field_indices_by_name[] = { + 0, /* field[0] = pac_file */ + 1, /* field[1] = pac_file_len */ +}; +static const ProtobufCIntRange rpc__req__eap_set_pac_file__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__req__eap_set_pac_file__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_EapSetPacFile", + "RpcReqEapSetPacFile", + "RpcReqEapSetPacFile", + "", + sizeof(RpcReqEapSetPacFile), + 2, + rpc__req__eap_set_pac_file__field_descriptors, + rpc__req__eap_set_pac_file__field_indices_by_name, + 1, rpc__req__eap_set_pac_file__number_ranges, + (ProtobufCMessageInit) rpc__req__eap_set_pac_file__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__eap_set_pac_file__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespEapSetPacFile, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__eap_set_pac_file__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__eap_set_pac_file__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__eap_set_pac_file__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_EapSetPacFile", + "RpcRespEapSetPacFile", + "RpcRespEapSetPacFile", + "", + sizeof(RpcRespEapSetPacFile), + 1, + rpc__resp__eap_set_pac_file__field_descriptors, + rpc__resp__eap_set_pac_file__field_indices_by_name, + 1, rpc__resp__eap_set_pac_file__number_ranges, + (ProtobufCMessageInit) rpc__resp__eap_set_pac_file__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__eap_set_fast_params__field_descriptors[1] = +{ + { + "eap_fast_config", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(RpcReqEapSetFastParams, eap_fast_config), + &eap_fast_config__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__eap_set_fast_params__field_indices_by_name[] = { + 0, /* field[0] = eap_fast_config */ +}; +static const ProtobufCIntRange rpc__req__eap_set_fast_params__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__eap_set_fast_params__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_EapSetFastParams", + "RpcReqEapSetFastParams", + "RpcReqEapSetFastParams", + "", + sizeof(RpcReqEapSetFastParams), + 1, + rpc__req__eap_set_fast_params__field_descriptors, + rpc__req__eap_set_fast_params__field_indices_by_name, + 1, rpc__req__eap_set_fast_params__number_ranges, + (ProtobufCMessageInit) rpc__req__eap_set_fast_params__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__eap_set_fast_params__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespEapSetFastParams, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__eap_set_fast_params__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__eap_set_fast_params__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__eap_set_fast_params__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_EapSetFastParams", + "RpcRespEapSetFastParams", + "RpcRespEapSetFastParams", + "", + sizeof(RpcRespEapSetFastParams), + 1, + rpc__resp__eap_set_fast_params__field_descriptors, + rpc__resp__eap_set_fast_params__field_indices_by_name, + 1, rpc__resp__eap_set_fast_params__number_ranges, + (ProtobufCMessageInit) rpc__resp__eap_set_fast_params__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__eap_use_default_cert_bundle__field_descriptors[1] = +{ + { + "use_default_bundle", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(RpcReqEapUseDefaultCertBundle, use_default_bundle), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__eap_use_default_cert_bundle__field_indices_by_name[] = { + 0, /* field[0] = use_default_bundle */ +}; +static const ProtobufCIntRange rpc__req__eap_use_default_cert_bundle__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__eap_use_default_cert_bundle__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_EapUseDefaultCertBundle", + "RpcReqEapUseDefaultCertBundle", + "RpcReqEapUseDefaultCertBundle", + "", + sizeof(RpcReqEapUseDefaultCertBundle), + 1, + rpc__req__eap_use_default_cert_bundle__field_descriptors, + rpc__req__eap_use_default_cert_bundle__field_indices_by_name, + 1, rpc__req__eap_use_default_cert_bundle__number_ranges, + (ProtobufCMessageInit) rpc__req__eap_use_default_cert_bundle__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__eap_use_default_cert_bundle__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespEapUseDefaultCertBundle, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__eap_use_default_cert_bundle__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__eap_use_default_cert_bundle__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__eap_use_default_cert_bundle__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_EapUseDefaultCertBundle", + "RpcRespEapUseDefaultCertBundle", + "RpcRespEapUseDefaultCertBundle", + "", + sizeof(RpcRespEapUseDefaultCertBundle), + 1, + rpc__resp__eap_use_default_cert_bundle__field_descriptors, + rpc__resp__eap_use_default_cert_bundle__field_indices_by_name, + 1, rpc__resp__eap_use_default_cert_bundle__number_ranges, + (ProtobufCMessageInit) rpc__resp__eap_use_default_cert_bundle__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__wifi_set_okc_support__field_descriptors[1] = +{ + { + "enable", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BOOL, + 0, /* quantifier_offset */ + offsetof(RpcReqWifiSetOkcSupport, enable), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__wifi_set_okc_support__field_indices_by_name[] = { + 0, /* field[0] = enable */ +}; +static const ProtobufCIntRange rpc__req__wifi_set_okc_support__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__wifi_set_okc_support__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_WifiSetOkcSupport", + "RpcReqWifiSetOkcSupport", + "RpcReqWifiSetOkcSupport", + "", + sizeof(RpcReqWifiSetOkcSupport), + 1, + rpc__req__wifi_set_okc_support__field_descriptors, + rpc__req__wifi_set_okc_support__field_indices_by_name, + 1, rpc__req__wifi_set_okc_support__number_ranges, + (ProtobufCMessageInit) rpc__req__wifi_set_okc_support__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__wifi_set_okc_support__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespWifiSetOkcSupport, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__wifi_set_okc_support__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__wifi_set_okc_support__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__wifi_set_okc_support__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_WifiSetOkcSupport", + "RpcRespWifiSetOkcSupport", + "RpcRespWifiSetOkcSupport", + "", + sizeof(RpcRespWifiSetOkcSupport), + 1, + rpc__resp__wifi_set_okc_support__field_descriptors, + rpc__resp__wifi_set_okc_support__field_indices_by_name, + 1, rpc__resp__wifi_set_okc_support__number_ranges, + (ProtobufCMessageInit) rpc__resp__wifi_set_okc_support__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__eap_set_domain_name__field_descriptors[1] = +{ + { + "domain_name", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcReqEapSetDomainName, domain_name), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__eap_set_domain_name__field_indices_by_name[] = { + 0, /* field[0] = domain_name */ +}; +static const ProtobufCIntRange rpc__req__eap_set_domain_name__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__eap_set_domain_name__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_EapSetDomainName", + "RpcReqEapSetDomainName", + "RpcReqEapSetDomainName", + "", + sizeof(RpcReqEapSetDomainName), + 1, + rpc__req__eap_set_domain_name__field_descriptors, + rpc__req__eap_set_domain_name__field_indices_by_name, + 1, rpc__req__eap_set_domain_name__number_ranges, + (ProtobufCMessageInit) rpc__req__eap_set_domain_name__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__eap_set_domain_name__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespEapSetDomainName, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__eap_set_domain_name__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__eap_set_domain_name__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__eap_set_domain_name__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_EapSetDomainName", + "RpcRespEapSetDomainName", + "RpcRespEapSetDomainName", + "", + sizeof(RpcRespEapSetDomainName), + 1, + rpc__resp__eap_set_domain_name__field_descriptors, + rpc__resp__eap_set_domain_name__field_indices_by_name, + 1, rpc__resp__eap_set_domain_name__number_ranges, + (ProtobufCMessageInit) rpc__resp__eap_set_domain_name__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__eap_set_eap_methods__field_descriptors[1] = +{ + { + "methods", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcReqEapSetEapMethods, methods), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__eap_set_eap_methods__field_indices_by_name[] = { + 0, /* field[0] = methods */ +}; +static const ProtobufCIntRange rpc__req__eap_set_eap_methods__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__req__eap_set_eap_methods__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_EapSetEapMethods", + "RpcReqEapSetEapMethods", + "RpcReqEapSetEapMethods", + "", + sizeof(RpcReqEapSetEapMethods), + 1, + rpc__req__eap_set_eap_methods__field_descriptors, + rpc__req__eap_set_eap_methods__field_indices_by_name, + 1, rpc__req__eap_set_eap_methods__number_ranges, + (ProtobufCMessageInit) rpc__req__eap_set_eap_methods__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__eap_set_eap_methods__field_descriptors[1] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespEapSetEapMethods, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__eap_set_eap_methods__field_indices_by_name[] = { + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__eap_set_eap_methods__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 1 } +}; +const ProtobufCMessageDescriptor rpc__resp__eap_set_eap_methods__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_EapSetEapMethods", + "RpcRespEapSetEapMethods", + "RpcRespEapSetEapMethods", + "", + sizeof(RpcRespEapSetEapMethods), + 1, + rpc__resp__eap_set_eap_methods__field_descriptors, + rpc__resp__eap_set_eap_methods__field_indices_by_name, + 1, rpc__resp__eap_set_eap_methods__number_ranges, + (ProtobufCMessageInit) rpc__resp__eap_set_eap_methods__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__event__supp_dpp_uri_ready__field_descriptors[2] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcEventSuppDppUriReady, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "qrcode", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcEventSuppDppUriReady, qrcode), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__event__supp_dpp_uri_ready__field_indices_by_name[] = { + 1, /* field[1] = qrcode */ + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__event__supp_dpp_uri_ready__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__event__supp_dpp_uri_ready__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Event_SuppDppUriReady", + "RpcEventSuppDppUriReady", + "RpcEventSuppDppUriReady", + "", + sizeof(RpcEventSuppDppUriReady), + 2, + rpc__event__supp_dpp_uri_ready__field_descriptors, + rpc__event__supp_dpp_uri_ready__field_indices_by_name, + 1, rpc__event__supp_dpp_uri_ready__number_ranges, + (ProtobufCMessageInit) rpc__event__supp_dpp_uri_ready__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__event__supp_dpp_cfg_recvd__field_descriptors[2] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcEventSuppDppCfgRecvd, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "cfg", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(RpcEventSuppDppCfgRecvd, cfg), + &wifi_config__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__event__supp_dpp_cfg_recvd__field_indices_by_name[] = { + 1, /* field[1] = cfg */ + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__event__supp_dpp_cfg_recvd__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__event__supp_dpp_cfg_recvd__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Event_SuppDppCfgRecvd", + "RpcEventSuppDppCfgRecvd", + "RpcEventSuppDppCfgRecvd", + "", + sizeof(RpcEventSuppDppCfgRecvd), + 2, + rpc__event__supp_dpp_cfg_recvd__field_descriptors, + rpc__event__supp_dpp_cfg_recvd__field_indices_by_name, + 1, rpc__event__supp_dpp_cfg_recvd__number_ranges, + (ProtobufCMessageInit) rpc__event__supp_dpp_cfg_recvd__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__event__supp_dpp_fail__field_descriptors[2] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcEventSuppDppFail, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "reason", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcEventSuppDppFail, reason), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__event__supp_dpp_fail__field_indices_by_name[] = { + 1, /* field[1] = reason */ + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__event__supp_dpp_fail__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__event__supp_dpp_fail__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Event_SuppDppFail", + "RpcEventSuppDppFail", + "RpcEventSuppDppFail", + "", + sizeof(RpcEventSuppDppFail), + 2, + rpc__event__supp_dpp_fail__field_descriptors, + rpc__event__supp_dpp_fail__field_indices_by_name, + 1, rpc__event__supp_dpp_fail__number_ranges, + (ProtobufCMessageInit) rpc__event__supp_dpp_fail__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__event__wifi_dpp_uri_ready__field_descriptors[2] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcEventWifiDppUriReady, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "qrcode", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcEventWifiDppUriReady, qrcode), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__event__wifi_dpp_uri_ready__field_indices_by_name[] = { + 1, /* field[1] = qrcode */ + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__event__wifi_dpp_uri_ready__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__event__wifi_dpp_uri_ready__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Event_WifiDppUriReady", + "RpcEventWifiDppUriReady", + "RpcEventWifiDppUriReady", + "", + sizeof(RpcEventWifiDppUriReady), + 2, + rpc__event__wifi_dpp_uri_ready__field_descriptors, + rpc__event__wifi_dpp_uri_ready__field_indices_by_name, + 1, rpc__event__wifi_dpp_uri_ready__number_ranges, + (ProtobufCMessageInit) rpc__event__wifi_dpp_uri_ready__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__event__wifi_dpp_cfg_recvd__field_descriptors[2] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcEventWifiDppCfgRecvd, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "cfg", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(RpcEventWifiDppCfgRecvd, cfg), + &wifi_config__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__event__wifi_dpp_cfg_recvd__field_indices_by_name[] = { + 1, /* field[1] = cfg */ + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__event__wifi_dpp_cfg_recvd__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__event__wifi_dpp_cfg_recvd__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Event_WifiDppCfgRecvd", + "RpcEventWifiDppCfgRecvd", + "RpcEventWifiDppCfgRecvd", + "", + sizeof(RpcEventWifiDppCfgRecvd), + 2, + rpc__event__wifi_dpp_cfg_recvd__field_descriptors, + rpc__event__wifi_dpp_cfg_recvd__field_indices_by_name, + 1, rpc__event__wifi_dpp_cfg_recvd__number_ranges, + (ProtobufCMessageInit) rpc__event__wifi_dpp_cfg_recvd__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__event__wifi_dpp_fail__field_descriptors[2] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcEventWifiDppFail, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "reason", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcEventWifiDppFail, reason), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__event__wifi_dpp_fail__field_indices_by_name[] = { + 1, /* field[1] = reason */ + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__event__wifi_dpp_fail__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__event__wifi_dpp_fail__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Event_WifiDppFail", + "RpcEventWifiDppFail", + "RpcEventWifiDppFail", + "", + sizeof(RpcEventWifiDppFail), + 2, + rpc__event__wifi_dpp_fail__field_descriptors, + rpc__event__wifi_dpp_fail__field_indices_by_name, + 1, rpc__event__wifi_dpp_fail__number_ranges, + (ProtobufCMessageInit) rpc__event__wifi_dpp_fail__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__req__custom_rpc__field_descriptors[2] = +{ + { + "custom_msg_id", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcReqCustomRpc, custom_msg_id), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "data", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcReqCustomRpc, data), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__req__custom_rpc__field_indices_by_name[] = { + 0, /* field[0] = custom_msg_id */ + 1, /* field[1] = data */ +}; +static const ProtobufCIntRange rpc__req__custom_rpc__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 2 } +}; +const ProtobufCMessageDescriptor rpc__req__custom_rpc__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Req_CustomRpc", + "RpcReqCustomRpc", + "RpcReqCustomRpc", + "", + sizeof(RpcReqCustomRpc), + 2, + rpc__req__custom_rpc__field_descriptors, + rpc__req__custom_rpc__field_indices_by_name, + 1, rpc__req__custom_rpc__number_ranges, + (ProtobufCMessageInit) rpc__req__custom_rpc__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__resp__custom_rpc__field_descriptors[3] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcRespCustomRpc, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "custom_msg_id", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcRespCustomRpc, custom_msg_id), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "data", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcRespCustomRpc, data), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__resp__custom_rpc__field_indices_by_name[] = { + 1, /* field[1] = custom_msg_id */ + 2, /* field[2] = data */ + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__resp__custom_rpc__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 3 } +}; +const ProtobufCMessageDescriptor rpc__resp__custom_rpc__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Resp_CustomRpc", + "RpcRespCustomRpc", + "RpcRespCustomRpc", + "", + sizeof(RpcRespCustomRpc), + 3, + rpc__resp__custom_rpc__field_descriptors, + rpc__resp__custom_rpc__field_indices_by_name, + 1, rpc__resp__custom_rpc__number_ranges, + (ProtobufCMessageInit) rpc__resp__custom_rpc__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__event__custom_rpc__field_descriptors[3] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcEventCustomRpc, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "custom_event_id", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcEventCustomRpc, custom_event_id), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "data", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_BYTES, + 0, /* quantifier_offset */ + offsetof(RpcEventCustomRpc, data), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__event__custom_rpc__field_indices_by_name[] = { + 1, /* field[1] = custom_event_id */ + 2, /* field[2] = data */ + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__event__custom_rpc__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 3 } +}; +const ProtobufCMessageDescriptor rpc__event__custom_rpc__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Event_CustomRpc", + "RpcEventCustomRpc", + "RpcEventCustomRpc", + "", + sizeof(RpcEventCustomRpc), + 3, + rpc__event__custom_rpc__field_descriptors, + rpc__event__custom_rpc__field_indices_by_name, + 1, rpc__event__custom_rpc__number_ranges, + (ProtobufCMessageInit) rpc__event__custom_rpc__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__event__mem_monitor__field_descriptors[5] = +{ + { + "resp", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_INT32, + 0, /* quantifier_offset */ + offsetof(RpcEventMemMonitor, resp), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "curr_total_free_heap_size", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcEventMemMonitor, curr_total_free_heap_size), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "curr_min_free_heap_size", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(RpcEventMemMonitor, curr_min_free_heap_size), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "curr_internal", + 4, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(RpcEventMemMonitor, curr_internal), + &heap_info__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "curr_external", + 5, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + 0, /* quantifier_offset */ + offsetof(RpcEventMemMonitor, curr_external), + &heap_info__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__event__mem_monitor__field_indices_by_name[] = { + 4, /* field[4] = curr_external */ + 3, /* field[3] = curr_internal */ + 2, /* field[2] = curr_min_free_heap_size */ + 1, /* field[1] = curr_total_free_heap_size */ + 0, /* field[0] = resp */ +}; +static const ProtobufCIntRange rpc__event__mem_monitor__number_ranges[1 + 1] = +{ + { 1, 0 }, + { 0, 5 } +}; +const ProtobufCMessageDescriptor rpc__event__mem_monitor__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc_Event_MemMonitor", + "RpcEventMemMonitor", + "RpcEventMemMonitor", + "", + sizeof(RpcEventMemMonitor), + 5, + rpc__event__mem_monitor__field_descriptors, + rpc__event__mem_monitor__field_indices_by_name, + 1, rpc__event__mem_monitor__number_ranges, + (ProtobufCMessageInit) rpc__event__mem_monitor__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCFieldDescriptor rpc__field_descriptors[248] = +{ + { + "msg_type", + 1, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(Rpc, msg_type), + &rpc_type__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "msg_id", + 2, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_ENUM, + 0, /* quantifier_offset */ + offsetof(Rpc, msg_id), + &rpc_id__descriptor, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "uid", + 3, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_UINT32, + 0, /* quantifier_offset */ + offsetof(Rpc, uid), + NULL, + NULL, + 0, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_get_mac_address", + 257, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_get_mac_address), + &rpc__req__get_mac_address__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_set_mac_address", + 258, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_set_mac_address), + &rpc__req__set_mac_address__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_get_wifi_mode", + 259, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_get_wifi_mode), + &rpc__req__get_mode__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_set_wifi_mode", + 260, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_set_wifi_mode), + &rpc__req__set_mode__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_supp_dpp_init", + 261, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_supp_dpp_init), + &rpc__req__supp_dpp_init__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_supp_dpp_deinit", + 262, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_supp_dpp_deinit), + &rpc__req__supp_dpp_deinit__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_supp_dpp_bootstrap_gen", + 263, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_supp_dpp_bootstrap_gen), + &rpc__req__supp_dpp_bootstrap_gen__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_supp_dpp_start_listen", + 264, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_supp_dpp_start_listen), + &rpc__req__supp_dpp_start_listen__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_supp_dpp_stop_listen", + 265, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_supp_dpp_stop_listen), + &rpc__req__supp_dpp_stop_listen__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_ota_activate", + 266, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_ota_activate), + &rpc__req__otaactivate__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_app_get_desc", + 267, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_app_get_desc), + &rpc__req__app_get_desc__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_mem_monitor", + 268, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_mem_monitor), + &rpc__req__mem_monitor__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_scan_params", + 269, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_scan_params), + &rpc__req__wifi_scan_params__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_set_ps", + 270, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_set_ps), + &rpc__req__set_ps__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_get_ps", + 271, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_get_ps), + &rpc__req__get_ps__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_ota_begin", + 272, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_ota_begin), + &rpc__req__otabegin__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_ota_write", + 273, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_ota_write), + &rpc__req__otawrite__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_ota_end", + 274, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_ota_end), + &rpc__req__otaend__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_set_wifi_max_tx_power", + 275, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_set_wifi_max_tx_power), + &rpc__req__wifi_set_max_tx_power__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_get_wifi_max_tx_power", + 276, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_get_wifi_max_tx_power), + &rpc__req__wifi_get_max_tx_power__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_config_heartbeat", + 277, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_config_heartbeat), + &rpc__req__config_heartbeat__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_init", + 278, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_init), + &rpc__req__wifi_init__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_deinit", + 279, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_deinit), + &rpc__req__wifi_deinit__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_start", + 280, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_start), + &rpc__req__wifi_start__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_stop", + 281, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_stop), + &rpc__req__wifi_stop__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_connect", + 282, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_connect), + &rpc__req__wifi_connect__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_disconnect", + 283, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_disconnect), + &rpc__req__wifi_disconnect__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_set_config", + 284, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_set_config), + &rpc__req__wifi_set_config__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_get_config", + 285, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_get_config), + &rpc__req__wifi_get_config__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_scan_start", + 286, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_scan_start), + &rpc__req__wifi_scan_start__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_scan_stop", + 287, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_scan_stop), + &rpc__req__wifi_scan_stop__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_scan_get_ap_num", + 288, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_scan_get_ap_num), + &rpc__req__wifi_scan_get_ap_num__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_scan_get_ap_records", + 289, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_scan_get_ap_records), + &rpc__req__wifi_scan_get_ap_records__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_clear_ap_list", + 290, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_clear_ap_list), + &rpc__req__wifi_clear_ap_list__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_restore", + 291, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_restore), + &rpc__req__wifi_restore__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_clear_fast_connect", + 292, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_clear_fast_connect), + &rpc__req__wifi_clear_fast_connect__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_deauth_sta", + 293, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_deauth_sta), + &rpc__req__wifi_deauth_sta__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_sta_get_ap_info", + 294, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_sta_get_ap_info), + &rpc__req__wifi_sta_get_ap_info__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_set_protocol", + 297, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_set_protocol), + &rpc__req__wifi_set_protocol__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_get_protocol", + 298, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_get_protocol), + &rpc__req__wifi_get_protocol__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_set_bandwidth", + 299, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_set_bandwidth), + &rpc__req__wifi_set_bandwidth__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_get_bandwidth", + 300, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_get_bandwidth), + &rpc__req__wifi_get_bandwidth__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_set_channel", + 301, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_set_channel), + &rpc__req__wifi_set_channel__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_get_channel", + 302, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_get_channel), + &rpc__req__wifi_get_channel__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_set_country", + 303, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_set_country), + &rpc__req__wifi_set_country__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_get_country", + 304, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_get_country), + &rpc__req__wifi_get_country__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_ap_get_sta_list", + 311, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_ap_get_sta_list), + &rpc__req__wifi_ap_get_sta_list__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_ap_get_sta_aid", + 312, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_ap_get_sta_aid), + &rpc__req__wifi_ap_get_sta_aid__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_set_storage", + 313, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_set_storage), + &rpc__req__wifi_set_storage__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_set_inactive_time", + 325, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_set_inactive_time), + &rpc__req__wifi_set_inactive_time__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_get_inactive_time", + 326, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_get_inactive_time), + &rpc__req__wifi_get_inactive_time__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_set_country_code", + 334, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_set_country_code), + &rpc__req__wifi_set_country_code__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_get_country_code", + 335, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_get_country_code), + &rpc__req__wifi_get_country_code__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_disable_pmf_config", + 337, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_disable_pmf_config), + &rpc__req__wifi_disable_pmf_config__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_sta_get_aid", + 338, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_sta_get_aid), + &rpc__req__wifi_sta_get_aid__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_sta_get_negotiated_phymode", + 339, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_sta_get_negotiated_phymode), + &rpc__req__wifi_sta_get_negotiated_phymode__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_sta_get_rssi", + 341, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_sta_get_rssi), + &rpc__req__wifi_sta_get_rssi__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_set_protocols", + 342, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_set_protocols), + &rpc__req__wifi_set_protocols__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_get_protocols", + 343, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_get_protocols), + &rpc__req__wifi_get_protocols__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_set_bandwidths", + 344, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_set_bandwidths), + &rpc__req__wifi_set_bandwidths__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_get_bandwidths", + 345, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_get_bandwidths), + &rpc__req__wifi_get_bandwidths__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_set_band", + 346, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_set_band), + &rpc__req__wifi_set_band__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_get_band", + 347, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_get_band), + &rpc__req__wifi_get_band__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_set_bandmode", + 348, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_set_bandmode), + &rpc__req__wifi_set_band_mode__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_get_bandmode", + 349, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_get_bandmode), + &rpc__req__wifi_get_band_mode__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_get_coprocessor_fwversion", + 350, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_get_coprocessor_fwversion), + &rpc__req__get_coprocessor_fw_version__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_scan_get_ap_record", + 351, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_scan_get_ap_record), + &rpc__req__wifi_scan_get_ap_record__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_set_dhcp_dns", + 352, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_set_dhcp_dns), + &rpc__req__set_dhcp_dns_status__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_get_dhcp_dns", + 353, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_get_dhcp_dns), + &rpc__req__get_dhcp_dns_status__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_sta_twt_config", + 354, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_sta_twt_config), + &rpc__req__wifi_sta_twt_config__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_sta_itwt_setup", + 355, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_sta_itwt_setup), + &rpc__req__wifi_sta_itwt_setup__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_sta_itwt_teardown", + 356, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_sta_itwt_teardown), + &rpc__req__wifi_sta_itwt_teardown__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_sta_itwt_suspend", + 357, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_sta_itwt_suspend), + &rpc__req__wifi_sta_itwt_suspend__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_sta_itwt_get_flow_id_status", + 358, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_sta_itwt_get_flow_id_status), + &rpc__req__wifi_sta_itwt_get_flow_id_status__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_sta_itwt_send_probe_req", + 359, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_sta_itwt_send_probe_req), + &rpc__req__wifi_sta_itwt_send_probe_req__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_sta_itwt_set_target_wake_time_offset", + 360, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_sta_itwt_set_target_wake_time_offset), + &rpc__req__wifi_sta_itwt_set_target_wake_time_offset__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_sta_enterprise_enable", + 361, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_sta_enterprise_enable), + &rpc__req__wifi_sta_enterprise_enable__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_sta_enterprise_disable", + 362, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_sta_enterprise_disable), + &rpc__req__wifi_sta_enterprise_disable__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_eap_set_identity", + 363, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_eap_set_identity), + &rpc__req__eap_set_identity__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_eap_clear_identity", + 364, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_eap_clear_identity), + &rpc__req__eap_clear_identity__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_eap_set_username", + 365, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_eap_set_username), + &rpc__req__eap_set_username__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_eap_clear_username", + 366, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_eap_clear_username), + &rpc__req__eap_clear_username__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_eap_set_password", + 367, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_eap_set_password), + &rpc__req__eap_set_password__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_eap_clear_password", + 368, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_eap_clear_password), + &rpc__req__eap_clear_password__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_eap_set_new_password", + 369, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_eap_set_new_password), + &rpc__req__eap_set_new_password__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_eap_clear_new_password", + 370, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_eap_clear_new_password), + &rpc__req__eap_clear_new_password__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_eap_set_ca_cert", + 371, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_eap_set_ca_cert), + &rpc__req__eap_set_ca_cert__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_eap_clear_ca_cert", + 372, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_eap_clear_ca_cert), + &rpc__req__eap_clear_ca_cert__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_eap_set_certificate_and_key", + 373, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_eap_set_certificate_and_key), + &rpc__req__eap_set_certificate_and_key__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_eap_clear_certificate_and_key", + 374, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_eap_clear_certificate_and_key), + &rpc__req__eap_clear_certificate_and_key__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_eap_get_disable_time_check", + 375, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_eap_get_disable_time_check), + &rpc__req__eap_get_disable_time_check__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_eap_set_ttls_phase2_method", + 376, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_eap_set_ttls_phase2_method), + &rpc__req__eap_set_ttls_phase2_method__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_eap_set_suiteb_certification", + 377, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_eap_set_suiteb_certification), + &rpc__req__eap_set_suiteb192bit_certification__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_eap_set_pac_file", + 378, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_eap_set_pac_file), + &rpc__req__eap_set_pac_file__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_eap_set_fast_params", + 379, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_eap_set_fast_params), + &rpc__req__eap_set_fast_params__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_eap_use_default_cert_bundle", + 380, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_eap_use_default_cert_bundle), + &rpc__req__eap_use_default_cert_bundle__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_wifi_set_okc_support", + 381, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_wifi_set_okc_support), + &rpc__req__wifi_set_okc_support__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_eap_set_domain_name", + 382, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_eap_set_domain_name), + &rpc__req__eap_set_domain_name__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_eap_set_disable_time_check", + 383, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_eap_set_disable_time_check), + &rpc__req__eap_set_disable_time_check__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_eap_set_eap_methods", + 384, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_eap_set_eap_methods), + &rpc__req__eap_set_eap_methods__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_iface_mac_addr_set_get", + 385, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_iface_mac_addr_set_get), + &rpc__req__iface_mac_addr_set_get__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_iface_mac_addr_len_get", + 386, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_iface_mac_addr_len_get), + &rpc__req__iface_mac_addr_len_get__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_feature_control", + 387, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_feature_control), + &rpc__req__feature_control__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_custom_rpc", + 388, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_custom_rpc), + &rpc__req__custom_rpc__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_gpio_config", + 389, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_gpio_config), + &rpc__req__gpio_config__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_gpio_reset_pin", + 390, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_gpio_reset_pin), + &rpc__req__gpio_reset_pin__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_gpio_set_level", + 391, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_gpio_set_level), + &rpc__req__gpio_set_level__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_gpio_get_level", + 392, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_gpio_get_level), + &rpc__req__gpio_get_level__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_gpio_set_direction", + 393, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_gpio_set_direction), + &rpc__req__gpio_set_direction__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_gpio_input_enable", + 394, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_gpio_input_enable), + &rpc__req__gpio_input_enable__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_gpio_set_pull_mode", + 395, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_gpio_set_pull_mode), + &rpc__req__gpio_set_pull_mode__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "req_ext_coex", + 396, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, req_ext_coex), + &rpc__req__ext_coex__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_get_mac_address", + 513, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_get_mac_address), + &rpc__resp__get_mac_address__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_set_mac_address", + 514, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_set_mac_address), + &rpc__resp__set_mac_address__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_get_wifi_mode", + 515, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_get_wifi_mode), + &rpc__resp__get_mode__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_set_wifi_mode", + 516, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_set_wifi_mode), + &rpc__resp__set_mode__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_supp_dpp_init", + 517, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_supp_dpp_init), + &rpc__resp__supp_dpp_init__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_supp_dpp_deinit", + 518, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_supp_dpp_deinit), + &rpc__resp__supp_dpp_deinit__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_supp_dpp_bootstrap_gen", + 519, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_supp_dpp_bootstrap_gen), + &rpc__resp__supp_dpp_bootstrap_gen__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_supp_dpp_start_listen", + 520, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_supp_dpp_start_listen), + &rpc__resp__supp_dpp_start_listen__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_supp_dpp_stop_listen", + 521, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_supp_dpp_stop_listen), + &rpc__resp__supp_dpp_stop_listen__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_ota_activate", + 522, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_ota_activate), + &rpc__resp__otaactivate__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_app_get_desc", + 523, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_app_get_desc), + &rpc__resp__app_get_desc__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_mem_monitor", + 524, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_mem_monitor), + &rpc__resp__mem_monitor__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_scan_params", + 525, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_scan_params), + &rpc__resp__wifi_scan_params__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_set_ps", + 526, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_set_ps), + &rpc__resp__set_ps__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_get_ps", + 527, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_get_ps), + &rpc__resp__get_ps__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_ota_begin", + 528, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_ota_begin), + &rpc__resp__otabegin__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_ota_write", + 529, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_ota_write), + &rpc__resp__otawrite__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_ota_end", + 530, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_ota_end), + &rpc__resp__otaend__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_set_wifi_max_tx_power", + 531, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_set_wifi_max_tx_power), + &rpc__resp__wifi_set_max_tx_power__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_get_wifi_max_tx_power", + 532, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_get_wifi_max_tx_power), + &rpc__resp__wifi_get_max_tx_power__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_config_heartbeat", + 533, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_config_heartbeat), + &rpc__resp__config_heartbeat__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_init", + 534, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_init), + &rpc__resp__wifi_init__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_deinit", + 535, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_deinit), + &rpc__resp__wifi_deinit__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_start", + 536, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_start), + &rpc__resp__wifi_start__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_stop", + 537, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_stop), + &rpc__resp__wifi_stop__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_connect", + 538, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_connect), + &rpc__resp__wifi_connect__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_disconnect", + 539, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_disconnect), + &rpc__resp__wifi_disconnect__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_set_config", + 540, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_set_config), + &rpc__resp__wifi_set_config__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_get_config", + 541, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_get_config), + &rpc__resp__wifi_get_config__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_scan_start", + 542, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_scan_start), + &rpc__resp__wifi_scan_start__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_scan_stop", + 543, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_scan_stop), + &rpc__resp__wifi_scan_stop__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_scan_get_ap_num", + 544, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_scan_get_ap_num), + &rpc__resp__wifi_scan_get_ap_num__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_scan_get_ap_records", + 545, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_scan_get_ap_records), + &rpc__resp__wifi_scan_get_ap_records__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_clear_ap_list", + 546, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_clear_ap_list), + &rpc__resp__wifi_clear_ap_list__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_restore", + 547, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_restore), + &rpc__resp__wifi_restore__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_clear_fast_connect", + 548, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_clear_fast_connect), + &rpc__resp__wifi_clear_fast_connect__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_deauth_sta", + 549, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_deauth_sta), + &rpc__resp__wifi_deauth_sta__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_sta_get_ap_info", + 550, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_sta_get_ap_info), + &rpc__resp__wifi_sta_get_ap_info__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_set_protocol", + 553, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_set_protocol), + &rpc__resp__wifi_set_protocol__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_get_protocol", + 554, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_get_protocol), + &rpc__resp__wifi_get_protocol__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_set_bandwidth", + 555, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_set_bandwidth), + &rpc__resp__wifi_set_bandwidth__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_get_bandwidth", + 556, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_get_bandwidth), + &rpc__resp__wifi_get_bandwidth__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_set_channel", + 557, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_set_channel), + &rpc__resp__wifi_set_channel__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_get_channel", + 558, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_get_channel), + &rpc__resp__wifi_get_channel__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_set_country", + 559, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_set_country), + &rpc__resp__wifi_set_country__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_get_country", + 560, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_get_country), + &rpc__resp__wifi_get_country__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_ap_get_sta_list", + 567, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_ap_get_sta_list), + &rpc__resp__wifi_ap_get_sta_list__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_ap_get_sta_aid", + 568, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_ap_get_sta_aid), + &rpc__resp__wifi_ap_get_sta_aid__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_set_storage", + 569, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_set_storage), + &rpc__resp__wifi_set_storage__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_set_inactive_time", + 581, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_set_inactive_time), + &rpc__resp__wifi_set_inactive_time__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_get_inactive_time", + 582, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_get_inactive_time), + &rpc__resp__wifi_get_inactive_time__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_set_country_code", + 590, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_set_country_code), + &rpc__resp__wifi_set_country_code__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_get_country_code", + 591, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_get_country_code), + &rpc__resp__wifi_get_country_code__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_disable_pmf_config", + 593, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_disable_pmf_config), + &rpc__resp__wifi_disable_pmf_config__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_sta_get_aid", + 594, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_sta_get_aid), + &rpc__resp__wifi_sta_get_aid__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_sta_get_negotiated_phymode", + 595, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_sta_get_negotiated_phymode), + &rpc__resp__wifi_sta_get_negotiated_phymode__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_sta_get_rssi", + 597, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_sta_get_rssi), + &rpc__resp__wifi_sta_get_rssi__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_set_protocols", + 598, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_set_protocols), + &rpc__resp__wifi_set_protocols__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_get_protocols", + 599, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_get_protocols), + &rpc__resp__wifi_get_protocols__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_set_bandwidths", + 600, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_set_bandwidths), + &rpc__resp__wifi_set_bandwidths__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_get_bandwidths", + 601, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_get_bandwidths), + &rpc__resp__wifi_get_bandwidths__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_set_band", + 602, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_set_band), + &rpc__resp__wifi_set_band__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_get_band", + 603, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_get_band), + &rpc__resp__wifi_get_band__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_set_bandmode", + 604, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_set_bandmode), + &rpc__resp__wifi_set_band_mode__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_get_bandmode", + 605, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_get_bandmode), + &rpc__resp__wifi_get_band_mode__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_get_coprocessor_fwversion", + 606, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_get_coprocessor_fwversion), + &rpc__resp__get_coprocessor_fw_version__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_scan_get_ap_record", + 607, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_scan_get_ap_record), + &rpc__resp__wifi_scan_get_ap_record__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_set_dhcp_dns", + 608, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_set_dhcp_dns), + &rpc__resp__set_dhcp_dns_status__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_get_dhcp_dns", + 609, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_get_dhcp_dns), + &rpc__resp__get_dhcp_dns_status__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_sta_twt_config", + 610, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_sta_twt_config), + &rpc__resp__wifi_sta_twt_config__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_sta_itwt_setup", + 611, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_sta_itwt_setup), + &rpc__resp__wifi_sta_itwt_setup__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_sta_itwt_teardown", + 612, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_sta_itwt_teardown), + &rpc__resp__wifi_sta_itwt_teardown__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_sta_itwt_suspend", + 613, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_sta_itwt_suspend), + &rpc__resp__wifi_sta_itwt_suspend__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_sta_itwt_get_flow_id_status", + 614, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_sta_itwt_get_flow_id_status), + &rpc__resp__wifi_sta_itwt_get_flow_id_status__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_sta_itwt_send_probe_req", + 615, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_sta_itwt_send_probe_req), + &rpc__resp__wifi_sta_itwt_send_probe_req__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_sta_itwt_set_target_wake_time_offset", + 616, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_sta_itwt_set_target_wake_time_offset), + &rpc__resp__wifi_sta_itwt_set_target_wake_time_offset__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_sta_enterprise_enable", + 617, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_sta_enterprise_enable), + &rpc__resp__wifi_sta_enterprise_enable__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_sta_enterprise_disable", + 618, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_sta_enterprise_disable), + &rpc__resp__wifi_sta_enterprise_disable__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_eap_set_identity", + 619, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_eap_set_identity), + &rpc__resp__eap_set_identity__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_eap_clear_identity", + 620, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_eap_clear_identity), + &rpc__resp__eap_clear_identity__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_eap_set_username", + 621, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_eap_set_username), + &rpc__resp__eap_set_username__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_eap_clear_username", + 622, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_eap_clear_username), + &rpc__resp__eap_clear_username__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_eap_set_password", + 623, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_eap_set_password), + &rpc__resp__eap_set_password__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_eap_clear_password", + 624, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_eap_clear_password), + &rpc__resp__eap_clear_password__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_eap_set_new_password", + 625, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_eap_set_new_password), + &rpc__resp__eap_set_new_password__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_eap_clear_new_password", + 626, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_eap_clear_new_password), + &rpc__resp__eap_clear_new_password__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_eap_set_ca_cert", + 627, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_eap_set_ca_cert), + &rpc__resp__eap_set_ca_cert__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_eap_clear_ca_cert", + 628, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_eap_clear_ca_cert), + &rpc__resp__eap_clear_ca_cert__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_eap_set_certificate_and_key", + 629, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_eap_set_certificate_and_key), + &rpc__resp__eap_set_certificate_and_key__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_eap_clear_certificate_and_key", + 630, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_eap_clear_certificate_and_key), + &rpc__resp__eap_clear_certificate_and_key__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_eap_get_disable_time_check", + 631, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_eap_get_disable_time_check), + &rpc__resp__eap_get_disable_time_check__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_eap_set_ttls_phase2_method", + 632, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_eap_set_ttls_phase2_method), + &rpc__resp__eap_set_ttls_phase2_method__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_eap_set_suiteb_certification", + 633, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_eap_set_suiteb_certification), + &rpc__resp__eap_set_suiteb192bit_certification__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_eap_set_pac_file", + 634, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_eap_set_pac_file), + &rpc__resp__eap_set_pac_file__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_eap_set_fast_params", + 635, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_eap_set_fast_params), + &rpc__resp__eap_set_fast_params__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_eap_use_default_cert_bundle", + 636, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_eap_use_default_cert_bundle), + &rpc__resp__eap_use_default_cert_bundle__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_wifi_set_okc_support", + 637, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_wifi_set_okc_support), + &rpc__resp__wifi_set_okc_support__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_eap_set_domain_name", + 638, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_eap_set_domain_name), + &rpc__resp__eap_set_domain_name__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_eap_set_disable_time_check", + 639, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_eap_set_disable_time_check), + &rpc__resp__eap_set_disable_time_check__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_eap_set_eap_methods", + 640, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_eap_set_eap_methods), + &rpc__resp__eap_set_eap_methods__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_iface_mac_addr_set_get", + 641, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_iface_mac_addr_set_get), + &rpc__resp__iface_mac_addr_set_get__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_iface_mac_addr_len_get", + 642, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_iface_mac_addr_len_get), + &rpc__resp__iface_mac_addr_len_get__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_feature_control", + 643, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_feature_control), + &rpc__resp__feature_control__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_custom_rpc", + 644, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_custom_rpc), + &rpc__resp__custom_rpc__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_gpio_config", + 645, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_gpio_config), + &rpc__resp__gpio_config__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_gpio_reset", + 646, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_gpio_reset), + &rpc__resp__gpio_reset_pin__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_gpio_set_level", + 647, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_gpio_set_level), + &rpc__resp__gpio_set_level__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_gpio_get_level", + 648, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_gpio_get_level), + &rpc__resp__gpio_get_level__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_gpio_set_direction", + 649, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_gpio_set_direction), + &rpc__resp__gpio_set_direction__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_gpio_input_enable", + 650, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_gpio_input_enable), + &rpc__resp__gpio_input_enable__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_gpio_set_pull_mode", + 651, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_gpio_set_pull_mode), + &rpc__resp__gpio_set_pull_mode__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "resp_ext_coex", + 652, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, resp_ext_coex), + &rpc__resp__ext_coex__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "event_esp_init", + 769, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, event_esp_init), + &rpc__event__espinit__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "event_heartbeat", + 770, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, event_heartbeat), + &rpc__event__heartbeat__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "event_ap_sta_connected", + 771, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, event_ap_sta_connected), + &rpc__event__ap__sta_connected__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "event_ap_sta_disconnected", + 772, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, event_ap_sta_disconnected), + &rpc__event__ap__sta_disconnected__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "event_wifi_event_no_args", + 773, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, event_wifi_event_no_args), + &rpc__event__wifi_event_no_args__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "event_sta_scan_done", + 774, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, event_sta_scan_done), + &rpc__event__sta_scan_done__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "event_sta_connected", + 775, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, event_sta_connected), + &rpc__event__sta_connected__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "event_sta_disconnected", + 776, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, event_sta_disconnected), + &rpc__event__sta_disconnected__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "event_dhcp_dns", + 777, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, event_dhcp_dns), + &rpc__event__dhcp_dns_status__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "event_sta_itwt_setup", + 778, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, event_sta_itwt_setup), + &rpc__event__sta_itwt_setup__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "event_sta_itwt_teardown", + 779, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, event_sta_itwt_teardown), + &rpc__event__sta_itwt_teardown__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "event_sta_itwt_suspend", + 780, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, event_sta_itwt_suspend), + &rpc__event__sta_itwt_suspend__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "event_sta_itwt_probe", + 781, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, event_sta_itwt_probe), + &rpc__event__sta_itwt_probe__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "event_supp_dpp_uri_ready", + 782, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, event_supp_dpp_uri_ready), + &rpc__event__supp_dpp_uri_ready__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "event_supp_dpp_cfg_recvd", + 783, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, event_supp_dpp_cfg_recvd), + &rpc__event__supp_dpp_cfg_recvd__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "event_supp_dpp_fail", + 784, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, event_supp_dpp_fail), + &rpc__event__supp_dpp_fail__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "event_wifi_dpp_uri_ready", + 785, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, event_wifi_dpp_uri_ready), + &rpc__event__wifi_dpp_uri_ready__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "event_wifi_dpp_cfg_recvd", + 786, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, event_wifi_dpp_cfg_recvd), + &rpc__event__wifi_dpp_cfg_recvd__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "event_wifi_dpp_fail", + 787, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, event_wifi_dpp_fail), + &rpc__event__wifi_dpp_fail__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "event_custom_rpc", + 788, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, event_custom_rpc), + &rpc__event__custom_rpc__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, + { + "event_mem_monitor", + 789, + PROTOBUF_C_LABEL_NONE, + PROTOBUF_C_TYPE_MESSAGE, + offsetof(Rpc, payload_case), + offsetof(Rpc, event_mem_monitor), + &rpc__event__mem_monitor__descriptor, + NULL, + 0 | PROTOBUF_C_FIELD_FLAG_ONEOF, /* flags */ + 0,NULL,NULL /* reserved1,reserved2, etc */ + }, +}; +static const unsigned rpc__field_indices_by_name[] = { + 229, /* field[229] = event_ap_sta_connected */ + 230, /* field[230] = event_ap_sta_disconnected */ + 246, /* field[246] = event_custom_rpc */ + 235, /* field[235] = event_dhcp_dns */ + 227, /* field[227] = event_esp_init */ + 228, /* field[228] = event_heartbeat */ + 247, /* field[247] = event_mem_monitor */ + 233, /* field[233] = event_sta_connected */ + 234, /* field[234] = event_sta_disconnected */ + 239, /* field[239] = event_sta_itwt_probe */ + 236, /* field[236] = event_sta_itwt_setup */ + 238, /* field[238] = event_sta_itwt_suspend */ + 237, /* field[237] = event_sta_itwt_teardown */ + 232, /* field[232] = event_sta_scan_done */ + 241, /* field[241] = event_supp_dpp_cfg_recvd */ + 242, /* field[242] = event_supp_dpp_fail */ + 240, /* field[240] = event_supp_dpp_uri_ready */ + 244, /* field[244] = event_wifi_dpp_cfg_recvd */ + 245, /* field[245] = event_wifi_dpp_fail */ + 243, /* field[243] = event_wifi_dpp_uri_ready */ + 231, /* field[231] = event_wifi_event_no_args */ + 1, /* field[1] = msg_id */ + 0, /* field[0] = msg_type */ + 13, /* field[13] = req_app_get_desc */ + 23, /* field[23] = req_config_heartbeat */ + 106, /* field[106] = req_custom_rpc */ + 90, /* field[90] = req_eap_clear_ca_cert */ + 92, /* field[92] = req_eap_clear_certificate_and_key */ + 82, /* field[82] = req_eap_clear_identity */ + 88, /* field[88] = req_eap_clear_new_password */ + 86, /* field[86] = req_eap_clear_password */ + 84, /* field[84] = req_eap_clear_username */ + 93, /* field[93] = req_eap_get_disable_time_check */ + 89, /* field[89] = req_eap_set_ca_cert */ + 91, /* field[91] = req_eap_set_certificate_and_key */ + 101, /* field[101] = req_eap_set_disable_time_check */ + 100, /* field[100] = req_eap_set_domain_name */ + 102, /* field[102] = req_eap_set_eap_methods */ + 97, /* field[97] = req_eap_set_fast_params */ + 81, /* field[81] = req_eap_set_identity */ + 87, /* field[87] = req_eap_set_new_password */ + 96, /* field[96] = req_eap_set_pac_file */ + 85, /* field[85] = req_eap_set_password */ + 95, /* field[95] = req_eap_set_suiteb_certification */ + 94, /* field[94] = req_eap_set_ttls_phase2_method */ + 83, /* field[83] = req_eap_set_username */ + 98, /* field[98] = req_eap_use_default_cert_bundle */ + 114, /* field[114] = req_ext_coex */ + 105, /* field[105] = req_feature_control */ + 68, /* field[68] = req_get_coprocessor_fwversion */ + 71, /* field[71] = req_get_dhcp_dns */ + 3, /* field[3] = req_get_mac_address */ + 22, /* field[22] = req_get_wifi_max_tx_power */ + 5, /* field[5] = req_get_wifi_mode */ + 107, /* field[107] = req_gpio_config */ + 110, /* field[110] = req_gpio_get_level */ + 112, /* field[112] = req_gpio_input_enable */ + 108, /* field[108] = req_gpio_reset_pin */ + 111, /* field[111] = req_gpio_set_direction */ + 109, /* field[109] = req_gpio_set_level */ + 113, /* field[113] = req_gpio_set_pull_mode */ + 104, /* field[104] = req_iface_mac_addr_len_get */ + 103, /* field[103] = req_iface_mac_addr_set_get */ + 14, /* field[14] = req_mem_monitor */ + 12, /* field[12] = req_ota_activate */ + 18, /* field[18] = req_ota_begin */ + 20, /* field[20] = req_ota_end */ + 19, /* field[19] = req_ota_write */ + 70, /* field[70] = req_set_dhcp_dns */ + 4, /* field[4] = req_set_mac_address */ + 21, /* field[21] = req_set_wifi_max_tx_power */ + 6, /* field[6] = req_set_wifi_mode */ + 9, /* field[9] = req_supp_dpp_bootstrap_gen */ + 8, /* field[8] = req_supp_dpp_deinit */ + 7, /* field[7] = req_supp_dpp_init */ + 10, /* field[10] = req_supp_dpp_start_listen */ + 11, /* field[11] = req_supp_dpp_stop_listen */ + 50, /* field[50] = req_wifi_ap_get_sta_aid */ + 49, /* field[49] = req_wifi_ap_get_sta_list */ + 36, /* field[36] = req_wifi_clear_ap_list */ + 38, /* field[38] = req_wifi_clear_fast_connect */ + 28, /* field[28] = req_wifi_connect */ + 39, /* field[39] = req_wifi_deauth_sta */ + 25, /* field[25] = req_wifi_deinit */ + 56, /* field[56] = req_wifi_disable_pmf_config */ + 29, /* field[29] = req_wifi_disconnect */ + 65, /* field[65] = req_wifi_get_band */ + 67, /* field[67] = req_wifi_get_bandmode */ + 44, /* field[44] = req_wifi_get_bandwidth */ + 63, /* field[63] = req_wifi_get_bandwidths */ + 46, /* field[46] = req_wifi_get_channel */ + 31, /* field[31] = req_wifi_get_config */ + 48, /* field[48] = req_wifi_get_country */ + 55, /* field[55] = req_wifi_get_country_code */ + 53, /* field[53] = req_wifi_get_inactive_time */ + 42, /* field[42] = req_wifi_get_protocol */ + 61, /* field[61] = req_wifi_get_protocols */ + 17, /* field[17] = req_wifi_get_ps */ + 24, /* field[24] = req_wifi_init */ + 37, /* field[37] = req_wifi_restore */ + 34, /* field[34] = req_wifi_scan_get_ap_num */ + 69, /* field[69] = req_wifi_scan_get_ap_record */ + 35, /* field[35] = req_wifi_scan_get_ap_records */ + 15, /* field[15] = req_wifi_scan_params */ + 32, /* field[32] = req_wifi_scan_start */ + 33, /* field[33] = req_wifi_scan_stop */ + 64, /* field[64] = req_wifi_set_band */ + 66, /* field[66] = req_wifi_set_bandmode */ + 43, /* field[43] = req_wifi_set_bandwidth */ + 62, /* field[62] = req_wifi_set_bandwidths */ + 45, /* field[45] = req_wifi_set_channel */ + 30, /* field[30] = req_wifi_set_config */ + 47, /* field[47] = req_wifi_set_country */ + 54, /* field[54] = req_wifi_set_country_code */ + 52, /* field[52] = req_wifi_set_inactive_time */ + 99, /* field[99] = req_wifi_set_okc_support */ + 41, /* field[41] = req_wifi_set_protocol */ + 60, /* field[60] = req_wifi_set_protocols */ + 16, /* field[16] = req_wifi_set_ps */ + 51, /* field[51] = req_wifi_set_storage */ + 80, /* field[80] = req_wifi_sta_enterprise_disable */ + 79, /* field[79] = req_wifi_sta_enterprise_enable */ + 57, /* field[57] = req_wifi_sta_get_aid */ + 40, /* field[40] = req_wifi_sta_get_ap_info */ + 58, /* field[58] = req_wifi_sta_get_negotiated_phymode */ + 59, /* field[59] = req_wifi_sta_get_rssi */ + 76, /* field[76] = req_wifi_sta_itwt_get_flow_id_status */ + 77, /* field[77] = req_wifi_sta_itwt_send_probe_req */ + 78, /* field[78] = req_wifi_sta_itwt_set_target_wake_time_offset */ + 73, /* field[73] = req_wifi_sta_itwt_setup */ + 75, /* field[75] = req_wifi_sta_itwt_suspend */ + 74, /* field[74] = req_wifi_sta_itwt_teardown */ + 72, /* field[72] = req_wifi_sta_twt_config */ + 26, /* field[26] = req_wifi_start */ + 27, /* field[27] = req_wifi_stop */ + 125, /* field[125] = resp_app_get_desc */ + 135, /* field[135] = resp_config_heartbeat */ + 218, /* field[218] = resp_custom_rpc */ + 202, /* field[202] = resp_eap_clear_ca_cert */ + 204, /* field[204] = resp_eap_clear_certificate_and_key */ + 194, /* field[194] = resp_eap_clear_identity */ + 200, /* field[200] = resp_eap_clear_new_password */ + 198, /* field[198] = resp_eap_clear_password */ + 196, /* field[196] = resp_eap_clear_username */ + 205, /* field[205] = resp_eap_get_disable_time_check */ + 201, /* field[201] = resp_eap_set_ca_cert */ + 203, /* field[203] = resp_eap_set_certificate_and_key */ + 213, /* field[213] = resp_eap_set_disable_time_check */ + 212, /* field[212] = resp_eap_set_domain_name */ + 214, /* field[214] = resp_eap_set_eap_methods */ + 209, /* field[209] = resp_eap_set_fast_params */ + 193, /* field[193] = resp_eap_set_identity */ + 199, /* field[199] = resp_eap_set_new_password */ + 208, /* field[208] = resp_eap_set_pac_file */ + 197, /* field[197] = resp_eap_set_password */ + 207, /* field[207] = resp_eap_set_suiteb_certification */ + 206, /* field[206] = resp_eap_set_ttls_phase2_method */ + 195, /* field[195] = resp_eap_set_username */ + 210, /* field[210] = resp_eap_use_default_cert_bundle */ + 226, /* field[226] = resp_ext_coex */ + 217, /* field[217] = resp_feature_control */ + 180, /* field[180] = resp_get_coprocessor_fwversion */ + 183, /* field[183] = resp_get_dhcp_dns */ + 115, /* field[115] = resp_get_mac_address */ + 134, /* field[134] = resp_get_wifi_max_tx_power */ + 117, /* field[117] = resp_get_wifi_mode */ + 219, /* field[219] = resp_gpio_config */ + 222, /* field[222] = resp_gpio_get_level */ + 224, /* field[224] = resp_gpio_input_enable */ + 220, /* field[220] = resp_gpio_reset */ + 223, /* field[223] = resp_gpio_set_direction */ + 221, /* field[221] = resp_gpio_set_level */ + 225, /* field[225] = resp_gpio_set_pull_mode */ + 216, /* field[216] = resp_iface_mac_addr_len_get */ + 215, /* field[215] = resp_iface_mac_addr_set_get */ + 126, /* field[126] = resp_mem_monitor */ + 124, /* field[124] = resp_ota_activate */ + 130, /* field[130] = resp_ota_begin */ + 132, /* field[132] = resp_ota_end */ + 131, /* field[131] = resp_ota_write */ + 182, /* field[182] = resp_set_dhcp_dns */ + 116, /* field[116] = resp_set_mac_address */ + 133, /* field[133] = resp_set_wifi_max_tx_power */ + 118, /* field[118] = resp_set_wifi_mode */ + 121, /* field[121] = resp_supp_dpp_bootstrap_gen */ + 120, /* field[120] = resp_supp_dpp_deinit */ + 119, /* field[119] = resp_supp_dpp_init */ + 122, /* field[122] = resp_supp_dpp_start_listen */ + 123, /* field[123] = resp_supp_dpp_stop_listen */ + 162, /* field[162] = resp_wifi_ap_get_sta_aid */ + 161, /* field[161] = resp_wifi_ap_get_sta_list */ + 148, /* field[148] = resp_wifi_clear_ap_list */ + 150, /* field[150] = resp_wifi_clear_fast_connect */ + 140, /* field[140] = resp_wifi_connect */ + 151, /* field[151] = resp_wifi_deauth_sta */ + 137, /* field[137] = resp_wifi_deinit */ + 168, /* field[168] = resp_wifi_disable_pmf_config */ + 141, /* field[141] = resp_wifi_disconnect */ + 177, /* field[177] = resp_wifi_get_band */ + 179, /* field[179] = resp_wifi_get_bandmode */ + 156, /* field[156] = resp_wifi_get_bandwidth */ + 175, /* field[175] = resp_wifi_get_bandwidths */ + 158, /* field[158] = resp_wifi_get_channel */ + 143, /* field[143] = resp_wifi_get_config */ + 160, /* field[160] = resp_wifi_get_country */ + 167, /* field[167] = resp_wifi_get_country_code */ + 165, /* field[165] = resp_wifi_get_inactive_time */ + 154, /* field[154] = resp_wifi_get_protocol */ + 173, /* field[173] = resp_wifi_get_protocols */ + 129, /* field[129] = resp_wifi_get_ps */ + 136, /* field[136] = resp_wifi_init */ + 149, /* field[149] = resp_wifi_restore */ + 146, /* field[146] = resp_wifi_scan_get_ap_num */ + 181, /* field[181] = resp_wifi_scan_get_ap_record */ + 147, /* field[147] = resp_wifi_scan_get_ap_records */ + 127, /* field[127] = resp_wifi_scan_params */ + 144, /* field[144] = resp_wifi_scan_start */ + 145, /* field[145] = resp_wifi_scan_stop */ + 176, /* field[176] = resp_wifi_set_band */ + 178, /* field[178] = resp_wifi_set_bandmode */ + 155, /* field[155] = resp_wifi_set_bandwidth */ + 174, /* field[174] = resp_wifi_set_bandwidths */ + 157, /* field[157] = resp_wifi_set_channel */ + 142, /* field[142] = resp_wifi_set_config */ + 159, /* field[159] = resp_wifi_set_country */ + 166, /* field[166] = resp_wifi_set_country_code */ + 164, /* field[164] = resp_wifi_set_inactive_time */ + 211, /* field[211] = resp_wifi_set_okc_support */ + 153, /* field[153] = resp_wifi_set_protocol */ + 172, /* field[172] = resp_wifi_set_protocols */ + 128, /* field[128] = resp_wifi_set_ps */ + 163, /* field[163] = resp_wifi_set_storage */ + 192, /* field[192] = resp_wifi_sta_enterprise_disable */ + 191, /* field[191] = resp_wifi_sta_enterprise_enable */ + 169, /* field[169] = resp_wifi_sta_get_aid */ + 152, /* field[152] = resp_wifi_sta_get_ap_info */ + 170, /* field[170] = resp_wifi_sta_get_negotiated_phymode */ + 171, /* field[171] = resp_wifi_sta_get_rssi */ + 188, /* field[188] = resp_wifi_sta_itwt_get_flow_id_status */ + 189, /* field[189] = resp_wifi_sta_itwt_send_probe_req */ + 190, /* field[190] = resp_wifi_sta_itwt_set_target_wake_time_offset */ + 185, /* field[185] = resp_wifi_sta_itwt_setup */ + 187, /* field[187] = resp_wifi_sta_itwt_suspend */ + 186, /* field[186] = resp_wifi_sta_itwt_teardown */ + 184, /* field[184] = resp_wifi_sta_twt_config */ + 138, /* field[138] = resp_wifi_start */ + 139, /* field[139] = resp_wifi_stop */ + 2, /* field[2] = uid */ +}; +static const ProtobufCIntRange rpc__number_ranges[16 + 1] = +{ + { 1, 0 }, + { 257, 3 }, + { 297, 41 }, + { 311, 49 }, + { 325, 52 }, + { 334, 54 }, + { 337, 56 }, + { 341, 59 }, + { 513, 115 }, + { 553, 153 }, + { 567, 161 }, + { 581, 164 }, + { 590, 166 }, + { 593, 168 }, + { 597, 171 }, + { 769, 227 }, + { 0, 248 } +}; +const ProtobufCMessageDescriptor rpc__descriptor = +{ + PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC, + "Rpc", + "Rpc", + "Rpc", + "", + sizeof(Rpc), + 248, + rpc__field_descriptors, + rpc__field_indices_by_name, + 16, rpc__number_ranges, + (ProtobufCMessageInit) rpc__init, + NULL,NULL,NULL /* reserved[123] */ +}; +static const ProtobufCEnumValue rpc__wifi_bw__enum_values_by_number[3] = +{ + { "BW_Invalid", "RPC__WIFI_BW__BW_Invalid", 0 }, + { "HT20", "RPC__WIFI_BW__HT20", 1 }, + { "HT40", "RPC__WIFI_BW__HT40", 2 }, +}; +static const ProtobufCIntRange rpc__wifi_bw__value_ranges[] = { +{0, 0},{0, 3} +}; +static const ProtobufCEnumValueIndex rpc__wifi_bw__enum_values_by_name[3] = +{ + { "BW_Invalid", 0 }, + { "HT20", 1 }, + { "HT40", 2 }, +}; +const ProtobufCEnumDescriptor rpc__wifi_bw__descriptor = +{ + PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC, + "Rpc_WifiBw", + "Rpc_WifiBw", + "RpcWifiBw", + "", + 3, + rpc__wifi_bw__enum_values_by_number, + 3, + rpc__wifi_bw__enum_values_by_name, + 1, + rpc__wifi_bw__value_ranges, + NULL,NULL,NULL,NULL /* reserved[1234] */ +}; +static const ProtobufCEnumValue rpc__wifi_power_save__enum_values_by_number[3] = +{ + { "PS_Invalid", "RPC__WIFI_POWER_SAVE__PS_Invalid", 0 }, + { "MIN_MODEM", "RPC__WIFI_POWER_SAVE__MIN_MODEM", 1 }, + { "MAX_MODEM", "RPC__WIFI_POWER_SAVE__MAX_MODEM", 2 }, +}; +static const ProtobufCIntRange rpc__wifi_power_save__value_ranges[] = { +{0, 0},{0, 3} +}; +static const ProtobufCEnumValueIndex rpc__wifi_power_save__enum_values_by_name[3] = +{ + { "MAX_MODEM", 2 }, + { "MIN_MODEM", 1 }, + { "PS_Invalid", 0 }, +}; +const ProtobufCEnumDescriptor rpc__wifi_power_save__descriptor = +{ + PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC, + "Rpc_WifiPowerSave", + "Rpc_WifiPowerSave", + "RpcWifiPowerSave", + "", + 3, + rpc__wifi_power_save__enum_values_by_number, + 3, + rpc__wifi_power_save__enum_values_by_name, + 1, + rpc__wifi_power_save__value_ranges, + NULL,NULL,NULL,NULL /* reserved[1234] */ +}; +static const ProtobufCEnumValue rpc__wifi_sec_prot__enum_values_by_number[8] = +{ + { "Open", "RPC__WIFI_SEC_PROT__Open", 0 }, + { "WEP", "RPC__WIFI_SEC_PROT__WEP", 1 }, + { "WPA_PSK", "RPC__WIFI_SEC_PROT__WPA_PSK", 2 }, + { "WPA2_PSK", "RPC__WIFI_SEC_PROT__WPA2_PSK", 3 }, + { "WPA_WPA2_PSK", "RPC__WIFI_SEC_PROT__WPA_WPA2_PSK", 4 }, + { "WPA2_ENTERPRISE", "RPC__WIFI_SEC_PROT__WPA2_ENTERPRISE", 5 }, + { "WPA3_PSK", "RPC__WIFI_SEC_PROT__WPA3_PSK", 6 }, + { "WPA2_WPA3_PSK", "RPC__WIFI_SEC_PROT__WPA2_WPA3_PSK", 7 }, +}; +static const ProtobufCIntRange rpc__wifi_sec_prot__value_ranges[] = { +{0, 0},{0, 8} +}; +static const ProtobufCEnumValueIndex rpc__wifi_sec_prot__enum_values_by_name[8] = +{ + { "Open", 0 }, + { "WEP", 1 }, + { "WPA2_ENTERPRISE", 5 }, + { "WPA2_PSK", 3 }, + { "WPA2_WPA3_PSK", 7 }, + { "WPA3_PSK", 6 }, + { "WPA_PSK", 2 }, + { "WPA_WPA2_PSK", 4 }, +}; +const ProtobufCEnumDescriptor rpc__wifi_sec_prot__descriptor = +{ + PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC, + "Rpc_WifiSecProt", + "Rpc_WifiSecProt", + "RpcWifiSecProt", + "", + 8, + rpc__wifi_sec_prot__enum_values_by_number, + 8, + rpc__wifi_sec_prot__enum_values_by_name, + 1, + rpc__wifi_sec_prot__value_ranges, + NULL,NULL,NULL,NULL /* reserved[1234] */ +}; +static const ProtobufCEnumValue rpc__status__enum_values_by_number[6] = +{ + { "Connected", "RPC__STATUS__Connected", 0 }, + { "Not_Connected", "RPC__STATUS__Not_Connected", 1 }, + { "No_AP_Found", "RPC__STATUS__No_AP_Found", 2 }, + { "Connection_Fail", "RPC__STATUS__Connection_Fail", 3 }, + { "Invalid_Argument", "RPC__STATUS__Invalid_Argument", 4 }, + { "Out_Of_Range", "RPC__STATUS__Out_Of_Range", 5 }, +}; +static const ProtobufCIntRange rpc__status__value_ranges[] = { +{0, 0},{0, 6} +}; +static const ProtobufCEnumValueIndex rpc__status__enum_values_by_name[6] = +{ + { "Connected", 0 }, + { "Connection_Fail", 3 }, + { "Invalid_Argument", 4 }, + { "No_AP_Found", 2 }, + { "Not_Connected", 1 }, + { "Out_Of_Range", 5 }, +}; +const ProtobufCEnumDescriptor rpc__status__descriptor = +{ + PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC, + "Rpc_Status", + "Rpc_Status", + "RpcStatus", + "", + 6, + rpc__status__enum_values_by_number, + 6, + rpc__status__enum_values_by_name, + 1, + rpc__status__value_ranges, + NULL,NULL,NULL,NULL /* reserved[1234] */ +}; +static const ProtobufCEnumValue rpc_cmd__enum_values_by_number[3] = +{ + { "Invalid", "RPC_CMD__Invalid", 0 }, + { "Get", "RPC_CMD__Get", 1 }, + { "Set", "RPC_CMD__Set", 2 }, +}; +static const ProtobufCIntRange rpc_cmd__value_ranges[] = { +{0, 0},{0, 3} +}; +static const ProtobufCEnumValueIndex rpc_cmd__enum_values_by_name[3] = +{ + { "Get", 1 }, + { "Invalid", 0 }, + { "Set", 2 }, +}; +const ProtobufCEnumDescriptor rpc_cmd__descriptor = +{ + PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC, + "RpcCmd", + "RpcCmd", + "RpcCmd", + "", + 3, + rpc_cmd__enum_values_by_number, + 3, + rpc_cmd__enum_values_by_name, + 1, + rpc_cmd__value_ranges, + NULL,NULL,NULL,NULL /* reserved[1234] */ +}; +static const ProtobufCEnumValue rpc_type__enum_values_by_number[5] = +{ + { "MsgType_Invalid", "RPC_TYPE__MsgType_Invalid", 0 }, + { "Req", "RPC_TYPE__Req", 1 }, + { "Resp", "RPC_TYPE__Resp", 2 }, + { "Event", "RPC_TYPE__Event", 3 }, + { "MsgType_Max", "RPC_TYPE__MsgType_Max", 4 }, +}; +static const ProtobufCIntRange rpc_type__value_ranges[] = { +{0, 0},{0, 5} +}; +static const ProtobufCEnumValueIndex rpc_type__enum_values_by_name[5] = +{ + { "Event", 3 }, + { "MsgType_Invalid", 0 }, + { "MsgType_Max", 4 }, + { "Req", 1 }, + { "Resp", 2 }, +}; +const ProtobufCEnumDescriptor rpc_type__descriptor = +{ + PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC, + "RpcType", + "RpcType", + "RpcType", + "", + 5, + rpc_type__enum_values_by_number, + 5, + rpc_type__enum_values_by_name, + 1, + rpc_type__value_ranges, + NULL,NULL,NULL,NULL /* reserved[1234] */ +}; +static const ProtobufCEnumValue rpc_feature__enum_values_by_number[3] = +{ + { "Feature_None", "RPC_FEATURE__Feature_None", 0 }, + { "Feature_Bluetooth", "RPC_FEATURE__Feature_Bluetooth", 1 }, + { "Feature_Openthread_Rcp", "RPC_FEATURE__Feature_Openthread_Rcp", 2 }, +}; +static const ProtobufCIntRange rpc_feature__value_ranges[] = { +{0, 0},{0, 3} +}; +static const ProtobufCEnumValueIndex rpc_feature__enum_values_by_name[3] = +{ + { "Feature_Bluetooth", 1 }, + { "Feature_None", 0 }, + { "Feature_Openthread_Rcp", 2 }, +}; +const ProtobufCEnumDescriptor rpc_feature__descriptor = +{ + PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC, + "RpcFeature", + "RpcFeature", + "RpcFeature", + "", + 3, + rpc_feature__enum_values_by_number, + 3, + rpc_feature__enum_values_by_name, + 1, + rpc_feature__value_ranges, + NULL,NULL,NULL,NULL /* reserved[1234] */ +}; +static const ProtobufCEnumValue rpc_feature_command__enum_values_by_number[10] = +{ + { "Feature_Command_None", "RPC_FEATURE_COMMAND__Feature_Command_None", 0 }, + { "Feature_Command_BT_Init", "RPC_FEATURE_COMMAND__Feature_Command_BT_Init", 1 }, + { "Feature_Command_BT_Deinit", "RPC_FEATURE_COMMAND__Feature_Command_BT_Deinit", 2 }, + { "Feature_Command_BT_Enable", "RPC_FEATURE_COMMAND__Feature_Command_BT_Enable", 3 }, + { "Feature_Command_BT_Disable", "RPC_FEATURE_COMMAND__Feature_Command_BT_Disable", 4 }, + { "Feature_Command_Init", "RPC_FEATURE_COMMAND__Feature_Command_Init", 5 }, + { "Feature_Command_Deinit", "RPC_FEATURE_COMMAND__Feature_Command_Deinit", 6 }, + { "Feature_Command_Enable", "RPC_FEATURE_COMMAND__Feature_Command_Enable", 7 }, + { "Feature_Command_Disable", "RPC_FEATURE_COMMAND__Feature_Command_Disable", 8 }, + { "Feature_Command_Query", "RPC_FEATURE_COMMAND__Feature_Command_Query", 9 }, +}; +static const ProtobufCIntRange rpc_feature_command__value_ranges[] = { +{0, 0},{0, 10} +}; +static const ProtobufCEnumValueIndex rpc_feature_command__enum_values_by_name[10] = +{ + { "Feature_Command_BT_Deinit", 2 }, + { "Feature_Command_BT_Disable", 4 }, + { "Feature_Command_BT_Enable", 3 }, + { "Feature_Command_BT_Init", 1 }, + { "Feature_Command_Deinit", 6 }, + { "Feature_Command_Disable", 8 }, + { "Feature_Command_Enable", 7 }, + { "Feature_Command_Init", 5 }, + { "Feature_Command_None", 0 }, + { "Feature_Command_Query", 9 }, +}; +const ProtobufCEnumDescriptor rpc_feature_command__descriptor = +{ + PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC, + "RpcFeatureCommand", + "RpcFeatureCommand", + "RpcFeatureCommand", + "", + 10, + rpc_feature_command__enum_values_by_number, + 10, + rpc_feature_command__enum_values_by_name, + 1, + rpc_feature_command__value_ranges, + NULL,NULL,NULL,NULL /* reserved[1234] */ +}; +static const ProtobufCEnumValue rpc_feature_option__enum_values_by_number[6] = +{ + { "Feature_Option_None", "RPC_FEATURE_OPTION__Feature_Option_None", 0 }, + { "Feature_Option_BT_Deinit_Release_Memory", "RPC_FEATURE_OPTION__Feature_Option_BT_Deinit_Release_Memory", 1 }, + { "Feature_Option_Query_Configured", "RPC_FEATURE_OPTION__Feature_Option_Query_Configured", 2 }, + { "Feature_Option_Query_Inited", "RPC_FEATURE_OPTION__Feature_Option_Query_Inited", 3 }, + { "Feature_Option_Query_Enabled", "RPC_FEATURE_OPTION__Feature_Option_Query_Enabled", 4 }, + { "Feature_Option_Query_Ready", "RPC_FEATURE_OPTION__Feature_Option_Query_Ready", 5 }, +}; +static const ProtobufCIntRange rpc_feature_option__value_ranges[] = { +{0, 0},{0, 6} +}; +static const ProtobufCEnumValueIndex rpc_feature_option__enum_values_by_name[6] = +{ + { "Feature_Option_BT_Deinit_Release_Memory", 1 }, + { "Feature_Option_None", 0 }, + { "Feature_Option_Query_Configured", 2 }, + { "Feature_Option_Query_Enabled", 4 }, + { "Feature_Option_Query_Inited", 3 }, + { "Feature_Option_Query_Ready", 5 }, +}; +const ProtobufCEnumDescriptor rpc_feature_option__descriptor = +{ + PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC, + "RpcFeatureOption", + "RpcFeatureOption", + "RpcFeatureOption", + "", + 6, + rpc_feature_option__enum_values_by_number, + 6, + rpc_feature_option__enum_values_by_name, + 1, + rpc_feature_option__value_ranges, + NULL,NULL,NULL,NULL /* reserved[1234] */ +}; +static const ProtobufCEnumValue rpc_id__enum_values_by_number[304] = +{ + { "MsgId_Invalid", "RPC_ID__MsgId_Invalid", 0 }, + { "Req_Base", "RPC_ID__Req_Base", 256 }, + { "Req_GetMACAddress", "RPC_ID__Req_GetMACAddress", 257 }, + { "Req_SetMacAddress", "RPC_ID__Req_SetMacAddress", 258 }, + { "Req_GetWifiMode", "RPC_ID__Req_GetWifiMode", 259 }, + { "Req_SetWifiMode", "RPC_ID__Req_SetWifiMode", 260 }, + { "Req_SuppDppInit", "RPC_ID__Req_SuppDppInit", 261 }, + { "Req_SuppDppDeinit", "RPC_ID__Req_SuppDppDeinit", 262 }, + { "Req_SuppDppBootstrapGen", "RPC_ID__Req_SuppDppBootstrapGen", 263 }, + { "Req_SuppDppStartListen", "RPC_ID__Req_SuppDppStartListen", 264 }, + { "Req_SuppDppStopListen", "RPC_ID__Req_SuppDppStopListen", 265 }, + { "Req_OTAActivate", "RPC_ID__Req_OTAActivate", 266 }, + { "Req_AppGetDesc", "RPC_ID__Req_AppGetDesc", 267 }, + { "Req_MemMonitor", "RPC_ID__Req_MemMonitor", 268 }, + { "Req_WifiScanParams", "RPC_ID__Req_WifiScanParams", 269 }, + { "Req_WifiSetPs", "RPC_ID__Req_WifiSetPs", 270 }, + { "Req_WifiGetPs", "RPC_ID__Req_WifiGetPs", 271 }, + { "Req_OTABegin", "RPC_ID__Req_OTABegin", 272 }, + { "Req_OTAWrite", "RPC_ID__Req_OTAWrite", 273 }, + { "Req_OTAEnd", "RPC_ID__Req_OTAEnd", 274 }, + { "Req_WifiSetMaxTxPower", "RPC_ID__Req_WifiSetMaxTxPower", 275 }, + { "Req_WifiGetMaxTxPower", "RPC_ID__Req_WifiGetMaxTxPower", 276 }, + { "Req_ConfigHeartbeat", "RPC_ID__Req_ConfigHeartbeat", 277 }, + { "Req_WifiInit", "RPC_ID__Req_WifiInit", 278 }, + { "Req_WifiDeinit", "RPC_ID__Req_WifiDeinit", 279 }, + { "Req_WifiStart", "RPC_ID__Req_WifiStart", 280 }, + { "Req_WifiStop", "RPC_ID__Req_WifiStop", 281 }, + { "Req_WifiConnect", "RPC_ID__Req_WifiConnect", 282 }, + { "Req_WifiDisconnect", "RPC_ID__Req_WifiDisconnect", 283 }, + { "Req_WifiSetConfig", "RPC_ID__Req_WifiSetConfig", 284 }, + { "Req_WifiGetConfig", "RPC_ID__Req_WifiGetConfig", 285 }, + { "Req_WifiScanStart", "RPC_ID__Req_WifiScanStart", 286 }, + { "Req_WifiScanStop", "RPC_ID__Req_WifiScanStop", 287 }, + { "Req_WifiScanGetApNum", "RPC_ID__Req_WifiScanGetApNum", 288 }, + { "Req_WifiScanGetApRecords", "RPC_ID__Req_WifiScanGetApRecords", 289 }, + { "Req_WifiClearApList", "RPC_ID__Req_WifiClearApList", 290 }, + { "Req_WifiRestore", "RPC_ID__Req_WifiRestore", 291 }, + { "Req_WifiClearFastConnect", "RPC_ID__Req_WifiClearFastConnect", 292 }, + { "Req_WifiDeauthSta", "RPC_ID__Req_WifiDeauthSta", 293 }, + { "Req_WifiStaGetApInfo", "RPC_ID__Req_WifiStaGetApInfo", 294 }, + { "Req_WifiSetProtocol", "RPC_ID__Req_WifiSetProtocol", 297 }, + { "Req_WifiGetProtocol", "RPC_ID__Req_WifiGetProtocol", 298 }, + { "Req_WifiSetBandwidth", "RPC_ID__Req_WifiSetBandwidth", 299 }, + { "Req_WifiGetBandwidth", "RPC_ID__Req_WifiGetBandwidth", 300 }, + { "Req_WifiSetChannel", "RPC_ID__Req_WifiSetChannel", 301 }, + { "Req_WifiGetChannel", "RPC_ID__Req_WifiGetChannel", 302 }, + { "Req_WifiSetCountry", "RPC_ID__Req_WifiSetCountry", 303 }, + { "Req_WifiGetCountry", "RPC_ID__Req_WifiGetCountry", 304 }, + { "Req_WifiSetPromiscuous", "RPC_ID__Req_WifiSetPromiscuous", 305 }, + { "Req_WifiGetPromiscuous", "RPC_ID__Req_WifiGetPromiscuous", 306 }, + { "Req_WifiSetPromiscuousFilter", "RPC_ID__Req_WifiSetPromiscuousFilter", 307 }, + { "Req_WifiGetPromiscuousFilter", "RPC_ID__Req_WifiGetPromiscuousFilter", 308 }, + { "Req_WifiSetPromiscuousCtrlFilter", "RPC_ID__Req_WifiSetPromiscuousCtrlFilter", 309 }, + { "Req_WifiGetPromiscuousCtrlFilter", "RPC_ID__Req_WifiGetPromiscuousCtrlFilter", 310 }, + { "Req_WifiApGetStaList", "RPC_ID__Req_WifiApGetStaList", 311 }, + { "Req_WifiApGetStaAid", "RPC_ID__Req_WifiApGetStaAid", 312 }, + { "Req_WifiSetStorage", "RPC_ID__Req_WifiSetStorage", 313 }, + { "Req_WifiSetVendorIe", "RPC_ID__Req_WifiSetVendorIe", 314 }, + { "Req_WifiSetEventMask", "RPC_ID__Req_WifiSetEventMask", 315 }, + { "Req_WifiGetEventMask", "RPC_ID__Req_WifiGetEventMask", 316 }, + { "Req_Wifi80211Tx", "RPC_ID__Req_Wifi80211Tx", 317 }, + { "Req_WifiSetCsiConfig", "RPC_ID__Req_WifiSetCsiConfig", 318 }, + { "Req_WifiSetCsi", "RPC_ID__Req_WifiSetCsi", 319 }, + { "Req_WifiSetAntGpio", "RPC_ID__Req_WifiSetAntGpio", 320 }, + { "Req_WifiGetAntGpio", "RPC_ID__Req_WifiGetAntGpio", 321 }, + { "Req_WifiSetAnt", "RPC_ID__Req_WifiSetAnt", 322 }, + { "Req_WifiGetAnt", "RPC_ID__Req_WifiGetAnt", 323 }, + { "Req_WifiGetTsfTime", "RPC_ID__Req_WifiGetTsfTime", 324 }, + { "Req_WifiSetInactiveTime", "RPC_ID__Req_WifiSetInactiveTime", 325 }, + { "Req_WifiGetInactiveTime", "RPC_ID__Req_WifiGetInactiveTime", 326 }, + { "Req_WifiStatisDump", "RPC_ID__Req_WifiStatisDump", 327 }, + { "Req_WifiSetRssiThreshold", "RPC_ID__Req_WifiSetRssiThreshold", 328 }, + { "Req_WifiFtmInitiateSession", "RPC_ID__Req_WifiFtmInitiateSession", 329 }, + { "Req_WifiFtmEndSession", "RPC_ID__Req_WifiFtmEndSession", 330 }, + { "Req_WifiFtmRespSetOffset", "RPC_ID__Req_WifiFtmRespSetOffset", 331 }, + { "Req_WifiConfig11bRate", "RPC_ID__Req_WifiConfig11bRate", 332 }, + { "Req_WifiConnectionlessModuleSetWakeInterval", "RPC_ID__Req_WifiConnectionlessModuleSetWakeInterval", 333 }, + { "Req_WifiSetCountryCode", "RPC_ID__Req_WifiSetCountryCode", 334 }, + { "Req_WifiGetCountryCode", "RPC_ID__Req_WifiGetCountryCode", 335 }, + { "Req_WifiConfig80211TxRate", "RPC_ID__Req_WifiConfig80211TxRate", 336 }, + { "Req_WifiDisablePmfConfig", "RPC_ID__Req_WifiDisablePmfConfig", 337 }, + { "Req_WifiStaGetAid", "RPC_ID__Req_WifiStaGetAid", 338 }, + { "Req_WifiStaGetNegotiatedPhymode", "RPC_ID__Req_WifiStaGetNegotiatedPhymode", 339 }, + { "Req_WifiSetDynamicCs", "RPC_ID__Req_WifiSetDynamicCs", 340 }, + { "Req_WifiStaGetRssi", "RPC_ID__Req_WifiStaGetRssi", 341 }, + { "Req_WifiSetProtocols", "RPC_ID__Req_WifiSetProtocols", 342 }, + { "Req_WifiGetProtocols", "RPC_ID__Req_WifiGetProtocols", 343 }, + { "Req_WifiSetBandwidths", "RPC_ID__Req_WifiSetBandwidths", 344 }, + { "Req_WifiGetBandwidths", "RPC_ID__Req_WifiGetBandwidths", 345 }, + { "Req_WifiSetBand", "RPC_ID__Req_WifiSetBand", 346 }, + { "Req_WifiGetBand", "RPC_ID__Req_WifiGetBand", 347 }, + { "Req_WifiSetBandMode", "RPC_ID__Req_WifiSetBandMode", 348 }, + { "Req_WifiGetBandMode", "RPC_ID__Req_WifiGetBandMode", 349 }, + { "Req_GetCoprocessorFwVersion", "RPC_ID__Req_GetCoprocessorFwVersion", 350 }, + { "Req_WifiScanGetApRecord", "RPC_ID__Req_WifiScanGetApRecord", 351 }, + { "Req_SetDhcpDnsStatus", "RPC_ID__Req_SetDhcpDnsStatus", 352 }, + { "Req_GetDhcpDnsStatus", "RPC_ID__Req_GetDhcpDnsStatus", 353 }, + { "Req_WifiStaTwtConfig", "RPC_ID__Req_WifiStaTwtConfig", 354 }, + { "Req_WifiStaItwtSetup", "RPC_ID__Req_WifiStaItwtSetup", 355 }, + { "Req_WifiStaItwtTeardown", "RPC_ID__Req_WifiStaItwtTeardown", 356 }, + { "Req_WifiStaItwtSuspend", "RPC_ID__Req_WifiStaItwtSuspend", 357 }, + { "Req_WifiStaItwtGetFlowIdStatus", "RPC_ID__Req_WifiStaItwtGetFlowIdStatus", 358 }, + { "Req_WifiStaItwtSendProbeReq", "RPC_ID__Req_WifiStaItwtSendProbeReq", 359 }, + { "Req_WifiStaItwtSetTargetWakeTimeOffset", "RPC_ID__Req_WifiStaItwtSetTargetWakeTimeOffset", 360 }, + { "Req_WifiStaEnterpriseEnable", "RPC_ID__Req_WifiStaEnterpriseEnable", 361 }, + { "Req_WifiStaEnterpriseDisable", "RPC_ID__Req_WifiStaEnterpriseDisable", 362 }, + { "Req_EapSetIdentity", "RPC_ID__Req_EapSetIdentity", 363 }, + { "Req_EapClearIdentity", "RPC_ID__Req_EapClearIdentity", 364 }, + { "Req_EapSetUsername", "RPC_ID__Req_EapSetUsername", 365 }, + { "Req_EapClearUsername", "RPC_ID__Req_EapClearUsername", 366 }, + { "Req_EapSetPassword", "RPC_ID__Req_EapSetPassword", 367 }, + { "Req_EapClearPassword", "RPC_ID__Req_EapClearPassword", 368 }, + { "Req_EapSetNewPassword", "RPC_ID__Req_EapSetNewPassword", 369 }, + { "Req_EapClearNewPassword", "RPC_ID__Req_EapClearNewPassword", 370 }, + { "Req_EapSetCaCert", "RPC_ID__Req_EapSetCaCert", 371 }, + { "Req_EapClearCaCert", "RPC_ID__Req_EapClearCaCert", 372 }, + { "Req_EapSetCertificateAndKey", "RPC_ID__Req_EapSetCertificateAndKey", 373 }, + { "Req_EapClearCertificateAndKey", "RPC_ID__Req_EapClearCertificateAndKey", 374 }, + { "Req_EapGetDisableTimeCheck", "RPC_ID__Req_EapGetDisableTimeCheck", 375 }, + { "Req_EapSetTtlsPhase2Method", "RPC_ID__Req_EapSetTtlsPhase2Method", 376 }, + { "Req_EapSetSuitebCertification", "RPC_ID__Req_EapSetSuitebCertification", 377 }, + { "Req_EapSetPacFile", "RPC_ID__Req_EapSetPacFile", 378 }, + { "Req_EapSetFastParams", "RPC_ID__Req_EapSetFastParams", 379 }, + { "Req_EapUseDefaultCertBundle", "RPC_ID__Req_EapUseDefaultCertBundle", 380 }, + { "Req_WifiSetOkcSupport", "RPC_ID__Req_WifiSetOkcSupport", 381 }, + { "Req_EapSetDomainName", "RPC_ID__Req_EapSetDomainName", 382 }, + { "Req_EapSetDisableTimeCheck", "RPC_ID__Req_EapSetDisableTimeCheck", 383 }, + { "Req_EapSetEapMethods", "RPC_ID__Req_EapSetEapMethods", 384 }, + { "Req_IfaceMacAddrSetGet", "RPC_ID__Req_IfaceMacAddrSetGet", 385 }, + { "Req_IfaceMacAddrLenGet", "RPC_ID__Req_IfaceMacAddrLenGet", 386 }, + { "Req_FeatureControl", "RPC_ID__Req_FeatureControl", 387 }, + { "Req_CustomRpc", "RPC_ID__Req_CustomRpc", 388 }, + { "Req_GpioConfig", "RPC_ID__Req_GpioConfig", 389 }, + { "Req_GpioResetPin", "RPC_ID__Req_GpioResetPin", 390 }, + { "Req_GpioSetLevel", "RPC_ID__Req_GpioSetLevel", 391 }, + { "Req_GpioGetLevel", "RPC_ID__Req_GpioGetLevel", 392 }, + { "Req_GpioSetDirection", "RPC_ID__Req_GpioSetDirection", 393 }, + { "Req_GpioInputEnable", "RPC_ID__Req_GpioInputEnable", 394 }, + { "Req_GpioSetPullMode", "RPC_ID__Req_GpioSetPullMode", 395 }, + { "Req_ExtCoex", "RPC_ID__Req_ExtCoex", 396 }, + { "Req_Max", "RPC_ID__Req_Max", 397 }, + { "Resp_Base", "RPC_ID__Resp_Base", 512 }, + { "Resp_GetMACAddress", "RPC_ID__Resp_GetMACAddress", 513 }, + { "Resp_SetMacAddress", "RPC_ID__Resp_SetMacAddress", 514 }, + { "Resp_GetWifiMode", "RPC_ID__Resp_GetWifiMode", 515 }, + { "Resp_SetWifiMode", "RPC_ID__Resp_SetWifiMode", 516 }, + { "Resp_SuppDppInit", "RPC_ID__Resp_SuppDppInit", 517 }, + { "Resp_SuppDppDeinit", "RPC_ID__Resp_SuppDppDeinit", 518 }, + { "Resp_SuppDppBootstrapGen", "RPC_ID__Resp_SuppDppBootstrapGen", 519 }, + { "Resp_SuppDppStartListen", "RPC_ID__Resp_SuppDppStartListen", 520 }, + { "Resp_SuppDppStopListen", "RPC_ID__Resp_SuppDppStopListen", 521 }, + { "Resp_OTAActivate", "RPC_ID__Resp_OTAActivate", 522 }, + { "Resp_AppGetDesc", "RPC_ID__Resp_AppGetDesc", 523 }, + { "Resp_MemMonitor", "RPC_ID__Resp_MemMonitor", 524 }, + { "Resp_WifiScanParams", "RPC_ID__Resp_WifiScanParams", 525 }, + { "Resp_WifiSetPs", "RPC_ID__Resp_WifiSetPs", 526 }, + { "Resp_WifiGetPs", "RPC_ID__Resp_WifiGetPs", 527 }, + { "Resp_OTABegin", "RPC_ID__Resp_OTABegin", 528 }, + { "Resp_OTAWrite", "RPC_ID__Resp_OTAWrite", 529 }, + { "Resp_OTAEnd", "RPC_ID__Resp_OTAEnd", 530 }, + { "Resp_WifiSetMaxTxPower", "RPC_ID__Resp_WifiSetMaxTxPower", 531 }, + { "Resp_WifiGetMaxTxPower", "RPC_ID__Resp_WifiGetMaxTxPower", 532 }, + { "Resp_ConfigHeartbeat", "RPC_ID__Resp_ConfigHeartbeat", 533 }, + { "Resp_WifiInit", "RPC_ID__Resp_WifiInit", 534 }, + { "Resp_WifiDeinit", "RPC_ID__Resp_WifiDeinit", 535 }, + { "Resp_WifiStart", "RPC_ID__Resp_WifiStart", 536 }, + { "Resp_WifiStop", "RPC_ID__Resp_WifiStop", 537 }, + { "Resp_WifiConnect", "RPC_ID__Resp_WifiConnect", 538 }, + { "Resp_WifiDisconnect", "RPC_ID__Resp_WifiDisconnect", 539 }, + { "Resp_WifiSetConfig", "RPC_ID__Resp_WifiSetConfig", 540 }, + { "Resp_WifiGetConfig", "RPC_ID__Resp_WifiGetConfig", 541 }, + { "Resp_WifiScanStart", "RPC_ID__Resp_WifiScanStart", 542 }, + { "Resp_WifiScanStop", "RPC_ID__Resp_WifiScanStop", 543 }, + { "Resp_WifiScanGetApNum", "RPC_ID__Resp_WifiScanGetApNum", 544 }, + { "Resp_WifiScanGetApRecords", "RPC_ID__Resp_WifiScanGetApRecords", 545 }, + { "Resp_WifiClearApList", "RPC_ID__Resp_WifiClearApList", 546 }, + { "Resp_WifiRestore", "RPC_ID__Resp_WifiRestore", 547 }, + { "Resp_WifiClearFastConnect", "RPC_ID__Resp_WifiClearFastConnect", 548 }, + { "Resp_WifiDeauthSta", "RPC_ID__Resp_WifiDeauthSta", 549 }, + { "Resp_WifiStaGetApInfo", "RPC_ID__Resp_WifiStaGetApInfo", 550 }, + { "Resp_WifiSetProtocol", "RPC_ID__Resp_WifiSetProtocol", 553 }, + { "Resp_WifiGetProtocol", "RPC_ID__Resp_WifiGetProtocol", 554 }, + { "Resp_WifiSetBandwidth", "RPC_ID__Resp_WifiSetBandwidth", 555 }, + { "Resp_WifiGetBandwidth", "RPC_ID__Resp_WifiGetBandwidth", 556 }, + { "Resp_WifiSetChannel", "RPC_ID__Resp_WifiSetChannel", 557 }, + { "Resp_WifiGetChannel", "RPC_ID__Resp_WifiGetChannel", 558 }, + { "Resp_WifiSetCountry", "RPC_ID__Resp_WifiSetCountry", 559 }, + { "Resp_WifiGetCountry", "RPC_ID__Resp_WifiGetCountry", 560 }, + { "Resp_WifiSetPromiscuous", "RPC_ID__Resp_WifiSetPromiscuous", 561 }, + { "Resp_WifiGetPromiscuous", "RPC_ID__Resp_WifiGetPromiscuous", 562 }, + { "Resp_WifiSetPromiscuousFilter", "RPC_ID__Resp_WifiSetPromiscuousFilter", 563 }, + { "Resp_WifiGetPromiscuousFilter", "RPC_ID__Resp_WifiGetPromiscuousFilter", 564 }, + { "Resp_WifiSetPromiscuousCtrlFilter", "RPC_ID__Resp_WifiSetPromiscuousCtrlFilter", 565 }, + { "Resp_WifiGetPromiscuousCtrlFilter", "RPC_ID__Resp_WifiGetPromiscuousCtrlFilter", 566 }, + { "Resp_WifiApGetStaList", "RPC_ID__Resp_WifiApGetStaList", 567 }, + { "Resp_WifiApGetStaAid", "RPC_ID__Resp_WifiApGetStaAid", 568 }, + { "Resp_WifiSetStorage", "RPC_ID__Resp_WifiSetStorage", 569 }, + { "Resp_WifiSetVendorIe", "RPC_ID__Resp_WifiSetVendorIe", 570 }, + { "Resp_WifiSetEventMask", "RPC_ID__Resp_WifiSetEventMask", 571 }, + { "Resp_WifiGetEventMask", "RPC_ID__Resp_WifiGetEventMask", 572 }, + { "Resp_Wifi80211Tx", "RPC_ID__Resp_Wifi80211Tx", 573 }, + { "Resp_WifiSetCsiConfig", "RPC_ID__Resp_WifiSetCsiConfig", 574 }, + { "Resp_WifiSetCsi", "RPC_ID__Resp_WifiSetCsi", 575 }, + { "Resp_WifiSetAntGpio", "RPC_ID__Resp_WifiSetAntGpio", 576 }, + { "Resp_WifiGetAntGpio", "RPC_ID__Resp_WifiGetAntGpio", 577 }, + { "Resp_WifiSetAnt", "RPC_ID__Resp_WifiSetAnt", 578 }, + { "Resp_WifiGetAnt", "RPC_ID__Resp_WifiGetAnt", 579 }, + { "Resp_WifiGetTsfTime", "RPC_ID__Resp_WifiGetTsfTime", 580 }, + { "Resp_WifiSetInactiveTime", "RPC_ID__Resp_WifiSetInactiveTime", 581 }, + { "Resp_WifiGetInactiveTime", "RPC_ID__Resp_WifiGetInactiveTime", 582 }, + { "Resp_WifiStatisDump", "RPC_ID__Resp_WifiStatisDump", 583 }, + { "Resp_WifiSetRssiThreshold", "RPC_ID__Resp_WifiSetRssiThreshold", 584 }, + { "Resp_WifiFtmInitiateSession", "RPC_ID__Resp_WifiFtmInitiateSession", 585 }, + { "Resp_WifiFtmEndSession", "RPC_ID__Resp_WifiFtmEndSession", 586 }, + { "Resp_WifiFtmRespSetOffset", "RPC_ID__Resp_WifiFtmRespSetOffset", 587 }, + { "Resp_WifiConfig11bRate", "RPC_ID__Resp_WifiConfig11bRate", 588 }, + { "Resp_WifiConnectionlessModuleSetWakeInterval", "RPC_ID__Resp_WifiConnectionlessModuleSetWakeInterval", 589 }, + { "Resp_WifiSetCountryCode", "RPC_ID__Resp_WifiSetCountryCode", 590 }, + { "Resp_WifiGetCountryCode", "RPC_ID__Resp_WifiGetCountryCode", 591 }, + { "Resp_WifiConfig80211TxRate", "RPC_ID__Resp_WifiConfig80211TxRate", 592 }, + { "Resp_WifiDisablePmfConfig", "RPC_ID__Resp_WifiDisablePmfConfig", 593 }, + { "Resp_WifiStaGetAid", "RPC_ID__Resp_WifiStaGetAid", 594 }, + { "Resp_WifiStaGetNegotiatedPhymode", "RPC_ID__Resp_WifiStaGetNegotiatedPhymode", 595 }, + { "Resp_WifiSetDynamicCs", "RPC_ID__Resp_WifiSetDynamicCs", 596 }, + { "Resp_WifiStaGetRssi", "RPC_ID__Resp_WifiStaGetRssi", 597 }, + { "Resp_WifiSetProtocols", "RPC_ID__Resp_WifiSetProtocols", 598 }, + { "Resp_WifiGetProtocols", "RPC_ID__Resp_WifiGetProtocols", 599 }, + { "Resp_WifiSetBandwidths", "RPC_ID__Resp_WifiSetBandwidths", 600 }, + { "Resp_WifiGetBandwidths", "RPC_ID__Resp_WifiGetBandwidths", 601 }, + { "Resp_WifiSetBand", "RPC_ID__Resp_WifiSetBand", 602 }, + { "Resp_WifiGetBand", "RPC_ID__Resp_WifiGetBand", 603 }, + { "Resp_WifiSetBandMode", "RPC_ID__Resp_WifiSetBandMode", 604 }, + { "Resp_WifiGetBandMode", "RPC_ID__Resp_WifiGetBandMode", 605 }, + { "Resp_GetCoprocessorFwVersion", "RPC_ID__Resp_GetCoprocessorFwVersion", 606 }, + { "Resp_WifiScanGetApRecord", "RPC_ID__Resp_WifiScanGetApRecord", 607 }, + { "Resp_SetDhcpDnsStatus", "RPC_ID__Resp_SetDhcpDnsStatus", 608 }, + { "Resp_GetDhcpDnsStatus", "RPC_ID__Resp_GetDhcpDnsStatus", 609 }, + { "Resp_WifiStaTwtConfig", "RPC_ID__Resp_WifiStaTwtConfig", 610 }, + { "Resp_WifiStaItwtSetup", "RPC_ID__Resp_WifiStaItwtSetup", 611 }, + { "Resp_WifiStaItwtTeardown", "RPC_ID__Resp_WifiStaItwtTeardown", 612 }, + { "Resp_WifiStaItwtSuspend", "RPC_ID__Resp_WifiStaItwtSuspend", 613 }, + { "Resp_WifiStaItwtGetFlowIdStatus", "RPC_ID__Resp_WifiStaItwtGetFlowIdStatus", 614 }, + { "Resp_WifiStaItwtSendProbeReq", "RPC_ID__Resp_WifiStaItwtSendProbeReq", 615 }, + { "Resp_WifiStaItwtSetTargetWakeTimeOffset", "RPC_ID__Resp_WifiStaItwtSetTargetWakeTimeOffset", 616 }, + { "Resp_WifiStaEnterpriseEnable", "RPC_ID__Resp_WifiStaEnterpriseEnable", 617 }, + { "Resp_WifiStaEnterpriseDisable", "RPC_ID__Resp_WifiStaEnterpriseDisable", 618 }, + { "Resp_EapSetIdentity", "RPC_ID__Resp_EapSetIdentity", 619 }, + { "Resp_EapClearIdentity", "RPC_ID__Resp_EapClearIdentity", 620 }, + { "Resp_EapSetUsername", "RPC_ID__Resp_EapSetUsername", 621 }, + { "Resp_EapClearUsername", "RPC_ID__Resp_EapClearUsername", 622 }, + { "Resp_EapSetPassword", "RPC_ID__Resp_EapSetPassword", 623 }, + { "Resp_EapClearPassword", "RPC_ID__Resp_EapClearPassword", 624 }, + { "Resp_EapSetNewPassword", "RPC_ID__Resp_EapSetNewPassword", 625 }, + { "Resp_EapClearNewPassword", "RPC_ID__Resp_EapClearNewPassword", 626 }, + { "Resp_EapSetCaCert", "RPC_ID__Resp_EapSetCaCert", 627 }, + { "Resp_EapClearCaCert", "RPC_ID__Resp_EapClearCaCert", 628 }, + { "Resp_EapSetCertificateAndKey", "RPC_ID__Resp_EapSetCertificateAndKey", 629 }, + { "Resp_EapClearCertificateAndKey", "RPC_ID__Resp_EapClearCertificateAndKey", 630 }, + { "Resp_EapGetDisableTimeCheck", "RPC_ID__Resp_EapGetDisableTimeCheck", 631 }, + { "Resp_EapSetTtlsPhase2Method", "RPC_ID__Resp_EapSetTtlsPhase2Method", 632 }, + { "Resp_EapSetSuitebCertification", "RPC_ID__Resp_EapSetSuitebCertification", 633 }, + { "Resp_EapSetPacFile", "RPC_ID__Resp_EapSetPacFile", 634 }, + { "Resp_EapSetFastParams", "RPC_ID__Resp_EapSetFastParams", 635 }, + { "Resp_EapUseDefaultCertBundle", "RPC_ID__Resp_EapUseDefaultCertBundle", 636 }, + { "Resp_WifiSetOkcSupport", "RPC_ID__Resp_WifiSetOkcSupport", 637 }, + { "Resp_EapSetDomainName", "RPC_ID__Resp_EapSetDomainName", 638 }, + { "Resp_EapSetDisableTimeCheck", "RPC_ID__Resp_EapSetDisableTimeCheck", 639 }, + { "Resp_EapSetEapMethods", "RPC_ID__Resp_EapSetEapMethods", 640 }, + { "Resp_IfaceMacAddrSetGet", "RPC_ID__Resp_IfaceMacAddrSetGet", 641 }, + { "Resp_IfaceMacAddrLenGet", "RPC_ID__Resp_IfaceMacAddrLenGet", 642 }, + { "Resp_FeatureControl", "RPC_ID__Resp_FeatureControl", 643 }, + { "Resp_CustomRpc", "RPC_ID__Resp_CustomRpc", 644 }, + { "Resp_GpioConfig", "RPC_ID__Resp_GpioConfig", 645 }, + { "Resp_GpioResetPin", "RPC_ID__Resp_GpioResetPin", 646 }, + { "Resp_GpioSetLevel", "RPC_ID__Resp_GpioSetLevel", 647 }, + { "Resp_GpioGetLevel", "RPC_ID__Resp_GpioGetLevel", 648 }, + { "Resp_GpioSetDirection", "RPC_ID__Resp_GpioSetDirection", 649 }, + { "Resp_GpioInputEnable", "RPC_ID__Resp_GpioInputEnable", 650 }, + { "Resp_GpioSetPullMode", "RPC_ID__Resp_GpioSetPullMode", 651 }, + { "Resp_ExtCoex", "RPC_ID__Resp_ExtCoex", 652 }, + { "Resp_Max", "RPC_ID__Resp_Max", 653 }, + { "Event_Base", "RPC_ID__Event_Base", 768 }, + { "Event_ESPInit", "RPC_ID__Event_ESPInit", 769 }, + { "Event_Heartbeat", "RPC_ID__Event_Heartbeat", 770 }, + { "Event_AP_StaConnected", "RPC_ID__Event_AP_StaConnected", 771 }, + { "Event_AP_StaDisconnected", "RPC_ID__Event_AP_StaDisconnected", 772 }, + { "Event_WifiEventNoArgs", "RPC_ID__Event_WifiEventNoArgs", 773 }, + { "Event_StaScanDone", "RPC_ID__Event_StaScanDone", 774 }, + { "Event_StaConnected", "RPC_ID__Event_StaConnected", 775 }, + { "Event_StaDisconnected", "RPC_ID__Event_StaDisconnected", 776 }, + { "Event_DhcpDnsStatus", "RPC_ID__Event_DhcpDnsStatus", 777 }, + { "Event_StaItwtSetup", "RPC_ID__Event_StaItwtSetup", 778 }, + { "Event_StaItwtTeardown", "RPC_ID__Event_StaItwtTeardown", 779 }, + { "Event_StaItwtSuspend", "RPC_ID__Event_StaItwtSuspend", 780 }, + { "Event_StaItwtProbe", "RPC_ID__Event_StaItwtProbe", 781 }, + { "Event_SuppDppUriReady", "RPC_ID__Event_SuppDppUriReady", 782 }, + { "Event_SuppDppCfgRecvd", "RPC_ID__Event_SuppDppCfgRecvd", 783 }, + { "Event_SuppDppFail", "RPC_ID__Event_SuppDppFail", 784 }, + { "Event_WifiDppUriReady", "RPC_ID__Event_WifiDppUriReady", 785 }, + { "Event_WifiDppCfgRecvd", "RPC_ID__Event_WifiDppCfgRecvd", 786 }, + { "Event_WifiDppFail", "RPC_ID__Event_WifiDppFail", 787 }, + { "Event_CustomRpc", "RPC_ID__Event_CustomRpc", 788 }, + { "Event_MemMonitor", "RPC_ID__Event_MemMonitor", 789 }, + { "Event_Max", "RPC_ID__Event_Max", 790 }, +}; +static const ProtobufCIntRange rpc_id__value_ranges[] = { +{0, 0},{256, 1},{297, 40},{512, 141},{553, 180},{768, 281},{0, 304} +}; +static const ProtobufCEnumValueIndex rpc_id__enum_values_by_name[304] = +{ + { "Event_AP_StaConnected", 284 }, + { "Event_AP_StaDisconnected", 285 }, + { "Event_Base", 281 }, + { "Event_CustomRpc", 301 }, + { "Event_DhcpDnsStatus", 290 }, + { "Event_ESPInit", 282 }, + { "Event_Heartbeat", 283 }, + { "Event_Max", 303 }, + { "Event_MemMonitor", 302 }, + { "Event_StaConnected", 288 }, + { "Event_StaDisconnected", 289 }, + { "Event_StaItwtProbe", 294 }, + { "Event_StaItwtSetup", 291 }, + { "Event_StaItwtSuspend", 293 }, + { "Event_StaItwtTeardown", 292 }, + { "Event_StaScanDone", 287 }, + { "Event_SuppDppCfgRecvd", 296 }, + { "Event_SuppDppFail", 297 }, + { "Event_SuppDppUriReady", 295 }, + { "Event_WifiDppCfgRecvd", 299 }, + { "Event_WifiDppFail", 300 }, + { "Event_WifiDppUriReady", 298 }, + { "Event_WifiEventNoArgs", 286 }, + { "MsgId_Invalid", 0 }, + { "Req_AppGetDesc", 12 }, + { "Req_Base", 1 }, + { "Req_ConfigHeartbeat", 22 }, + { "Req_CustomRpc", 131 }, + { "Req_EapClearCaCert", 115 }, + { "Req_EapClearCertificateAndKey", 117 }, + { "Req_EapClearIdentity", 107 }, + { "Req_EapClearNewPassword", 113 }, + { "Req_EapClearPassword", 111 }, + { "Req_EapClearUsername", 109 }, + { "Req_EapGetDisableTimeCheck", 118 }, + { "Req_EapSetCaCert", 114 }, + { "Req_EapSetCertificateAndKey", 116 }, + { "Req_EapSetDisableTimeCheck", 126 }, + { "Req_EapSetDomainName", 125 }, + { "Req_EapSetEapMethods", 127 }, + { "Req_EapSetFastParams", 122 }, + { "Req_EapSetIdentity", 106 }, + { "Req_EapSetNewPassword", 112 }, + { "Req_EapSetPacFile", 121 }, + { "Req_EapSetPassword", 110 }, + { "Req_EapSetSuitebCertification", 120 }, + { "Req_EapSetTtlsPhase2Method", 119 }, + { "Req_EapSetUsername", 108 }, + { "Req_EapUseDefaultCertBundle", 123 }, + { "Req_ExtCoex", 139 }, + { "Req_FeatureControl", 130 }, + { "Req_GetCoprocessorFwVersion", 93 }, + { "Req_GetDhcpDnsStatus", 96 }, + { "Req_GetMACAddress", 2 }, + { "Req_GetWifiMode", 4 }, + { "Req_GpioConfig", 132 }, + { "Req_GpioGetLevel", 135 }, + { "Req_GpioInputEnable", 137 }, + { "Req_GpioResetPin", 133 }, + { "Req_GpioSetDirection", 136 }, + { "Req_GpioSetLevel", 134 }, + { "Req_GpioSetPullMode", 138 }, + { "Req_IfaceMacAddrLenGet", 129 }, + { "Req_IfaceMacAddrSetGet", 128 }, + { "Req_Max", 140 }, + { "Req_MemMonitor", 13 }, + { "Req_OTAActivate", 11 }, + { "Req_OTABegin", 17 }, + { "Req_OTAEnd", 19 }, + { "Req_OTAWrite", 18 }, + { "Req_SetDhcpDnsStatus", 95 }, + { "Req_SetMacAddress", 3 }, + { "Req_SetWifiMode", 5 }, + { "Req_SuppDppBootstrapGen", 8 }, + { "Req_SuppDppDeinit", 7 }, + { "Req_SuppDppInit", 6 }, + { "Req_SuppDppStartListen", 9 }, + { "Req_SuppDppStopListen", 10 }, + { "Req_Wifi80211Tx", 60 }, + { "Req_WifiApGetStaAid", 55 }, + { "Req_WifiApGetStaList", 54 }, + { "Req_WifiClearApList", 35 }, + { "Req_WifiClearFastConnect", 37 }, + { "Req_WifiConfig11bRate", 75 }, + { "Req_WifiConfig80211TxRate", 79 }, + { "Req_WifiConnect", 27 }, + { "Req_WifiConnectionlessModuleSetWakeInterval", 76 }, + { "Req_WifiDeauthSta", 38 }, + { "Req_WifiDeinit", 24 }, + { "Req_WifiDisablePmfConfig", 80 }, + { "Req_WifiDisconnect", 28 }, + { "Req_WifiFtmEndSession", 73 }, + { "Req_WifiFtmInitiateSession", 72 }, + { "Req_WifiFtmRespSetOffset", 74 }, + { "Req_WifiGetAnt", 66 }, + { "Req_WifiGetAntGpio", 64 }, + { "Req_WifiGetBand", 90 }, + { "Req_WifiGetBandMode", 92 }, + { "Req_WifiGetBandwidth", 43 }, + { "Req_WifiGetBandwidths", 88 }, + { "Req_WifiGetChannel", 45 }, + { "Req_WifiGetConfig", 30 }, + { "Req_WifiGetCountry", 47 }, + { "Req_WifiGetCountryCode", 78 }, + { "Req_WifiGetEventMask", 59 }, + { "Req_WifiGetInactiveTime", 69 }, + { "Req_WifiGetMaxTxPower", 21 }, + { "Req_WifiGetPromiscuous", 49 }, + { "Req_WifiGetPromiscuousCtrlFilter", 53 }, + { "Req_WifiGetPromiscuousFilter", 51 }, + { "Req_WifiGetProtocol", 41 }, + { "Req_WifiGetProtocols", 86 }, + { "Req_WifiGetPs", 16 }, + { "Req_WifiGetTsfTime", 67 }, + { "Req_WifiInit", 23 }, + { "Req_WifiRestore", 36 }, + { "Req_WifiScanGetApNum", 33 }, + { "Req_WifiScanGetApRecord", 94 }, + { "Req_WifiScanGetApRecords", 34 }, + { "Req_WifiScanParams", 14 }, + { "Req_WifiScanStart", 31 }, + { "Req_WifiScanStop", 32 }, + { "Req_WifiSetAnt", 65 }, + { "Req_WifiSetAntGpio", 63 }, + { "Req_WifiSetBand", 89 }, + { "Req_WifiSetBandMode", 91 }, + { "Req_WifiSetBandwidth", 42 }, + { "Req_WifiSetBandwidths", 87 }, + { "Req_WifiSetChannel", 44 }, + { "Req_WifiSetConfig", 29 }, + { "Req_WifiSetCountry", 46 }, + { "Req_WifiSetCountryCode", 77 }, + { "Req_WifiSetCsi", 62 }, + { "Req_WifiSetCsiConfig", 61 }, + { "Req_WifiSetDynamicCs", 83 }, + { "Req_WifiSetEventMask", 58 }, + { "Req_WifiSetInactiveTime", 68 }, + { "Req_WifiSetMaxTxPower", 20 }, + { "Req_WifiSetOkcSupport", 124 }, + { "Req_WifiSetPromiscuous", 48 }, + { "Req_WifiSetPromiscuousCtrlFilter", 52 }, + { "Req_WifiSetPromiscuousFilter", 50 }, + { "Req_WifiSetProtocol", 40 }, + { "Req_WifiSetProtocols", 85 }, + { "Req_WifiSetPs", 15 }, + { "Req_WifiSetRssiThreshold", 71 }, + { "Req_WifiSetStorage", 56 }, + { "Req_WifiSetVendorIe", 57 }, + { "Req_WifiStaEnterpriseDisable", 105 }, + { "Req_WifiStaEnterpriseEnable", 104 }, + { "Req_WifiStaGetAid", 81 }, + { "Req_WifiStaGetApInfo", 39 }, + { "Req_WifiStaGetNegotiatedPhymode", 82 }, + { "Req_WifiStaGetRssi", 84 }, + { "Req_WifiStaItwtGetFlowIdStatus", 101 }, + { "Req_WifiStaItwtSendProbeReq", 102 }, + { "Req_WifiStaItwtSetTargetWakeTimeOffset", 103 }, + { "Req_WifiStaItwtSetup", 98 }, + { "Req_WifiStaItwtSuspend", 100 }, + { "Req_WifiStaItwtTeardown", 99 }, + { "Req_WifiStaTwtConfig", 97 }, + { "Req_WifiStart", 25 }, + { "Req_WifiStatisDump", 70 }, + { "Req_WifiStop", 26 }, + { "Resp_AppGetDesc", 152 }, + { "Resp_Base", 141 }, + { "Resp_ConfigHeartbeat", 162 }, + { "Resp_CustomRpc", 271 }, + { "Resp_EapClearCaCert", 255 }, + { "Resp_EapClearCertificateAndKey", 257 }, + { "Resp_EapClearIdentity", 247 }, + { "Resp_EapClearNewPassword", 253 }, + { "Resp_EapClearPassword", 251 }, + { "Resp_EapClearUsername", 249 }, + { "Resp_EapGetDisableTimeCheck", 258 }, + { "Resp_EapSetCaCert", 254 }, + { "Resp_EapSetCertificateAndKey", 256 }, + { "Resp_EapSetDisableTimeCheck", 266 }, + { "Resp_EapSetDomainName", 265 }, + { "Resp_EapSetEapMethods", 267 }, + { "Resp_EapSetFastParams", 262 }, + { "Resp_EapSetIdentity", 246 }, + { "Resp_EapSetNewPassword", 252 }, + { "Resp_EapSetPacFile", 261 }, + { "Resp_EapSetPassword", 250 }, + { "Resp_EapSetSuitebCertification", 260 }, + { "Resp_EapSetTtlsPhase2Method", 259 }, + { "Resp_EapSetUsername", 248 }, + { "Resp_EapUseDefaultCertBundle", 263 }, + { "Resp_ExtCoex", 279 }, + { "Resp_FeatureControl", 270 }, + { "Resp_GetCoprocessorFwVersion", 233 }, + { "Resp_GetDhcpDnsStatus", 236 }, + { "Resp_GetMACAddress", 142 }, + { "Resp_GetWifiMode", 144 }, + { "Resp_GpioConfig", 272 }, + { "Resp_GpioGetLevel", 275 }, + { "Resp_GpioInputEnable", 277 }, + { "Resp_GpioResetPin", 273 }, + { "Resp_GpioSetDirection", 276 }, + { "Resp_GpioSetLevel", 274 }, + { "Resp_GpioSetPullMode", 278 }, + { "Resp_IfaceMacAddrLenGet", 269 }, + { "Resp_IfaceMacAddrSetGet", 268 }, + { "Resp_Max", 280 }, + { "Resp_MemMonitor", 153 }, + { "Resp_OTAActivate", 151 }, + { "Resp_OTABegin", 157 }, + { "Resp_OTAEnd", 159 }, + { "Resp_OTAWrite", 158 }, + { "Resp_SetDhcpDnsStatus", 235 }, + { "Resp_SetMacAddress", 143 }, + { "Resp_SetWifiMode", 145 }, + { "Resp_SuppDppBootstrapGen", 148 }, + { "Resp_SuppDppDeinit", 147 }, + { "Resp_SuppDppInit", 146 }, + { "Resp_SuppDppStartListen", 149 }, + { "Resp_SuppDppStopListen", 150 }, + { "Resp_Wifi80211Tx", 200 }, + { "Resp_WifiApGetStaAid", 195 }, + { "Resp_WifiApGetStaList", 194 }, + { "Resp_WifiClearApList", 175 }, + { "Resp_WifiClearFastConnect", 177 }, + { "Resp_WifiConfig11bRate", 215 }, + { "Resp_WifiConfig80211TxRate", 219 }, + { "Resp_WifiConnect", 167 }, + { "Resp_WifiConnectionlessModuleSetWakeInterval", 216 }, + { "Resp_WifiDeauthSta", 178 }, + { "Resp_WifiDeinit", 164 }, + { "Resp_WifiDisablePmfConfig", 220 }, + { "Resp_WifiDisconnect", 168 }, + { "Resp_WifiFtmEndSession", 213 }, + { "Resp_WifiFtmInitiateSession", 212 }, + { "Resp_WifiFtmRespSetOffset", 214 }, + { "Resp_WifiGetAnt", 206 }, + { "Resp_WifiGetAntGpio", 204 }, + { "Resp_WifiGetBand", 230 }, + { "Resp_WifiGetBandMode", 232 }, + { "Resp_WifiGetBandwidth", 183 }, + { "Resp_WifiGetBandwidths", 228 }, + { "Resp_WifiGetChannel", 185 }, + { "Resp_WifiGetConfig", 170 }, + { "Resp_WifiGetCountry", 187 }, + { "Resp_WifiGetCountryCode", 218 }, + { "Resp_WifiGetEventMask", 199 }, + { "Resp_WifiGetInactiveTime", 209 }, + { "Resp_WifiGetMaxTxPower", 161 }, + { "Resp_WifiGetPromiscuous", 189 }, + { "Resp_WifiGetPromiscuousCtrlFilter", 193 }, + { "Resp_WifiGetPromiscuousFilter", 191 }, + { "Resp_WifiGetProtocol", 181 }, + { "Resp_WifiGetProtocols", 226 }, + { "Resp_WifiGetPs", 156 }, + { "Resp_WifiGetTsfTime", 207 }, + { "Resp_WifiInit", 163 }, + { "Resp_WifiRestore", 176 }, + { "Resp_WifiScanGetApNum", 173 }, + { "Resp_WifiScanGetApRecord", 234 }, + { "Resp_WifiScanGetApRecords", 174 }, + { "Resp_WifiScanParams", 154 }, + { "Resp_WifiScanStart", 171 }, + { "Resp_WifiScanStop", 172 }, + { "Resp_WifiSetAnt", 205 }, + { "Resp_WifiSetAntGpio", 203 }, + { "Resp_WifiSetBand", 229 }, + { "Resp_WifiSetBandMode", 231 }, + { "Resp_WifiSetBandwidth", 182 }, + { "Resp_WifiSetBandwidths", 227 }, + { "Resp_WifiSetChannel", 184 }, + { "Resp_WifiSetConfig", 169 }, + { "Resp_WifiSetCountry", 186 }, + { "Resp_WifiSetCountryCode", 217 }, + { "Resp_WifiSetCsi", 202 }, + { "Resp_WifiSetCsiConfig", 201 }, + { "Resp_WifiSetDynamicCs", 223 }, + { "Resp_WifiSetEventMask", 198 }, + { "Resp_WifiSetInactiveTime", 208 }, + { "Resp_WifiSetMaxTxPower", 160 }, + { "Resp_WifiSetOkcSupport", 264 }, + { "Resp_WifiSetPromiscuous", 188 }, + { "Resp_WifiSetPromiscuousCtrlFilter", 192 }, + { "Resp_WifiSetPromiscuousFilter", 190 }, + { "Resp_WifiSetProtocol", 180 }, + { "Resp_WifiSetProtocols", 225 }, + { "Resp_WifiSetPs", 155 }, + { "Resp_WifiSetRssiThreshold", 211 }, + { "Resp_WifiSetStorage", 196 }, + { "Resp_WifiSetVendorIe", 197 }, + { "Resp_WifiStaEnterpriseDisable", 245 }, + { "Resp_WifiStaEnterpriseEnable", 244 }, + { "Resp_WifiStaGetAid", 221 }, + { "Resp_WifiStaGetApInfo", 179 }, + { "Resp_WifiStaGetNegotiatedPhymode", 222 }, + { "Resp_WifiStaGetRssi", 224 }, + { "Resp_WifiStaItwtGetFlowIdStatus", 241 }, + { "Resp_WifiStaItwtSendProbeReq", 242 }, + { "Resp_WifiStaItwtSetTargetWakeTimeOffset", 243 }, + { "Resp_WifiStaItwtSetup", 238 }, + { "Resp_WifiStaItwtSuspend", 240 }, + { "Resp_WifiStaItwtTeardown", 239 }, + { "Resp_WifiStaTwtConfig", 237 }, + { "Resp_WifiStart", 165 }, + { "Resp_WifiStatisDump", 210 }, + { "Resp_WifiStop", 166 }, +}; +const ProtobufCEnumDescriptor rpc_id__descriptor = +{ + PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC, + "RpcId", + "RpcId", + "RpcId", + "", + 304, + rpc_id__enum_values_by_number, + 304, + rpc_id__enum_values_by_name, + 6, + rpc_id__value_ranges, + NULL,NULL,NULL,NULL /* reserved[1234] */ +}; +static const ProtobufCEnumValue rpc__gpio_mode__enum_values_by_number[4] = +{ + { "GPIO_MODE_DISABLE", "RPC__GPIO_MODE__GPIO_MODE_DISABLE", 0 }, + { "GPIO_MODE_INPUT", "RPC__GPIO_MODE__GPIO_MODE_INPUT", 1 }, + { "GPIO_MODE_OUTPUT", "RPC__GPIO_MODE__GPIO_MODE_OUTPUT", 2 }, + { "GPIO_MODE_INPUT_OUTPUT", "RPC__GPIO_MODE__GPIO_MODE_INPUT_OUTPUT", 3 }, +}; +static const ProtobufCIntRange rpc__gpio_mode__value_ranges[] = { +{0, 0},{0, 4} +}; +static const ProtobufCEnumValueIndex rpc__gpio_mode__enum_values_by_name[4] = +{ + { "GPIO_MODE_DISABLE", 0 }, + { "GPIO_MODE_INPUT", 1 }, + { "GPIO_MODE_INPUT_OUTPUT", 3 }, + { "GPIO_MODE_OUTPUT", 2 }, +}; +const ProtobufCEnumDescriptor rpc__gpio_mode__descriptor = +{ + PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC, + "Rpc_GpioMode", + "Rpc_GpioMode", + "RpcGpioMode", + "", + 4, + rpc__gpio_mode__enum_values_by_number, + 4, + rpc__gpio_mode__enum_values_by_name, + 1, + rpc__gpio_mode__value_ranges, + NULL,NULL,NULL,NULL /* reserved[1234] */ +}; +static const ProtobufCEnumValue rpc__gpio_pull_mode__enum_values_by_number[3] = +{ + { "GPIO_PULL_NONE", "RPC__GPIO_PULL_MODE__GPIO_PULL_NONE", 0 }, + { "GPIO_PULL_UP", "RPC__GPIO_PULL_MODE__GPIO_PULL_UP", 1 }, + { "GPIO_PULL_DOWN", "RPC__GPIO_PULL_MODE__GPIO_PULL_DOWN", 2 }, +}; +static const ProtobufCIntRange rpc__gpio_pull_mode__value_ranges[] = { +{0, 0},{0, 3} +}; +static const ProtobufCEnumValueIndex rpc__gpio_pull_mode__enum_values_by_name[3] = +{ + { "GPIO_PULL_DOWN", 2 }, + { "GPIO_PULL_NONE", 0 }, + { "GPIO_PULL_UP", 1 }, +}; +const ProtobufCEnumDescriptor rpc__gpio_pull_mode__descriptor = +{ + PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC, + "Rpc_GpioPullMode", + "Rpc_GpioPullMode", + "RpcGpioPullMode", + "", + 3, + rpc__gpio_pull_mode__enum_values_by_number, + 3, + rpc__gpio_pull_mode__enum_values_by_name, + 1, + rpc__gpio_pull_mode__value_ranges, + NULL,NULL,NULL,NULL /* reserved[1234] */ +}; +static const ProtobufCEnumValue rpc__mem_monitor_config__enum_values_by_number[3] = +{ + { "MEMMONITOR_NO_CHANGE", "RPC__MEM_MONITOR_CONFIG__MEMMONITOR_NO_CHANGE", 0 }, + { "MEMMONITOR_DISABLE", "RPC__MEM_MONITOR_CONFIG__MEMMONITOR_DISABLE", 1 }, + { "MEMMONITOR_ENABLE", "RPC__MEM_MONITOR_CONFIG__MEMMONITOR_ENABLE", 2 }, +}; +static const ProtobufCIntRange rpc__mem_monitor_config__value_ranges[] = { +{0, 0},{0, 3} +}; +static const ProtobufCEnumValueIndex rpc__mem_monitor_config__enum_values_by_name[3] = +{ + { "MEMMONITOR_DISABLE", 1 }, + { "MEMMONITOR_ENABLE", 2 }, + { "MEMMONITOR_NO_CHANGE", 0 }, +}; +const ProtobufCEnumDescriptor rpc__mem_monitor_config__descriptor = +{ + PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC, + "Rpc_MemMonitorConfig", + "Rpc_MemMonitorConfig", + "RpcMemMonitorConfig", + "", + 3, + rpc__mem_monitor_config__enum_values_by_number, + 3, + rpc__mem_monitor_config__enum_values_by_name, + 1, + rpc__mem_monitor_config__value_ranges, + NULL,NULL,NULL,NULL /* reserved[1234] */ +}; +static const ProtobufCEnumValue rpc__ext_coex_cmd__enum_values_by_number[5] = +{ + { "SetGpioPin", "RPC__EXT_COEX_CMD__SetGpioPin", 0 }, + { "Disable", "RPC__EXT_COEX_CMD__Disable", 1 }, + { "SetWorkMode", "RPC__EXT_COEX_CMD__SetWorkMode", 2 }, + { "SetGrantDelay", "RPC__EXT_COEX_CMD__SetGrantDelay", 3 }, + { "SetValidateHigh", "RPC__EXT_COEX_CMD__SetValidateHigh", 4 }, +}; +static const ProtobufCIntRange rpc__ext_coex_cmd__value_ranges[] = { +{0, 0},{0, 5} +}; +static const ProtobufCEnumValueIndex rpc__ext_coex_cmd__enum_values_by_name[5] = +{ + { "Disable", 1 }, + { "SetGpioPin", 0 }, + { "SetGrantDelay", 3 }, + { "SetValidateHigh", 4 }, + { "SetWorkMode", 2 }, +}; +const ProtobufCEnumDescriptor rpc__ext_coex_cmd__descriptor = +{ + PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC, + "Rpc_ExtCoexCmd", + "Rpc_ExtCoexCmd", + "RpcExtCoexCmd", + "", + 5, + rpc__ext_coex_cmd__enum_values_by_number, + 5, + rpc__ext_coex_cmd__enum_values_by_name, + 1, + rpc__ext_coex_cmd__value_ranges, + NULL,NULL,NULL,NULL /* reserved[1234] */ +}; diff --git a/firmware/components/esp_hosted/common/proto/esp_hosted_rpc.pb-c.h b/firmware/components/esp_hosted/common/proto/esp_hosted_rpc.pb-c.h new file mode 100644 index 0000000..382fccf --- /dev/null +++ b/firmware/components/esp_hosted/common/proto/esp_hosted_rpc.pb-c.h @@ -0,0 +1,12998 @@ +/* Generated by the protocol buffer compiler. DO NOT EDIT! */ +/* Generated from: esp_hosted_rpc.proto */ + +#ifndef PROTOBUF_C_esp_5fhosted_5frpc_2eproto__INCLUDED +#define PROTOBUF_C_esp_5fhosted_5frpc_2eproto__INCLUDED + +#include + +PROTOBUF_C__BEGIN_DECLS + +#if PROTOBUF_C_VERSION_NUMBER < 1003000 +# error This file was generated by a newer version of protoc-c which is incompatible with your libprotobuf-c headers. Please update your headers. +#elif 1004001 < PROTOBUF_C_MIN_COMPILER_VERSION +# error This file was generated by an older version of protoc-c which is incompatible with your libprotobuf-c headers. Please regenerate this file with a newer version of protoc-c. +#endif + + +typedef struct WifiInitConfig WifiInitConfig; +typedef struct WifiCountry WifiCountry; +typedef struct WifiActiveScanTime WifiActiveScanTime; +typedef struct WifiScanTime WifiScanTime; +typedef struct WifiScanChannelBitmap WifiScanChannelBitmap; +typedef struct WifiScanConfig WifiScanConfig; +typedef struct WifiScanDefaultParams WifiScanDefaultParams; +typedef struct WifiHeApInfo WifiHeApInfo; +typedef struct WifiApRecord WifiApRecord; +typedef struct WifiScanThreshold WifiScanThreshold; +typedef struct WifiPmfConfig WifiPmfConfig; +typedef struct WifiBssMaxIdleConfig WifiBssMaxIdleConfig; +typedef struct WifiApConfig WifiApConfig; +typedef struct WifiStaConfig WifiStaConfig; +typedef struct WifiConfig WifiConfig; +typedef struct WifiStaInfo WifiStaInfo; +typedef struct WifiStaList WifiStaList; +typedef struct WifiPktRxCtrl WifiPktRxCtrl; +typedef struct WifiPromiscuousPkt WifiPromiscuousPkt; +typedef struct WifiPromiscuousFilter WifiPromiscuousFilter; +typedef struct WifiCsiConfig WifiCsiConfig; +typedef struct WifiCsiInfo WifiCsiInfo; +typedef struct WifiAntGpio WifiAntGpio; +typedef struct WifiAntGpioConfig WifiAntGpioConfig; +typedef struct WifiAntConfig WifiAntConfig; +typedef struct WifiActionTxReq WifiActionTxReq; +typedef struct WifiFtmInitiatorCfg WifiFtmInitiatorCfg; +typedef struct WifiEventStaScanDone WifiEventStaScanDone; +typedef struct WifiEventStaConnected WifiEventStaConnected; +typedef struct WifiEventStaDisconnected WifiEventStaDisconnected; +typedef struct WifiEventStaAuthmodeChange WifiEventStaAuthmodeChange; +typedef struct WifiEventStaWpsErPin WifiEventStaWpsErPin; +typedef struct ApCred ApCred; +typedef struct WifiEventStaWpsErSuccess WifiEventStaWpsErSuccess; +typedef struct WifiEventApProbeReqRx WifiEventApProbeReqRx; +typedef struct WifiEventBssRssiLow WifiEventBssRssiLow; +typedef struct WifiFtmReportEntry WifiFtmReportEntry; +typedef struct WifiEventFtmReport WifiEventFtmReport; +typedef struct WifiEventActionTxStatus WifiEventActionTxStatus; +typedef struct WifiEventRocDone WifiEventRocDone; +typedef struct WifiEventApWpsRgPin WifiEventApWpsRgPin; +typedef struct WifiEventApWpsRgFailReason WifiEventApWpsRgFailReason; +typedef struct WifiEventApWpsRgSuccess WifiEventApWpsRgSuccess; +typedef struct WifiProtocols WifiProtocols; +typedef struct WifiBandwidths WifiBandwidths; +typedef struct WifiItwtSetupConfig WifiItwtSetupConfig; +typedef struct WifiTwtConfig WifiTwtConfig; +typedef struct EspAppDesc EspAppDesc; +typedef struct HeapSizeThreshold HeapSizeThreshold; +typedef struct MemInfo MemInfo; +typedef struct HeapInfo HeapInfo; +typedef struct ConnectedSTAList ConnectedSTAList; +typedef struct EapFastConfig EapFastConfig; +typedef struct RpcReqGetMacAddress RpcReqGetMacAddress; +typedef struct RpcRespGetMacAddress RpcRespGetMacAddress; +typedef struct RpcReqGetMode RpcReqGetMode; +typedef struct RpcRespGetMode RpcRespGetMode; +typedef struct RpcReqSetMode RpcReqSetMode; +typedef struct RpcRespSetMode RpcRespSetMode; +typedef struct RpcReqGetPs RpcReqGetPs; +typedef struct RpcRespGetPs RpcRespGetPs; +typedef struct RpcReqSetPs RpcReqSetPs; +typedef struct RpcRespSetPs RpcRespSetPs; +typedef struct RpcReqSetMacAddress RpcReqSetMacAddress; +typedef struct RpcRespSetMacAddress RpcRespSetMacAddress; +typedef struct RpcReqOTABegin RpcReqOTABegin; +typedef struct RpcRespOTABegin RpcRespOTABegin; +typedef struct RpcReqOTAWrite RpcReqOTAWrite; +typedef struct RpcRespOTAWrite RpcRespOTAWrite; +typedef struct RpcReqOTAEnd RpcReqOTAEnd; +typedef struct RpcRespOTAEnd RpcRespOTAEnd; +typedef struct RpcReqOTAActivate RpcReqOTAActivate; +typedef struct RpcRespOTAActivate RpcRespOTAActivate; +typedef struct RpcReqAppGetDesc RpcReqAppGetDesc; +typedef struct RpcRespAppGetDesc RpcRespAppGetDesc; +typedef struct RpcReqWifiSetMaxTxPower RpcReqWifiSetMaxTxPower; +typedef struct RpcRespWifiSetMaxTxPower RpcRespWifiSetMaxTxPower; +typedef struct RpcReqWifiGetMaxTxPower RpcReqWifiGetMaxTxPower; +typedef struct RpcRespWifiGetMaxTxPower RpcRespWifiGetMaxTxPower; +typedef struct RpcReqConfigHeartbeat RpcReqConfigHeartbeat; +typedef struct RpcRespConfigHeartbeat RpcRespConfigHeartbeat; +typedef struct RpcReqWifiInit RpcReqWifiInit; +typedef struct RpcRespWifiInit RpcRespWifiInit; +typedef struct RpcReqWifiDeinit RpcReqWifiDeinit; +typedef struct RpcRespWifiDeinit RpcRespWifiDeinit; +typedef struct RpcReqWifiSetConfig RpcReqWifiSetConfig; +typedef struct RpcRespWifiSetConfig RpcRespWifiSetConfig; +typedef struct RpcReqWifiGetConfig RpcReqWifiGetConfig; +typedef struct RpcRespWifiGetConfig RpcRespWifiGetConfig; +typedef struct RpcReqWifiConnect RpcReqWifiConnect; +typedef struct RpcRespWifiConnect RpcRespWifiConnect; +typedef struct RpcReqWifiDisconnect RpcReqWifiDisconnect; +typedef struct RpcRespWifiDisconnect RpcRespWifiDisconnect; +typedef struct RpcReqWifiStart RpcReqWifiStart; +typedef struct RpcRespWifiStart RpcRespWifiStart; +typedef struct RpcReqWifiStop RpcReqWifiStop; +typedef struct RpcRespWifiStop RpcRespWifiStop; +typedef struct RpcReqWifiScanStart RpcReqWifiScanStart; +typedef struct RpcRespWifiScanStart RpcRespWifiScanStart; +typedef struct RpcReqWifiScanStop RpcReqWifiScanStop; +typedef struct RpcRespWifiScanStop RpcRespWifiScanStop; +typedef struct RpcReqWifiScanGetApNum RpcReqWifiScanGetApNum; +typedef struct RpcRespWifiScanGetApNum RpcRespWifiScanGetApNum; +typedef struct RpcReqWifiScanGetApRecords RpcReqWifiScanGetApRecords; +typedef struct RpcRespWifiScanGetApRecords RpcRespWifiScanGetApRecords; +typedef struct RpcReqWifiScanGetApRecord RpcReqWifiScanGetApRecord; +typedef struct RpcRespWifiScanGetApRecord RpcRespWifiScanGetApRecord; +typedef struct RpcReqWifiClearApList RpcReqWifiClearApList; +typedef struct RpcRespWifiClearApList RpcRespWifiClearApList; +typedef struct RpcReqWifiRestore RpcReqWifiRestore; +typedef struct RpcRespWifiRestore RpcRespWifiRestore; +typedef struct RpcReqWifiClearFastConnect RpcReqWifiClearFastConnect; +typedef struct RpcRespWifiClearFastConnect RpcRespWifiClearFastConnect; +typedef struct RpcReqWifiDeauthSta RpcReqWifiDeauthSta; +typedef struct RpcRespWifiDeauthSta RpcRespWifiDeauthSta; +typedef struct RpcReqWifiStaGetApInfo RpcReqWifiStaGetApInfo; +typedef struct RpcRespWifiStaGetApInfo RpcRespWifiStaGetApInfo; +typedef struct RpcReqWifiSetProtocol RpcReqWifiSetProtocol; +typedef struct RpcRespWifiSetProtocol RpcRespWifiSetProtocol; +typedef struct RpcReqWifiGetProtocol RpcReqWifiGetProtocol; +typedef struct RpcRespWifiGetProtocol RpcRespWifiGetProtocol; +typedef struct RpcReqWifiSetBandwidth RpcReqWifiSetBandwidth; +typedef struct RpcRespWifiSetBandwidth RpcRespWifiSetBandwidth; +typedef struct RpcReqWifiGetBandwidth RpcReqWifiGetBandwidth; +typedef struct RpcRespWifiGetBandwidth RpcRespWifiGetBandwidth; +typedef struct RpcReqWifiSetChannel RpcReqWifiSetChannel; +typedef struct RpcRespWifiSetChannel RpcRespWifiSetChannel; +typedef struct RpcReqWifiGetChannel RpcReqWifiGetChannel; +typedef struct RpcRespWifiGetChannel RpcRespWifiGetChannel; +typedef struct RpcReqWifiSetStorage RpcReqWifiSetStorage; +typedef struct RpcRespWifiSetStorage RpcRespWifiSetStorage; +typedef struct RpcReqWifiSetCountryCode RpcReqWifiSetCountryCode; +typedef struct RpcRespWifiSetCountryCode RpcRespWifiSetCountryCode; +typedef struct RpcReqWifiGetCountryCode RpcReqWifiGetCountryCode; +typedef struct RpcRespWifiGetCountryCode RpcRespWifiGetCountryCode; +typedef struct RpcReqWifiSetCountry RpcReqWifiSetCountry; +typedef struct RpcRespWifiSetCountry RpcRespWifiSetCountry; +typedef struct RpcReqWifiGetCountry RpcReqWifiGetCountry; +typedef struct RpcRespWifiGetCountry RpcRespWifiGetCountry; +typedef struct RpcReqWifiApGetStaList RpcReqWifiApGetStaList; +typedef struct RpcRespWifiApGetStaList RpcRespWifiApGetStaList; +typedef struct RpcReqWifiApGetStaAid RpcReqWifiApGetStaAid; +typedef struct RpcReqWifiStaGetNegotiatedPhymode RpcReqWifiStaGetNegotiatedPhymode; +typedef struct RpcRespWifiStaGetNegotiatedPhymode RpcRespWifiStaGetNegotiatedPhymode; +typedef struct RpcRespWifiApGetStaAid RpcRespWifiApGetStaAid; +typedef struct RpcReqWifiStaGetRssi RpcReqWifiStaGetRssi; +typedef struct RpcRespWifiStaGetRssi RpcRespWifiStaGetRssi; +typedef struct RpcReqWifiScanParams RpcReqWifiScanParams; +typedef struct RpcRespWifiScanParams RpcRespWifiScanParams; +typedef struct RpcReqWifiStaGetAid RpcReqWifiStaGetAid; +typedef struct RpcRespWifiStaGetAid RpcRespWifiStaGetAid; +typedef struct RpcReqWifiSetProtocols RpcReqWifiSetProtocols; +typedef struct RpcRespWifiSetProtocols RpcRespWifiSetProtocols; +typedef struct RpcReqWifiGetProtocols RpcReqWifiGetProtocols; +typedef struct RpcRespWifiGetProtocols RpcRespWifiGetProtocols; +typedef struct RpcReqWifiSetBandwidths RpcReqWifiSetBandwidths; +typedef struct RpcRespWifiSetBandwidths RpcRespWifiSetBandwidths; +typedef struct RpcReqWifiGetBandwidths RpcReqWifiGetBandwidths; +typedef struct RpcRespWifiGetBandwidths RpcRespWifiGetBandwidths; +typedef struct RpcReqWifiSetBand RpcReqWifiSetBand; +typedef struct RpcRespWifiSetBand RpcRespWifiSetBand; +typedef struct RpcReqWifiGetBand RpcReqWifiGetBand; +typedef struct RpcRespWifiGetBand RpcRespWifiGetBand; +typedef struct RpcReqWifiSetBandMode RpcReqWifiSetBandMode; +typedef struct RpcRespWifiSetBandMode RpcRespWifiSetBandMode; +typedef struct RpcReqWifiGetBandMode RpcReqWifiGetBandMode; +typedef struct RpcRespWifiGetBandMode RpcRespWifiGetBandMode; +typedef struct RpcReqWifiSetInactiveTime RpcReqWifiSetInactiveTime; +typedef struct RpcRespWifiSetInactiveTime RpcRespWifiSetInactiveTime; +typedef struct RpcReqWifiGetInactiveTime RpcReqWifiGetInactiveTime; +typedef struct RpcRespWifiGetInactiveTime RpcRespWifiGetInactiveTime; +typedef struct RpcReqWifiDisablePmfConfig RpcReqWifiDisablePmfConfig; +typedef struct RpcRespWifiDisablePmfConfig RpcRespWifiDisablePmfConfig; +typedef struct RpcReqWifiStaItwtSetup RpcReqWifiStaItwtSetup; +typedef struct RpcRespWifiStaItwtSetup RpcRespWifiStaItwtSetup; +typedef struct RpcReqWifiStaItwtTeardown RpcReqWifiStaItwtTeardown; +typedef struct RpcRespWifiStaItwtTeardown RpcRespWifiStaItwtTeardown; +typedef struct RpcReqWifiStaItwtSuspend RpcReqWifiStaItwtSuspend; +typedef struct RpcRespWifiStaItwtSuspend RpcRespWifiStaItwtSuspend; +typedef struct RpcReqWifiStaItwtGetFlowIdStatus RpcReqWifiStaItwtGetFlowIdStatus; +typedef struct RpcRespWifiStaItwtGetFlowIdStatus RpcRespWifiStaItwtGetFlowIdStatus; +typedef struct RpcReqWifiStaItwtSendProbeReq RpcReqWifiStaItwtSendProbeReq; +typedef struct RpcRespWifiStaItwtSendProbeReq RpcRespWifiStaItwtSendProbeReq; +typedef struct RpcReqWifiStaItwtSetTargetWakeTimeOffset RpcReqWifiStaItwtSetTargetWakeTimeOffset; +typedef struct RpcRespWifiStaItwtSetTargetWakeTimeOffset RpcRespWifiStaItwtSetTargetWakeTimeOffset; +typedef struct RpcReqWifiStaTwtConfig RpcReqWifiStaTwtConfig; +typedef struct RpcRespWifiStaTwtConfig RpcRespWifiStaTwtConfig; +typedef struct RpcReqGetCoprocessorFwVersion RpcReqGetCoprocessorFwVersion; +typedef struct RpcRespGetCoprocessorFwVersion RpcRespGetCoprocessorFwVersion; +typedef struct RpcReqSetDhcpDnsStatus RpcReqSetDhcpDnsStatus; +typedef struct RpcRespSetDhcpDnsStatus RpcRespSetDhcpDnsStatus; +typedef struct RpcReqGetDhcpDnsStatus RpcReqGetDhcpDnsStatus; +typedef struct RpcRespGetDhcpDnsStatus RpcRespGetDhcpDnsStatus; +typedef struct RpcReqSuppDppInit RpcReqSuppDppInit; +typedef struct RpcRespSuppDppInit RpcRespSuppDppInit; +typedef struct RpcReqSuppDppDeinit RpcReqSuppDppDeinit; +typedef struct RpcRespSuppDppDeinit RpcRespSuppDppDeinit; +typedef struct RpcReqSuppDppBootstrapGen RpcReqSuppDppBootstrapGen; +typedef struct RpcRespSuppDppBootstrapGen RpcRespSuppDppBootstrapGen; +typedef struct RpcReqSuppDppStartListen RpcReqSuppDppStartListen; +typedef struct RpcRespSuppDppStartListen RpcRespSuppDppStartListen; +typedef struct RpcReqSuppDppStopListen RpcReqSuppDppStopListen; +typedef struct RpcRespSuppDppStopListen RpcRespSuppDppStopListen; +typedef struct RpcReqIfaceMacAddrSetGet RpcReqIfaceMacAddrSetGet; +typedef struct RpcRespIfaceMacAddrSetGet RpcRespIfaceMacAddrSetGet; +typedef struct RpcReqIfaceMacAddrLenGet RpcReqIfaceMacAddrLenGet; +typedef struct RpcRespIfaceMacAddrLenGet RpcRespIfaceMacAddrLenGet; +typedef struct RpcReqFeatureControl RpcReqFeatureControl; +typedef struct RpcRespFeatureControl RpcRespFeatureControl; +typedef struct RpcReqMemMonitor RpcReqMemMonitor; +typedef struct RpcRespMemMonitor RpcRespMemMonitor; +typedef struct RpcEventWifiEventNoArgs RpcEventWifiEventNoArgs; +typedef struct RpcEventESPInit RpcEventESPInit; +typedef struct RpcEventHeartbeat RpcEventHeartbeat; +typedef struct RpcEventAPStaDisconnected RpcEventAPStaDisconnected; +typedef struct RpcEventAPStaConnected RpcEventAPStaConnected; +typedef struct RpcEventStaScanDone RpcEventStaScanDone; +typedef struct RpcEventStaConnected RpcEventStaConnected; +typedef struct RpcEventStaDisconnected RpcEventStaDisconnected; +typedef struct RpcGpioConfig RpcGpioConfig; +typedef struct RpcReqGpioConfig RpcReqGpioConfig; +typedef struct RpcRespGpioConfig RpcRespGpioConfig; +typedef struct RpcReqGpioResetPin RpcReqGpioResetPin; +typedef struct RpcRespGpioResetPin RpcRespGpioResetPin; +typedef struct RpcReqGpioSetLevel RpcReqGpioSetLevel; +typedef struct RpcRespGpioSetLevel RpcRespGpioSetLevel; +typedef struct RpcReqGpioGetLevel RpcReqGpioGetLevel; +typedef struct RpcRespGpioGetLevel RpcRespGpioGetLevel; +typedef struct RpcReqGpioSetDirection RpcReqGpioSetDirection; +typedef struct RpcRespGpioSetDirection RpcRespGpioSetDirection; +typedef struct RpcReqGpioInputEnable RpcReqGpioInputEnable; +typedef struct RpcRespGpioInputEnable RpcRespGpioInputEnable; +typedef struct RpcReqGpioSetPullMode RpcReqGpioSetPullMode; +typedef struct RpcRespGpioSetPullMode RpcRespGpioSetPullMode; +typedef struct RpcReqExtCoex RpcReqExtCoex; +typedef struct RpcRespExtCoex RpcRespExtCoex; +typedef struct RpcEventDhcpDnsStatus RpcEventDhcpDnsStatus; +typedef struct RpcEventStaItwtSetup RpcEventStaItwtSetup; +typedef struct RpcEventStaItwtTeardown RpcEventStaItwtTeardown; +typedef struct RpcEventStaItwtSuspend RpcEventStaItwtSuspend; +typedef struct RpcEventStaItwtProbe RpcEventStaItwtProbe; +typedef struct RpcReqWifiStaEnterpriseEnable RpcReqWifiStaEnterpriseEnable; +typedef struct RpcRespWifiStaEnterpriseEnable RpcRespWifiStaEnterpriseEnable; +typedef struct RpcReqWifiStaEnterpriseDisable RpcReqWifiStaEnterpriseDisable; +typedef struct RpcRespWifiStaEnterpriseDisable RpcRespWifiStaEnterpriseDisable; +typedef struct RpcReqEapSetIdentity RpcReqEapSetIdentity; +typedef struct RpcRespEapSetIdentity RpcRespEapSetIdentity; +typedef struct RpcReqEapClearIdentity RpcReqEapClearIdentity; +typedef struct RpcRespEapClearIdentity RpcRespEapClearIdentity; +typedef struct RpcReqEapSetUsername RpcReqEapSetUsername; +typedef struct RpcRespEapSetUsername RpcRespEapSetUsername; +typedef struct RpcReqEapClearUsername RpcReqEapClearUsername; +typedef struct RpcRespEapClearUsername RpcRespEapClearUsername; +typedef struct RpcReqEapSetPassword RpcReqEapSetPassword; +typedef struct RpcRespEapSetPassword RpcRespEapSetPassword; +typedef struct RpcReqEapClearPassword RpcReqEapClearPassword; +typedef struct RpcRespEapClearPassword RpcRespEapClearPassword; +typedef struct RpcReqEapSetNewPassword RpcReqEapSetNewPassword; +typedef struct RpcRespEapSetNewPassword RpcRespEapSetNewPassword; +typedef struct RpcReqEapClearNewPassword RpcReqEapClearNewPassword; +typedef struct RpcRespEapClearNewPassword RpcRespEapClearNewPassword; +typedef struct RpcReqEapSetCaCert RpcReqEapSetCaCert; +typedef struct RpcRespEapSetCaCert RpcRespEapSetCaCert; +typedef struct RpcReqEapClearCaCert RpcReqEapClearCaCert; +typedef struct RpcRespEapClearCaCert RpcRespEapClearCaCert; +typedef struct RpcReqEapSetCertificateAndKey RpcReqEapSetCertificateAndKey; +typedef struct RpcRespEapSetCertificateAndKey RpcRespEapSetCertificateAndKey; +typedef struct RpcReqEapClearCertificateAndKey RpcReqEapClearCertificateAndKey; +typedef struct RpcRespEapClearCertificateAndKey RpcRespEapClearCertificateAndKey; +typedef struct RpcReqEapSetDisableTimeCheck RpcReqEapSetDisableTimeCheck; +typedef struct RpcRespEapSetDisableTimeCheck RpcRespEapSetDisableTimeCheck; +typedef struct RpcReqEapGetDisableTimeCheck RpcReqEapGetDisableTimeCheck; +typedef struct RpcRespEapGetDisableTimeCheck RpcRespEapGetDisableTimeCheck; +typedef struct RpcReqEapSetTtlsPhase2Method RpcReqEapSetTtlsPhase2Method; +typedef struct RpcRespEapSetTtlsPhase2Method RpcRespEapSetTtlsPhase2Method; +typedef struct RpcReqEapSetSuiteb192bitCertification RpcReqEapSetSuiteb192bitCertification; +typedef struct RpcRespEapSetSuiteb192bitCertification RpcRespEapSetSuiteb192bitCertification; +typedef struct RpcReqEapSetPacFile RpcReqEapSetPacFile; +typedef struct RpcRespEapSetPacFile RpcRespEapSetPacFile; +typedef struct RpcReqEapSetFastParams RpcReqEapSetFastParams; +typedef struct RpcRespEapSetFastParams RpcRespEapSetFastParams; +typedef struct RpcReqEapUseDefaultCertBundle RpcReqEapUseDefaultCertBundle; +typedef struct RpcRespEapUseDefaultCertBundle RpcRespEapUseDefaultCertBundle; +typedef struct RpcReqWifiSetOkcSupport RpcReqWifiSetOkcSupport; +typedef struct RpcRespWifiSetOkcSupport RpcRespWifiSetOkcSupport; +typedef struct RpcReqEapSetDomainName RpcReqEapSetDomainName; +typedef struct RpcRespEapSetDomainName RpcRespEapSetDomainName; +typedef struct RpcReqEapSetEapMethods RpcReqEapSetEapMethods; +typedef struct RpcRespEapSetEapMethods RpcRespEapSetEapMethods; +typedef struct RpcEventSuppDppUriReady RpcEventSuppDppUriReady; +typedef struct RpcEventSuppDppCfgRecvd RpcEventSuppDppCfgRecvd; +typedef struct RpcEventSuppDppFail RpcEventSuppDppFail; +typedef struct RpcEventWifiDppUriReady RpcEventWifiDppUriReady; +typedef struct RpcEventWifiDppCfgRecvd RpcEventWifiDppCfgRecvd; +typedef struct RpcEventWifiDppFail RpcEventWifiDppFail; +typedef struct RpcReqCustomRpc RpcReqCustomRpc; +typedef struct RpcRespCustomRpc RpcRespCustomRpc; +typedef struct RpcEventCustomRpc RpcEventCustomRpc; +typedef struct RpcEventMemMonitor RpcEventMemMonitor; +typedef struct Rpc Rpc; + + +/* --- enums --- */ + +typedef enum _RpcWifiBw { + RPC__WIFI_BW__BW_Invalid = 0, + RPC__WIFI_BW__HT20 = 1, + RPC__WIFI_BW__HT40 = 2 + PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(RPC__WIFI_BW) +} RpcWifiBw; +typedef enum _RpcWifiPowerSave { + RPC__WIFI_POWER_SAVE__PS_Invalid = 0, + RPC__WIFI_POWER_SAVE__MIN_MODEM = 1, + RPC__WIFI_POWER_SAVE__MAX_MODEM = 2 + PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(RPC__WIFI_POWER_SAVE) +} RpcWifiPowerSave; +typedef enum _RpcWifiSecProt { + RPC__WIFI_SEC_PROT__Open = 0, + RPC__WIFI_SEC_PROT__WEP = 1, + RPC__WIFI_SEC_PROT__WPA_PSK = 2, + RPC__WIFI_SEC_PROT__WPA2_PSK = 3, + RPC__WIFI_SEC_PROT__WPA_WPA2_PSK = 4, + RPC__WIFI_SEC_PROT__WPA2_ENTERPRISE = 5, + RPC__WIFI_SEC_PROT__WPA3_PSK = 6, + RPC__WIFI_SEC_PROT__WPA2_WPA3_PSK = 7 + PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(RPC__WIFI_SEC_PROT) +} RpcWifiSecProt; +/* + * enums for Control path + */ +typedef enum _RpcStatus { + RPC__STATUS__Connected = 0, + RPC__STATUS__Not_Connected = 1, + RPC__STATUS__No_AP_Found = 2, + RPC__STATUS__Connection_Fail = 3, + RPC__STATUS__Invalid_Argument = 4, + RPC__STATUS__Out_Of_Range = 5 + PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(RPC__STATUS) +} RpcStatus; +typedef enum _RpcCmd { + RPC_CMD__Invalid = 0, + RPC_CMD__Get = 1, + RPC_CMD__Set = 2 + PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(RPC_CMD) +} RpcCmd; +typedef enum _RpcType { + RPC_TYPE__MsgType_Invalid = 0, + RPC_TYPE__Req = 1, + RPC_TYPE__Resp = 2, + RPC_TYPE__Event = 3, + RPC_TYPE__MsgType_Max = 4 + PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(RPC_TYPE) +} RpcType; +typedef enum _RpcFeature { + RPC_FEATURE__Feature_None = 0, + /* + * Bluetooth (BT) Feature + */ + RPC_FEATURE__Feature_Bluetooth = 1, + /* + * OpenThread RCP (Radio Co-processor) Feature + */ + /* + * add additional features here + */ + RPC_FEATURE__Feature_Openthread_Rcp = 2 + PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(RPC_FEATURE) +} RpcFeature; +typedef enum _RpcFeatureCommand { + RPC_FEATURE_COMMAND__Feature_Command_None = 0, + /* + * Bluetooth (BT) Feature Commands + */ + RPC_FEATURE_COMMAND__Feature_Command_BT_Init = 1, + RPC_FEATURE_COMMAND__Feature_Command_BT_Deinit = 2, + RPC_FEATURE_COMMAND__Feature_Command_BT_Enable = 3, + RPC_FEATURE_COMMAND__Feature_Command_BT_Disable = 4, + /* + * Generic Feature Commands. Currently used for: + * - OpenThread (OT) + */ + RPC_FEATURE_COMMAND__Feature_Command_Init = 5, + RPC_FEATURE_COMMAND__Feature_Command_Deinit = 6, + RPC_FEATURE_COMMAND__Feature_Command_Enable = 7, + RPC_FEATURE_COMMAND__Feature_Command_Disable = 8, + /* + * add additional feature commands here + */ + RPC_FEATURE_COMMAND__Feature_Command_Query = 9 + PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(RPC_FEATURE_COMMAND) +} RpcFeatureCommand; +typedef enum _RpcFeatureOption { + RPC_FEATURE_OPTION__Feature_Option_None = 0, + /* + * Bluetooth (BT) Feature Options + */ + /* + * release memory when deinit BT + */ + RPC_FEATURE_OPTION__Feature_Option_BT_Deinit_Release_Memory = 1, + /* + * Generic Queries. Currently used for: + * - OpenThread (OT) + */ + /* + * is the feature configured (via Kconfig) + */ + RPC_FEATURE_OPTION__Feature_Option_Query_Configured = 2, + /* + * is the feature initialised + */ + RPC_FEATURE_OPTION__Feature_Option_Query_Inited = 3, + /* + * is the feature enabled + */ + RPC_FEATURE_OPTION__Feature_Option_Query_Enabled = 4, + /* + * is the feature ready + */ + RPC_FEATURE_OPTION__Feature_Option_Query_Ready = 5 + PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(RPC_FEATURE_OPTION) +} RpcFeatureOption; +typedef enum _RpcId { + RPC_ID__MsgId_Invalid = 0, + /* + ** Request Msgs * + */ + /* + *0x100 + */ + RPC_ID__Req_Base = 256, + /* + *0x101 + */ + RPC_ID__Req_GetMACAddress = 257, + /* + *0x102 + */ + RPC_ID__Req_SetMacAddress = 258, + /* + *0x103 + */ + RPC_ID__Req_GetWifiMode = 259, + /* + *0x104 + */ + RPC_ID__Req_SetWifiMode = 260, + /* + *0x105 + */ + RPC_ID__Req_SuppDppInit = 261, + /* + *0x106 + */ + RPC_ID__Req_SuppDppDeinit = 262, + /* + *0x107 + */ + RPC_ID__Req_SuppDppBootstrapGen = 263, + /* + *0x108 + */ + RPC_ID__Req_SuppDppStartListen = 264, + /* + *0x109 + */ + RPC_ID__Req_SuppDppStopListen = 265, + /* + *0x10a + */ + RPC_ID__Req_OTAActivate = 266, + /* + *0x10b + */ + RPC_ID__Req_AppGetDesc = 267, + /* + *0x10c + */ + RPC_ID__Req_MemMonitor = 268, + /* + *0x10d + */ + RPC_ID__Req_WifiScanParams = 269, + /* + *0x10e + */ + RPC_ID__Req_WifiSetPs = 270, + /* + *0x10f + */ + RPC_ID__Req_WifiGetPs = 271, + /* + *0x110 + */ + RPC_ID__Req_OTABegin = 272, + /* + *0x111 + */ + RPC_ID__Req_OTAWrite = 273, + /* + *0x112 + */ + RPC_ID__Req_OTAEnd = 274, + /* + *0x113 + */ + RPC_ID__Req_WifiSetMaxTxPower = 275, + /* + *0x114 + */ + RPC_ID__Req_WifiGetMaxTxPower = 276, + /* + *0x115 + */ + RPC_ID__Req_ConfigHeartbeat = 277, + /* + *0x116 + */ + RPC_ID__Req_WifiInit = 278, + /* + *0x117 + */ + RPC_ID__Req_WifiDeinit = 279, + /* + *0x118 + */ + RPC_ID__Req_WifiStart = 280, + /* + *0x119 + */ + RPC_ID__Req_WifiStop = 281, + /* + *0x11a + */ + RPC_ID__Req_WifiConnect = 282, + /* + *0x11b + */ + RPC_ID__Req_WifiDisconnect = 283, + /* + *0x11c + */ + RPC_ID__Req_WifiSetConfig = 284, + /* + *0x11d + */ + RPC_ID__Req_WifiGetConfig = 285, + /* + *0x11e + */ + RPC_ID__Req_WifiScanStart = 286, + /* + *0x11f + */ + RPC_ID__Req_WifiScanStop = 287, + /* + *0x120 + */ + RPC_ID__Req_WifiScanGetApNum = 288, + /* + *0x121 + */ + RPC_ID__Req_WifiScanGetApRecords = 289, + /* + *0x122 + */ + RPC_ID__Req_WifiClearApList = 290, + /* + *0x123 + */ + RPC_ID__Req_WifiRestore = 291, + /* + *0x124 + */ + RPC_ID__Req_WifiClearFastConnect = 292, + /* + *0x125 + */ + RPC_ID__Req_WifiDeauthSta = 293, + /* + *0x126 + */ + RPC_ID__Req_WifiStaGetApInfo = 294, + /* + *Req_WifiSetPs = 295; //0x127 + *Req_WifiGetPs = 296; //0x128 + */ + /* + *0x129 + */ + RPC_ID__Req_WifiSetProtocol = 297, + /* + *0x12a + */ + RPC_ID__Req_WifiGetProtocol = 298, + /* + *0x12b + */ + RPC_ID__Req_WifiSetBandwidth = 299, + /* + *0x12c + */ + RPC_ID__Req_WifiGetBandwidth = 300, + /* + *0x12d + */ + RPC_ID__Req_WifiSetChannel = 301, + /* + *0x12e + */ + RPC_ID__Req_WifiGetChannel = 302, + /* + *0x12f + */ + RPC_ID__Req_WifiSetCountry = 303, + /* + *0x130 + */ + RPC_ID__Req_WifiGetCountry = 304, + /* + * Req_WifiSetPromiscuousRxCb = 305; //0x131 + */ + /* + *0x131 + */ + RPC_ID__Req_WifiSetPromiscuous = 305, + /* + *0x132 + */ + RPC_ID__Req_WifiGetPromiscuous = 306, + /* + *0x133 + */ + RPC_ID__Req_WifiSetPromiscuousFilter = 307, + /* + *0x134 + */ + RPC_ID__Req_WifiGetPromiscuousFilter = 308, + /* + *0x135 + */ + RPC_ID__Req_WifiSetPromiscuousCtrlFilter = 309, + /* + *0x136 + */ + RPC_ID__Req_WifiGetPromiscuousCtrlFilter = 310, + /* + *0x137 + */ + RPC_ID__Req_WifiApGetStaList = 311, + /* + *0x138 + */ + RPC_ID__Req_WifiApGetStaAid = 312, + /* + *0x139 + */ + RPC_ID__Req_WifiSetStorage = 313, + /* + *0x13a + */ + RPC_ID__Req_WifiSetVendorIe = 314, + /* + * Req_WifiSetVendorIeCb = 315; //0x13b + */ + /* + *0x13b + */ + RPC_ID__Req_WifiSetEventMask = 315, + /* + *0x13c + */ + RPC_ID__Req_WifiGetEventMask = 316, + /* + *0x13d + */ + RPC_ID__Req_Wifi80211Tx = 317, + /* + * Req_WifiSetCsiRxCb = 318; //0x13e + */ + /* + *0x13e + */ + RPC_ID__Req_WifiSetCsiConfig = 318, + /* + *0x13f + */ + RPC_ID__Req_WifiSetCsi = 319, + /* + *0x140 + */ + RPC_ID__Req_WifiSetAntGpio = 320, + /* + *0x141 + */ + RPC_ID__Req_WifiGetAntGpio = 321, + /* + *0x142 + */ + RPC_ID__Req_WifiSetAnt = 322, + /* + *0x143 + */ + RPC_ID__Req_WifiGetAnt = 323, + /* + *0x144 + */ + RPC_ID__Req_WifiGetTsfTime = 324, + /* + *0x145 + */ + RPC_ID__Req_WifiSetInactiveTime = 325, + /* + *0x146 + */ + RPC_ID__Req_WifiGetInactiveTime = 326, + /* + *0x147 + */ + RPC_ID__Req_WifiStatisDump = 327, + /* + *0x148 + */ + RPC_ID__Req_WifiSetRssiThreshold = 328, + /* + *0x149 + */ + RPC_ID__Req_WifiFtmInitiateSession = 329, + /* + *0x14a + */ + RPC_ID__Req_WifiFtmEndSession = 330, + /* + *0x14b + */ + RPC_ID__Req_WifiFtmRespSetOffset = 331, + /* + *0x14c + */ + RPC_ID__Req_WifiConfig11bRate = 332, + /* + *0x14d + */ + RPC_ID__Req_WifiConnectionlessModuleSetWakeInterval = 333, + /* + *0x14e + */ + RPC_ID__Req_WifiSetCountryCode = 334, + /* + *0x14f + */ + RPC_ID__Req_WifiGetCountryCode = 335, + /* + *0x150 + */ + RPC_ID__Req_WifiConfig80211TxRate = 336, + /* + *0x151 + */ + RPC_ID__Req_WifiDisablePmfConfig = 337, + /* + *0x152 + */ + RPC_ID__Req_WifiStaGetAid = 338, + /* + *0x153 + */ + RPC_ID__Req_WifiStaGetNegotiatedPhymode = 339, + /* + *0x154 + */ + RPC_ID__Req_WifiSetDynamicCs = 340, + /* + *0x155 + */ + RPC_ID__Req_WifiStaGetRssi = 341, + /* + *0x156 + */ + RPC_ID__Req_WifiSetProtocols = 342, + /* + *0x157 + */ + RPC_ID__Req_WifiGetProtocols = 343, + /* + *0x158 + */ + RPC_ID__Req_WifiSetBandwidths = 344, + /* + *0x159 + */ + RPC_ID__Req_WifiGetBandwidths = 345, + /* + *0x15a + */ + RPC_ID__Req_WifiSetBand = 346, + /* + *0x15b + */ + RPC_ID__Req_WifiGetBand = 347, + /* + *0x15c + */ + RPC_ID__Req_WifiSetBandMode = 348, + /* + *0x15d + */ + RPC_ID__Req_WifiGetBandMode = 349, + /* + *0x15e + */ + RPC_ID__Req_GetCoprocessorFwVersion = 350, + /* + *0x15f + */ + RPC_ID__Req_WifiScanGetApRecord = 351, + /* + *0x160 + */ + RPC_ID__Req_SetDhcpDnsStatus = 352, + /* + *0x161 + */ + RPC_ID__Req_GetDhcpDnsStatus = 353, + /* + *0x162 + */ + RPC_ID__Req_WifiStaTwtConfig = 354, + /* + *0x163 + */ + RPC_ID__Req_WifiStaItwtSetup = 355, + /* + *0x164 + */ + RPC_ID__Req_WifiStaItwtTeardown = 356, + /* + *0x165 + */ + RPC_ID__Req_WifiStaItwtSuspend = 357, + /* + *0x166 + */ + RPC_ID__Req_WifiStaItwtGetFlowIdStatus = 358, + /* + *0x167 + */ + RPC_ID__Req_WifiStaItwtSendProbeReq = 359, + /* + *0x168 + */ + RPC_ID__Req_WifiStaItwtSetTargetWakeTimeOffset = 360, + /* + *0x169 + */ + RPC_ID__Req_WifiStaEnterpriseEnable = 361, + /* + *0x16A + */ + RPC_ID__Req_WifiStaEnterpriseDisable = 362, + /* + *0x16B + */ + RPC_ID__Req_EapSetIdentity = 363, + /* + *0x16C + */ + RPC_ID__Req_EapClearIdentity = 364, + /* + *0x16D + */ + RPC_ID__Req_EapSetUsername = 365, + /* + *0x16E + */ + RPC_ID__Req_EapClearUsername = 366, + /* + *0x16F + */ + RPC_ID__Req_EapSetPassword = 367, + /* + *0x170 + */ + RPC_ID__Req_EapClearPassword = 368, + /* + *0x171 + */ + RPC_ID__Req_EapSetNewPassword = 369, + /* + *0x172 + */ + RPC_ID__Req_EapClearNewPassword = 370, + /* + *0x173 + */ + RPC_ID__Req_EapSetCaCert = 371, + /* + *0x174 + */ + RPC_ID__Req_EapClearCaCert = 372, + /* + *0x175 + */ + RPC_ID__Req_EapSetCertificateAndKey = 373, + /* + *0x176 + */ + RPC_ID__Req_EapClearCertificateAndKey = 374, + /* + *0x177 + */ + RPC_ID__Req_EapGetDisableTimeCheck = 375, + /* + *0x178 + */ + RPC_ID__Req_EapSetTtlsPhase2Method = 376, + /* + *0x179 + */ + RPC_ID__Req_EapSetSuitebCertification = 377, + /* + *0x17A + */ + RPC_ID__Req_EapSetPacFile = 378, + /* + *0x17B + */ + RPC_ID__Req_EapSetFastParams = 379, + /* + *0x17C + */ + RPC_ID__Req_EapUseDefaultCertBundle = 380, + /* + *0x17D + */ + RPC_ID__Req_WifiSetOkcSupport = 381, + /* + *0x17E + */ + RPC_ID__Req_EapSetDomainName = 382, + /* + *0x17F + */ + RPC_ID__Req_EapSetDisableTimeCheck = 383, + /* + *0x180 + */ + RPC_ID__Req_EapSetEapMethods = 384, + /* + *0x181 + */ + RPC_ID__Req_IfaceMacAddrSetGet = 385, + /* + *0x182 + */ + RPC_ID__Req_IfaceMacAddrLenGet = 386, + /* + * Common RPC to handle simple feature control with one optional parameter + * Supported Features: + * - BT Init/Deinit/Enable/Disable + */ + /* + *0x183 + */ + RPC_ID__Req_FeatureControl = 387, + /* + * Custom RPC for user-defined packed structures + */ + /* + *0x184 + */ + RPC_ID__Req_CustomRpc = 388, + /* + * 0x185 + */ + RPC_ID__Req_GpioConfig = 389, + /* + * 0x186 + */ + RPC_ID__Req_GpioResetPin = 390, + /* + * 0x187 + */ + RPC_ID__Req_GpioSetLevel = 391, + /* + * 0x188 + */ + RPC_ID__Req_GpioGetLevel = 392, + /* + * 0x189 + */ + RPC_ID__Req_GpioSetDirection = 393, + /* + * 0x18a + */ + RPC_ID__Req_GpioInputEnable = 394, + /* + * 0x18B + */ + RPC_ID__Req_GpioSetPullMode = 395, + /* + * 0x18C + */ + RPC_ID__Req_ExtCoex = 396, + /* + * Add new control path command response before Req_Max + * and update Req_Max + */ + /* + *0x18D + */ + RPC_ID__Req_Max = 397, + /* + ** Response Msgs * + */ + RPC_ID__Resp_Base = 512, + RPC_ID__Resp_GetMACAddress = 513, + RPC_ID__Resp_SetMacAddress = 514, + RPC_ID__Resp_GetWifiMode = 515, + RPC_ID__Resp_SetWifiMode = 516, + RPC_ID__Resp_SuppDppInit = 517, + RPC_ID__Resp_SuppDppDeinit = 518, + RPC_ID__Resp_SuppDppBootstrapGen = 519, + RPC_ID__Resp_SuppDppStartListen = 520, + RPC_ID__Resp_SuppDppStopListen = 521, + /* + *Resp_SetSoftAPVendorSpecificIE = 522; + *Resp_StartSoftAP = 523; + *Resp_GetSoftAPConnectedSTAList = 524; + *Resp_StopSoftAP = 525; + */ + RPC_ID__Resp_OTAActivate = 522, + RPC_ID__Resp_AppGetDesc = 523, + RPC_ID__Resp_MemMonitor = 524, + RPC_ID__Resp_WifiScanParams = 525, + RPC_ID__Resp_WifiSetPs = 526, + RPC_ID__Resp_WifiGetPs = 527, + RPC_ID__Resp_OTABegin = 528, + RPC_ID__Resp_OTAWrite = 529, + RPC_ID__Resp_OTAEnd = 530, + RPC_ID__Resp_WifiSetMaxTxPower = 531, + RPC_ID__Resp_WifiGetMaxTxPower = 532, + RPC_ID__Resp_ConfigHeartbeat = 533, + RPC_ID__Resp_WifiInit = 534, + RPC_ID__Resp_WifiDeinit = 535, + RPC_ID__Resp_WifiStart = 536, + RPC_ID__Resp_WifiStop = 537, + RPC_ID__Resp_WifiConnect = 538, + RPC_ID__Resp_WifiDisconnect = 539, + RPC_ID__Resp_WifiSetConfig = 540, + RPC_ID__Resp_WifiGetConfig = 541, + RPC_ID__Resp_WifiScanStart = 542, + RPC_ID__Resp_WifiScanStop = 543, + RPC_ID__Resp_WifiScanGetApNum = 544, + RPC_ID__Resp_WifiScanGetApRecords = 545, + RPC_ID__Resp_WifiClearApList = 546, + RPC_ID__Resp_WifiRestore = 547, + RPC_ID__Resp_WifiClearFastConnect = 548, + RPC_ID__Resp_WifiDeauthSta = 549, + RPC_ID__Resp_WifiStaGetApInfo = 550, + /* + *Resp_WifiSetPs = 551; + *Resp_WifiGetPs = 552; + */ + RPC_ID__Resp_WifiSetProtocol = 553, + RPC_ID__Resp_WifiGetProtocol = 554, + RPC_ID__Resp_WifiSetBandwidth = 555, + RPC_ID__Resp_WifiGetBandwidth = 556, + RPC_ID__Resp_WifiSetChannel = 557, + RPC_ID__Resp_WifiGetChannel = 558, + RPC_ID__Resp_WifiSetCountry = 559, + RPC_ID__Resp_WifiGetCountry = 560, + /* + * Resp_WifiSetPromiscuousRxCb = 561; + */ + RPC_ID__Resp_WifiSetPromiscuous = 561, + RPC_ID__Resp_WifiGetPromiscuous = 562, + RPC_ID__Resp_WifiSetPromiscuousFilter = 563, + RPC_ID__Resp_WifiGetPromiscuousFilter = 564, + RPC_ID__Resp_WifiSetPromiscuousCtrlFilter = 565, + RPC_ID__Resp_WifiGetPromiscuousCtrlFilter = 566, + RPC_ID__Resp_WifiApGetStaList = 567, + RPC_ID__Resp_WifiApGetStaAid = 568, + RPC_ID__Resp_WifiSetStorage = 569, + RPC_ID__Resp_WifiSetVendorIe = 570, + /* + * Resp_WifiSetVendorIeCb = 571; + */ + RPC_ID__Resp_WifiSetEventMask = 571, + RPC_ID__Resp_WifiGetEventMask = 572, + RPC_ID__Resp_Wifi80211Tx = 573, + /* + * Resp_WifiSetCsiRxCb = 573; + */ + RPC_ID__Resp_WifiSetCsiConfig = 574, + RPC_ID__Resp_WifiSetCsi = 575, + RPC_ID__Resp_WifiSetAntGpio = 576, + RPC_ID__Resp_WifiGetAntGpio = 577, + RPC_ID__Resp_WifiSetAnt = 578, + RPC_ID__Resp_WifiGetAnt = 579, + RPC_ID__Resp_WifiGetTsfTime = 580, + RPC_ID__Resp_WifiSetInactiveTime = 581, + RPC_ID__Resp_WifiGetInactiveTime = 582, + RPC_ID__Resp_WifiStatisDump = 583, + RPC_ID__Resp_WifiSetRssiThreshold = 584, + RPC_ID__Resp_WifiFtmInitiateSession = 585, + RPC_ID__Resp_WifiFtmEndSession = 586, + RPC_ID__Resp_WifiFtmRespSetOffset = 587, + RPC_ID__Resp_WifiConfig11bRate = 588, + RPC_ID__Resp_WifiConnectionlessModuleSetWakeInterval = 589, + RPC_ID__Resp_WifiSetCountryCode = 590, + RPC_ID__Resp_WifiGetCountryCode = 591, + RPC_ID__Resp_WifiConfig80211TxRate = 592, + RPC_ID__Resp_WifiDisablePmfConfig = 593, + RPC_ID__Resp_WifiStaGetAid = 594, + RPC_ID__Resp_WifiStaGetNegotiatedPhymode = 595, + RPC_ID__Resp_WifiSetDynamicCs = 596, + RPC_ID__Resp_WifiStaGetRssi = 597, + RPC_ID__Resp_WifiSetProtocols = 598, + RPC_ID__Resp_WifiGetProtocols = 599, + RPC_ID__Resp_WifiSetBandwidths = 600, + RPC_ID__Resp_WifiGetBandwidths = 601, + RPC_ID__Resp_WifiSetBand = 602, + RPC_ID__Resp_WifiGetBand = 603, + RPC_ID__Resp_WifiSetBandMode = 604, + RPC_ID__Resp_WifiGetBandMode = 605, + RPC_ID__Resp_GetCoprocessorFwVersion = 606, + RPC_ID__Resp_WifiScanGetApRecord = 607, + RPC_ID__Resp_SetDhcpDnsStatus = 608, + RPC_ID__Resp_GetDhcpDnsStatus = 609, + RPC_ID__Resp_WifiStaTwtConfig = 610, + RPC_ID__Resp_WifiStaItwtSetup = 611, + RPC_ID__Resp_WifiStaItwtTeardown = 612, + RPC_ID__Resp_WifiStaItwtSuspend = 613, + RPC_ID__Resp_WifiStaItwtGetFlowIdStatus = 614, + RPC_ID__Resp_WifiStaItwtSendProbeReq = 615, + RPC_ID__Resp_WifiStaItwtSetTargetWakeTimeOffset = 616, + RPC_ID__Resp_WifiStaEnterpriseEnable = 617, + RPC_ID__Resp_WifiStaEnterpriseDisable = 618, + RPC_ID__Resp_EapSetIdentity = 619, + RPC_ID__Resp_EapClearIdentity = 620, + RPC_ID__Resp_EapSetUsername = 621, + RPC_ID__Resp_EapClearUsername = 622, + RPC_ID__Resp_EapSetPassword = 623, + RPC_ID__Resp_EapClearPassword = 624, + RPC_ID__Resp_EapSetNewPassword = 625, + RPC_ID__Resp_EapClearNewPassword = 626, + RPC_ID__Resp_EapSetCaCert = 627, + RPC_ID__Resp_EapClearCaCert = 628, + RPC_ID__Resp_EapSetCertificateAndKey = 629, + RPC_ID__Resp_EapClearCertificateAndKey = 630, + RPC_ID__Resp_EapGetDisableTimeCheck = 631, + RPC_ID__Resp_EapSetTtlsPhase2Method = 632, + RPC_ID__Resp_EapSetSuitebCertification = 633, + RPC_ID__Resp_EapSetPacFile = 634, + RPC_ID__Resp_EapSetFastParams = 635, + RPC_ID__Resp_EapUseDefaultCertBundle = 636, + RPC_ID__Resp_WifiSetOkcSupport = 637, + RPC_ID__Resp_EapSetDomainName = 638, + RPC_ID__Resp_EapSetDisableTimeCheck = 639, + RPC_ID__Resp_EapSetEapMethods = 640, + RPC_ID__Resp_IfaceMacAddrSetGet = 641, + RPC_ID__Resp_IfaceMacAddrLenGet = 642, + RPC_ID__Resp_FeatureControl = 643, + RPC_ID__Resp_CustomRpc = 644, + RPC_ID__Resp_GpioConfig = 645, + RPC_ID__Resp_GpioResetPin = 646, + RPC_ID__Resp_GpioSetLevel = 647, + RPC_ID__Resp_GpioGetLevel = 648, + RPC_ID__Resp_GpioSetDirection = 649, + RPC_ID__Resp_GpioInputEnable = 650, + RPC_ID__Resp_GpioSetPullMode = 651, + RPC_ID__Resp_ExtCoex = 652, + /* + * Add new control path command response before Resp_Max + * and update Resp_Max + */ + RPC_ID__Resp_Max = 653, + /* + ** Event Msgs * + */ + RPC_ID__Event_Base = 768, + RPC_ID__Event_ESPInit = 769, + RPC_ID__Event_Heartbeat = 770, + RPC_ID__Event_AP_StaConnected = 771, + RPC_ID__Event_AP_StaDisconnected = 772, + RPC_ID__Event_WifiEventNoArgs = 773, + RPC_ID__Event_StaScanDone = 774, + RPC_ID__Event_StaConnected = 775, + RPC_ID__Event_StaDisconnected = 776, + RPC_ID__Event_DhcpDnsStatus = 777, + RPC_ID__Event_StaItwtSetup = 778, + RPC_ID__Event_StaItwtTeardown = 779, + RPC_ID__Event_StaItwtSuspend = 780, + RPC_ID__Event_StaItwtProbe = 781, + /* + * Supplicant DPP Events received by dpp callback on host + */ + RPC_ID__Event_SuppDppUriReady = 782, + RPC_ID__Event_SuppDppCfgRecvd = 783, + RPC_ID__Event_SuppDppFail = 784, + /* + * Wifi DPP Events + */ + RPC_ID__Event_WifiDppUriReady = 785, + RPC_ID__Event_WifiDppCfgRecvd = 786, + RPC_ID__Event_WifiDppFail = 787, + /* + * Custom RPC event for user-defined packed structures + */ + RPC_ID__Event_CustomRpc = 788, + RPC_ID__Event_MemMonitor = 789, + /* + * Add new control path command notification before Event_Max + * and update Event_Max + */ + RPC_ID__Event_Max = 790 + PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(RPC_ID) +} RpcId; +typedef enum _RpcGpioMode { + RPC__GPIO_MODE__GPIO_MODE_DISABLE = 0, + RPC__GPIO_MODE__GPIO_MODE_INPUT = 1, + RPC__GPIO_MODE__GPIO_MODE_OUTPUT = 2, + RPC__GPIO_MODE__GPIO_MODE_INPUT_OUTPUT = 3 + PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(RPC__GPIO_MODE) +} RpcGpioMode; +typedef enum _RpcGpioPullMode { + RPC__GPIO_PULL_MODE__GPIO_PULL_NONE = 0, + RPC__GPIO_PULL_MODE__GPIO_PULL_UP = 1, + RPC__GPIO_PULL_MODE__GPIO_PULL_DOWN = 2 + PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(RPC__GPIO_PULL_MODE) +} RpcGpioPullMode; +typedef enum _RpcMemMonitorConfig { + /* + * don't change the monitor configuration + */ + RPC__MEM_MONITOR_CONFIG__MEMMONITOR_NO_CHANGE = 0, + /* + * - to get current memory values without modifying config + */ + /* + * disable the monitor + */ + RPC__MEM_MONITOR_CONFIG__MEMMONITOR_DISABLE = 1, + /* + * (re)enable the monitor with new configuration + */ + RPC__MEM_MONITOR_CONFIG__MEMMONITOR_ENABLE = 2 + PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(RPC__MEM_MONITOR_CONFIG) +} RpcMemMonitorConfig; +/* + * Single RPC for external coex: cmd determines which fields are used + */ +typedef enum _RpcExtCoexCmd { + RPC__EXT_COEX_CMD__SetGpioPin = 0, + RPC__EXT_COEX_CMD__Disable = 1, + RPC__EXT_COEX_CMD__SetWorkMode = 2, + RPC__EXT_COEX_CMD__SetGrantDelay = 3, + RPC__EXT_COEX_CMD__SetValidateHigh = 4 + PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(RPC__EXT_COEX_CMD) +} RpcExtCoexCmd; + +/* --- messages --- */ + +struct WifiInitConfig +{ + ProtobufCMessage base; + /* + **< WiFi static RX buffer number + */ + int32_t static_rx_buf_num; + /* + **< WiFi dynamic RX buffer number + */ + int32_t dynamic_rx_buf_num; + /* + **< WiFi TX buffer type + */ + int32_t tx_buf_type; + /* + **< WiFi static TX buffer number + */ + int32_t static_tx_buf_num; + /* + **< WiFi dynamic TX buffer number + */ + int32_t dynamic_tx_buf_num; + /* + **< WiFi TX cache buffer number + */ + int32_t cache_tx_buf_num; + /* + **< WiFi channel state information enable flag + */ + int32_t csi_enable; + /* + **< WiFi AMPDU RX feature enable flag + */ + int32_t ampdu_rx_enable; + /* + **< WiFi AMPDU TX feature enable flag + */ + int32_t ampdu_tx_enable; + /* + **< WiFi AMSDU TX feature enable flag + */ + int32_t amsdu_tx_enable; + /* + **< WiFi NVS flash enable flag + */ + int32_t nvs_enable; + /* + **< Nano option for printf/scan family enable flag + */ + int32_t nano_enable; + /* + **< WiFi Block Ack RX window size + */ + int32_t rx_ba_win; + /* + **< WiFi Task Core ID + */ + int32_t wifi_task_core_id; + /* + **< WiFi softAP maximum length of the beacon + */ + int32_t beacon_max_len; + /* + **< WiFi management short buffer number, the minimum value is 6, the maximum value is 32 + */ + int32_t mgmt_sbuf_num; + /* + **< Enables additional WiFi features and capabilities + */ + uint64_t feature_caps; + /* + **< WiFi Power Management for station at disconnected status + */ + protobuf_c_boolean sta_disconnected_pm; + /* + **< Maximum encrypt number of peers supported by espnow + */ + int32_t espnow_max_encrypt_num; + /* + **< WiFi init magic number, it should be the last field + */ + int32_t magic; + /* + **< WiFi RX MGMT buffer type + */ + int32_t rx_mgmt_buf_type; + /* + **< WiFi RX MGMT buffer number + */ + int32_t rx_mgmt_buf_num; + /* + **< WiFi TX HE TB QUEUE number for STA HE TB PPDU transmission + */ + int32_t tx_hetb_queue_num; + /* + **< enable dump sigb field + */ + int32_t dump_hesigb_enable; +}; +#define WIFI_INIT_CONFIG__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_init_config__descriptor) \ + , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } + + +struct WifiCountry +{ + ProtobufCMessage base; + /* + **< country code string of 3 chars + */ + ProtobufCBinaryData cc; + /* + **< start channel + */ + uint32_t schan; + /* + **< total channel number + */ + uint32_t nchan; + /* + **< This field is used for getting WiFi maximum transmitting power, + *call esp_wifi_set_max_tx_power to set the maximum transmitting power. + */ + int32_t max_tx_power; + /* + **< country policy + */ + int32_t policy; +}; +#define WIFI_COUNTRY__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_country__descriptor) \ + , {0,NULL}, 0, 0, 0, 0 } + + +struct WifiActiveScanTime +{ + ProtobufCMessage base; + /* + **< minimum active scan time per channel, units: millisecond + */ + uint32_t min; + /* + **< maximum active scan time per channel, units: millisecond, values above 1500ms may + *cause station to disconnect from AP and are not recommended. + */ + uint32_t max; +}; +#define WIFI_ACTIVE_SCAN_TIME__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_active_scan_time__descriptor) \ + , 0, 0 } + + +struct WifiScanTime +{ + ProtobufCMessage base; + /* + **< active scan time per channel, units: millisecond. + */ + WifiActiveScanTime *active; + /* + **< passive scan time per channel, units: millisecond, values above 1500ms may + *cause station to disconnect from AP and are not recommended. + */ + uint32_t passive; +}; +#define WIFI_SCAN_TIME__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_scan_time__descriptor) \ + , NULL, 0 } + + +struct WifiScanChannelBitmap +{ + ProtobufCMessage base; + /* + **< Represents 2.4 GHz channels, that bits can be set as wifi_2g_channel_bit_t shown. + */ + uint32_t ghz_2_channels; + /* + **< Represents 5 GHz channels, that bits can be set as wifi_5g_channel_bit_t shown. + */ + uint32_t ghz_5_channels; +}; +#define WIFI_SCAN_CHANNEL_BITMAP__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_scan_channel_bitmap__descriptor) \ + , 0, 0 } + + +struct WifiScanConfig +{ + ProtobufCMessage base; + /* + **< SSID of AP 33char + */ + ProtobufCBinaryData ssid; + /* + **< MAC address of AP 6char + */ + ProtobufCBinaryData bssid; + /* + **< channel, scan the specific channel + */ + uint32_t channel; + /* + **< enable to scan AP whose SSID is hidden + */ + protobuf_c_boolean show_hidden; + /* + **< scan type, active or passive + */ + int32_t scan_type; + /* + **< scan time per channel + */ + WifiScanTime *scan_time; + /* + **< time spent at home channel between scanning consecutive channels. + */ + uint32_t home_chan_dwell_time; + /* + **< Channel bitmap for setting specific channels to be scanned. + *Please note that the 'channel' parameter above needs to be set to 0 to allow scanning by bitmap. + *Also, note that only allowed channels configured by wifi_country_t can be scanned. + */ + WifiScanChannelBitmap *channel_bitmap; +}; +#define WIFI_SCAN_CONFIG__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_scan_config__descriptor) \ + , {0,NULL}, {0,NULL}, 0, 0, 0, NULL, 0, NULL } + + +struct WifiScanDefaultParams +{ + ProtobufCMessage base; + /* + **< Scan time per channel + */ + WifiScanTime *scan_time; + /* + **< Time spent at home channel between scanning consecutive channels. + */ + uint32_t home_chan_dwell_time; +}; +#define WIFI_SCAN_DEFAULT_PARAMS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_scan_default_params__descriptor) \ + , NULL, 0 } + + +struct WifiHeApInfo +{ + ProtobufCMessage base; + /* + *uint8_t bss_color:6; **< an unsigned integer whose value is the BSS Color of the BSS corresponding to the AP * + *uint8_t partial_bss_color:1; **< indicate if an AID assignment rule based on the BSS color * + *uint8_t bss_color_disabled:1; **< indicate if the use of BSS color is disabled * + */ + /* + * Manually have to parse for above bits + */ + uint32_t bitmask; + /* + **< in M-BSSID set, identifies the nontransmitted BSSID + */ + uint32_t bssid_index; +}; +#define WIFI_HE_AP_INFO__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_he_ap_info__descriptor) \ + , 0, 0 } + + +struct WifiApRecord +{ + ProtobufCMessage base; + /* + **< MAC address of AP 6char + */ + ProtobufCBinaryData bssid; + /* + **< SSID of AP 33char + */ + ProtobufCBinaryData ssid; + /* + **< channel of AP + */ + uint32_t primary; + /* + **< secondary channel of AP + */ + int32_t second; + /* + **< signal strength of AP + */ + int32_t rssi; + /* + **< authmode of AP + */ + int32_t authmode; + /* + **< pairwise cipher of AP + */ + int32_t pairwise_cipher; + /* + **< group cipher of AP + */ + int32_t group_cipher; + /* + **< antenna used to receive beacon from AP + */ + int32_t ant; + /* + *uint32_t phy_11b:1; **< bit: 0 flag to identify if 11b mode is enabled or not * + *uint32_t phy_11g:1; **< bit: 1 flag to identify if 11g mode is enabled or not * + *uint32_t phy_11n:1; **< bit: 2 flag to identify if 11n mode is enabled or not * + *uint32_t phy_lr:1; **< bit: 3 flag to identify if low rate is enabled or not * + *uint32_t wps:1; **< bit: 4 flag to identify if WPS is supported or not * + *uint32_t ftm_responder:1; **< bit: 5 flag to identify if FTM is supported in responder mode * + *uint32_t ftm_initiator:1; **< bit: 6 flag to identify if FTM is supported in initiator mode * + *uint32_t reserved:25; **< bit: 7..31 reserved * + */ + /* + * Manually have to parse for above bits + */ + uint32_t bitmask; + /* + **< country information of AP + */ + WifiCountry *country; + WifiHeApInfo *he_ap; + /* + **< For AP 20 MHz this value is set to 1. For AP 40 MHz this value is set to 2. + *For AP 80 MHz this value is set to 3. For AP 160MHz this value is set to 4. + *For AP 80+80MHz this value is set to 5 + */ + uint32_t bandwidth; + /* + **< This fields are used only AP bandwidth is 80 and 160 MHz, to transmit the center channel + *frequency of the BSS. For AP bandwidth is 80 + 80 MHz, it is the center channel frequency + *of the lower frequency segment. + */ + uint32_t vht_ch_freq1; + /* + **< This fields are used only AP bandwidth is 80 + 80 MHz, and is used to transmit the center + *channel frequency of the second segment. + */ + uint32_t vht_ch_freq2; +}; +#define WIFI_AP_RECORD__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_ap_record__descriptor) \ + , {0,NULL}, {0,NULL}, 0, 0, 0, 0, 0, 0, 0, 0, NULL, NULL, 0, 0, 0 } + + +struct WifiScanThreshold +{ + ProtobufCMessage base; + /* + **< The minimum rssi to accept in the fast scan mode + */ + int32_t rssi; + /* + **< The weakest authmode to accept in the fast scan mode + *Note: In case this value is not set and password is set as per WPA2 standards(password len >= 8), + *it will be defaulted to WPA2 and device won't connect to deprecated WEP/WPA networks. + *Please set authmode threshold as WIFI_AUTH_WEP/WIFI_AUTH_WPA_PSK to connect to WEP/WPA networks + */ + int32_t authmode; + /* + **< The RSSI value of the 5G AP is within the rssi_5g_adjustment range compared to the 2G AP, the 5G AP will be given priority for connection. + */ + uint32_t rssi_5g_adjustment; +}; +#define WIFI_SCAN_THRESHOLD__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_scan_threshold__descriptor) \ + , 0, 0, 0 } + + +struct WifiPmfConfig +{ + ProtobufCMessage base; + /* + **< Deprecated variable. Device will always connect in PMF mode if other device also advertises PMF capability. + */ + protobuf_c_boolean capable; + /* + **< Advertises that Protected Management Frame is required. Device will not associate to non-PMF capable devices. + */ + protobuf_c_boolean required; +}; +#define WIFI_PMF_CONFIG__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_pmf_config__descriptor) \ + , 0, 0 } + + +struct WifiBssMaxIdleConfig +{ + ProtobufCMessage base; + /* + **< Sets BSS Max idle period (1 Unit = 1000TUs OR 1.024 Seconds). If there are no frames for this period from a STA, SoftAP will disassociate due to inactivity. Setting it to 0 disables the feature + */ + uint32_t period; + /* + **< Requires clients to use protected keep alive frames for BSS Max Idle period + */ + protobuf_c_boolean protected_keep_alive; +}; +#define WIFI_BSS_MAX_IDLE_CONFIG__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_bss_max_idle_config__descriptor) \ + , 0, 0 } + + +struct WifiApConfig +{ + ProtobufCMessage base; + /* + **< SSID of ESP32 soft-AP. If ssid_len field is 0, this must be a Null terminated string. Otherwise, length is set according to ssid_len. 32 char + */ + ProtobufCBinaryData ssid; + /* + **< Password of ESP32 soft-AP. 64 char + */ + ProtobufCBinaryData password; + /* + **< Optional length of SSID field. + */ + uint32_t ssid_len; + /* + **< Channel of ESP32 soft-AP + */ + uint32_t channel; + /* + **< Auth mode of ESP32 soft-AP. Do not support AUTH_WEP in soft-AP mode + */ + int32_t authmode; + /* + **< Broadcast SSID or not, default 0, broadcast the SSID + */ + uint32_t ssid_hidden; + /* + **< Max number of stations allowed to connect in + */ + uint32_t max_connection; + /* + **< Beacon interval which should be multiples of 100. Unit: TU(time unit, 1 TU = 1024 us). Range: 100 ~ 60000. Default value: 100 + */ + uint32_t beacon_interval; + /* + **< pairwise cipher of SoftAP, group cipher will be derived using this. + *cipher values are valid starting from WIFI_CIPHER_TYPE_TKIP, enum values before that will be considered as invalid and default cipher suites(TKIP+CCMP) will be used. + *Valid cipher suites in softAP mode are WIFI_CIPHER_TYPE_TKIP, WIFI_CIPHER_TYPE_CCMP and WIFI_CIPHER_TYPE_TKIP_CCMP. + */ + int32_t pairwise_cipher; + /* + **< Enable FTM Responder mode + */ + protobuf_c_boolean ftm_responder; + /* + **< Configuration for Protected Management Frame + */ + WifiPmfConfig *pmf_cfg; + /* + **< Configuration for SAE PWE derivation method + */ + int32_t sae_pwe_h2e; + /* + **< Channel Switch Announcement Count. Notify the station that the channel will switch after the csa_count beacon intervals. Default value: 3 + */ + uint32_t csa_count; + /* + **< Dtim period of soft-AP. Range: 1 ~ 10. Default value: 1 + */ + uint32_t dtim_period; + /* + **< Whether to enable transition disable feature + */ + uint32_t transition_disable; + /* + **< Enable SAE EXT feature. SOC_GCMP_SUPPORT is required for this feature. + */ + uint32_t sae_ext; + /* + **< Configuration for bss max idle, effective if CONFIG_WIFI_BSS_MAX_IDLE_SUPPORT is enabled + */ + WifiBssMaxIdleConfig *bss_max_idle_cfg; + /* + **< GTK rekeying interval in seconds. If set to 0, GTK rekeying is disabled. Range: 60 ~ 65535 including 0. + */ + uint32_t gtk_rekey_interval; +}; +#define WIFI_AP_CONFIG__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_ap_config__descriptor) \ + , {0,NULL}, {0,NULL}, 0, 0, 0, 0, 0, 0, 0, 0, NULL, 0, 0, 0, 0, 0, NULL, 0 } + + +struct WifiStaConfig +{ + ProtobufCMessage base; + /* + **< SSID of target AP. 32char + */ + ProtobufCBinaryData ssid; + /* + **< Password of target AP. 64char + */ + ProtobufCBinaryData password; + /* + **< do all channel scan or fast scan + */ + int32_t scan_method; + /* + **< whether set MAC address of target AP or not. Generally, station_config.bssid_set needs to be 0, + *and it needs to be 1 only when users need to check the MAC address of the AP. + */ + protobuf_c_boolean bssid_set; + /* + **< MAC address of target AP 6char + */ + ProtobufCBinaryData bssid; + /* + **< channel of target AP. Set to 1~13 to scan starting from the specified channel + *before connecting to AP. If the channel of AP is unknown, set it to 0. + */ + uint32_t channel; + /* + **< Listen interval for ESP32 station to receive beacon when WIFI_PS_MAX_MODEM is set. + *Units: AP beacon intervals. Defaults to 3 if set to 0. + */ + uint32_t listen_interval; + /* + **< sort the connect AP in the list by rssi or security mode + */ + int32_t sort_method; + /* + **< When sort_method is set, only APs which have an auth mode that is more secure + *than the selected auth mode and a signal stronger than the minimum RSSI will be used. + */ + WifiScanThreshold *threshold; + /* + **< Configuration for Protected Management Frame. Will be advertised in RSN Capabilities in RSN IE. + */ + WifiPmfConfig *pmf_cfg; + /* + *uint32_t rm_enabled:1; **< Whether Radio Measurements are enabled for the connection * + *uint32_t btm_enabled:1; **< Whether BSS Transition Management is enabled for the connection * + *uint32_t mbo_enabled:1; **< Whether MBO is enabled for the connection * + *uint32_t ft_enabled:1; **< Whether FT is enabled for the connection * + *uint32_t owe_enabled:1; **< Whether OWE is enabled for the connection * + *uint32_t transition_disable:1; **< Whether to enable transition disable feature * + *uint32_t reserved:26; **< Reserved for future feature set * + */ + uint32_t bitmask; + /* + **< Whether SAE hash to element is enabled + */ + int32_t sae_pwe_h2e; + /* + **< Number of connection retries station will do before moving to next AP. + *scan_method should be set as WIFI_ALL_CHANNEL_SCAN to use this config. + *Note: Enabling this may cause connection time to increase in case best AP doesn't behave properly. + */ + uint32_t failure_retry_cnt; + /* + *uint32_t he_dcm_set:1; **< Whether DCM max.constellation for transmission and reception is set. * + *uint32_t he_dcm_max_constellation_tx:2; **< Indicate the max.constellation for DCM in TB PPDU the STA supported. 0: not supported. 1: BPSK, 2: QPSK, 3: 16-QAM. The default value is 3. * + *uint32_t he_dcm_max_constellation_rx:2; **< Indicate the max.constellation for DCM in both Data field and HE-SIG-B field the STA supported. 0: not supported. 1: BPSK, 2: QPSK, 3: 16-QAM. The default value is 3. * + *uint32_t he_mcs9_enabled:1; **< Whether to support HE-MCS 0 to 9. The default value is 0. * + *uint32_t he_su_beamformee_disabled:1; **< Whether to disable support for operation as an SU beamformee. * + *uint32_t he_trig_su_bmforming_feedback_disabled:1; **< Whether to disable support the transmission of SU feedback in an HE TB sounding sequence. * + *uint32_t he_trig_mu_bmforming_partial_feedback_disabled:1; **< Whether to disable support the transmission of partial-bandwidth MU feedback in an HE TB sounding sequence. * + * uint32_t he_trig_cqi_feedback_disabled:1; **< Whether to disable support the transmission of CQI feedback in an HE TB sounding sequence. * + * uint32_t vht_su_beamformee_disabled: 1; **< Whether to disable support for operation as an VHT SU beamformee. * + * uint32_t vht_mu_beamformee_disabled: 1; **< Whether to disable support for operation as an VHT MU beamformee. * + * uint32_t vht_mcs8_enabled: 1; **< Whether to support VHT-MCS8. The default value is 0. * + * uint32_t he_reserved:19; **< Reserved for future feature set * + */ + uint32_t he_bitmask; + /* + **< Password identifier for H2E. this needs to be null terminated string. SAE_H2E_IDENTIFIER_LEN chars + */ + ProtobufCBinaryData sae_h2e_identifier; + /* + **< Configuration for SAE-PK (Public Key) Authentication method + */ + uint32_t sae_pk_mode; +}; +#define WIFI_STA_CONFIG__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_sta_config__descriptor) \ + , {0,NULL}, {0,NULL}, 0, 0, {0,NULL}, 0, 0, 0, NULL, NULL, 0, 0, 0, 0, {0,NULL}, 0 } + + +typedef enum { + WIFI_CONFIG__U__NOT_SET = 0, + WIFI_CONFIG__U_AP = 1, + WIFI_CONFIG__U_STA = 2 + PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(WIFI_CONFIG__U__CASE) +} WifiConfig__UCase; + +struct WifiConfig +{ + ProtobufCMessage base; + WifiConfig__UCase u_case; + union { + /* + **< configuration of AP + */ + WifiApConfig *ap; + /* + **< configuration of STA + */ + WifiStaConfig *sta; + }; +}; +#define WIFI_CONFIG__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_config__descriptor) \ + , WIFI_CONFIG__U__NOT_SET, {0} } + + +struct WifiStaInfo +{ + ProtobufCMessage base; + /* + **< mac address 6 char + */ + ProtobufCBinaryData mac; + /* + **< current average rssi of sta connected + */ + int32_t rssi; + /* + *uint32_t phy_11b:1; **< bit: 0 flag to identify if 11b mode is enabled or not * + *uint32_t phy_11g:1; **< bit: 1 flag to identify if 11g mode is enabled or not * + *uint32_t phy_11n:1; **< bit: 2 flag to identify if 11n mode is enabled or not * + *uint32_t phy_lr:1; **< bit: 3 flag to identify if low rate is enabled or not * + *uint32_t phy_11x:1; **< bit: 4 flag to identify identify if 11ax mode is enabled or not * + *uint32_t is_mesh_child:1; **< bit: 5 flag to identify mesh child * + *uint32_t reserved:26; **< bit: 6..31 reserved * + */ + uint32_t bitmask; +}; +#define WIFI_STA_INFO__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_sta_info__descriptor) \ + , {0,NULL}, 0, 0 } + + +struct WifiStaList +{ + ProtobufCMessage base; + /* + **< station list + */ + size_t n_sta; + WifiStaInfo **sta; + /* + **< number of stations in the list (other entries are invalid) + */ + int32_t num; +}; +#define WIFI_STA_LIST__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_sta_list__descriptor) \ + , 0,NULL, 0 } + + +struct WifiPktRxCtrl +{ + ProtobufCMessage base; + /* + **< 8bits Received Signal Strength Indicator(RSSI) of packet. unit: dBm + */ + int32_t rssi; + /* + **< 5bits PHY rate encoding of the packet. Only valid for non HT(11bg) packet + */ + uint32_t rate; + /* + *uint32 :1; **< reserved * + */ + /* + **< 2bits 0: non HT(11bg) packet; 1: HT(11n) packet; 3: VHT(11ac) packet + */ + uint32_t sig_mode; + /* + *uint32 :16; **< reserved * + */ + /* + **< 7bits Modulation Coding Scheme. If is HT(11n) packet, shows the modulation, range from 0 to 76(MSC0 ~ MCS76) + */ + uint32_t mcs; + /* + **< 1bit Channel Bandwidth of the packet. 0: 20MHz; 1: 40MHz + */ + uint32_t cwb; + /* + *uint32 :16; **< reserved * + */ + /* + **< 1bit reserved + */ + uint32_t smoothing; + /* + **< 1bit reserved + */ + uint32_t not_sounding; + /* + *uint32 :1; **< reserved * + */ + /* + **< 1bit Aggregation. 0: MPDU packet; 1: AMPDU packet + */ + uint32_t aggregation; + /* + **< 2bits Space Time Block Code(STBC). 0: non STBC packet; 1: STBC packet + */ + uint32_t stbc; + /* + **< 1bit Flag is set for 11n packets which are LDPC + */ + uint32_t fec_coding; + /* + **< 1bit Short Guide Interval(SGI). 0: Long GI; 1: Short GI + */ + uint32_t sgi; + /* + **< 8bits noise floor of Radio Frequency Module(RF). unit: dBm + */ + int32_t noise_floor; + /* + **< 8bits ampdu cnt + */ + uint32_t ampdu_cnt; + /* + **< 4bits primary channel on which this packet is received + */ + uint32_t channel; + /* + **< 4bits secondary channel on which this packet is received. 0: none; 1: above; 2: below + */ + uint32_t secondary_channel; + /* + *uint32 :8; **< reserved * + */ + /* + **< 32bit timestamp. The local time when this packet is received. It is precise only if modem sleep or light sleep is not enabled. unit: microsecond + */ + uint32_t timestamp; + /* + *uint32 :32; **< reserved * + *unsigned :32; **< reserved * + *unsigned :31; **< reserved * + */ + /* + **< 1bit antenna number from which this packet is received. 0: WiFi antenna 0; 1: WiFi antenna 1 + */ + uint32_t ant; + /* + **< 12bits length of packet including Frame Check Sequence(FCS) + */ + uint32_t sig_len; + /* + *unsigned :12; **< reserved * + */ + /* + **< 8bits state of the packet. 0: no error; others: error numbers which are not public + */ + uint32_t rx_state; +}; +#define WIFI_PKT_RX_CTRL__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_pkt_rx_ctrl__descriptor) \ + , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } + + +struct WifiPromiscuousPkt +{ + ProtobufCMessage base; + /* + **< metadata header + */ + WifiPktRxCtrl *rx_ctrl; + /* + **< Note: variable length. Data or management payload. Length of payload is described by rx_ctrl.sig_len. Type of content determined by packet type argument of callback. + */ + ProtobufCBinaryData payload; +}; +#define WIFI_PROMISCUOUS_PKT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_promiscuous_pkt__descriptor) \ + , NULL, {0,NULL} } + + +struct WifiPromiscuousFilter +{ + ProtobufCMessage base; + /* + **< OR of one or more filter values WIFI_PROMIS_FILTER_* + */ + uint32_t filter_mask; +}; +#define WIFI_PROMISCUOUS_FILTER__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_promiscuous_filter__descriptor) \ + , 0 } + + +struct WifiCsiConfig +{ + ProtobufCMessage base; + /* + **< enable to receive legacy long training field(lltf) data. Default enabled + */ + protobuf_c_boolean lltf_en; + /* + **< enable to receive HT long training field(htltf) data. Default enabled + */ + protobuf_c_boolean htltf_en; + /* + **< enable to receive space time block code HT long training field(stbc-htltf2) data. Default enabled + */ + protobuf_c_boolean stbc_htltf2_en; + /* + **< enable to generate htlft data by averaging lltf and ht_ltf data when receiving HT packet. Otherwise, use ht_ltf data directly. Default enabled + */ + protobuf_c_boolean ltf_merge_en; + /* + **< enable to turn on channel filter to smooth adjacent sub-carrier. Disable it to keep independence of adjacent sub-carrier. Default enabled + */ + protobuf_c_boolean channel_filter_en; + /* + **< manually scale the CSI data by left shifting or automatically scale the CSI data. + *If set true, please set the shift bits. false: automatically. true: manually. Default false + */ + protobuf_c_boolean manu_scale; + /* + **< manually left shift bits of the scale of the CSI data. The range of the left shift bits is 0~15 + */ + uint32_t shift; +}; +#define WIFI_CSI_CONFIG__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_csi_config__descriptor) \ + , 0, 0, 0, 0, 0, 0, 0 } + + +struct WifiCsiInfo +{ + ProtobufCMessage base; + /* + **< received packet radio metadata header of the CSI data + */ + WifiPktRxCtrl *rx_ctrl; + /* + **< 6bits source MAC address of the CSI data + */ + ProtobufCBinaryData mac; + /* + **< 6bits destination MAC address of the CSI data + */ + ProtobufCBinaryData dmac; + /* + **< first four bytes of the CSI data is invalid or not + */ + protobuf_c_boolean first_word_invalid; + /* + **< Note: variable length. buffer of CSI data + */ + ProtobufCBinaryData buf; + /* + **< length of CSI data + */ + uint32_t len; +}; +#define WIFI_CSI_INFO__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_csi_info__descriptor) \ + , NULL, {0,NULL}, {0,NULL}, 0, {0,NULL}, 0 } + + +struct WifiAntGpio +{ + ProtobufCMessage base; + /* + **< 1bit Whether this GPIO is connected to external antenna switch + */ + uint32_t gpio_select; + /* + **< 7bits The GPIO number that connects to external antenna switch + */ + uint32_t gpio_num; +}; +#define WIFI_ANT_GPIO__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_ant_gpio__descriptor) \ + , 0, 0 } + + +struct WifiAntGpioConfig +{ + ProtobufCMessage base; + /* + **< The configurations of GPIOs that connect to external antenna switch + */ + size_t n_gpio_cfgs; + WifiAntGpio **gpio_cfgs; +}; +#define WIFI_ANT_GPIO_CONFIG__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_ant_gpio_config__descriptor) \ + , 0,NULL } + + +struct WifiAntConfig +{ + ProtobufCMessage base; + /* + **< WiFi antenna mode for receiving + */ + int32_t rx_ant_mode; + /* + **< Default antenna mode for receiving, it's ignored if rx_ant_mode is not WIFI_ANT_MODE_AUTO + */ + int32_t rx_ant_default; + /* + **< WiFi antenna mode for transmission, it can be set to WIFI_ANT_MODE_AUTO only if rx_ant_mode is set to WIFI_ANT_MODE_AUTO + */ + int32_t tx_ant_mode; + /* + **< 4bits Index (in antenna GPIO configuration) of enabled WIFI_ANT_MODE_ANT0 + */ + uint32_t enabled_ant0; + /* + **< 4bits Index (in antenna GPIO configuration) of enabled WIFI_ANT_MODE_ANT1 + */ + uint32_t enabled_ant1; +}; +#define WIFI_ANT_CONFIG__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_ant_config__descriptor) \ + , 0, 0, 0, 0, 0 } + + +struct WifiActionTxReq +{ + ProtobufCMessage base; + /* + **< WiFi interface to send request to + */ + int32_t ifx; + /* + **< 6bits Destination MAC address + */ + ProtobufCBinaryData dest_mac; + /* + **< Indicates no ack required + */ + protobuf_c_boolean no_ack; + /* + *TODO + *wifi_action_rx_cb_t rx_cb; **< Rx Callback to receive any response * + */ + /* + **< Length of the appended Data + */ + uint32_t data_len; + /* + **< note: variable length. Appended Data payload + */ + ProtobufCBinaryData data; +}; +#define WIFI_ACTION_TX_REQ__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_action_tx_req__descriptor) \ + , 0, {0,NULL}, 0, 0, {0,NULL} } + + +struct WifiFtmInitiatorCfg +{ + ProtobufCMessage base; + /* + **< 6bits MAC address of the FTM Responder + */ + ProtobufCBinaryData resp_mac; + /* + **< Primary channel of the FTM Responder + */ + uint32_t channel; + /* + **< No. of FTM frames requested in terms of 4 or 8 bursts (allowed values - 0(No pref), 16, 24, 32, 64) + */ + uint32_t frm_count; + /* + **< Requested time period between consecutive FTM bursts in 100's of milliseconds (0 - No pref) + */ + uint32_t burst_period; +}; +#define WIFI_FTM_INITIATOR_CFG__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_ftm_initiator_cfg__descriptor) \ + , {0,NULL}, 0, 0, 0 } + + +struct WifiEventStaScanDone +{ + ProtobufCMessage base; + /* + **< status of scanning APs: 0 — success, 1 - failure + */ + uint32_t status; + /* + **< number of scan results + */ + uint32_t number; + /* + **< scan sequence number, used for block scan + */ + uint32_t scan_id; +}; +#define WIFI_EVENT_STA_SCAN_DONE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_event_sta_scan_done__descriptor) \ + , 0, 0, 0 } + + +struct WifiEventStaConnected +{ + ProtobufCMessage base; + /* + **< 32bytes SSID of connected AP + */ + ProtobufCBinaryData ssid; + /* + **< SSID length of connected AP + */ + uint32_t ssid_len; + /* + **< 6bytes BSSID of connected AP + */ + ProtobufCBinaryData bssid; + /* + **< channel of connected AP + */ + uint32_t channel; + /* + **< authentication mode used by AP + */ + int32_t authmode; + /* + **< authentication id assigned by the connected AP + */ + int32_t aid; +}; +#define WIFI_EVENT_STA_CONNECTED__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_event_sta_connected__descriptor) \ + , {0,NULL}, 0, {0,NULL}, 0, 0, 0 } + + +struct WifiEventStaDisconnected +{ + ProtobufCMessage base; + /* + **< SSID of disconnected AP + */ + ProtobufCBinaryData ssid; + /* + **< SSID length of disconnected AP + */ + uint32_t ssid_len; + /* + **< BSSID of disconnected AP + */ + ProtobufCBinaryData bssid; + /* + **< reason of disconnection + */ + uint32_t reason; + /* + **< rssi of disconnection + */ + int32_t rssi; +}; +#define WIFI_EVENT_STA_DISCONNECTED__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_event_sta_disconnected__descriptor) \ + , {0,NULL}, 0, {0,NULL}, 0, 0 } + + +struct WifiEventStaAuthmodeChange +{ + ProtobufCMessage base; + /* + **< the old auth mode of AP + */ + int32_t old_mode; + /* + **< the new auth mode of AP + */ + int32_t new_mode; +}; +#define WIFI_EVENT_STA_AUTHMODE_CHANGE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_event_sta_authmode_change__descriptor) \ + , 0, 0 } + + +struct WifiEventStaWpsErPin +{ + ProtobufCMessage base; + /* + **< 8bytes PIN code of station in enrollee mode + */ + ProtobufCBinaryData pin_code; +}; +#define WIFI_EVENT_STA_WPS_ER_PIN__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_event_sta_wps_er_pin__descriptor) \ + , {0,NULL} } + + +struct ApCred +{ + ProtobufCMessage base; + /* + **< 32bytes SSID of AP + */ + ProtobufCBinaryData ssid; + /* + **< 64bytes Passphrase for the AP + */ + ProtobufCBinaryData passphrase; +}; +#define AP_CRED__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&ap_cred__descriptor) \ + , {0,NULL}, {0,NULL} } + + +struct WifiEventStaWpsErSuccess +{ + ProtobufCMessage base; + /* + **< Number of AP credentials received + */ + uint32_t ap_cred_cnt; + /* + **< All AP credentials received from WPS handshake + */ + size_t n_ap_creds; + ApCred **ap_creds; +}; +#define WIFI_EVENT_STA_WPS_ER_SUCCESS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_event_sta_wps_er_success__descriptor) \ + , 0, 0,NULL } + + +/* + ** Argument structure for WIFI_EVENT_AP_PROBEREQRECVED event + */ +struct WifiEventApProbeReqRx +{ + ProtobufCMessage base; + /* + **< Received probe request signal strength + */ + int32_t rssi; + /* + **< MAC address of the station which send probe request + */ + uint32_t mac; +}; +#define WIFI_EVENT_AP_PROBE_REQ_RX__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_event_ap_probe_req_rx__descriptor) \ + , 0, 0 } + + +/* + ** Argument structure for WIFI_EVENT_STA_BSS_RSSI_LOW event + */ +struct WifiEventBssRssiLow +{ + ProtobufCMessage base; + /* + **< RSSI value of bss + */ + int32_t rssi; +}; +#define WIFI_EVENT_BSS_RSSI_LOW__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_event_bss_rssi_low__descriptor) \ + , 0 } + + +struct WifiFtmReportEntry +{ + ProtobufCMessage base; + /* + * *< Dialog Token of the FTM frame + */ + uint32_t dlog_token; + /* + * *< RSSI of the FTM frame received + */ + int32_t rssi; + /* + * *< Round Trip Time in pSec with a peer + */ + uint32_t rtt; + /* + * TODO: uint32 is supported by proto? + */ + /* + * *< Time of departure of FTM frame from FTM Responder in pSec + */ + uint64_t t1; + /* + * *< Time of arrival of FTM frame at FTM Initiator in pSec + */ + uint64_t t2; + /* + * *< Time of departure of ACK from FTM Initiator in pSec + */ + uint64_t t3; + /* + * *< Time of arrival of ACK at FTM Responder in pSec + */ + uint64_t t4; +}; +#define WIFI_FTM_REPORT_ENTRY__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_ftm_report_entry__descriptor) \ + , 0, 0, 0, 0, 0, 0, 0 } + + +struct WifiEventFtmReport +{ + ProtobufCMessage base; + /* + * *< 6bytes MAC address of the FTM Peer + */ + ProtobufCBinaryData peer_mac; + /* + * *< Status of the FTM operation + */ + int32_t status; + /* + * *< Raw average Round-Trip-Time with peer in Nano-Seconds + */ + uint32_t rtt_raw; + /* + * *< Estimated Round-Trip-Time with peer in Nano-Seconds + */ + uint32_t rtt_est; + /* + * *< Estimated one-way distance in Centi-Meters + */ + uint32_t dist_est; + /* + * *< Note var len Pointer to FTM Report with multiple entries, should be freed after use + */ + size_t n_ftm_report_data; + WifiFtmReportEntry **ftm_report_data; + /* + * *< Number of entries in the FTM Report data + */ + uint32_t ftm_report_num_entries; +}; +#define WIFI_EVENT_FTM_REPORT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_event_ftm_report__descriptor) \ + , {0,NULL}, 0, 0, 0, 0, 0,NULL, 0 } + + +struct WifiEventActionTxStatus +{ + ProtobufCMessage base; + /* + **< WiFi interface to send request to + */ + int32_t ifx; + /* + **< Context to identify the request + */ + uint32_t context; + /* + **< 6bytes Destination MAC address + */ + ProtobufCBinaryData da; + /* + **< Status of the operation + */ + uint32_t status; +}; +#define WIFI_EVENT_ACTION_TX_STATUS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_event_action_tx_status__descriptor) \ + , 0, 0, {0,NULL}, 0 } + + +struct WifiEventRocDone +{ + ProtobufCMessage base; + /* + **< Context to identify the request + */ + uint32_t context; +}; +#define WIFI_EVENT_ROC_DONE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_event_roc_done__descriptor) \ + , 0 } + + +struct WifiEventApWpsRgPin +{ + ProtobufCMessage base; + /* + **< 8bytes PIN code of station in enrollee mode + */ + ProtobufCBinaryData pin_code; +}; +#define WIFI_EVENT_AP_WPS_RG_PIN__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_event_ap_wps_rg_pin__descriptor) \ + , {0,NULL} } + + +struct WifiEventApWpsRgFailReason +{ + ProtobufCMessage base; + /* + **< WPS failure reason wps_fail_reason_t + */ + int32_t reason; + /* + **< 6bytes Enrollee mac address + */ + ProtobufCBinaryData peer_macaddr; +}; +#define WIFI_EVENT_AP_WPS_RG_FAIL_REASON__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_event_ap_wps_rg_fail_reason__descriptor) \ + , 0, {0,NULL} } + + +struct WifiEventApWpsRgSuccess +{ + ProtobufCMessage base; + /* + **< 6bytes Enrollee mac address + */ + ProtobufCBinaryData peer_macaddr; +}; +#define WIFI_EVENT_AP_WPS_RG_SUCCESS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_event_ap_wps_rg_success__descriptor) \ + , {0,NULL} } + + +struct WifiProtocols +{ + ProtobufCMessage base; + /* + **< Represents 2.4 GHz protocol, support 802.11b or 802.11g or 802.11n or 802.11ax or LR mode + */ + uint32_t ghz_2g; + /* + **< Represents 5 GHz protocol, support 802.11a or 802.11n or 802.11ac or 802.11ax + */ + uint32_t ghz_5g; +}; +#define WIFI_PROTOCOLS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_protocols__descriptor) \ + , 0, 0 } + + +struct WifiBandwidths +{ + ProtobufCMessage base; + /* + * Represents 2.4 GHz bandwidth + */ + uint32_t ghz_2g; + /* + * Represents 5 GHz bandwidth + */ + uint32_t ghz_5g; +}; +#define WIFI_BANDWIDTHS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_bandwidths__descriptor) \ + , 0, 0 } + + +struct WifiItwtSetupConfig +{ + ProtobufCMessage base; + uint32_t setup_cmd; + /* + * uint16_t trigger : 1; **< 1: a trigger-enabled individual TWT, 0: a non-trigger-enabled individual TWT * + * uint16_t flow_type : 1; **< 0: an announced individual TWT, 1: an unannounced individual TWT * + * uint16_t flow_id : 3; **< When set up an individual TWT agreement, the flow id will be assigned by AP after a successful agreement setup. + * flow_id could be specified to a value in the range of [0, 7], but it might be changed by AP in the response. + * When change TWT parameters of the existing TWT agreement, flow_id should be an existing one. The value range is [0, 7]. * + * uint16_t wake_invl_expn : 5; **< Individual TWT Wake Interval Exponent. The value range is [0, 31]. * + * uint16_t wake_duration_unit : 1; **< Individual TWT Wake duration unit, 0: 256us 1: TU (TU = 1024us)* + * uint16_t reserved : 5; **< bit: 11.15 reserved * + */ + uint32_t bitmask_1; + uint32_t min_wake_dura; + uint32_t wake_invl_mant; + uint32_t twt_id; + uint32_t timeout_time_ms; +}; +#define WIFI_ITWT_SETUP_CONFIG__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_itwt_setup_config__descriptor) \ + , 0, 0, 0, 0, 0, 0 } + + +struct WifiTwtConfig +{ + ProtobufCMessage base; + /* + **< post twt wakeup event + */ + protobuf_c_boolean post_wakeup_event; + /* + **< twt enable send qos null to keep alive + */ + protobuf_c_boolean twt_enable_keep_alive; +}; +#define WIFI_TWT_CONFIG__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&wifi_twt_config__descriptor) \ + , 0, 0 } + + +struct EspAppDesc +{ + ProtobufCMessage base; + /* + *!< Magic word ESP_APP_DESC_MAGIC_WORD + */ + uint32_t magic_word; + /* + *!< Secure version + */ + uint32_t secure_version; + /* + *!< reserv1 + */ + ProtobufCBinaryData reserv1; + /* + *!< Application version + */ + ProtobufCBinaryData version; + /* + *!< Project name + */ + ProtobufCBinaryData project_name; + /* + *!< Compile time + */ + ProtobufCBinaryData time; + /* + *!< Compile date + */ + ProtobufCBinaryData date; + /* + *!< Version IDF + */ + ProtobufCBinaryData idf_ver; + /* + *!< sha256 of elf file + */ + ProtobufCBinaryData app_elf_sha256; + /* + *!< Minimal eFuse block revision supported by image, in format: major * 100 + minor + */ + uint32_t min_efuse_blk_rev_full; + /* + *!< Maximal eFuse block revision supported by image, in format: major * 100 + minor + */ + uint32_t max_efuse_blk_rev_full; + /* + *!< MMU page size in log base 2 format + */ + uint32_t mmu_page_size; + /* + *!< reserv3 + */ + ProtobufCBinaryData reserv3; + /* + *!< reserv2 + */ + ProtobufCBinaryData reserv2; +}; +#define ESP_APP_DESC__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&esp_app_desc__descriptor) \ + , 0, 0, {0,NULL}, {0,NULL}, {0,NULL}, {0,NULL}, {0,NULL}, {0,NULL}, {0,NULL}, 0, 0, 0, {0,NULL}, {0,NULL} } + + +/* + * heap size threshold based on memory capability + */ +struct HeapSizeThreshold +{ + ProtobufCMessage base; + uint32_t threshold_mem_dma; + uint32_t threshold_mem_8bit; +}; +#define HEAP_SIZE_THRESHOLD__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&heap_size_threshold__descriptor) \ + , 0, 0 } + + +struct MemInfo +{ + ProtobufCMessage base; + /* + * current heap free size + */ + uint32_t free_size; + /* + * largest free block of memory able to be allocated + */ + uint32_t largest_free_block; +}; +#define MEM_INFO__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&mem_info__descriptor) \ + , 0, 0 } + + +/* + * heap info based on capability + */ +struct HeapInfo +{ + ProtobufCMessage base; + MemInfo *mem_dma; + MemInfo *mem_8bit; +}; +#define HEAP_INFO__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&heap_info__descriptor) \ + , NULL, NULL } + + +struct ConnectedSTAList +{ + ProtobufCMessage base; + ProtobufCBinaryData mac; + int32_t rssi; +}; +#define CONNECTED_STALIST__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&connected_stalist__descriptor) \ + , {0,NULL}, 0 } + + +struct EapFastConfig +{ + ProtobufCMessage base; + /* + * Enable or disable Fast Provisioning in EAP-FAST (0 = disabled, 1 = enabled) + */ + int32_t fast_provisioning; + /* + * Maximum length of the PAC (Protected Access Credential) list + */ + int32_t fast_max_pac_list_len; + /* + * Set to true for binary format PAC, false for ASCII format PAC + */ + protobuf_c_boolean fast_pac_format_binary; +}; +#define EAP_FAST_CONFIG__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&eap_fast_config__descriptor) \ + , 0, 0, 0 } + + +/* + ** Req/Resp structure * + */ +struct RpcReqGetMacAddress +{ + ProtobufCMessage base; + int32_t mode; +}; +#define RPC__REQ__GET_MAC_ADDRESS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__get_mac_address__descriptor) \ + , 0 } + + +struct RpcRespGetMacAddress +{ + ProtobufCMessage base; + ProtobufCBinaryData mac; + int32_t resp; +}; +#define RPC__RESP__GET_MAC_ADDRESS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__get_mac_address__descriptor) \ + , {0,NULL}, 0 } + + +struct RpcReqGetMode +{ + ProtobufCMessage base; +}; +#define RPC__REQ__GET_MODE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__get_mode__descriptor) \ + } + + +struct RpcRespGetMode +{ + ProtobufCMessage base; + int32_t mode; + int32_t resp; +}; +#define RPC__RESP__GET_MODE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__get_mode__descriptor) \ + , 0, 0 } + + +struct RpcReqSetMode +{ + ProtobufCMessage base; + int32_t mode; +}; +#define RPC__REQ__SET_MODE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__set_mode__descriptor) \ + , 0 } + + +struct RpcRespSetMode +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__SET_MODE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__set_mode__descriptor) \ + , 0 } + + +struct RpcReqGetPs +{ + ProtobufCMessage base; +}; +#define RPC__REQ__GET_PS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__get_ps__descriptor) \ + } + + +struct RpcRespGetPs +{ + ProtobufCMessage base; + int32_t resp; + int32_t type; +}; +#define RPC__RESP__GET_PS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__get_ps__descriptor) \ + , 0, 0 } + + +struct RpcReqSetPs +{ + ProtobufCMessage base; + int32_t type; +}; +#define RPC__REQ__SET_PS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__set_ps__descriptor) \ + , 0 } + + +struct RpcRespSetPs +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__SET_PS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__set_ps__descriptor) \ + , 0 } + + +struct RpcReqSetMacAddress +{ + ProtobufCMessage base; + ProtobufCBinaryData mac; + int32_t mode; +}; +#define RPC__REQ__SET_MAC_ADDRESS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__set_mac_address__descriptor) \ + , {0,NULL}, 0 } + + +struct RpcRespSetMacAddress +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__SET_MAC_ADDRESS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__set_mac_address__descriptor) \ + , 0 } + + +struct RpcReqOTABegin +{ + ProtobufCMessage base; +}; +#define RPC__REQ__OTABEGIN__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__otabegin__descriptor) \ + } + + +struct RpcRespOTABegin +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__OTABEGIN__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__otabegin__descriptor) \ + , 0 } + + +struct RpcReqOTAWrite +{ + ProtobufCMessage base; + ProtobufCBinaryData ota_data; +}; +#define RPC__REQ__OTAWRITE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__otawrite__descriptor) \ + , {0,NULL} } + + +struct RpcRespOTAWrite +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__OTAWRITE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__otawrite__descriptor) \ + , 0 } + + +struct RpcReqOTAEnd +{ + ProtobufCMessage base; +}; +#define RPC__REQ__OTAEND__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__otaend__descriptor) \ + } + + +struct RpcRespOTAEnd +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__OTAEND__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__otaend__descriptor) \ + , 0 } + + +struct RpcReqOTAActivate +{ + ProtobufCMessage base; +}; +#define RPC__REQ__OTAACTIVATE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__otaactivate__descriptor) \ + } + + +struct RpcRespOTAActivate +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__OTAACTIVATE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__otaactivate__descriptor) \ + , 0 } + + +struct RpcReqAppGetDesc +{ + ProtobufCMessage base; +}; +#define RPC__REQ__APP_GET_DESC__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__app_get_desc__descriptor) \ + } + + +struct RpcRespAppGetDesc +{ + ProtobufCMessage base; + int32_t resp; + EspAppDesc *app_desc; +}; +#define RPC__RESP__APP_GET_DESC__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__app_get_desc__descriptor) \ + , 0, NULL } + + +struct RpcReqWifiSetMaxTxPower +{ + ProtobufCMessage base; + int32_t power; +}; +#define RPC__REQ__WIFI_SET_MAX_TX_POWER__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_set_max_tx_power__descriptor) \ + , 0 } + + +struct RpcRespWifiSetMaxTxPower +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__WIFI_SET_MAX_TX_POWER__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_set_max_tx_power__descriptor) \ + , 0 } + + +struct RpcReqWifiGetMaxTxPower +{ + ProtobufCMessage base; +}; +#define RPC__REQ__WIFI_GET_MAX_TX_POWER__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_get_max_tx_power__descriptor) \ + } + + +struct RpcRespWifiGetMaxTxPower +{ + ProtobufCMessage base; + int32_t power; + int32_t resp; +}; +#define RPC__RESP__WIFI_GET_MAX_TX_POWER__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_get_max_tx_power__descriptor) \ + , 0, 0 } + + +struct RpcReqConfigHeartbeat +{ + ProtobufCMessage base; + protobuf_c_boolean enable; + int32_t duration; +}; +#define RPC__REQ__CONFIG_HEARTBEAT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__config_heartbeat__descriptor) \ + , 0, 0 } + + +struct RpcRespConfigHeartbeat +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__CONFIG_HEARTBEAT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__config_heartbeat__descriptor) \ + , 0 } + + +struct RpcReqWifiInit +{ + ProtobufCMessage base; + WifiInitConfig *cfg; +}; +#define RPC__REQ__WIFI_INIT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_init__descriptor) \ + , NULL } + + +struct RpcRespWifiInit +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__WIFI_INIT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_init__descriptor) \ + , 0 } + + +struct RpcReqWifiDeinit +{ + ProtobufCMessage base; +}; +#define RPC__REQ__WIFI_DEINIT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_deinit__descriptor) \ + } + + +struct RpcRespWifiDeinit +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__WIFI_DEINIT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_deinit__descriptor) \ + , 0 } + + +struct RpcReqWifiSetConfig +{ + ProtobufCMessage base; + int32_t iface; + WifiConfig *cfg; +}; +#define RPC__REQ__WIFI_SET_CONFIG__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_set_config__descriptor) \ + , 0, NULL } + + +struct RpcRespWifiSetConfig +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__WIFI_SET_CONFIG__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_set_config__descriptor) \ + , 0 } + + +struct RpcReqWifiGetConfig +{ + ProtobufCMessage base; + int32_t iface; +}; +#define RPC__REQ__WIFI_GET_CONFIG__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_get_config__descriptor) \ + , 0 } + + +struct RpcRespWifiGetConfig +{ + ProtobufCMessage base; + int32_t resp; + int32_t iface; + WifiConfig *cfg; +}; +#define RPC__RESP__WIFI_GET_CONFIG__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_get_config__descriptor) \ + , 0, 0, NULL } + + +struct RpcReqWifiConnect +{ + ProtobufCMessage base; +}; +#define RPC__REQ__WIFI_CONNECT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_connect__descriptor) \ + } + + +struct RpcRespWifiConnect +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__WIFI_CONNECT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_connect__descriptor) \ + , 0 } + + +struct RpcReqWifiDisconnect +{ + ProtobufCMessage base; +}; +#define RPC__REQ__WIFI_DISCONNECT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_disconnect__descriptor) \ + } + + +struct RpcRespWifiDisconnect +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__WIFI_DISCONNECT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_disconnect__descriptor) \ + , 0 } + + +struct RpcReqWifiStart +{ + ProtobufCMessage base; +}; +#define RPC__REQ__WIFI_START__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_start__descriptor) \ + } + + +struct RpcRespWifiStart +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__WIFI_START__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_start__descriptor) \ + , 0 } + + +struct RpcReqWifiStop +{ + ProtobufCMessage base; +}; +#define RPC__REQ__WIFI_STOP__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_stop__descriptor) \ + } + + +struct RpcRespWifiStop +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__WIFI_STOP__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_stop__descriptor) \ + , 0 } + + +struct RpcReqWifiScanStart +{ + ProtobufCMessage base; + WifiScanConfig *config; + protobuf_c_boolean block; + int32_t config_set; +}; +#define RPC__REQ__WIFI_SCAN_START__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_scan_start__descriptor) \ + , NULL, 0, 0 } + + +struct RpcRespWifiScanStart +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__WIFI_SCAN_START__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_scan_start__descriptor) \ + , 0 } + + +struct RpcReqWifiScanStop +{ + ProtobufCMessage base; +}; +#define RPC__REQ__WIFI_SCAN_STOP__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_scan_stop__descriptor) \ + } + + +struct RpcRespWifiScanStop +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__WIFI_SCAN_STOP__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_scan_stop__descriptor) \ + , 0 } + + +struct RpcReqWifiScanGetApNum +{ + ProtobufCMessage base; +}; +#define RPC__REQ__WIFI_SCAN_GET_AP_NUM__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_scan_get_ap_num__descriptor) \ + } + + +struct RpcRespWifiScanGetApNum +{ + ProtobufCMessage base; + int32_t resp; + int32_t number; +}; +#define RPC__RESP__WIFI_SCAN_GET_AP_NUM__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_scan_get_ap_num__descriptor) \ + , 0, 0 } + + +struct RpcReqWifiScanGetApRecords +{ + ProtobufCMessage base; + int32_t number; +}; +#define RPC__REQ__WIFI_SCAN_GET_AP_RECORDS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_scan_get_ap_records__descriptor) \ + , 0 } + + +struct RpcRespWifiScanGetApRecords +{ + ProtobufCMessage base; + int32_t resp; + int32_t number; + size_t n_ap_records; + WifiApRecord **ap_records; +}; +#define RPC__RESP__WIFI_SCAN_GET_AP_RECORDS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_scan_get_ap_records__descriptor) \ + , 0, 0, 0,NULL } + + +struct RpcReqWifiScanGetApRecord +{ + ProtobufCMessage base; +}; +#define RPC__REQ__WIFI_SCAN_GET_AP_RECORD__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_scan_get_ap_record__descriptor) \ + } + + +struct RpcRespWifiScanGetApRecord +{ + ProtobufCMessage base; + int32_t resp; + WifiApRecord *ap_record; +}; +#define RPC__RESP__WIFI_SCAN_GET_AP_RECORD__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_scan_get_ap_record__descriptor) \ + , 0, NULL } + + +struct RpcReqWifiClearApList +{ + ProtobufCMessage base; +}; +#define RPC__REQ__WIFI_CLEAR_AP_LIST__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_clear_ap_list__descriptor) \ + } + + +struct RpcRespWifiClearApList +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__WIFI_CLEAR_AP_LIST__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_clear_ap_list__descriptor) \ + , 0 } + + +struct RpcReqWifiRestore +{ + ProtobufCMessage base; +}; +#define RPC__REQ__WIFI_RESTORE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_restore__descriptor) \ + } + + +struct RpcRespWifiRestore +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__WIFI_RESTORE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_restore__descriptor) \ + , 0 } + + +struct RpcReqWifiClearFastConnect +{ + ProtobufCMessage base; +}; +#define RPC__REQ__WIFI_CLEAR_FAST_CONNECT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_clear_fast_connect__descriptor) \ + } + + +struct RpcRespWifiClearFastConnect +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__WIFI_CLEAR_FAST_CONNECT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_clear_fast_connect__descriptor) \ + , 0 } + + +struct RpcReqWifiDeauthSta +{ + ProtobufCMessage base; + int32_t aid; +}; +#define RPC__REQ__WIFI_DEAUTH_STA__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_deauth_sta__descriptor) \ + , 0 } + + +struct RpcRespWifiDeauthSta +{ + ProtobufCMessage base; + int32_t resp; + int32_t aid; +}; +#define RPC__RESP__WIFI_DEAUTH_STA__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_deauth_sta__descriptor) \ + , 0, 0 } + + +struct RpcReqWifiStaGetApInfo +{ + ProtobufCMessage base; +}; +#define RPC__REQ__WIFI_STA_GET_AP_INFO__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_sta_get_ap_info__descriptor) \ + } + + +struct RpcRespWifiStaGetApInfo +{ + ProtobufCMessage base; + int32_t resp; + WifiApRecord *ap_record; +}; +#define RPC__RESP__WIFI_STA_GET_AP_INFO__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_sta_get_ap_info__descriptor) \ + , 0, NULL } + + +struct RpcReqWifiSetProtocol +{ + ProtobufCMessage base; + int32_t ifx; + int32_t protocol_bitmap; +}; +#define RPC__REQ__WIFI_SET_PROTOCOL__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_set_protocol__descriptor) \ + , 0, 0 } + + +struct RpcRespWifiSetProtocol +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__WIFI_SET_PROTOCOL__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_set_protocol__descriptor) \ + , 0 } + + +struct RpcReqWifiGetProtocol +{ + ProtobufCMessage base; + int32_t ifx; +}; +#define RPC__REQ__WIFI_GET_PROTOCOL__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_get_protocol__descriptor) \ + , 0 } + + +struct RpcRespWifiGetProtocol +{ + ProtobufCMessage base; + int32_t resp; + int32_t protocol_bitmap; +}; +#define RPC__RESP__WIFI_GET_PROTOCOL__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_get_protocol__descriptor) \ + , 0, 0 } + + +struct RpcReqWifiSetBandwidth +{ + ProtobufCMessage base; + int32_t ifx; + int32_t bw; +}; +#define RPC__REQ__WIFI_SET_BANDWIDTH__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_set_bandwidth__descriptor) \ + , 0, 0 } + + +struct RpcRespWifiSetBandwidth +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__WIFI_SET_BANDWIDTH__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_set_bandwidth__descriptor) \ + , 0 } + + +struct RpcReqWifiGetBandwidth +{ + ProtobufCMessage base; + int32_t ifx; +}; +#define RPC__REQ__WIFI_GET_BANDWIDTH__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_get_bandwidth__descriptor) \ + , 0 } + + +struct RpcRespWifiGetBandwidth +{ + ProtobufCMessage base; + int32_t resp; + int32_t bw; +}; +#define RPC__RESP__WIFI_GET_BANDWIDTH__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_get_bandwidth__descriptor) \ + , 0, 0 } + + +struct RpcReqWifiSetChannel +{ + ProtobufCMessage base; + int32_t primary; + int32_t second; +}; +#define RPC__REQ__WIFI_SET_CHANNEL__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_set_channel__descriptor) \ + , 0, 0 } + + +struct RpcRespWifiSetChannel +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__WIFI_SET_CHANNEL__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_set_channel__descriptor) \ + , 0 } + + +struct RpcReqWifiGetChannel +{ + ProtobufCMessage base; +}; +#define RPC__REQ__WIFI_GET_CHANNEL__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_get_channel__descriptor) \ + } + + +struct RpcRespWifiGetChannel +{ + ProtobufCMessage base; + int32_t resp; + int32_t primary; + int32_t second; +}; +#define RPC__RESP__WIFI_GET_CHANNEL__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_get_channel__descriptor) \ + , 0, 0, 0 } + + +struct RpcReqWifiSetStorage +{ + ProtobufCMessage base; + int32_t storage; +}; +#define RPC__REQ__WIFI_SET_STORAGE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_set_storage__descriptor) \ + , 0 } + + +struct RpcRespWifiSetStorage +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__WIFI_SET_STORAGE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_set_storage__descriptor) \ + , 0 } + + +struct RpcReqWifiSetCountryCode +{ + ProtobufCMessage base; + ProtobufCBinaryData country; + protobuf_c_boolean ieee80211d_enabled; +}; +#define RPC__REQ__WIFI_SET_COUNTRY_CODE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_set_country_code__descriptor) \ + , {0,NULL}, 0 } + + +struct RpcRespWifiSetCountryCode +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__WIFI_SET_COUNTRY_CODE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_set_country_code__descriptor) \ + , 0 } + + +struct RpcReqWifiGetCountryCode +{ + ProtobufCMessage base; +}; +#define RPC__REQ__WIFI_GET_COUNTRY_CODE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_get_country_code__descriptor) \ + } + + +struct RpcRespWifiGetCountryCode +{ + ProtobufCMessage base; + int32_t resp; + ProtobufCBinaryData country; +}; +#define RPC__RESP__WIFI_GET_COUNTRY_CODE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_get_country_code__descriptor) \ + , 0, {0,NULL} } + + +struct RpcReqWifiSetCountry +{ + ProtobufCMessage base; + WifiCountry *country; +}; +#define RPC__REQ__WIFI_SET_COUNTRY__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_set_country__descriptor) \ + , NULL } + + +struct RpcRespWifiSetCountry +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__WIFI_SET_COUNTRY__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_set_country__descriptor) \ + , 0 } + + +struct RpcReqWifiGetCountry +{ + ProtobufCMessage base; +}; +#define RPC__REQ__WIFI_GET_COUNTRY__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_get_country__descriptor) \ + } + + +struct RpcRespWifiGetCountry +{ + ProtobufCMessage base; + int32_t resp; + WifiCountry *country; +}; +#define RPC__RESP__WIFI_GET_COUNTRY__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_get_country__descriptor) \ + , 0, NULL } + + +struct RpcReqWifiApGetStaList +{ + ProtobufCMessage base; +}; +#define RPC__REQ__WIFI_AP_GET_STA_LIST__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_ap_get_sta_list__descriptor) \ + } + + +struct RpcRespWifiApGetStaList +{ + ProtobufCMessage base; + int32_t resp; + WifiStaList *sta_list; +}; +#define RPC__RESP__WIFI_AP_GET_STA_LIST__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_ap_get_sta_list__descriptor) \ + , 0, NULL } + + +struct RpcReqWifiApGetStaAid +{ + ProtobufCMessage base; + ProtobufCBinaryData mac; +}; +#define RPC__REQ__WIFI_AP_GET_STA_AID__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_ap_get_sta_aid__descriptor) \ + , {0,NULL} } + + +struct RpcReqWifiStaGetNegotiatedPhymode +{ + ProtobufCMessage base; +}; +#define RPC__REQ__WIFI_STA_GET_NEGOTIATED_PHYMODE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_sta_get_negotiated_phymode__descriptor) \ + } + + +struct RpcRespWifiStaGetNegotiatedPhymode +{ + ProtobufCMessage base; + int32_t resp; + uint32_t phymode; +}; +#define RPC__RESP__WIFI_STA_GET_NEGOTIATED_PHYMODE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_sta_get_negotiated_phymode__descriptor) \ + , 0, 0 } + + +struct RpcRespWifiApGetStaAid +{ + ProtobufCMessage base; + int32_t resp; + uint32_t aid; +}; +#define RPC__RESP__WIFI_AP_GET_STA_AID__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_ap_get_sta_aid__descriptor) \ + , 0, 0 } + + +struct RpcReqWifiStaGetRssi +{ + ProtobufCMessage base; +}; +#define RPC__REQ__WIFI_STA_GET_RSSI__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_sta_get_rssi__descriptor) \ + } + + +struct RpcRespWifiStaGetRssi +{ + ProtobufCMessage base; + int32_t resp; + int32_t rssi; +}; +#define RPC__RESP__WIFI_STA_GET_RSSI__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_sta_get_rssi__descriptor) \ + , 0, 0 } + + +struct RpcReqWifiScanParams +{ + ProtobufCMessage base; + RpcCmd cmd; + WifiScanDefaultParams *config; + protobuf_c_boolean is_config_null; +}; +#define RPC__REQ__WIFI_SCAN_PARAMS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_scan_params__descriptor) \ + , RPC_CMD__Invalid, NULL, 0 } + + +struct RpcRespWifiScanParams +{ + ProtobufCMessage base; + int32_t resp; + WifiScanDefaultParams *config; +}; +#define RPC__RESP__WIFI_SCAN_PARAMS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_scan_params__descriptor) \ + , 0, NULL } + + +struct RpcReqWifiStaGetAid +{ + ProtobufCMessage base; +}; +#define RPC__REQ__WIFI_STA_GET_AID__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_sta_get_aid__descriptor) \ + } + + +struct RpcRespWifiStaGetAid +{ + ProtobufCMessage base; + int32_t resp; + uint32_t aid; +}; +#define RPC__RESP__WIFI_STA_GET_AID__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_sta_get_aid__descriptor) \ + , 0, 0 } + + +struct RpcReqWifiSetProtocols +{ + ProtobufCMessage base; + int32_t ifx; + WifiProtocols *protocols; +}; +#define RPC__REQ__WIFI_SET_PROTOCOLS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_set_protocols__descriptor) \ + , 0, NULL } + + +struct RpcRespWifiSetProtocols +{ + ProtobufCMessage base; + int32_t resp; + uint32_t ifx; +}; +#define RPC__RESP__WIFI_SET_PROTOCOLS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_set_protocols__descriptor) \ + , 0, 0 } + + +struct RpcReqWifiGetProtocols +{ + ProtobufCMessage base; + int32_t ifx; +}; +#define RPC__REQ__WIFI_GET_PROTOCOLS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_get_protocols__descriptor) \ + , 0 } + + +struct RpcRespWifiGetProtocols +{ + ProtobufCMessage base; + int32_t resp; + int32_t ifx; + WifiProtocols *protocols; +}; +#define RPC__RESP__WIFI_GET_PROTOCOLS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_get_protocols__descriptor) \ + , 0, 0, NULL } + + +struct RpcReqWifiSetBandwidths +{ + ProtobufCMessage base; + int32_t ifx; + WifiBandwidths *bandwidths; +}; +#define RPC__REQ__WIFI_SET_BANDWIDTHS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_set_bandwidths__descriptor) \ + , 0, NULL } + + +struct RpcRespWifiSetBandwidths +{ + ProtobufCMessage base; + int32_t resp; + int32_t ifx; +}; +#define RPC__RESP__WIFI_SET_BANDWIDTHS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_set_bandwidths__descriptor) \ + , 0, 0 } + + +struct RpcReqWifiGetBandwidths +{ + ProtobufCMessage base; + int32_t ifx; +}; +#define RPC__REQ__WIFI_GET_BANDWIDTHS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_get_bandwidths__descriptor) \ + , 0 } + + +struct RpcRespWifiGetBandwidths +{ + ProtobufCMessage base; + int32_t resp; + int32_t ifx; + WifiBandwidths *bandwidths; +}; +#define RPC__RESP__WIFI_GET_BANDWIDTHS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_get_bandwidths__descriptor) \ + , 0, 0, NULL } + + +struct RpcReqWifiSetBand +{ + ProtobufCMessage base; + uint32_t band; +}; +#define RPC__REQ__WIFI_SET_BAND__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_set_band__descriptor) \ + , 0 } + + +struct RpcRespWifiSetBand +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__WIFI_SET_BAND__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_set_band__descriptor) \ + , 0 } + + +struct RpcReqWifiGetBand +{ + ProtobufCMessage base; +}; +#define RPC__REQ__WIFI_GET_BAND__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_get_band__descriptor) \ + } + + +struct RpcRespWifiGetBand +{ + ProtobufCMessage base; + int32_t resp; + uint32_t band; +}; +#define RPC__RESP__WIFI_GET_BAND__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_get_band__descriptor) \ + , 0, 0 } + + +struct RpcReqWifiSetBandMode +{ + ProtobufCMessage base; + uint32_t bandmode; +}; +#define RPC__REQ__WIFI_SET_BAND_MODE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_set_band_mode__descriptor) \ + , 0 } + + +struct RpcRespWifiSetBandMode +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__WIFI_SET_BAND_MODE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_set_band_mode__descriptor) \ + , 0 } + + +struct RpcReqWifiGetBandMode +{ + ProtobufCMessage base; +}; +#define RPC__REQ__WIFI_GET_BAND_MODE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_get_band_mode__descriptor) \ + } + + +struct RpcRespWifiGetBandMode +{ + ProtobufCMessage base; + int32_t resp; + uint32_t bandmode; +}; +#define RPC__RESP__WIFI_GET_BAND_MODE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_get_band_mode__descriptor) \ + , 0, 0 } + + +struct RpcReqWifiSetInactiveTime +{ + ProtobufCMessage base; + uint32_t ifx; + uint32_t sec; +}; +#define RPC__REQ__WIFI_SET_INACTIVE_TIME__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_set_inactive_time__descriptor) \ + , 0, 0 } + + +struct RpcRespWifiSetInactiveTime +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__WIFI_SET_INACTIVE_TIME__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_set_inactive_time__descriptor) \ + , 0 } + + +struct RpcReqWifiGetInactiveTime +{ + ProtobufCMessage base; + uint32_t ifx; +}; +#define RPC__REQ__WIFI_GET_INACTIVE_TIME__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_get_inactive_time__descriptor) \ + , 0 } + + +struct RpcRespWifiGetInactiveTime +{ + ProtobufCMessage base; + int32_t resp; + uint32_t sec; +}; +#define RPC__RESP__WIFI_GET_INACTIVE_TIME__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_get_inactive_time__descriptor) \ + , 0, 0 } + + +struct RpcReqWifiDisablePmfConfig +{ + ProtobufCMessage base; + uint32_t ifx; +}; +#define RPC__REQ__WIFI_DISABLE_PMF_CONFIG__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_disable_pmf_config__descriptor) \ + , 0 } + + +struct RpcRespWifiDisablePmfConfig +{ + ProtobufCMessage base; + int32_t resp; + uint32_t ifx; +}; +#define RPC__RESP__WIFI_DISABLE_PMF_CONFIG__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_disable_pmf_config__descriptor) \ + , 0, 0 } + + +struct RpcReqWifiStaItwtSetup +{ + ProtobufCMessage base; + WifiItwtSetupConfig *setup_config; +}; +#define RPC__REQ__WIFI_STA_ITWT_SETUP__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_sta_itwt_setup__descriptor) \ + , NULL } + + +struct RpcRespWifiStaItwtSetup +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__WIFI_STA_ITWT_SETUP__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_sta_itwt_setup__descriptor) \ + , 0 } + + +struct RpcReqWifiStaItwtTeardown +{ + ProtobufCMessage base; + int32_t flow_id; +}; +#define RPC__REQ__WIFI_STA_ITWT_TEARDOWN__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_sta_itwt_teardown__descriptor) \ + , 0 } + + +struct RpcRespWifiStaItwtTeardown +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__WIFI_STA_ITWT_TEARDOWN__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_sta_itwt_teardown__descriptor) \ + , 0 } + + +struct RpcReqWifiStaItwtSuspend +{ + ProtobufCMessage base; + int32_t flow_id; + int32_t suspend_time_ms; +}; +#define RPC__REQ__WIFI_STA_ITWT_SUSPEND__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_sta_itwt_suspend__descriptor) \ + , 0, 0 } + + +struct RpcRespWifiStaItwtSuspend +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__WIFI_STA_ITWT_SUSPEND__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_sta_itwt_suspend__descriptor) \ + , 0 } + + +struct RpcReqWifiStaItwtGetFlowIdStatus +{ + ProtobufCMessage base; +}; +#define RPC__REQ__WIFI_STA_ITWT_GET_FLOW_ID_STATUS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_sta_itwt_get_flow_id_status__descriptor) \ + } + + +struct RpcRespWifiStaItwtGetFlowIdStatus +{ + ProtobufCMessage base; + int32_t resp; + int32_t flow_id_bitmap; +}; +#define RPC__RESP__WIFI_STA_ITWT_GET_FLOW_ID_STATUS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_sta_itwt_get_flow_id_status__descriptor) \ + , 0, 0 } + + +struct RpcReqWifiStaItwtSendProbeReq +{ + ProtobufCMessage base; + int32_t timeout_ms; +}; +#define RPC__REQ__WIFI_STA_ITWT_SEND_PROBE_REQ__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_sta_itwt_send_probe_req__descriptor) \ + , 0 } + + +struct RpcRespWifiStaItwtSendProbeReq +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__WIFI_STA_ITWT_SEND_PROBE_REQ__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_sta_itwt_send_probe_req__descriptor) \ + , 0 } + + +struct RpcReqWifiStaItwtSetTargetWakeTimeOffset +{ + ProtobufCMessage base; + int32_t offset_us; +}; +#define RPC__REQ__WIFI_STA_ITWT_SET_TARGET_WAKE_TIME_OFFSET__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_sta_itwt_set_target_wake_time_offset__descriptor) \ + , 0 } + + +struct RpcRespWifiStaItwtSetTargetWakeTimeOffset +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__WIFI_STA_ITWT_SET_TARGET_WAKE_TIME_OFFSET__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_sta_itwt_set_target_wake_time_offset__descriptor) \ + , 0 } + + +struct RpcReqWifiStaTwtConfig +{ + ProtobufCMessage base; + WifiTwtConfig *config; +}; +#define RPC__REQ__WIFI_STA_TWT_CONFIG__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_sta_twt_config__descriptor) \ + , NULL } + + +struct RpcRespWifiStaTwtConfig +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__WIFI_STA_TWT_CONFIG__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_sta_twt_config__descriptor) \ + , 0 } + + +struct RpcReqGetCoprocessorFwVersion +{ + ProtobufCMessage base; +}; +#define RPC__REQ__GET_COPROCESSOR_FW_VERSION__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__get_coprocessor_fw_version__descriptor) \ + } + + +struct RpcRespGetCoprocessorFwVersion +{ + ProtobufCMessage base; + int32_t resp; + uint32_t major1; + uint32_t minor1; + uint32_t patch1; + int32_t revision; + int32_t prerelease; + int32_t build; + /* + * from sdkconfig->CONFIG_IDF_FIRMWARE_CHIP_ID + */ + uint32_t chip_id; + /* + * from sdkconfig->CONFIG_IDF_TARGET + */ + ProtobufCBinaryData idf_target; +}; +#define RPC__RESP__GET_COPROCESSOR_FW_VERSION__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__get_coprocessor_fw_version__descriptor) \ + , 0, 0, 0, 0, 0, 0, 0, 0, {0,NULL} } + + +struct RpcReqSetDhcpDnsStatus +{ + ProtobufCMessage base; + int32_t iface; + int32_t net_link_up; + int32_t dhcp_up; + ProtobufCBinaryData dhcp_ip; + ProtobufCBinaryData dhcp_nm; + ProtobufCBinaryData dhcp_gw; + int32_t dns_up; + ProtobufCBinaryData dns_ip; + int32_t dns_type; +}; +#define RPC__REQ__SET_DHCP_DNS_STATUS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__set_dhcp_dns_status__descriptor) \ + , 0, 0, 0, {0,NULL}, {0,NULL}, {0,NULL}, 0, {0,NULL}, 0 } + + +struct RpcRespSetDhcpDnsStatus +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__SET_DHCP_DNS_STATUS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__set_dhcp_dns_status__descriptor) \ + , 0 } + + +struct RpcReqGetDhcpDnsStatus +{ + ProtobufCMessage base; + int32_t iface; +}; +#define RPC__REQ__GET_DHCP_DNS_STATUS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__get_dhcp_dns_status__descriptor) \ + , 0 } + + +struct RpcRespGetDhcpDnsStatus +{ + ProtobufCMessage base; + int32_t iface; + int32_t net_link_up; + int32_t dhcp_up; + ProtobufCBinaryData dhcp_ip; + ProtobufCBinaryData dhcp_nm; + ProtobufCBinaryData dhcp_gw; + int32_t dns_up; + ProtobufCBinaryData dns_ip; + int32_t dns_type; + int32_t resp; +}; +#define RPC__RESP__GET_DHCP_DNS_STATUS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__get_dhcp_dns_status__descriptor) \ + , 0, 0, 0, {0,NULL}, {0,NULL}, {0,NULL}, 0, {0,NULL}, 0, 0 } + + +struct RpcReqSuppDppInit +{ + ProtobufCMessage base; + /* + * enables sending of Event_SuppDpp to host via callback + */ + protobuf_c_boolean cb; +}; +#define RPC__REQ__SUPP_DPP_INIT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__supp_dpp_init__descriptor) \ + , 0 } + + +struct RpcRespSuppDppInit +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__SUPP_DPP_INIT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__supp_dpp_init__descriptor) \ + , 0 } + + +struct RpcReqSuppDppDeinit +{ + ProtobufCMessage base; +}; +#define RPC__REQ__SUPP_DPP_DEINIT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__supp_dpp_deinit__descriptor) \ + } + + +struct RpcRespSuppDppDeinit +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__SUPP_DPP_DEINIT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__supp_dpp_deinit__descriptor) \ + , 0 } + + +struct RpcReqSuppDppBootstrapGen +{ + ProtobufCMessage base; + /* + * DPP Bootstrapping listen channels separated by commas + */ + ProtobufCBinaryData chan_list; + /* + * Bootstrap method type, only QR Code method is supported for now. + */ + int32_t type; + /* + * (Optional) 32 byte Raw Private Key for generating a Bootstrapping Public Key + */ + ProtobufCBinaryData key; + /* + * (Optional) Ancillary Device Information like Serial Number + */ + ProtobufCBinaryData info; +}; +#define RPC__REQ__SUPP_DPP_BOOTSTRAP_GEN__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__supp_dpp_bootstrap_gen__descriptor) \ + , {0,NULL}, 0, {0,NULL}, {0,NULL} } + + +struct RpcRespSuppDppBootstrapGen +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__SUPP_DPP_BOOTSTRAP_GEN__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__supp_dpp_bootstrap_gen__descriptor) \ + , 0 } + + +struct RpcReqSuppDppStartListen +{ + ProtobufCMessage base; +}; +#define RPC__REQ__SUPP_DPP_START_LISTEN__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__supp_dpp_start_listen__descriptor) \ + } + + +struct RpcRespSuppDppStartListen +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__SUPP_DPP_START_LISTEN__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__supp_dpp_start_listen__descriptor) \ + , 0 } + + +struct RpcReqSuppDppStopListen +{ + ProtobufCMessage base; +}; +#define RPC__REQ__SUPP_DPP_STOP_LISTEN__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__supp_dpp_stop_listen__descriptor) \ + } + + +struct RpcRespSuppDppStopListen +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__SUPP_DPP_STOP_LISTEN__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__supp_dpp_stop_listen__descriptor) \ + , 0 } + + +struct RpcReqIfaceMacAddrSetGet +{ + ProtobufCMessage base; + protobuf_c_boolean set; + uint32_t type; + /* + * only valid for set + */ + ProtobufCBinaryData mac; +}; +#define RPC__REQ__IFACE_MAC_ADDR_SET_GET__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__iface_mac_addr_set_get__descriptor) \ + , 0, 0, {0,NULL} } + + +struct RpcRespIfaceMacAddrSetGet +{ + ProtobufCMessage base; + int32_t resp; + protobuf_c_boolean set; + uint32_t type; + ProtobufCBinaryData mac; +}; +#define RPC__RESP__IFACE_MAC_ADDR_SET_GET__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__iface_mac_addr_set_get__descriptor) \ + , 0, 0, 0, {0,NULL} } + + +struct RpcReqIfaceMacAddrLenGet +{ + ProtobufCMessage base; + uint32_t type; +}; +#define RPC__REQ__IFACE_MAC_ADDR_LEN_GET__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__iface_mac_addr_len_get__descriptor) \ + , 0 } + + +struct RpcRespIfaceMacAddrLenGet +{ + ProtobufCMessage base; + int32_t resp; + uint32_t type; + uint32_t len; +}; +#define RPC__RESP__IFACE_MAC_ADDR_LEN_GET__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__iface_mac_addr_len_get__descriptor) \ + , 0, 0, 0 } + + +struct RpcReqFeatureControl +{ + ProtobufCMessage base; + RpcFeature feature; + RpcFeatureCommand command; + RpcFeatureOption option; +}; +#define RPC__REQ__FEATURE_CONTROL__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__feature_control__descriptor) \ + , RPC_FEATURE__Feature_None, RPC_FEATURE_COMMAND__Feature_Command_None, RPC_FEATURE_OPTION__Feature_Option_None } + + +struct RpcRespFeatureControl +{ + ProtobufCMessage base; + int32_t resp; + RpcFeature feature; + RpcFeatureCommand command; + RpcFeatureOption option; +}; +#define RPC__RESP__FEATURE_CONTROL__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__feature_control__descriptor) \ + , 0, RPC_FEATURE__Feature_None, RPC_FEATURE_COMMAND__Feature_Command_None, RPC_FEATURE_OPTION__Feature_Option_None } + + +/* + * Configures the memory threshold for heap space monitoring for both internal and external ram + *Set values to 0 to disable + */ +struct RpcReqMemMonitor +{ + ProtobufCMessage base; + /* + * configure monitor + */ + RpcMemMonitorConfig config; + /* + * report the memory used based on the set interval. When disabled, report only when heap memory falls below a set value + */ + protobuf_c_boolean report_always; + /* + * interval between heap checks, periodic reports (if enabled) + */ + uint32_t interval_sec; + /* + * minimum reporting threshold for internal memory + */ + HeapSizeThreshold *internal; + /* + * minimum reporting threshold for external memory + */ + HeapSizeThreshold *external; +}; +#define RPC__REQ__MEM_MONITOR__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__mem_monitor__descriptor) \ + , RPC__MEM_MONITOR_CONFIG__MEMMONITOR_NO_CHANGE, 0, 0, NULL, NULL } + + +struct RpcRespMemMonitor +{ + ProtobufCMessage base; + int32_t resp; + RpcMemMonitorConfig config; + protobuf_c_boolean report_always; + uint32_t interval_sec; + /* + * current total free heap size + */ + uint32_t curr_total_heap_size; + /* + * current heap sizes for internal memory + */ + HeapInfo *curr_internal; + /* + * current heap sizes for external memory + */ + HeapInfo *curr_external; +}; +#define RPC__RESP__MEM_MONITOR__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__mem_monitor__descriptor) \ + , 0, RPC__MEM_MONITOR_CONFIG__MEMMONITOR_NO_CHANGE, 0, 0, 0, NULL, NULL } + + +struct RpcEventWifiEventNoArgs +{ + ProtobufCMessage base; + int32_t resp; + int32_t event_id; +}; +#define RPC__EVENT__WIFI_EVENT_NO_ARGS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__event__wifi_event_no_args__descriptor) \ + , 0, 0 } + + +struct RpcEventESPInit +{ + ProtobufCMessage base; + /* + * reserved + */ + ProtobufCBinaryData init_data; + uint32_t cp_reset_reason; +}; +#define RPC__EVENT__ESPINIT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__event__espinit__descriptor) \ + , {0,NULL}, 0 } + + +struct RpcEventHeartbeat +{ + ProtobufCMessage base; + int32_t hb_num; +}; +#define RPC__EVENT__HEARTBEAT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__event__heartbeat__descriptor) \ + , 0 } + + +struct RpcEventAPStaDisconnected +{ + ProtobufCMessage base; + int32_t resp; + ProtobufCBinaryData mac; + uint32_t aid; + protobuf_c_boolean is_mesh_child; + uint32_t reason; +}; +#define RPC__EVENT__AP__STA_DISCONNECTED__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__event__ap__sta_disconnected__descriptor) \ + , 0, {0,NULL}, 0, 0, 0 } + + +struct RpcEventAPStaConnected +{ + ProtobufCMessage base; + int32_t resp; + ProtobufCBinaryData mac; + uint32_t aid; + protobuf_c_boolean is_mesh_child; +}; +#define RPC__EVENT__AP__STA_CONNECTED__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__event__ap__sta_connected__descriptor) \ + , 0, {0,NULL}, 0, 0 } + + +struct RpcEventStaScanDone +{ + ProtobufCMessage base; + int32_t resp; + WifiEventStaScanDone *scan_done; +}; +#define RPC__EVENT__STA_SCAN_DONE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__event__sta_scan_done__descriptor) \ + , 0, NULL } + + +struct RpcEventStaConnected +{ + ProtobufCMessage base; + int32_t resp; + WifiEventStaConnected *sta_connected; +}; +#define RPC__EVENT__STA_CONNECTED__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__event__sta_connected__descriptor) \ + , 0, NULL } + + +struct RpcEventStaDisconnected +{ + ProtobufCMessage base; + int32_t resp; + WifiEventStaDisconnected *sta_disconnected; +}; +#define RPC__EVENT__STA_DISCONNECTED__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__event__sta_disconnected__descriptor) \ + , 0, NULL } + + +struct RpcGpioConfig +{ + ProtobufCMessage base; + uint64_t pin_bit_mask; + RpcGpioMode mode; + protobuf_c_boolean pull_up_en; + protobuf_c_boolean pull_down_en; + int32_t intr_type; +}; +#define RPC__GPIO_CONFIG__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__gpio_config__descriptor) \ + , 0, RPC__GPIO_MODE__GPIO_MODE_DISABLE, 0, 0, 0 } + + +struct RpcReqGpioConfig +{ + ProtobufCMessage base; + RpcGpioConfig *config; +}; +#define RPC__REQ__GPIO_CONFIG__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__gpio_config__descriptor) \ + , NULL } + + +struct RpcRespGpioConfig +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__GPIO_CONFIG__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__gpio_config__descriptor) \ + , 0 } + + +struct RpcReqGpioResetPin +{ + ProtobufCMessage base; + int32_t gpio_num; +}; +#define RPC__REQ__GPIO_RESET_PIN__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__gpio_reset_pin__descriptor) \ + , 0 } + + +struct RpcRespGpioResetPin +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__GPIO_RESET_PIN__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__gpio_reset_pin__descriptor) \ + , 0 } + + +struct RpcReqGpioSetLevel +{ + ProtobufCMessage base; + int32_t gpio_num; + /* + * 0 or 1 + */ + uint32_t level; +}; +#define RPC__REQ__GPIO_SET_LEVEL__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__gpio_set_level__descriptor) \ + , 0, 0 } + + +struct RpcRespGpioSetLevel +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__GPIO_SET_LEVEL__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__gpio_set_level__descriptor) \ + , 0 } + + +struct RpcReqGpioGetLevel +{ + ProtobufCMessage base; + int32_t gpio_num; +}; +#define RPC__REQ__GPIO_GET_LEVEL__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__gpio_get_level__descriptor) \ + , 0 } + + +struct RpcRespGpioGetLevel +{ + ProtobufCMessage base; + int32_t resp; + uint32_t level; +}; +#define RPC__RESP__GPIO_GET_LEVEL__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__gpio_get_level__descriptor) \ + , 0, 0 } + + +struct RpcReqGpioSetDirection +{ + ProtobufCMessage base; + int32_t gpio_num; + RpcGpioMode mode; +}; +#define RPC__REQ__GPIO_SET_DIRECTION__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__gpio_set_direction__descriptor) \ + , 0, RPC__GPIO_MODE__GPIO_MODE_DISABLE } + + +struct RpcRespGpioSetDirection +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__GPIO_SET_DIRECTION__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__gpio_set_direction__descriptor) \ + , 0 } + + +struct RpcReqGpioInputEnable +{ + ProtobufCMessage base; + int32_t gpio_num; +}; +#define RPC__REQ__GPIO_INPUT_ENABLE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__gpio_input_enable__descriptor) \ + , 0 } + + +struct RpcRespGpioInputEnable +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__GPIO_INPUT_ENABLE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__gpio_input_enable__descriptor) \ + , 0 } + + +struct RpcReqGpioSetPullMode +{ + ProtobufCMessage base; + int32_t gpio_num; + RpcGpioPullMode pull; +}; +#define RPC__REQ__GPIO_SET_PULL_MODE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__gpio_set_pull_mode__descriptor) \ + , 0, RPC__GPIO_PULL_MODE__GPIO_PULL_NONE } + + +struct RpcRespGpioSetPullMode +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__GPIO_SET_PULL_MODE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__gpio_set_pull_mode__descriptor) \ + , 0 } + + +struct RpcReqExtCoex +{ + ProtobufCMessage base; + uint32_t cmd; + uint32_t set_gpio_wire_type; + int32_t set_gpio_request_pin; + int32_t set_gpio_priority_pin; + int32_t set_gpio_grant_pin; + int32_t set_gpio_tx_line_pin; + uint32_t set_work_mode; + uint32_t set_grant_delay_us; + protobuf_c_boolean set_validate_high; +}; +#define RPC__REQ__EXT_COEX__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__ext_coex__descriptor) \ + , 0, 0, 0, 0, 0, 0, 0, 0, 0 } + + +struct RpcRespExtCoex +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__EXT_COEX__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__ext_coex__descriptor) \ + , 0 } + + +struct RpcEventDhcpDnsStatus +{ + ProtobufCMessage base; + int32_t iface; + int32_t net_link_up; + int32_t dhcp_up; + ProtobufCBinaryData dhcp_ip; + ProtobufCBinaryData dhcp_nm; + ProtobufCBinaryData dhcp_gw; + int32_t dns_up; + ProtobufCBinaryData dns_ip; + int32_t dns_type; + int32_t resp; +}; +#define RPC__EVENT__DHCP_DNS_STATUS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__event__dhcp_dns_status__descriptor) \ + , 0, 0, 0, {0,NULL}, {0,NULL}, {0,NULL}, 0, {0,NULL}, 0, 0 } + + +struct RpcEventStaItwtSetup +{ + ProtobufCMessage base; + int32_t resp; + WifiItwtSetupConfig *config; + int32_t status; + uint32_t reason; + uint64_t target_wake_time; +}; +#define RPC__EVENT__STA_ITWT_SETUP__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__event__sta_itwt_setup__descriptor) \ + , 0, NULL, 0, 0, 0 } + + +struct RpcEventStaItwtTeardown +{ + ProtobufCMessage base; + int32_t resp; + uint32_t flow_id; + uint32_t status; +}; +#define RPC__EVENT__STA_ITWT_TEARDOWN__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__event__sta_itwt_teardown__descriptor) \ + , 0, 0, 0 } + + +struct RpcEventStaItwtSuspend +{ + ProtobufCMessage base; + int32_t resp; + int32_t status; + uint32_t flow_id_bitmap; + /* + * represents uint32_t actual_suspend_time_ms[] + */ + size_t n_actual_suspend_time_ms; + uint32_t *actual_suspend_time_ms; +}; +#define RPC__EVENT__STA_ITWT_SUSPEND__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__event__sta_itwt_suspend__descriptor) \ + , 0, 0, 0, 0,NULL } + + +struct RpcEventStaItwtProbe +{ + ProtobufCMessage base; + int32_t resp; + int32_t status; + uint32_t reason; +}; +#define RPC__EVENT__STA_ITWT_PROBE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__event__sta_itwt_probe__descriptor) \ + , 0, 0, 0 } + + +struct RpcReqWifiStaEnterpriseEnable +{ + ProtobufCMessage base; +}; +#define RPC__REQ__WIFI_STA_ENTERPRISE_ENABLE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_sta_enterprise_enable__descriptor) \ + } + + +struct RpcRespWifiStaEnterpriseEnable +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__WIFI_STA_ENTERPRISE_ENABLE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_sta_enterprise_enable__descriptor) \ + , 0 } + + +struct RpcReqWifiStaEnterpriseDisable +{ + ProtobufCMessage base; +}; +#define RPC__REQ__WIFI_STA_ENTERPRISE_DISABLE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_sta_enterprise_disable__descriptor) \ + } + + +struct RpcRespWifiStaEnterpriseDisable +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__WIFI_STA_ENTERPRISE_DISABLE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_sta_enterprise_disable__descriptor) \ + , 0 } + + +struct RpcReqEapSetIdentity +{ + ProtobufCMessage base; + ProtobufCBinaryData identity; + int32_t len; +}; +#define RPC__REQ__EAP_SET_IDENTITY__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__eap_set_identity__descriptor) \ + , {0,NULL}, 0 } + + +struct RpcRespEapSetIdentity +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__EAP_SET_IDENTITY__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__eap_set_identity__descriptor) \ + , 0 } + + +struct RpcReqEapClearIdentity +{ + ProtobufCMessage base; +}; +#define RPC__REQ__EAP_CLEAR_IDENTITY__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__eap_clear_identity__descriptor) \ + } + + +struct RpcRespEapClearIdentity +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__EAP_CLEAR_IDENTITY__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__eap_clear_identity__descriptor) \ + , 0 } + + +struct RpcReqEapSetUsername +{ + ProtobufCMessage base; + ProtobufCBinaryData username; + int32_t len; +}; +#define RPC__REQ__EAP_SET_USERNAME__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__eap_set_username__descriptor) \ + , {0,NULL}, 0 } + + +struct RpcRespEapSetUsername +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__EAP_SET_USERNAME__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__eap_set_username__descriptor) \ + , 0 } + + +struct RpcReqEapClearUsername +{ + ProtobufCMessage base; +}; +#define RPC__REQ__EAP_CLEAR_USERNAME__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__eap_clear_username__descriptor) \ + } + + +struct RpcRespEapClearUsername +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__EAP_CLEAR_USERNAME__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__eap_clear_username__descriptor) \ + , 0 } + + +struct RpcReqEapSetPassword +{ + ProtobufCMessage base; + ProtobufCBinaryData password; + int32_t len; +}; +#define RPC__REQ__EAP_SET_PASSWORD__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__eap_set_password__descriptor) \ + , {0,NULL}, 0 } + + +struct RpcRespEapSetPassword +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__EAP_SET_PASSWORD__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__eap_set_password__descriptor) \ + , 0 } + + +struct RpcReqEapClearPassword +{ + ProtobufCMessage base; +}; +#define RPC__REQ__EAP_CLEAR_PASSWORD__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__eap_clear_password__descriptor) \ + } + + +struct RpcRespEapClearPassword +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__EAP_CLEAR_PASSWORD__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__eap_clear_password__descriptor) \ + , 0 } + + +struct RpcReqEapSetNewPassword +{ + ProtobufCMessage base; + ProtobufCBinaryData new_password; + int32_t len; +}; +#define RPC__REQ__EAP_SET_NEW_PASSWORD__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__eap_set_new_password__descriptor) \ + , {0,NULL}, 0 } + + +struct RpcRespEapSetNewPassword +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__EAP_SET_NEW_PASSWORD__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__eap_set_new_password__descriptor) \ + , 0 } + + +struct RpcReqEapClearNewPassword +{ + ProtobufCMessage base; +}; +#define RPC__REQ__EAP_CLEAR_NEW_PASSWORD__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__eap_clear_new_password__descriptor) \ + } + + +struct RpcRespEapClearNewPassword +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__EAP_CLEAR_NEW_PASSWORD__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__eap_clear_new_password__descriptor) \ + , 0 } + + +struct RpcReqEapSetCaCert +{ + ProtobufCMessage base; + ProtobufCBinaryData ca_cert; + int32_t ca_cert_len; +}; +#define RPC__REQ__EAP_SET_CA_CERT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__eap_set_ca_cert__descriptor) \ + , {0,NULL}, 0 } + + +struct RpcRespEapSetCaCert +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__EAP_SET_CA_CERT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__eap_set_ca_cert__descriptor) \ + , 0 } + + +struct RpcReqEapClearCaCert +{ + ProtobufCMessage base; +}; +#define RPC__REQ__EAP_CLEAR_CA_CERT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__eap_clear_ca_cert__descriptor) \ + } + + +struct RpcRespEapClearCaCert +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__EAP_CLEAR_CA_CERT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__eap_clear_ca_cert__descriptor) \ + , 0 } + + +struct RpcReqEapSetCertificateAndKey +{ + ProtobufCMessage base; + ProtobufCBinaryData client_cert; + int32_t client_cert_len; + ProtobufCBinaryData private_key; + int32_t private_key_len; + ProtobufCBinaryData private_key_password; + int32_t private_key_passwd_len; +}; +#define RPC__REQ__EAP_SET_CERTIFICATE_AND_KEY__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__eap_set_certificate_and_key__descriptor) \ + , {0,NULL}, 0, {0,NULL}, 0, {0,NULL}, 0 } + + +struct RpcRespEapSetCertificateAndKey +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__EAP_SET_CERTIFICATE_AND_KEY__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__eap_set_certificate_and_key__descriptor) \ + , 0 } + + +struct RpcReqEapClearCertificateAndKey +{ + ProtobufCMessage base; +}; +#define RPC__REQ__EAP_CLEAR_CERTIFICATE_AND_KEY__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__eap_clear_certificate_and_key__descriptor) \ + } + + +struct RpcRespEapClearCertificateAndKey +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__EAP_CLEAR_CERTIFICATE_AND_KEY__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__eap_clear_certificate_and_key__descriptor) \ + , 0 } + + +struct RpcReqEapSetDisableTimeCheck +{ + ProtobufCMessage base; + protobuf_c_boolean disable; +}; +#define RPC__REQ__EAP_SET_DISABLE_TIME_CHECK__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__eap_set_disable_time_check__descriptor) \ + , 0 } + + +struct RpcRespEapSetDisableTimeCheck +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__EAP_SET_DISABLE_TIME_CHECK__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__eap_set_disable_time_check__descriptor) \ + , 0 } + + +struct RpcReqEapGetDisableTimeCheck +{ + ProtobufCMessage base; +}; +#define RPC__REQ__EAP_GET_DISABLE_TIME_CHECK__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__eap_get_disable_time_check__descriptor) \ + } + + +struct RpcRespEapGetDisableTimeCheck +{ + ProtobufCMessage base; + int32_t resp; + protobuf_c_boolean disable; +}; +#define RPC__RESP__EAP_GET_DISABLE_TIME_CHECK__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__eap_get_disable_time_check__descriptor) \ + , 0, 0 } + + +struct RpcReqEapSetTtlsPhase2Method +{ + ProtobufCMessage base; + int32_t type; +}; +#define RPC__REQ__EAP_SET_TTLS_PHASE2_METHOD__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__eap_set_ttls_phase2_method__descriptor) \ + , 0 } + + +struct RpcRespEapSetTtlsPhase2Method +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__EAP_SET_TTLS_PHASE2_METHOD__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__eap_set_ttls_phase2_method__descriptor) \ + , 0 } + + +struct RpcReqEapSetSuiteb192bitCertification +{ + ProtobufCMessage base; + protobuf_c_boolean enable; +}; +#define RPC__REQ__EAP_SET_SUITEB192BIT_CERTIFICATION__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__eap_set_suiteb192bit_certification__descriptor) \ + , 0 } + + +struct RpcRespEapSetSuiteb192bitCertification +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__EAP_SET_SUITEB192BIT_CERTIFICATION__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__eap_set_suiteb192bit_certification__descriptor) \ + , 0 } + + +struct RpcReqEapSetPacFile +{ + ProtobufCMessage base; + ProtobufCBinaryData pac_file; + int32_t pac_file_len; +}; +#define RPC__REQ__EAP_SET_PAC_FILE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__eap_set_pac_file__descriptor) \ + , {0,NULL}, 0 } + + +struct RpcRespEapSetPacFile +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__EAP_SET_PAC_FILE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__eap_set_pac_file__descriptor) \ + , 0 } + + +struct RpcReqEapSetFastParams +{ + ProtobufCMessage base; + EapFastConfig *eap_fast_config; +}; +#define RPC__REQ__EAP_SET_FAST_PARAMS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__eap_set_fast_params__descriptor) \ + , NULL } + + +struct RpcRespEapSetFastParams +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__EAP_SET_FAST_PARAMS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__eap_set_fast_params__descriptor) \ + , 0 } + + +struct RpcReqEapUseDefaultCertBundle +{ + ProtobufCMessage base; + protobuf_c_boolean use_default_bundle; +}; +#define RPC__REQ__EAP_USE_DEFAULT_CERT_BUNDLE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__eap_use_default_cert_bundle__descriptor) \ + , 0 } + + +struct RpcRespEapUseDefaultCertBundle +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__EAP_USE_DEFAULT_CERT_BUNDLE__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__eap_use_default_cert_bundle__descriptor) \ + , 0 } + + +struct RpcReqWifiSetOkcSupport +{ + ProtobufCMessage base; + protobuf_c_boolean enable; +}; +#define RPC__REQ__WIFI_SET_OKC_SUPPORT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__wifi_set_okc_support__descriptor) \ + , 0 } + + +struct RpcRespWifiSetOkcSupport +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__WIFI_SET_OKC_SUPPORT__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__wifi_set_okc_support__descriptor) \ + , 0 } + + +struct RpcReqEapSetDomainName +{ + ProtobufCMessage base; + ProtobufCBinaryData domain_name; +}; +#define RPC__REQ__EAP_SET_DOMAIN_NAME__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__eap_set_domain_name__descriptor) \ + , {0,NULL} } + + +struct RpcRespEapSetDomainName +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__EAP_SET_DOMAIN_NAME__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__eap_set_domain_name__descriptor) \ + , 0 } + + +struct RpcReqEapSetEapMethods +{ + ProtobufCMessage base; + int32_t methods; +}; +#define RPC__REQ__EAP_SET_EAP_METHODS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__eap_set_eap_methods__descriptor) \ + , 0 } + + +struct RpcRespEapSetEapMethods +{ + ProtobufCMessage base; + int32_t resp; +}; +#define RPC__RESP__EAP_SET_EAP_METHODS__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__eap_set_eap_methods__descriptor) \ + , 0 } + + +struct RpcEventSuppDppUriReady +{ + ProtobufCMessage base; + int32_t resp; + /* + * QR Code to configure the enrollee + */ + ProtobufCBinaryData qrcode; +}; +#define RPC__EVENT__SUPP_DPP_URI_READY__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__event__supp_dpp_uri_ready__descriptor) \ + , 0, {0,NULL} } + + +struct RpcEventSuppDppCfgRecvd +{ + ProtobufCMessage base; + int32_t resp; + WifiConfig *cfg; +}; +#define RPC__EVENT__SUPP_DPP_CFG_RECVD__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__event__supp_dpp_cfg_recvd__descriptor) \ + , 0, NULL } + + +struct RpcEventSuppDppFail +{ + ProtobufCMessage base; + int32_t resp; + /* + * failure reason + */ + int32_t reason; +}; +#define RPC__EVENT__SUPP_DPP_FAIL__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__event__supp_dpp_fail__descriptor) \ + , 0, 0 } + + +struct RpcEventWifiDppUriReady +{ + ProtobufCMessage base; + int32_t resp; + /* + * QR Code to configure the enrollee + */ + ProtobufCBinaryData qrcode; +}; +#define RPC__EVENT__WIFI_DPP_URI_READY__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__event__wifi_dpp_uri_ready__descriptor) \ + , 0, {0,NULL} } + + +struct RpcEventWifiDppCfgRecvd +{ + ProtobufCMessage base; + int32_t resp; + WifiConfig *cfg; +}; +#define RPC__EVENT__WIFI_DPP_CFG_RECVD__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__event__wifi_dpp_cfg_recvd__descriptor) \ + , 0, NULL } + + +struct RpcEventWifiDppFail +{ + ProtobufCMessage base; + int32_t resp; + /* + * failure reason + */ + int32_t reason; +}; +#define RPC__EVENT__WIFI_DPP_FAIL__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__event__wifi_dpp_fail__descriptor) \ + , 0, 0 } + + +/* + * Custom RPC messages for user-defined packed structures + */ +struct RpcReqCustomRpc +{ + ProtobufCMessage base; + /* + * User-defined message ID + */ + uint32_t custom_msg_id; + /* + * Raw packed data + */ + ProtobufCBinaryData data; +}; +#define RPC__REQ__CUSTOM_RPC__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__req__custom_rpc__descriptor) \ + , 0, {0,NULL} } + + +struct RpcRespCustomRpc +{ + ProtobufCMessage base; + /* + * Response status + */ + int32_t resp; + /* + * User-defined message ID (echoed from request) + */ + uint32_t custom_msg_id; + /* + * Raw packed response data + */ + ProtobufCBinaryData data; +}; +#define RPC__RESP__CUSTOM_RPC__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__resp__custom_rpc__descriptor) \ + , 0, 0, {0,NULL} } + + +struct RpcEventCustomRpc +{ + ProtobufCMessage base; + /* + * Event status + */ + int32_t resp; + /* + * User-defined event ID + */ + uint32_t custom_event_id; + /* + * Raw packed event data + */ + ProtobufCBinaryData data; +}; +#define RPC__EVENT__CUSTOM_RPC__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__event__custom_rpc__descriptor) \ + , 0, 0, {0,NULL} } + + +/* + * Sent when heap size is below a set low level marks + */ +struct RpcEventMemMonitor +{ + ProtobufCMessage base; + int32_t resp; + /* + * current total heap size + */ + uint32_t curr_total_free_heap_size; + /* + * current minimum heap size + */ + uint32_t curr_min_free_heap_size; + /* + * current heap levels for internal memory + */ + HeapInfo *curr_internal; + /* + * current heap levels for external memory + */ + HeapInfo *curr_external; +}; +#define RPC__EVENT__MEM_MONITOR__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__event__mem_monitor__descriptor) \ + , 0, 0, 0, NULL, NULL } + + +typedef enum { + RPC__PAYLOAD__NOT_SET = 0, + RPC__PAYLOAD_REQ_GET_MAC_ADDRESS = 257, + RPC__PAYLOAD_REQ_SET_MAC_ADDRESS = 258, + RPC__PAYLOAD_REQ_GET_WIFI_MODE = 259, + RPC__PAYLOAD_REQ_SET_WIFI_MODE = 260, + RPC__PAYLOAD_REQ_SUPP_DPP_INIT = 261, + RPC__PAYLOAD_REQ_SUPP_DPP_DEINIT = 262, + RPC__PAYLOAD_REQ_SUPP_DPP_BOOTSTRAP_GEN = 263, + RPC__PAYLOAD_REQ_SUPP_DPP_START_LISTEN = 264, + RPC__PAYLOAD_REQ_SUPP_DPP_STOP_LISTEN = 265, + RPC__PAYLOAD_REQ_OTA_ACTIVATE = 266, + RPC__PAYLOAD_REQ_APP_GET_DESC = 267, + RPC__PAYLOAD_REQ_MEM_MONITOR = 268, + RPC__PAYLOAD_REQ_WIFI_SCAN_PARAMS = 269, + RPC__PAYLOAD_REQ_WIFI_SET_PS = 270, + RPC__PAYLOAD_REQ_WIFI_GET_PS = 271, + RPC__PAYLOAD_REQ_OTA_BEGIN = 272, + RPC__PAYLOAD_REQ_OTA_WRITE = 273, + RPC__PAYLOAD_REQ_OTA_END = 274, + RPC__PAYLOAD_REQ_SET_WIFI_MAX_TX_POWER = 275, + RPC__PAYLOAD_REQ_GET_WIFI_MAX_TX_POWER = 276, + RPC__PAYLOAD_REQ_CONFIG_HEARTBEAT = 277, + RPC__PAYLOAD_REQ_WIFI_INIT = 278, + RPC__PAYLOAD_REQ_WIFI_DEINIT = 279, + RPC__PAYLOAD_REQ_WIFI_START = 280, + RPC__PAYLOAD_REQ_WIFI_STOP = 281, + RPC__PAYLOAD_REQ_WIFI_CONNECT = 282, + RPC__PAYLOAD_REQ_WIFI_DISCONNECT = 283, + RPC__PAYLOAD_REQ_WIFI_SET_CONFIG = 284, + RPC__PAYLOAD_REQ_WIFI_GET_CONFIG = 285, + RPC__PAYLOAD_REQ_WIFI_SCAN_START = 286, + RPC__PAYLOAD_REQ_WIFI_SCAN_STOP = 287, + RPC__PAYLOAD_REQ_WIFI_SCAN_GET_AP_NUM = 288, + RPC__PAYLOAD_REQ_WIFI_SCAN_GET_AP_RECORDS = 289, + RPC__PAYLOAD_REQ_WIFI_CLEAR_AP_LIST = 290, + RPC__PAYLOAD_REQ_WIFI_RESTORE = 291, + RPC__PAYLOAD_REQ_WIFI_CLEAR_FAST_CONNECT = 292, + RPC__PAYLOAD_REQ_WIFI_DEAUTH_STA = 293, + RPC__PAYLOAD_REQ_WIFI_STA_GET_AP_INFO = 294, + RPC__PAYLOAD_REQ_WIFI_SET_PROTOCOL = 297, + RPC__PAYLOAD_REQ_WIFI_GET_PROTOCOL = 298, + RPC__PAYLOAD_REQ_WIFI_SET_BANDWIDTH = 299, + RPC__PAYLOAD_REQ_WIFI_GET_BANDWIDTH = 300, + RPC__PAYLOAD_REQ_WIFI_SET_CHANNEL = 301, + RPC__PAYLOAD_REQ_WIFI_GET_CHANNEL = 302, + RPC__PAYLOAD_REQ_WIFI_SET_COUNTRY = 303, + RPC__PAYLOAD_REQ_WIFI_GET_COUNTRY = 304, + RPC__PAYLOAD_REQ_WIFI_AP_GET_STA_LIST = 311, + RPC__PAYLOAD_REQ_WIFI_AP_GET_STA_AID = 312, + RPC__PAYLOAD_REQ_WIFI_SET_STORAGE = 313, + RPC__PAYLOAD_REQ_WIFI_SET_INACTIVE_TIME = 325, + RPC__PAYLOAD_REQ_WIFI_GET_INACTIVE_TIME = 326, + RPC__PAYLOAD_REQ_WIFI_SET_COUNTRY_CODE = 334, + RPC__PAYLOAD_REQ_WIFI_GET_COUNTRY_CODE = 335, + RPC__PAYLOAD_REQ_WIFI_DISABLE_PMF_CONFIG = 337, + RPC__PAYLOAD_REQ_WIFI_STA_GET_AID = 338, + RPC__PAYLOAD_REQ_WIFI_STA_GET_NEGOTIATED_PHYMODE = 339, + RPC__PAYLOAD_REQ_WIFI_STA_GET_RSSI = 341, + RPC__PAYLOAD_REQ_WIFI_SET_PROTOCOLS = 342, + RPC__PAYLOAD_REQ_WIFI_GET_PROTOCOLS = 343, + RPC__PAYLOAD_REQ_WIFI_SET_BANDWIDTHS = 344, + RPC__PAYLOAD_REQ_WIFI_GET_BANDWIDTHS = 345, + RPC__PAYLOAD_REQ_WIFI_SET_BAND = 346, + RPC__PAYLOAD_REQ_WIFI_GET_BAND = 347, + RPC__PAYLOAD_REQ_WIFI_SET_BANDMODE = 348, + RPC__PAYLOAD_REQ_WIFI_GET_BANDMODE = 349, + RPC__PAYLOAD_REQ_GET_COPROCESSOR_FWVERSION = 350, + RPC__PAYLOAD_REQ_WIFI_SCAN_GET_AP_RECORD = 351, + RPC__PAYLOAD_REQ_SET_DHCP_DNS = 352, + RPC__PAYLOAD_REQ_GET_DHCP_DNS = 353, + RPC__PAYLOAD_REQ_WIFI_STA_TWT_CONFIG = 354, + RPC__PAYLOAD_REQ_WIFI_STA_ITWT_SETUP = 355, + RPC__PAYLOAD_REQ_WIFI_STA_ITWT_TEARDOWN = 356, + RPC__PAYLOAD_REQ_WIFI_STA_ITWT_SUSPEND = 357, + RPC__PAYLOAD_REQ_WIFI_STA_ITWT_GET_FLOW_ID_STATUS = 358, + RPC__PAYLOAD_REQ_WIFI_STA_ITWT_SEND_PROBE_REQ = 359, + RPC__PAYLOAD_REQ_WIFI_STA_ITWT_SET_TARGET_WAKE_TIME_OFFSET = 360, + RPC__PAYLOAD_REQ_WIFI_STA_ENTERPRISE_ENABLE = 361, + RPC__PAYLOAD_REQ_WIFI_STA_ENTERPRISE_DISABLE = 362, + RPC__PAYLOAD_REQ_EAP_SET_IDENTITY = 363, + RPC__PAYLOAD_REQ_EAP_CLEAR_IDENTITY = 364, + RPC__PAYLOAD_REQ_EAP_SET_USERNAME = 365, + RPC__PAYLOAD_REQ_EAP_CLEAR_USERNAME = 366, + RPC__PAYLOAD_REQ_EAP_SET_PASSWORD = 367, + RPC__PAYLOAD_REQ_EAP_CLEAR_PASSWORD = 368, + RPC__PAYLOAD_REQ_EAP_SET_NEW_PASSWORD = 369, + RPC__PAYLOAD_REQ_EAP_CLEAR_NEW_PASSWORD = 370, + RPC__PAYLOAD_REQ_EAP_SET_CA_CERT = 371, + RPC__PAYLOAD_REQ_EAP_CLEAR_CA_CERT = 372, + RPC__PAYLOAD_REQ_EAP_SET_CERTIFICATE_AND_KEY = 373, + RPC__PAYLOAD_REQ_EAP_CLEAR_CERTIFICATE_AND_KEY = 374, + RPC__PAYLOAD_REQ_EAP_GET_DISABLE_TIME_CHECK = 375, + RPC__PAYLOAD_REQ_EAP_SET_TTLS_PHASE2_METHOD = 376, + RPC__PAYLOAD_REQ_EAP_SET_SUITEB_CERTIFICATION = 377, + RPC__PAYLOAD_REQ_EAP_SET_PAC_FILE = 378, + RPC__PAYLOAD_REQ_EAP_SET_FAST_PARAMS = 379, + RPC__PAYLOAD_REQ_EAP_USE_DEFAULT_CERT_BUNDLE = 380, + RPC__PAYLOAD_REQ_WIFI_SET_OKC_SUPPORT = 381, + RPC__PAYLOAD_REQ_EAP_SET_DOMAIN_NAME = 382, + RPC__PAYLOAD_REQ_EAP_SET_DISABLE_TIME_CHECK = 383, + RPC__PAYLOAD_REQ_EAP_SET_EAP_METHODS = 384, + RPC__PAYLOAD_REQ_IFACE_MAC_ADDR_SET_GET = 385, + RPC__PAYLOAD_REQ_IFACE_MAC_ADDR_LEN_GET = 386, + RPC__PAYLOAD_REQ_FEATURE_CONTROL = 387, + RPC__PAYLOAD_REQ_CUSTOM_RPC = 388, + RPC__PAYLOAD_REQ_GPIO_CONFIG = 389, + RPC__PAYLOAD_REQ_GPIO_RESET_PIN = 390, + RPC__PAYLOAD_REQ_GPIO_SET_LEVEL = 391, + RPC__PAYLOAD_REQ_GPIO_GET_LEVEL = 392, + RPC__PAYLOAD_REQ_GPIO_SET_DIRECTION = 393, + RPC__PAYLOAD_REQ_GPIO_INPUT_ENABLE = 394, + RPC__PAYLOAD_REQ_GPIO_SET_PULL_MODE = 395, + RPC__PAYLOAD_REQ_EXT_COEX = 396, + RPC__PAYLOAD_RESP_GET_MAC_ADDRESS = 513, + RPC__PAYLOAD_RESP_SET_MAC_ADDRESS = 514, + RPC__PAYLOAD_RESP_GET_WIFI_MODE = 515, + RPC__PAYLOAD_RESP_SET_WIFI_MODE = 516, + RPC__PAYLOAD_RESP_SUPP_DPP_INIT = 517, + RPC__PAYLOAD_RESP_SUPP_DPP_DEINIT = 518, + RPC__PAYLOAD_RESP_SUPP_DPP_BOOTSTRAP_GEN = 519, + RPC__PAYLOAD_RESP_SUPP_DPP_START_LISTEN = 520, + RPC__PAYLOAD_RESP_SUPP_DPP_STOP_LISTEN = 521, + RPC__PAYLOAD_RESP_OTA_ACTIVATE = 522, + RPC__PAYLOAD_RESP_APP_GET_DESC = 523, + RPC__PAYLOAD_RESP_MEM_MONITOR = 524, + RPC__PAYLOAD_RESP_WIFI_SCAN_PARAMS = 525, + RPC__PAYLOAD_RESP_WIFI_SET_PS = 526, + RPC__PAYLOAD_RESP_WIFI_GET_PS = 527, + RPC__PAYLOAD_RESP_OTA_BEGIN = 528, + RPC__PAYLOAD_RESP_OTA_WRITE = 529, + RPC__PAYLOAD_RESP_OTA_END = 530, + RPC__PAYLOAD_RESP_SET_WIFI_MAX_TX_POWER = 531, + RPC__PAYLOAD_RESP_GET_WIFI_MAX_TX_POWER = 532, + RPC__PAYLOAD_RESP_CONFIG_HEARTBEAT = 533, + RPC__PAYLOAD_RESP_WIFI_INIT = 534, + RPC__PAYLOAD_RESP_WIFI_DEINIT = 535, + RPC__PAYLOAD_RESP_WIFI_START = 536, + RPC__PAYLOAD_RESP_WIFI_STOP = 537, + RPC__PAYLOAD_RESP_WIFI_CONNECT = 538, + RPC__PAYLOAD_RESP_WIFI_DISCONNECT = 539, + RPC__PAYLOAD_RESP_WIFI_SET_CONFIG = 540, + RPC__PAYLOAD_RESP_WIFI_GET_CONFIG = 541, + RPC__PAYLOAD_RESP_WIFI_SCAN_START = 542, + RPC__PAYLOAD_RESP_WIFI_SCAN_STOP = 543, + RPC__PAYLOAD_RESP_WIFI_SCAN_GET_AP_NUM = 544, + RPC__PAYLOAD_RESP_WIFI_SCAN_GET_AP_RECORDS = 545, + RPC__PAYLOAD_RESP_WIFI_CLEAR_AP_LIST = 546, + RPC__PAYLOAD_RESP_WIFI_RESTORE = 547, + RPC__PAYLOAD_RESP_WIFI_CLEAR_FAST_CONNECT = 548, + RPC__PAYLOAD_RESP_WIFI_DEAUTH_STA = 549, + RPC__PAYLOAD_RESP_WIFI_STA_GET_AP_INFO = 550, + RPC__PAYLOAD_RESP_WIFI_SET_PROTOCOL = 553, + RPC__PAYLOAD_RESP_WIFI_GET_PROTOCOL = 554, + RPC__PAYLOAD_RESP_WIFI_SET_BANDWIDTH = 555, + RPC__PAYLOAD_RESP_WIFI_GET_BANDWIDTH = 556, + RPC__PAYLOAD_RESP_WIFI_SET_CHANNEL = 557, + RPC__PAYLOAD_RESP_WIFI_GET_CHANNEL = 558, + RPC__PAYLOAD_RESP_WIFI_SET_COUNTRY = 559, + RPC__PAYLOAD_RESP_WIFI_GET_COUNTRY = 560, + RPC__PAYLOAD_RESP_WIFI_AP_GET_STA_LIST = 567, + RPC__PAYLOAD_RESP_WIFI_AP_GET_STA_AID = 568, + RPC__PAYLOAD_RESP_WIFI_SET_STORAGE = 569, + RPC__PAYLOAD_RESP_WIFI_SET_INACTIVE_TIME = 581, + RPC__PAYLOAD_RESP_WIFI_GET_INACTIVE_TIME = 582, + RPC__PAYLOAD_RESP_WIFI_SET_COUNTRY_CODE = 590, + RPC__PAYLOAD_RESP_WIFI_GET_COUNTRY_CODE = 591, + RPC__PAYLOAD_RESP_WIFI_DISABLE_PMF_CONFIG = 593, + RPC__PAYLOAD_RESP_WIFI_STA_GET_AID = 594, + RPC__PAYLOAD_RESP_WIFI_STA_GET_NEGOTIATED_PHYMODE = 595, + RPC__PAYLOAD_RESP_WIFI_STA_GET_RSSI = 597, + RPC__PAYLOAD_RESP_WIFI_SET_PROTOCOLS = 598, + RPC__PAYLOAD_RESP_WIFI_GET_PROTOCOLS = 599, + RPC__PAYLOAD_RESP_WIFI_SET_BANDWIDTHS = 600, + RPC__PAYLOAD_RESP_WIFI_GET_BANDWIDTHS = 601, + RPC__PAYLOAD_RESP_WIFI_SET_BAND = 602, + RPC__PAYLOAD_RESP_WIFI_GET_BAND = 603, + RPC__PAYLOAD_RESP_WIFI_SET_BANDMODE = 604, + RPC__PAYLOAD_RESP_WIFI_GET_BANDMODE = 605, + RPC__PAYLOAD_RESP_GET_COPROCESSOR_FWVERSION = 606, + RPC__PAYLOAD_RESP_WIFI_SCAN_GET_AP_RECORD = 607, + RPC__PAYLOAD_RESP_SET_DHCP_DNS = 608, + RPC__PAYLOAD_RESP_GET_DHCP_DNS = 609, + RPC__PAYLOAD_RESP_WIFI_STA_TWT_CONFIG = 610, + RPC__PAYLOAD_RESP_WIFI_STA_ITWT_SETUP = 611, + RPC__PAYLOAD_RESP_WIFI_STA_ITWT_TEARDOWN = 612, + RPC__PAYLOAD_RESP_WIFI_STA_ITWT_SUSPEND = 613, + RPC__PAYLOAD_RESP_WIFI_STA_ITWT_GET_FLOW_ID_STATUS = 614, + RPC__PAYLOAD_RESP_WIFI_STA_ITWT_SEND_PROBE_REQ = 615, + RPC__PAYLOAD_RESP_WIFI_STA_ITWT_SET_TARGET_WAKE_TIME_OFFSET = 616, + RPC__PAYLOAD_RESP_WIFI_STA_ENTERPRISE_ENABLE = 617, + RPC__PAYLOAD_RESP_WIFI_STA_ENTERPRISE_DISABLE = 618, + RPC__PAYLOAD_RESP_EAP_SET_IDENTITY = 619, + RPC__PAYLOAD_RESP_EAP_CLEAR_IDENTITY = 620, + RPC__PAYLOAD_RESP_EAP_SET_USERNAME = 621, + RPC__PAYLOAD_RESP_EAP_CLEAR_USERNAME = 622, + RPC__PAYLOAD_RESP_EAP_SET_PASSWORD = 623, + RPC__PAYLOAD_RESP_EAP_CLEAR_PASSWORD = 624, + RPC__PAYLOAD_RESP_EAP_SET_NEW_PASSWORD = 625, + RPC__PAYLOAD_RESP_EAP_CLEAR_NEW_PASSWORD = 626, + RPC__PAYLOAD_RESP_EAP_SET_CA_CERT = 627, + RPC__PAYLOAD_RESP_EAP_CLEAR_CA_CERT = 628, + RPC__PAYLOAD_RESP_EAP_SET_CERTIFICATE_AND_KEY = 629, + RPC__PAYLOAD_RESP_EAP_CLEAR_CERTIFICATE_AND_KEY = 630, + RPC__PAYLOAD_RESP_EAP_GET_DISABLE_TIME_CHECK = 631, + RPC__PAYLOAD_RESP_EAP_SET_TTLS_PHASE2_METHOD = 632, + RPC__PAYLOAD_RESP_EAP_SET_SUITEB_CERTIFICATION = 633, + RPC__PAYLOAD_RESP_EAP_SET_PAC_FILE = 634, + RPC__PAYLOAD_RESP_EAP_SET_FAST_PARAMS = 635, + RPC__PAYLOAD_RESP_EAP_USE_DEFAULT_CERT_BUNDLE = 636, + RPC__PAYLOAD_RESP_WIFI_SET_OKC_SUPPORT = 637, + RPC__PAYLOAD_RESP_EAP_SET_DOMAIN_NAME = 638, + RPC__PAYLOAD_RESP_EAP_SET_DISABLE_TIME_CHECK = 639, + RPC__PAYLOAD_RESP_EAP_SET_EAP_METHODS = 640, + RPC__PAYLOAD_RESP_IFACE_MAC_ADDR_SET_GET = 641, + RPC__PAYLOAD_RESP_IFACE_MAC_ADDR_LEN_GET = 642, + RPC__PAYLOAD_RESP_FEATURE_CONTROL = 643, + RPC__PAYLOAD_RESP_CUSTOM_RPC = 644, + RPC__PAYLOAD_RESP_GPIO_CONFIG = 645, + RPC__PAYLOAD_RESP_GPIO_RESET = 646, + RPC__PAYLOAD_RESP_GPIO_SET_LEVEL = 647, + RPC__PAYLOAD_RESP_GPIO_GET_LEVEL = 648, + RPC__PAYLOAD_RESP_GPIO_SET_DIRECTION = 649, + RPC__PAYLOAD_RESP_GPIO_INPUT_ENABLE = 650, + RPC__PAYLOAD_RESP_GPIO_SET_PULL_MODE = 651, + RPC__PAYLOAD_RESP_EXT_COEX = 652, + RPC__PAYLOAD_EVENT_ESP_INIT = 769, + RPC__PAYLOAD_EVENT_HEARTBEAT = 770, + RPC__PAYLOAD_EVENT_AP_STA_CONNECTED = 771, + RPC__PAYLOAD_EVENT_AP_STA_DISCONNECTED = 772, + RPC__PAYLOAD_EVENT_WIFI_EVENT_NO_ARGS = 773, + RPC__PAYLOAD_EVENT_STA_SCAN_DONE = 774, + RPC__PAYLOAD_EVENT_STA_CONNECTED = 775, + RPC__PAYLOAD_EVENT_STA_DISCONNECTED = 776, + RPC__PAYLOAD_EVENT_DHCP_DNS = 777, + RPC__PAYLOAD_EVENT_STA_ITWT_SETUP = 778, + RPC__PAYLOAD_EVENT_STA_ITWT_TEARDOWN = 779, + RPC__PAYLOAD_EVENT_STA_ITWT_SUSPEND = 780, + RPC__PAYLOAD_EVENT_STA_ITWT_PROBE = 781, + RPC__PAYLOAD_EVENT_SUPP_DPP_URI_READY = 782, + RPC__PAYLOAD_EVENT_SUPP_DPP_CFG_RECVD = 783, + RPC__PAYLOAD_EVENT_SUPP_DPP_FAIL = 784, + RPC__PAYLOAD_EVENT_WIFI_DPP_URI_READY = 785, + RPC__PAYLOAD_EVENT_WIFI_DPP_CFG_RECVD = 786, + RPC__PAYLOAD_EVENT_WIFI_DPP_FAIL = 787, + RPC__PAYLOAD_EVENT_CUSTOM_RPC = 788, + RPC__PAYLOAD_EVENT_MEM_MONITOR = 789 + PROTOBUF_C__FORCE_ENUM_TO_BE_INT_SIZE(RPC__PAYLOAD__CASE) +} Rpc__PayloadCase; + +struct Rpc +{ + ProtobufCMessage base; + /* + * msg_type could be req, resp or Event + */ + RpcType msg_type; + /* + * msg id + */ + RpcId msg_id; + /* + * UID of message + */ + uint32_t uid; + Rpc__PayloadCase payload_case; + union { + /* + ** Requests * + */ + RpcReqGetMacAddress *req_get_mac_address; + RpcReqSetMacAddress *req_set_mac_address; + RpcReqGetMode *req_get_wifi_mode; + RpcReqSetMode *req_set_wifi_mode; + RpcReqSuppDppInit *req_supp_dpp_init; + RpcReqSuppDppDeinit *req_supp_dpp_deinit; + RpcReqSuppDppBootstrapGen *req_supp_dpp_bootstrap_gen; + RpcReqSuppDppStartListen *req_supp_dpp_start_listen; + RpcReqSuppDppStopListen *req_supp_dpp_stop_listen; + RpcReqOTAActivate *req_ota_activate; + RpcReqAppGetDesc *req_app_get_desc; + RpcReqMemMonitor *req_mem_monitor; + RpcReqWifiScanParams *req_wifi_scan_params; + RpcReqSetPs *req_wifi_set_ps; + RpcReqGetPs *req_wifi_get_ps; + RpcReqOTABegin *req_ota_begin; + RpcReqOTAWrite *req_ota_write; + RpcReqOTAEnd *req_ota_end; + RpcReqWifiSetMaxTxPower *req_set_wifi_max_tx_power; + RpcReqWifiGetMaxTxPower *req_get_wifi_max_tx_power; + RpcReqConfigHeartbeat *req_config_heartbeat; + RpcReqWifiInit *req_wifi_init; + RpcReqWifiDeinit *req_wifi_deinit; + RpcReqWifiStart *req_wifi_start; + RpcReqWifiStop *req_wifi_stop; + RpcReqWifiConnect *req_wifi_connect; + RpcReqWifiDisconnect *req_wifi_disconnect; + RpcReqWifiSetConfig *req_wifi_set_config; + RpcReqWifiGetConfig *req_wifi_get_config; + RpcReqWifiScanStart *req_wifi_scan_start; + RpcReqWifiScanStop *req_wifi_scan_stop; + RpcReqWifiScanGetApNum *req_wifi_scan_get_ap_num; + RpcReqWifiScanGetApRecords *req_wifi_scan_get_ap_records; + RpcReqWifiClearApList *req_wifi_clear_ap_list; + RpcReqWifiRestore *req_wifi_restore; + RpcReqWifiClearFastConnect *req_wifi_clear_fast_connect; + RpcReqWifiDeauthSta *req_wifi_deauth_sta; + RpcReqWifiStaGetApInfo *req_wifi_sta_get_ap_info; + RpcReqWifiSetProtocol *req_wifi_set_protocol; + RpcReqWifiGetProtocol *req_wifi_get_protocol; + RpcReqWifiSetBandwidth *req_wifi_set_bandwidth; + RpcReqWifiGetBandwidth *req_wifi_get_bandwidth; + RpcReqWifiSetChannel *req_wifi_set_channel; + RpcReqWifiGetChannel *req_wifi_get_channel; + RpcReqWifiSetCountry *req_wifi_set_country; + RpcReqWifiGetCountry *req_wifi_get_country; + RpcReqWifiApGetStaList *req_wifi_ap_get_sta_list; + RpcReqWifiApGetStaAid *req_wifi_ap_get_sta_aid; + RpcReqWifiSetStorage *req_wifi_set_storage; + RpcReqWifiSetInactiveTime *req_wifi_set_inactive_time; + RpcReqWifiGetInactiveTime *req_wifi_get_inactive_time; + RpcReqWifiSetCountryCode *req_wifi_set_country_code; + RpcReqWifiGetCountryCode *req_wifi_get_country_code; + RpcReqWifiDisablePmfConfig *req_wifi_disable_pmf_config; + RpcReqWifiStaGetAid *req_wifi_sta_get_aid; + RpcReqWifiStaGetNegotiatedPhymode *req_wifi_sta_get_negotiated_phymode; + RpcReqWifiStaGetRssi *req_wifi_sta_get_rssi; + RpcReqWifiSetProtocols *req_wifi_set_protocols; + RpcReqWifiGetProtocols *req_wifi_get_protocols; + RpcReqWifiSetBandwidths *req_wifi_set_bandwidths; + RpcReqWifiGetBandwidths *req_wifi_get_bandwidths; + RpcReqWifiSetBand *req_wifi_set_band; + RpcReqWifiGetBand *req_wifi_get_band; + RpcReqWifiSetBandMode *req_wifi_set_bandmode; + RpcReqWifiGetBandMode *req_wifi_get_bandmode; + RpcReqGetCoprocessorFwVersion *req_get_coprocessor_fwversion; + RpcReqWifiScanGetApRecord *req_wifi_scan_get_ap_record; + RpcReqSetDhcpDnsStatus *req_set_dhcp_dns; + RpcReqGetDhcpDnsStatus *req_get_dhcp_dns; + RpcReqWifiStaTwtConfig *req_wifi_sta_twt_config; + RpcReqWifiStaItwtSetup *req_wifi_sta_itwt_setup; + RpcReqWifiStaItwtTeardown *req_wifi_sta_itwt_teardown; + RpcReqWifiStaItwtSuspend *req_wifi_sta_itwt_suspend; + RpcReqWifiStaItwtGetFlowIdStatus *req_wifi_sta_itwt_get_flow_id_status; + RpcReqWifiStaItwtSendProbeReq *req_wifi_sta_itwt_send_probe_req; + RpcReqWifiStaItwtSetTargetWakeTimeOffset *req_wifi_sta_itwt_set_target_wake_time_offset; + RpcReqWifiStaEnterpriseEnable *req_wifi_sta_enterprise_enable; + RpcReqWifiStaEnterpriseDisable *req_wifi_sta_enterprise_disable; + RpcReqEapSetIdentity *req_eap_set_identity; + RpcReqEapClearIdentity *req_eap_clear_identity; + RpcReqEapSetUsername *req_eap_set_username; + RpcReqEapClearUsername *req_eap_clear_username; + RpcReqEapSetPassword *req_eap_set_password; + RpcReqEapClearPassword *req_eap_clear_password; + RpcReqEapSetNewPassword *req_eap_set_new_password; + RpcReqEapClearNewPassword *req_eap_clear_new_password; + RpcReqEapSetCaCert *req_eap_set_ca_cert; + RpcReqEapClearCaCert *req_eap_clear_ca_cert; + RpcReqEapSetCertificateAndKey *req_eap_set_certificate_and_key; + RpcReqEapClearCertificateAndKey *req_eap_clear_certificate_and_key; + RpcReqEapGetDisableTimeCheck *req_eap_get_disable_time_check; + RpcReqEapSetTtlsPhase2Method *req_eap_set_ttls_phase2_method; + RpcReqEapSetSuiteb192bitCertification *req_eap_set_suiteb_certification; + RpcReqEapSetPacFile *req_eap_set_pac_file; + RpcReqEapSetFastParams *req_eap_set_fast_params; + RpcReqEapUseDefaultCertBundle *req_eap_use_default_cert_bundle; + RpcReqWifiSetOkcSupport *req_wifi_set_okc_support; + RpcReqEapSetDomainName *req_eap_set_domain_name; + RpcReqEapSetDisableTimeCheck *req_eap_set_disable_time_check; + RpcReqEapSetEapMethods *req_eap_set_eap_methods; + RpcReqIfaceMacAddrSetGet *req_iface_mac_addr_set_get; + RpcReqIfaceMacAddrLenGet *req_iface_mac_addr_len_get; + RpcReqFeatureControl *req_feature_control; + RpcReqCustomRpc *req_custom_rpc; + RpcReqGpioConfig *req_gpio_config; + RpcReqGpioResetPin *req_gpio_reset_pin; + RpcReqGpioSetLevel *req_gpio_set_level; + RpcReqGpioGetLevel *req_gpio_get_level; + RpcReqGpioSetDirection *req_gpio_set_direction; + RpcReqGpioInputEnable *req_gpio_input_enable; + RpcReqGpioSetPullMode *req_gpio_set_pull_mode; + RpcReqExtCoex *req_ext_coex; + /* + ** Responses * + */ + RpcRespGetMacAddress *resp_get_mac_address; + RpcRespSetMacAddress *resp_set_mac_address; + RpcRespGetMode *resp_get_wifi_mode; + RpcRespSetMode *resp_set_wifi_mode; + RpcRespSuppDppInit *resp_supp_dpp_init; + RpcRespSuppDppDeinit *resp_supp_dpp_deinit; + RpcRespSuppDppBootstrapGen *resp_supp_dpp_bootstrap_gen; + RpcRespSuppDppStartListen *resp_supp_dpp_start_listen; + RpcRespSuppDppStopListen *resp_supp_dpp_stop_listen; + RpcRespOTAActivate *resp_ota_activate; + RpcRespAppGetDesc *resp_app_get_desc; + RpcRespMemMonitor *resp_mem_monitor; + RpcRespWifiScanParams *resp_wifi_scan_params; + RpcRespSetPs *resp_wifi_set_ps; + RpcRespGetPs *resp_wifi_get_ps; + RpcRespOTABegin *resp_ota_begin; + RpcRespOTAWrite *resp_ota_write; + RpcRespOTAEnd *resp_ota_end; + RpcRespWifiSetMaxTxPower *resp_set_wifi_max_tx_power; + RpcRespWifiGetMaxTxPower *resp_get_wifi_max_tx_power; + RpcRespConfigHeartbeat *resp_config_heartbeat; + RpcRespWifiInit *resp_wifi_init; + RpcRespWifiDeinit *resp_wifi_deinit; + RpcRespWifiStart *resp_wifi_start; + RpcRespWifiStop *resp_wifi_stop; + RpcRespWifiConnect *resp_wifi_connect; + RpcRespWifiDisconnect *resp_wifi_disconnect; + RpcRespWifiSetConfig *resp_wifi_set_config; + RpcRespWifiGetConfig *resp_wifi_get_config; + RpcRespWifiScanStart *resp_wifi_scan_start; + RpcRespWifiScanStop *resp_wifi_scan_stop; + RpcRespWifiScanGetApNum *resp_wifi_scan_get_ap_num; + RpcRespWifiScanGetApRecords *resp_wifi_scan_get_ap_records; + RpcRespWifiClearApList *resp_wifi_clear_ap_list; + RpcRespWifiRestore *resp_wifi_restore; + RpcRespWifiClearFastConnect *resp_wifi_clear_fast_connect; + RpcRespWifiDeauthSta *resp_wifi_deauth_sta; + RpcRespWifiStaGetApInfo *resp_wifi_sta_get_ap_info; + RpcRespWifiSetProtocol *resp_wifi_set_protocol; + RpcRespWifiGetProtocol *resp_wifi_get_protocol; + RpcRespWifiSetBandwidth *resp_wifi_set_bandwidth; + RpcRespWifiGetBandwidth *resp_wifi_get_bandwidth; + RpcRespWifiSetChannel *resp_wifi_set_channel; + RpcRespWifiGetChannel *resp_wifi_get_channel; + RpcRespWifiSetCountry *resp_wifi_set_country; + RpcRespWifiGetCountry *resp_wifi_get_country; + RpcRespWifiApGetStaList *resp_wifi_ap_get_sta_list; + RpcRespWifiApGetStaAid *resp_wifi_ap_get_sta_aid; + RpcRespWifiSetStorage *resp_wifi_set_storage; + RpcRespWifiSetInactiveTime *resp_wifi_set_inactive_time; + RpcRespWifiGetInactiveTime *resp_wifi_get_inactive_time; + RpcRespWifiSetCountryCode *resp_wifi_set_country_code; + RpcRespWifiGetCountryCode *resp_wifi_get_country_code; + RpcRespWifiDisablePmfConfig *resp_wifi_disable_pmf_config; + RpcRespWifiStaGetAid *resp_wifi_sta_get_aid; + RpcRespWifiStaGetNegotiatedPhymode *resp_wifi_sta_get_negotiated_phymode; + RpcRespWifiStaGetRssi *resp_wifi_sta_get_rssi; + RpcRespWifiSetProtocols *resp_wifi_set_protocols; + RpcRespWifiGetProtocols *resp_wifi_get_protocols; + RpcRespWifiSetBandwidths *resp_wifi_set_bandwidths; + RpcRespWifiGetBandwidths *resp_wifi_get_bandwidths; + RpcRespWifiSetBand *resp_wifi_set_band; + RpcRespWifiGetBand *resp_wifi_get_band; + RpcRespWifiSetBandMode *resp_wifi_set_bandmode; + RpcRespWifiGetBandMode *resp_wifi_get_bandmode; + RpcRespGetCoprocessorFwVersion *resp_get_coprocessor_fwversion; + RpcRespWifiScanGetApRecord *resp_wifi_scan_get_ap_record; + RpcRespSetDhcpDnsStatus *resp_set_dhcp_dns; + RpcRespGetDhcpDnsStatus *resp_get_dhcp_dns; + RpcRespWifiStaTwtConfig *resp_wifi_sta_twt_config; + RpcRespWifiStaItwtSetup *resp_wifi_sta_itwt_setup; + RpcRespWifiStaItwtTeardown *resp_wifi_sta_itwt_teardown; + RpcRespWifiStaItwtSuspend *resp_wifi_sta_itwt_suspend; + RpcRespWifiStaItwtGetFlowIdStatus *resp_wifi_sta_itwt_get_flow_id_status; + RpcRespWifiStaItwtSendProbeReq *resp_wifi_sta_itwt_send_probe_req; + RpcRespWifiStaItwtSetTargetWakeTimeOffset *resp_wifi_sta_itwt_set_target_wake_time_offset; + RpcRespWifiStaEnterpriseEnable *resp_wifi_sta_enterprise_enable; + RpcRespWifiStaEnterpriseDisable *resp_wifi_sta_enterprise_disable; + RpcRespEapSetIdentity *resp_eap_set_identity; + RpcRespEapClearIdentity *resp_eap_clear_identity; + RpcRespEapSetUsername *resp_eap_set_username; + RpcRespEapClearUsername *resp_eap_clear_username; + RpcRespEapSetPassword *resp_eap_set_password; + RpcRespEapClearPassword *resp_eap_clear_password; + RpcRespEapSetNewPassword *resp_eap_set_new_password; + RpcRespEapClearNewPassword *resp_eap_clear_new_password; + RpcRespEapSetCaCert *resp_eap_set_ca_cert; + RpcRespEapClearCaCert *resp_eap_clear_ca_cert; + RpcRespEapSetCertificateAndKey *resp_eap_set_certificate_and_key; + RpcRespEapClearCertificateAndKey *resp_eap_clear_certificate_and_key; + RpcRespEapGetDisableTimeCheck *resp_eap_get_disable_time_check; + RpcRespEapSetTtlsPhase2Method *resp_eap_set_ttls_phase2_method; + RpcRespEapSetSuiteb192bitCertification *resp_eap_set_suiteb_certification; + RpcRespEapSetPacFile *resp_eap_set_pac_file; + RpcRespEapSetFastParams *resp_eap_set_fast_params; + RpcRespEapUseDefaultCertBundle *resp_eap_use_default_cert_bundle; + RpcRespWifiSetOkcSupport *resp_wifi_set_okc_support; + RpcRespEapSetDomainName *resp_eap_set_domain_name; + RpcRespEapSetDisableTimeCheck *resp_eap_set_disable_time_check; + RpcRespEapSetEapMethods *resp_eap_set_eap_methods; + RpcRespIfaceMacAddrSetGet *resp_iface_mac_addr_set_get; + RpcRespIfaceMacAddrLenGet *resp_iface_mac_addr_len_get; + RpcRespFeatureControl *resp_feature_control; + RpcRespCustomRpc *resp_custom_rpc; + RpcRespGpioConfig *resp_gpio_config; + RpcRespGpioResetPin *resp_gpio_reset; + RpcRespGpioSetLevel *resp_gpio_set_level; + RpcRespGpioGetLevel *resp_gpio_get_level; + RpcRespGpioSetDirection *resp_gpio_set_direction; + RpcRespGpioInputEnable *resp_gpio_input_enable; + RpcRespGpioSetPullMode *resp_gpio_set_pull_mode; + RpcRespExtCoex *resp_ext_coex; + /* + ** Notifications * + */ + RpcEventESPInit *event_esp_init; + RpcEventHeartbeat *event_heartbeat; + RpcEventAPStaConnected *event_ap_sta_connected; + RpcEventAPStaDisconnected *event_ap_sta_disconnected; + RpcEventWifiEventNoArgs *event_wifi_event_no_args; + RpcEventStaScanDone *event_sta_scan_done; + RpcEventStaConnected *event_sta_connected; + RpcEventStaDisconnected *event_sta_disconnected; + RpcEventDhcpDnsStatus *event_dhcp_dns; + RpcEventStaItwtSetup *event_sta_itwt_setup; + RpcEventStaItwtTeardown *event_sta_itwt_teardown; + RpcEventStaItwtSuspend *event_sta_itwt_suspend; + RpcEventStaItwtProbe *event_sta_itwt_probe; + RpcEventSuppDppUriReady *event_supp_dpp_uri_ready; + RpcEventSuppDppCfgRecvd *event_supp_dpp_cfg_recvd; + RpcEventSuppDppFail *event_supp_dpp_fail; + RpcEventWifiDppUriReady *event_wifi_dpp_uri_ready; + RpcEventWifiDppCfgRecvd *event_wifi_dpp_cfg_recvd; + RpcEventWifiDppFail *event_wifi_dpp_fail; + RpcEventCustomRpc *event_custom_rpc; + RpcEventMemMonitor *event_mem_monitor; + }; +}; +#define RPC__INIT \ + { PROTOBUF_C_MESSAGE_INIT (&rpc__descriptor) \ + , RPC_TYPE__MsgType_Invalid, RPC_ID__MsgId_Invalid, 0, RPC__PAYLOAD__NOT_SET, {0} } + + +/* WifiInitConfig methods */ +void wifi_init_config__init + (WifiInitConfig *message); +size_t wifi_init_config__get_packed_size + (const WifiInitConfig *message); +size_t wifi_init_config__pack + (const WifiInitConfig *message, + uint8_t *out); +size_t wifi_init_config__pack_to_buffer + (const WifiInitConfig *message, + ProtobufCBuffer *buffer); +WifiInitConfig * + wifi_init_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_init_config__free_unpacked + (WifiInitConfig *message, + ProtobufCAllocator *allocator); +/* WifiCountry methods */ +void wifi_country__init + (WifiCountry *message); +size_t wifi_country__get_packed_size + (const WifiCountry *message); +size_t wifi_country__pack + (const WifiCountry *message, + uint8_t *out); +size_t wifi_country__pack_to_buffer + (const WifiCountry *message, + ProtobufCBuffer *buffer); +WifiCountry * + wifi_country__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_country__free_unpacked + (WifiCountry *message, + ProtobufCAllocator *allocator); +/* WifiActiveScanTime methods */ +void wifi_active_scan_time__init + (WifiActiveScanTime *message); +size_t wifi_active_scan_time__get_packed_size + (const WifiActiveScanTime *message); +size_t wifi_active_scan_time__pack + (const WifiActiveScanTime *message, + uint8_t *out); +size_t wifi_active_scan_time__pack_to_buffer + (const WifiActiveScanTime *message, + ProtobufCBuffer *buffer); +WifiActiveScanTime * + wifi_active_scan_time__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_active_scan_time__free_unpacked + (WifiActiveScanTime *message, + ProtobufCAllocator *allocator); +/* WifiScanTime methods */ +void wifi_scan_time__init + (WifiScanTime *message); +size_t wifi_scan_time__get_packed_size + (const WifiScanTime *message); +size_t wifi_scan_time__pack + (const WifiScanTime *message, + uint8_t *out); +size_t wifi_scan_time__pack_to_buffer + (const WifiScanTime *message, + ProtobufCBuffer *buffer); +WifiScanTime * + wifi_scan_time__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_scan_time__free_unpacked + (WifiScanTime *message, + ProtobufCAllocator *allocator); +/* WifiScanChannelBitmap methods */ +void wifi_scan_channel_bitmap__init + (WifiScanChannelBitmap *message); +size_t wifi_scan_channel_bitmap__get_packed_size + (const WifiScanChannelBitmap *message); +size_t wifi_scan_channel_bitmap__pack + (const WifiScanChannelBitmap *message, + uint8_t *out); +size_t wifi_scan_channel_bitmap__pack_to_buffer + (const WifiScanChannelBitmap *message, + ProtobufCBuffer *buffer); +WifiScanChannelBitmap * + wifi_scan_channel_bitmap__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_scan_channel_bitmap__free_unpacked + (WifiScanChannelBitmap *message, + ProtobufCAllocator *allocator); +/* WifiScanConfig methods */ +void wifi_scan_config__init + (WifiScanConfig *message); +size_t wifi_scan_config__get_packed_size + (const WifiScanConfig *message); +size_t wifi_scan_config__pack + (const WifiScanConfig *message, + uint8_t *out); +size_t wifi_scan_config__pack_to_buffer + (const WifiScanConfig *message, + ProtobufCBuffer *buffer); +WifiScanConfig * + wifi_scan_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_scan_config__free_unpacked + (WifiScanConfig *message, + ProtobufCAllocator *allocator); +/* WifiScanDefaultParams methods */ +void wifi_scan_default_params__init + (WifiScanDefaultParams *message); +size_t wifi_scan_default_params__get_packed_size + (const WifiScanDefaultParams *message); +size_t wifi_scan_default_params__pack + (const WifiScanDefaultParams *message, + uint8_t *out); +size_t wifi_scan_default_params__pack_to_buffer + (const WifiScanDefaultParams *message, + ProtobufCBuffer *buffer); +WifiScanDefaultParams * + wifi_scan_default_params__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_scan_default_params__free_unpacked + (WifiScanDefaultParams *message, + ProtobufCAllocator *allocator); +/* WifiHeApInfo methods */ +void wifi_he_ap_info__init + (WifiHeApInfo *message); +size_t wifi_he_ap_info__get_packed_size + (const WifiHeApInfo *message); +size_t wifi_he_ap_info__pack + (const WifiHeApInfo *message, + uint8_t *out); +size_t wifi_he_ap_info__pack_to_buffer + (const WifiHeApInfo *message, + ProtobufCBuffer *buffer); +WifiHeApInfo * + wifi_he_ap_info__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_he_ap_info__free_unpacked + (WifiHeApInfo *message, + ProtobufCAllocator *allocator); +/* WifiApRecord methods */ +void wifi_ap_record__init + (WifiApRecord *message); +size_t wifi_ap_record__get_packed_size + (const WifiApRecord *message); +size_t wifi_ap_record__pack + (const WifiApRecord *message, + uint8_t *out); +size_t wifi_ap_record__pack_to_buffer + (const WifiApRecord *message, + ProtobufCBuffer *buffer); +WifiApRecord * + wifi_ap_record__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_ap_record__free_unpacked + (WifiApRecord *message, + ProtobufCAllocator *allocator); +/* WifiScanThreshold methods */ +void wifi_scan_threshold__init + (WifiScanThreshold *message); +size_t wifi_scan_threshold__get_packed_size + (const WifiScanThreshold *message); +size_t wifi_scan_threshold__pack + (const WifiScanThreshold *message, + uint8_t *out); +size_t wifi_scan_threshold__pack_to_buffer + (const WifiScanThreshold *message, + ProtobufCBuffer *buffer); +WifiScanThreshold * + wifi_scan_threshold__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_scan_threshold__free_unpacked + (WifiScanThreshold *message, + ProtobufCAllocator *allocator); +/* WifiPmfConfig methods */ +void wifi_pmf_config__init + (WifiPmfConfig *message); +size_t wifi_pmf_config__get_packed_size + (const WifiPmfConfig *message); +size_t wifi_pmf_config__pack + (const WifiPmfConfig *message, + uint8_t *out); +size_t wifi_pmf_config__pack_to_buffer + (const WifiPmfConfig *message, + ProtobufCBuffer *buffer); +WifiPmfConfig * + wifi_pmf_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_pmf_config__free_unpacked + (WifiPmfConfig *message, + ProtobufCAllocator *allocator); +/* WifiBssMaxIdleConfig methods */ +void wifi_bss_max_idle_config__init + (WifiBssMaxIdleConfig *message); +size_t wifi_bss_max_idle_config__get_packed_size + (const WifiBssMaxIdleConfig *message); +size_t wifi_bss_max_idle_config__pack + (const WifiBssMaxIdleConfig *message, + uint8_t *out); +size_t wifi_bss_max_idle_config__pack_to_buffer + (const WifiBssMaxIdleConfig *message, + ProtobufCBuffer *buffer); +WifiBssMaxIdleConfig * + wifi_bss_max_idle_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_bss_max_idle_config__free_unpacked + (WifiBssMaxIdleConfig *message, + ProtobufCAllocator *allocator); +/* WifiApConfig methods */ +void wifi_ap_config__init + (WifiApConfig *message); +size_t wifi_ap_config__get_packed_size + (const WifiApConfig *message); +size_t wifi_ap_config__pack + (const WifiApConfig *message, + uint8_t *out); +size_t wifi_ap_config__pack_to_buffer + (const WifiApConfig *message, + ProtobufCBuffer *buffer); +WifiApConfig * + wifi_ap_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_ap_config__free_unpacked + (WifiApConfig *message, + ProtobufCAllocator *allocator); +/* WifiStaConfig methods */ +void wifi_sta_config__init + (WifiStaConfig *message); +size_t wifi_sta_config__get_packed_size + (const WifiStaConfig *message); +size_t wifi_sta_config__pack + (const WifiStaConfig *message, + uint8_t *out); +size_t wifi_sta_config__pack_to_buffer + (const WifiStaConfig *message, + ProtobufCBuffer *buffer); +WifiStaConfig * + wifi_sta_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_sta_config__free_unpacked + (WifiStaConfig *message, + ProtobufCAllocator *allocator); +/* WifiConfig methods */ +void wifi_config__init + (WifiConfig *message); +size_t wifi_config__get_packed_size + (const WifiConfig *message); +size_t wifi_config__pack + (const WifiConfig *message, + uint8_t *out); +size_t wifi_config__pack_to_buffer + (const WifiConfig *message, + ProtobufCBuffer *buffer); +WifiConfig * + wifi_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_config__free_unpacked + (WifiConfig *message, + ProtobufCAllocator *allocator); +/* WifiStaInfo methods */ +void wifi_sta_info__init + (WifiStaInfo *message); +size_t wifi_sta_info__get_packed_size + (const WifiStaInfo *message); +size_t wifi_sta_info__pack + (const WifiStaInfo *message, + uint8_t *out); +size_t wifi_sta_info__pack_to_buffer + (const WifiStaInfo *message, + ProtobufCBuffer *buffer); +WifiStaInfo * + wifi_sta_info__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_sta_info__free_unpacked + (WifiStaInfo *message, + ProtobufCAllocator *allocator); +/* WifiStaList methods */ +void wifi_sta_list__init + (WifiStaList *message); +size_t wifi_sta_list__get_packed_size + (const WifiStaList *message); +size_t wifi_sta_list__pack + (const WifiStaList *message, + uint8_t *out); +size_t wifi_sta_list__pack_to_buffer + (const WifiStaList *message, + ProtobufCBuffer *buffer); +WifiStaList * + wifi_sta_list__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_sta_list__free_unpacked + (WifiStaList *message, + ProtobufCAllocator *allocator); +/* WifiPktRxCtrl methods */ +void wifi_pkt_rx_ctrl__init + (WifiPktRxCtrl *message); +size_t wifi_pkt_rx_ctrl__get_packed_size + (const WifiPktRxCtrl *message); +size_t wifi_pkt_rx_ctrl__pack + (const WifiPktRxCtrl *message, + uint8_t *out); +size_t wifi_pkt_rx_ctrl__pack_to_buffer + (const WifiPktRxCtrl *message, + ProtobufCBuffer *buffer); +WifiPktRxCtrl * + wifi_pkt_rx_ctrl__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_pkt_rx_ctrl__free_unpacked + (WifiPktRxCtrl *message, + ProtobufCAllocator *allocator); +/* WifiPromiscuousPkt methods */ +void wifi_promiscuous_pkt__init + (WifiPromiscuousPkt *message); +size_t wifi_promiscuous_pkt__get_packed_size + (const WifiPromiscuousPkt *message); +size_t wifi_promiscuous_pkt__pack + (const WifiPromiscuousPkt *message, + uint8_t *out); +size_t wifi_promiscuous_pkt__pack_to_buffer + (const WifiPromiscuousPkt *message, + ProtobufCBuffer *buffer); +WifiPromiscuousPkt * + wifi_promiscuous_pkt__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_promiscuous_pkt__free_unpacked + (WifiPromiscuousPkt *message, + ProtobufCAllocator *allocator); +/* WifiPromiscuousFilter methods */ +void wifi_promiscuous_filter__init + (WifiPromiscuousFilter *message); +size_t wifi_promiscuous_filter__get_packed_size + (const WifiPromiscuousFilter *message); +size_t wifi_promiscuous_filter__pack + (const WifiPromiscuousFilter *message, + uint8_t *out); +size_t wifi_promiscuous_filter__pack_to_buffer + (const WifiPromiscuousFilter *message, + ProtobufCBuffer *buffer); +WifiPromiscuousFilter * + wifi_promiscuous_filter__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_promiscuous_filter__free_unpacked + (WifiPromiscuousFilter *message, + ProtobufCAllocator *allocator); +/* WifiCsiConfig methods */ +void wifi_csi_config__init + (WifiCsiConfig *message); +size_t wifi_csi_config__get_packed_size + (const WifiCsiConfig *message); +size_t wifi_csi_config__pack + (const WifiCsiConfig *message, + uint8_t *out); +size_t wifi_csi_config__pack_to_buffer + (const WifiCsiConfig *message, + ProtobufCBuffer *buffer); +WifiCsiConfig * + wifi_csi_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_csi_config__free_unpacked + (WifiCsiConfig *message, + ProtobufCAllocator *allocator); +/* WifiCsiInfo methods */ +void wifi_csi_info__init + (WifiCsiInfo *message); +size_t wifi_csi_info__get_packed_size + (const WifiCsiInfo *message); +size_t wifi_csi_info__pack + (const WifiCsiInfo *message, + uint8_t *out); +size_t wifi_csi_info__pack_to_buffer + (const WifiCsiInfo *message, + ProtobufCBuffer *buffer); +WifiCsiInfo * + wifi_csi_info__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_csi_info__free_unpacked + (WifiCsiInfo *message, + ProtobufCAllocator *allocator); +/* WifiAntGpio methods */ +void wifi_ant_gpio__init + (WifiAntGpio *message); +size_t wifi_ant_gpio__get_packed_size + (const WifiAntGpio *message); +size_t wifi_ant_gpio__pack + (const WifiAntGpio *message, + uint8_t *out); +size_t wifi_ant_gpio__pack_to_buffer + (const WifiAntGpio *message, + ProtobufCBuffer *buffer); +WifiAntGpio * + wifi_ant_gpio__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_ant_gpio__free_unpacked + (WifiAntGpio *message, + ProtobufCAllocator *allocator); +/* WifiAntGpioConfig methods */ +void wifi_ant_gpio_config__init + (WifiAntGpioConfig *message); +size_t wifi_ant_gpio_config__get_packed_size + (const WifiAntGpioConfig *message); +size_t wifi_ant_gpio_config__pack + (const WifiAntGpioConfig *message, + uint8_t *out); +size_t wifi_ant_gpio_config__pack_to_buffer + (const WifiAntGpioConfig *message, + ProtobufCBuffer *buffer); +WifiAntGpioConfig * + wifi_ant_gpio_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_ant_gpio_config__free_unpacked + (WifiAntGpioConfig *message, + ProtobufCAllocator *allocator); +/* WifiAntConfig methods */ +void wifi_ant_config__init + (WifiAntConfig *message); +size_t wifi_ant_config__get_packed_size + (const WifiAntConfig *message); +size_t wifi_ant_config__pack + (const WifiAntConfig *message, + uint8_t *out); +size_t wifi_ant_config__pack_to_buffer + (const WifiAntConfig *message, + ProtobufCBuffer *buffer); +WifiAntConfig * + wifi_ant_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_ant_config__free_unpacked + (WifiAntConfig *message, + ProtobufCAllocator *allocator); +/* WifiActionTxReq methods */ +void wifi_action_tx_req__init + (WifiActionTxReq *message); +size_t wifi_action_tx_req__get_packed_size + (const WifiActionTxReq *message); +size_t wifi_action_tx_req__pack + (const WifiActionTxReq *message, + uint8_t *out); +size_t wifi_action_tx_req__pack_to_buffer + (const WifiActionTxReq *message, + ProtobufCBuffer *buffer); +WifiActionTxReq * + wifi_action_tx_req__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_action_tx_req__free_unpacked + (WifiActionTxReq *message, + ProtobufCAllocator *allocator); +/* WifiFtmInitiatorCfg methods */ +void wifi_ftm_initiator_cfg__init + (WifiFtmInitiatorCfg *message); +size_t wifi_ftm_initiator_cfg__get_packed_size + (const WifiFtmInitiatorCfg *message); +size_t wifi_ftm_initiator_cfg__pack + (const WifiFtmInitiatorCfg *message, + uint8_t *out); +size_t wifi_ftm_initiator_cfg__pack_to_buffer + (const WifiFtmInitiatorCfg *message, + ProtobufCBuffer *buffer); +WifiFtmInitiatorCfg * + wifi_ftm_initiator_cfg__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_ftm_initiator_cfg__free_unpacked + (WifiFtmInitiatorCfg *message, + ProtobufCAllocator *allocator); +/* WifiEventStaScanDone methods */ +void wifi_event_sta_scan_done__init + (WifiEventStaScanDone *message); +size_t wifi_event_sta_scan_done__get_packed_size + (const WifiEventStaScanDone *message); +size_t wifi_event_sta_scan_done__pack + (const WifiEventStaScanDone *message, + uint8_t *out); +size_t wifi_event_sta_scan_done__pack_to_buffer + (const WifiEventStaScanDone *message, + ProtobufCBuffer *buffer); +WifiEventStaScanDone * + wifi_event_sta_scan_done__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_event_sta_scan_done__free_unpacked + (WifiEventStaScanDone *message, + ProtobufCAllocator *allocator); +/* WifiEventStaConnected methods */ +void wifi_event_sta_connected__init + (WifiEventStaConnected *message); +size_t wifi_event_sta_connected__get_packed_size + (const WifiEventStaConnected *message); +size_t wifi_event_sta_connected__pack + (const WifiEventStaConnected *message, + uint8_t *out); +size_t wifi_event_sta_connected__pack_to_buffer + (const WifiEventStaConnected *message, + ProtobufCBuffer *buffer); +WifiEventStaConnected * + wifi_event_sta_connected__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_event_sta_connected__free_unpacked + (WifiEventStaConnected *message, + ProtobufCAllocator *allocator); +/* WifiEventStaDisconnected methods */ +void wifi_event_sta_disconnected__init + (WifiEventStaDisconnected *message); +size_t wifi_event_sta_disconnected__get_packed_size + (const WifiEventStaDisconnected *message); +size_t wifi_event_sta_disconnected__pack + (const WifiEventStaDisconnected *message, + uint8_t *out); +size_t wifi_event_sta_disconnected__pack_to_buffer + (const WifiEventStaDisconnected *message, + ProtobufCBuffer *buffer); +WifiEventStaDisconnected * + wifi_event_sta_disconnected__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_event_sta_disconnected__free_unpacked + (WifiEventStaDisconnected *message, + ProtobufCAllocator *allocator); +/* WifiEventStaAuthmodeChange methods */ +void wifi_event_sta_authmode_change__init + (WifiEventStaAuthmodeChange *message); +size_t wifi_event_sta_authmode_change__get_packed_size + (const WifiEventStaAuthmodeChange *message); +size_t wifi_event_sta_authmode_change__pack + (const WifiEventStaAuthmodeChange *message, + uint8_t *out); +size_t wifi_event_sta_authmode_change__pack_to_buffer + (const WifiEventStaAuthmodeChange *message, + ProtobufCBuffer *buffer); +WifiEventStaAuthmodeChange * + wifi_event_sta_authmode_change__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_event_sta_authmode_change__free_unpacked + (WifiEventStaAuthmodeChange *message, + ProtobufCAllocator *allocator); +/* WifiEventStaWpsErPin methods */ +void wifi_event_sta_wps_er_pin__init + (WifiEventStaWpsErPin *message); +size_t wifi_event_sta_wps_er_pin__get_packed_size + (const WifiEventStaWpsErPin *message); +size_t wifi_event_sta_wps_er_pin__pack + (const WifiEventStaWpsErPin *message, + uint8_t *out); +size_t wifi_event_sta_wps_er_pin__pack_to_buffer + (const WifiEventStaWpsErPin *message, + ProtobufCBuffer *buffer); +WifiEventStaWpsErPin * + wifi_event_sta_wps_er_pin__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_event_sta_wps_er_pin__free_unpacked + (WifiEventStaWpsErPin *message, + ProtobufCAllocator *allocator); +/* ApCred methods */ +void ap_cred__init + (ApCred *message); +size_t ap_cred__get_packed_size + (const ApCred *message); +size_t ap_cred__pack + (const ApCred *message, + uint8_t *out); +size_t ap_cred__pack_to_buffer + (const ApCred *message, + ProtobufCBuffer *buffer); +ApCred * + ap_cred__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void ap_cred__free_unpacked + (ApCred *message, + ProtobufCAllocator *allocator); +/* WifiEventStaWpsErSuccess methods */ +void wifi_event_sta_wps_er_success__init + (WifiEventStaWpsErSuccess *message); +size_t wifi_event_sta_wps_er_success__get_packed_size + (const WifiEventStaWpsErSuccess *message); +size_t wifi_event_sta_wps_er_success__pack + (const WifiEventStaWpsErSuccess *message, + uint8_t *out); +size_t wifi_event_sta_wps_er_success__pack_to_buffer + (const WifiEventStaWpsErSuccess *message, + ProtobufCBuffer *buffer); +WifiEventStaWpsErSuccess * + wifi_event_sta_wps_er_success__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_event_sta_wps_er_success__free_unpacked + (WifiEventStaWpsErSuccess *message, + ProtobufCAllocator *allocator); +/* WifiEventApProbeReqRx methods */ +void wifi_event_ap_probe_req_rx__init + (WifiEventApProbeReqRx *message); +size_t wifi_event_ap_probe_req_rx__get_packed_size + (const WifiEventApProbeReqRx *message); +size_t wifi_event_ap_probe_req_rx__pack + (const WifiEventApProbeReqRx *message, + uint8_t *out); +size_t wifi_event_ap_probe_req_rx__pack_to_buffer + (const WifiEventApProbeReqRx *message, + ProtobufCBuffer *buffer); +WifiEventApProbeReqRx * + wifi_event_ap_probe_req_rx__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_event_ap_probe_req_rx__free_unpacked + (WifiEventApProbeReqRx *message, + ProtobufCAllocator *allocator); +/* WifiEventBssRssiLow methods */ +void wifi_event_bss_rssi_low__init + (WifiEventBssRssiLow *message); +size_t wifi_event_bss_rssi_low__get_packed_size + (const WifiEventBssRssiLow *message); +size_t wifi_event_bss_rssi_low__pack + (const WifiEventBssRssiLow *message, + uint8_t *out); +size_t wifi_event_bss_rssi_low__pack_to_buffer + (const WifiEventBssRssiLow *message, + ProtobufCBuffer *buffer); +WifiEventBssRssiLow * + wifi_event_bss_rssi_low__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_event_bss_rssi_low__free_unpacked + (WifiEventBssRssiLow *message, + ProtobufCAllocator *allocator); +/* WifiFtmReportEntry methods */ +void wifi_ftm_report_entry__init + (WifiFtmReportEntry *message); +size_t wifi_ftm_report_entry__get_packed_size + (const WifiFtmReportEntry *message); +size_t wifi_ftm_report_entry__pack + (const WifiFtmReportEntry *message, + uint8_t *out); +size_t wifi_ftm_report_entry__pack_to_buffer + (const WifiFtmReportEntry *message, + ProtobufCBuffer *buffer); +WifiFtmReportEntry * + wifi_ftm_report_entry__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_ftm_report_entry__free_unpacked + (WifiFtmReportEntry *message, + ProtobufCAllocator *allocator); +/* WifiEventFtmReport methods */ +void wifi_event_ftm_report__init + (WifiEventFtmReport *message); +size_t wifi_event_ftm_report__get_packed_size + (const WifiEventFtmReport *message); +size_t wifi_event_ftm_report__pack + (const WifiEventFtmReport *message, + uint8_t *out); +size_t wifi_event_ftm_report__pack_to_buffer + (const WifiEventFtmReport *message, + ProtobufCBuffer *buffer); +WifiEventFtmReport * + wifi_event_ftm_report__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_event_ftm_report__free_unpacked + (WifiEventFtmReport *message, + ProtobufCAllocator *allocator); +/* WifiEventActionTxStatus methods */ +void wifi_event_action_tx_status__init + (WifiEventActionTxStatus *message); +size_t wifi_event_action_tx_status__get_packed_size + (const WifiEventActionTxStatus *message); +size_t wifi_event_action_tx_status__pack + (const WifiEventActionTxStatus *message, + uint8_t *out); +size_t wifi_event_action_tx_status__pack_to_buffer + (const WifiEventActionTxStatus *message, + ProtobufCBuffer *buffer); +WifiEventActionTxStatus * + wifi_event_action_tx_status__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_event_action_tx_status__free_unpacked + (WifiEventActionTxStatus *message, + ProtobufCAllocator *allocator); +/* WifiEventRocDone methods */ +void wifi_event_roc_done__init + (WifiEventRocDone *message); +size_t wifi_event_roc_done__get_packed_size + (const WifiEventRocDone *message); +size_t wifi_event_roc_done__pack + (const WifiEventRocDone *message, + uint8_t *out); +size_t wifi_event_roc_done__pack_to_buffer + (const WifiEventRocDone *message, + ProtobufCBuffer *buffer); +WifiEventRocDone * + wifi_event_roc_done__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_event_roc_done__free_unpacked + (WifiEventRocDone *message, + ProtobufCAllocator *allocator); +/* WifiEventApWpsRgPin methods */ +void wifi_event_ap_wps_rg_pin__init + (WifiEventApWpsRgPin *message); +size_t wifi_event_ap_wps_rg_pin__get_packed_size + (const WifiEventApWpsRgPin *message); +size_t wifi_event_ap_wps_rg_pin__pack + (const WifiEventApWpsRgPin *message, + uint8_t *out); +size_t wifi_event_ap_wps_rg_pin__pack_to_buffer + (const WifiEventApWpsRgPin *message, + ProtobufCBuffer *buffer); +WifiEventApWpsRgPin * + wifi_event_ap_wps_rg_pin__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_event_ap_wps_rg_pin__free_unpacked + (WifiEventApWpsRgPin *message, + ProtobufCAllocator *allocator); +/* WifiEventApWpsRgFailReason methods */ +void wifi_event_ap_wps_rg_fail_reason__init + (WifiEventApWpsRgFailReason *message); +size_t wifi_event_ap_wps_rg_fail_reason__get_packed_size + (const WifiEventApWpsRgFailReason *message); +size_t wifi_event_ap_wps_rg_fail_reason__pack + (const WifiEventApWpsRgFailReason *message, + uint8_t *out); +size_t wifi_event_ap_wps_rg_fail_reason__pack_to_buffer + (const WifiEventApWpsRgFailReason *message, + ProtobufCBuffer *buffer); +WifiEventApWpsRgFailReason * + wifi_event_ap_wps_rg_fail_reason__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_event_ap_wps_rg_fail_reason__free_unpacked + (WifiEventApWpsRgFailReason *message, + ProtobufCAllocator *allocator); +/* WifiEventApWpsRgSuccess methods */ +void wifi_event_ap_wps_rg_success__init + (WifiEventApWpsRgSuccess *message); +size_t wifi_event_ap_wps_rg_success__get_packed_size + (const WifiEventApWpsRgSuccess *message); +size_t wifi_event_ap_wps_rg_success__pack + (const WifiEventApWpsRgSuccess *message, + uint8_t *out); +size_t wifi_event_ap_wps_rg_success__pack_to_buffer + (const WifiEventApWpsRgSuccess *message, + ProtobufCBuffer *buffer); +WifiEventApWpsRgSuccess * + wifi_event_ap_wps_rg_success__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_event_ap_wps_rg_success__free_unpacked + (WifiEventApWpsRgSuccess *message, + ProtobufCAllocator *allocator); +/* WifiProtocols methods */ +void wifi_protocols__init + (WifiProtocols *message); +size_t wifi_protocols__get_packed_size + (const WifiProtocols *message); +size_t wifi_protocols__pack + (const WifiProtocols *message, + uint8_t *out); +size_t wifi_protocols__pack_to_buffer + (const WifiProtocols *message, + ProtobufCBuffer *buffer); +WifiProtocols * + wifi_protocols__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_protocols__free_unpacked + (WifiProtocols *message, + ProtobufCAllocator *allocator); +/* WifiBandwidths methods */ +void wifi_bandwidths__init + (WifiBandwidths *message); +size_t wifi_bandwidths__get_packed_size + (const WifiBandwidths *message); +size_t wifi_bandwidths__pack + (const WifiBandwidths *message, + uint8_t *out); +size_t wifi_bandwidths__pack_to_buffer + (const WifiBandwidths *message, + ProtobufCBuffer *buffer); +WifiBandwidths * + wifi_bandwidths__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_bandwidths__free_unpacked + (WifiBandwidths *message, + ProtobufCAllocator *allocator); +/* WifiItwtSetupConfig methods */ +void wifi_itwt_setup_config__init + (WifiItwtSetupConfig *message); +size_t wifi_itwt_setup_config__get_packed_size + (const WifiItwtSetupConfig *message); +size_t wifi_itwt_setup_config__pack + (const WifiItwtSetupConfig *message, + uint8_t *out); +size_t wifi_itwt_setup_config__pack_to_buffer + (const WifiItwtSetupConfig *message, + ProtobufCBuffer *buffer); +WifiItwtSetupConfig * + wifi_itwt_setup_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_itwt_setup_config__free_unpacked + (WifiItwtSetupConfig *message, + ProtobufCAllocator *allocator); +/* WifiTwtConfig methods */ +void wifi_twt_config__init + (WifiTwtConfig *message); +size_t wifi_twt_config__get_packed_size + (const WifiTwtConfig *message); +size_t wifi_twt_config__pack + (const WifiTwtConfig *message, + uint8_t *out); +size_t wifi_twt_config__pack_to_buffer + (const WifiTwtConfig *message, + ProtobufCBuffer *buffer); +WifiTwtConfig * + wifi_twt_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void wifi_twt_config__free_unpacked + (WifiTwtConfig *message, + ProtobufCAllocator *allocator); +/* EspAppDesc methods */ +void esp_app_desc__init + (EspAppDesc *message); +size_t esp_app_desc__get_packed_size + (const EspAppDesc *message); +size_t esp_app_desc__pack + (const EspAppDesc *message, + uint8_t *out); +size_t esp_app_desc__pack_to_buffer + (const EspAppDesc *message, + ProtobufCBuffer *buffer); +EspAppDesc * + esp_app_desc__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void esp_app_desc__free_unpacked + (EspAppDesc *message, + ProtobufCAllocator *allocator); +/* HeapSizeThreshold methods */ +void heap_size_threshold__init + (HeapSizeThreshold *message); +size_t heap_size_threshold__get_packed_size + (const HeapSizeThreshold *message); +size_t heap_size_threshold__pack + (const HeapSizeThreshold *message, + uint8_t *out); +size_t heap_size_threshold__pack_to_buffer + (const HeapSizeThreshold *message, + ProtobufCBuffer *buffer); +HeapSizeThreshold * + heap_size_threshold__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void heap_size_threshold__free_unpacked + (HeapSizeThreshold *message, + ProtobufCAllocator *allocator); +/* MemInfo methods */ +void mem_info__init + (MemInfo *message); +size_t mem_info__get_packed_size + (const MemInfo *message); +size_t mem_info__pack + (const MemInfo *message, + uint8_t *out); +size_t mem_info__pack_to_buffer + (const MemInfo *message, + ProtobufCBuffer *buffer); +MemInfo * + mem_info__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void mem_info__free_unpacked + (MemInfo *message, + ProtobufCAllocator *allocator); +/* HeapInfo methods */ +void heap_info__init + (HeapInfo *message); +size_t heap_info__get_packed_size + (const HeapInfo *message); +size_t heap_info__pack + (const HeapInfo *message, + uint8_t *out); +size_t heap_info__pack_to_buffer + (const HeapInfo *message, + ProtobufCBuffer *buffer); +HeapInfo * + heap_info__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void heap_info__free_unpacked + (HeapInfo *message, + ProtobufCAllocator *allocator); +/* ConnectedSTAList methods */ +void connected_stalist__init + (ConnectedSTAList *message); +size_t connected_stalist__get_packed_size + (const ConnectedSTAList *message); +size_t connected_stalist__pack + (const ConnectedSTAList *message, + uint8_t *out); +size_t connected_stalist__pack_to_buffer + (const ConnectedSTAList *message, + ProtobufCBuffer *buffer); +ConnectedSTAList * + connected_stalist__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void connected_stalist__free_unpacked + (ConnectedSTAList *message, + ProtobufCAllocator *allocator); +/* EapFastConfig methods */ +void eap_fast_config__init + (EapFastConfig *message); +size_t eap_fast_config__get_packed_size + (const EapFastConfig *message); +size_t eap_fast_config__pack + (const EapFastConfig *message, + uint8_t *out); +size_t eap_fast_config__pack_to_buffer + (const EapFastConfig *message, + ProtobufCBuffer *buffer); +EapFastConfig * + eap_fast_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void eap_fast_config__free_unpacked + (EapFastConfig *message, + ProtobufCAllocator *allocator); +/* RpcReqGetMacAddress methods */ +void rpc__req__get_mac_address__init + (RpcReqGetMacAddress *message); +size_t rpc__req__get_mac_address__get_packed_size + (const RpcReqGetMacAddress *message); +size_t rpc__req__get_mac_address__pack + (const RpcReqGetMacAddress *message, + uint8_t *out); +size_t rpc__req__get_mac_address__pack_to_buffer + (const RpcReqGetMacAddress *message, + ProtobufCBuffer *buffer); +RpcReqGetMacAddress * + rpc__req__get_mac_address__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__get_mac_address__free_unpacked + (RpcReqGetMacAddress *message, + ProtobufCAllocator *allocator); +/* RpcRespGetMacAddress methods */ +void rpc__resp__get_mac_address__init + (RpcRespGetMacAddress *message); +size_t rpc__resp__get_mac_address__get_packed_size + (const RpcRespGetMacAddress *message); +size_t rpc__resp__get_mac_address__pack + (const RpcRespGetMacAddress *message, + uint8_t *out); +size_t rpc__resp__get_mac_address__pack_to_buffer + (const RpcRespGetMacAddress *message, + ProtobufCBuffer *buffer); +RpcRespGetMacAddress * + rpc__resp__get_mac_address__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__get_mac_address__free_unpacked + (RpcRespGetMacAddress *message, + ProtobufCAllocator *allocator); +/* RpcReqGetMode methods */ +void rpc__req__get_mode__init + (RpcReqGetMode *message); +size_t rpc__req__get_mode__get_packed_size + (const RpcReqGetMode *message); +size_t rpc__req__get_mode__pack + (const RpcReqGetMode *message, + uint8_t *out); +size_t rpc__req__get_mode__pack_to_buffer + (const RpcReqGetMode *message, + ProtobufCBuffer *buffer); +RpcReqGetMode * + rpc__req__get_mode__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__get_mode__free_unpacked + (RpcReqGetMode *message, + ProtobufCAllocator *allocator); +/* RpcRespGetMode methods */ +void rpc__resp__get_mode__init + (RpcRespGetMode *message); +size_t rpc__resp__get_mode__get_packed_size + (const RpcRespGetMode *message); +size_t rpc__resp__get_mode__pack + (const RpcRespGetMode *message, + uint8_t *out); +size_t rpc__resp__get_mode__pack_to_buffer + (const RpcRespGetMode *message, + ProtobufCBuffer *buffer); +RpcRespGetMode * + rpc__resp__get_mode__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__get_mode__free_unpacked + (RpcRespGetMode *message, + ProtobufCAllocator *allocator); +/* RpcReqSetMode methods */ +void rpc__req__set_mode__init + (RpcReqSetMode *message); +size_t rpc__req__set_mode__get_packed_size + (const RpcReqSetMode *message); +size_t rpc__req__set_mode__pack + (const RpcReqSetMode *message, + uint8_t *out); +size_t rpc__req__set_mode__pack_to_buffer + (const RpcReqSetMode *message, + ProtobufCBuffer *buffer); +RpcReqSetMode * + rpc__req__set_mode__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__set_mode__free_unpacked + (RpcReqSetMode *message, + ProtobufCAllocator *allocator); +/* RpcRespSetMode methods */ +void rpc__resp__set_mode__init + (RpcRespSetMode *message); +size_t rpc__resp__set_mode__get_packed_size + (const RpcRespSetMode *message); +size_t rpc__resp__set_mode__pack + (const RpcRespSetMode *message, + uint8_t *out); +size_t rpc__resp__set_mode__pack_to_buffer + (const RpcRespSetMode *message, + ProtobufCBuffer *buffer); +RpcRespSetMode * + rpc__resp__set_mode__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__set_mode__free_unpacked + (RpcRespSetMode *message, + ProtobufCAllocator *allocator); +/* RpcReqGetPs methods */ +void rpc__req__get_ps__init + (RpcReqGetPs *message); +size_t rpc__req__get_ps__get_packed_size + (const RpcReqGetPs *message); +size_t rpc__req__get_ps__pack + (const RpcReqGetPs *message, + uint8_t *out); +size_t rpc__req__get_ps__pack_to_buffer + (const RpcReqGetPs *message, + ProtobufCBuffer *buffer); +RpcReqGetPs * + rpc__req__get_ps__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__get_ps__free_unpacked + (RpcReqGetPs *message, + ProtobufCAllocator *allocator); +/* RpcRespGetPs methods */ +void rpc__resp__get_ps__init + (RpcRespGetPs *message); +size_t rpc__resp__get_ps__get_packed_size + (const RpcRespGetPs *message); +size_t rpc__resp__get_ps__pack + (const RpcRespGetPs *message, + uint8_t *out); +size_t rpc__resp__get_ps__pack_to_buffer + (const RpcRespGetPs *message, + ProtobufCBuffer *buffer); +RpcRespGetPs * + rpc__resp__get_ps__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__get_ps__free_unpacked + (RpcRespGetPs *message, + ProtobufCAllocator *allocator); +/* RpcReqSetPs methods */ +void rpc__req__set_ps__init + (RpcReqSetPs *message); +size_t rpc__req__set_ps__get_packed_size + (const RpcReqSetPs *message); +size_t rpc__req__set_ps__pack + (const RpcReqSetPs *message, + uint8_t *out); +size_t rpc__req__set_ps__pack_to_buffer + (const RpcReqSetPs *message, + ProtobufCBuffer *buffer); +RpcReqSetPs * + rpc__req__set_ps__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__set_ps__free_unpacked + (RpcReqSetPs *message, + ProtobufCAllocator *allocator); +/* RpcRespSetPs methods */ +void rpc__resp__set_ps__init + (RpcRespSetPs *message); +size_t rpc__resp__set_ps__get_packed_size + (const RpcRespSetPs *message); +size_t rpc__resp__set_ps__pack + (const RpcRespSetPs *message, + uint8_t *out); +size_t rpc__resp__set_ps__pack_to_buffer + (const RpcRespSetPs *message, + ProtobufCBuffer *buffer); +RpcRespSetPs * + rpc__resp__set_ps__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__set_ps__free_unpacked + (RpcRespSetPs *message, + ProtobufCAllocator *allocator); +/* RpcReqSetMacAddress methods */ +void rpc__req__set_mac_address__init + (RpcReqSetMacAddress *message); +size_t rpc__req__set_mac_address__get_packed_size + (const RpcReqSetMacAddress *message); +size_t rpc__req__set_mac_address__pack + (const RpcReqSetMacAddress *message, + uint8_t *out); +size_t rpc__req__set_mac_address__pack_to_buffer + (const RpcReqSetMacAddress *message, + ProtobufCBuffer *buffer); +RpcReqSetMacAddress * + rpc__req__set_mac_address__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__set_mac_address__free_unpacked + (RpcReqSetMacAddress *message, + ProtobufCAllocator *allocator); +/* RpcRespSetMacAddress methods */ +void rpc__resp__set_mac_address__init + (RpcRespSetMacAddress *message); +size_t rpc__resp__set_mac_address__get_packed_size + (const RpcRespSetMacAddress *message); +size_t rpc__resp__set_mac_address__pack + (const RpcRespSetMacAddress *message, + uint8_t *out); +size_t rpc__resp__set_mac_address__pack_to_buffer + (const RpcRespSetMacAddress *message, + ProtobufCBuffer *buffer); +RpcRespSetMacAddress * + rpc__resp__set_mac_address__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__set_mac_address__free_unpacked + (RpcRespSetMacAddress *message, + ProtobufCAllocator *allocator); +/* RpcReqOTABegin methods */ +void rpc__req__otabegin__init + (RpcReqOTABegin *message); +size_t rpc__req__otabegin__get_packed_size + (const RpcReqOTABegin *message); +size_t rpc__req__otabegin__pack + (const RpcReqOTABegin *message, + uint8_t *out); +size_t rpc__req__otabegin__pack_to_buffer + (const RpcReqOTABegin *message, + ProtobufCBuffer *buffer); +RpcReqOTABegin * + rpc__req__otabegin__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__otabegin__free_unpacked + (RpcReqOTABegin *message, + ProtobufCAllocator *allocator); +/* RpcRespOTABegin methods */ +void rpc__resp__otabegin__init + (RpcRespOTABegin *message); +size_t rpc__resp__otabegin__get_packed_size + (const RpcRespOTABegin *message); +size_t rpc__resp__otabegin__pack + (const RpcRespOTABegin *message, + uint8_t *out); +size_t rpc__resp__otabegin__pack_to_buffer + (const RpcRespOTABegin *message, + ProtobufCBuffer *buffer); +RpcRespOTABegin * + rpc__resp__otabegin__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__otabegin__free_unpacked + (RpcRespOTABegin *message, + ProtobufCAllocator *allocator); +/* RpcReqOTAWrite methods */ +void rpc__req__otawrite__init + (RpcReqOTAWrite *message); +size_t rpc__req__otawrite__get_packed_size + (const RpcReqOTAWrite *message); +size_t rpc__req__otawrite__pack + (const RpcReqOTAWrite *message, + uint8_t *out); +size_t rpc__req__otawrite__pack_to_buffer + (const RpcReqOTAWrite *message, + ProtobufCBuffer *buffer); +RpcReqOTAWrite * + rpc__req__otawrite__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__otawrite__free_unpacked + (RpcReqOTAWrite *message, + ProtobufCAllocator *allocator); +/* RpcRespOTAWrite methods */ +void rpc__resp__otawrite__init + (RpcRespOTAWrite *message); +size_t rpc__resp__otawrite__get_packed_size + (const RpcRespOTAWrite *message); +size_t rpc__resp__otawrite__pack + (const RpcRespOTAWrite *message, + uint8_t *out); +size_t rpc__resp__otawrite__pack_to_buffer + (const RpcRespOTAWrite *message, + ProtobufCBuffer *buffer); +RpcRespOTAWrite * + rpc__resp__otawrite__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__otawrite__free_unpacked + (RpcRespOTAWrite *message, + ProtobufCAllocator *allocator); +/* RpcReqOTAEnd methods */ +void rpc__req__otaend__init + (RpcReqOTAEnd *message); +size_t rpc__req__otaend__get_packed_size + (const RpcReqOTAEnd *message); +size_t rpc__req__otaend__pack + (const RpcReqOTAEnd *message, + uint8_t *out); +size_t rpc__req__otaend__pack_to_buffer + (const RpcReqOTAEnd *message, + ProtobufCBuffer *buffer); +RpcReqOTAEnd * + rpc__req__otaend__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__otaend__free_unpacked + (RpcReqOTAEnd *message, + ProtobufCAllocator *allocator); +/* RpcRespOTAEnd methods */ +void rpc__resp__otaend__init + (RpcRespOTAEnd *message); +size_t rpc__resp__otaend__get_packed_size + (const RpcRespOTAEnd *message); +size_t rpc__resp__otaend__pack + (const RpcRespOTAEnd *message, + uint8_t *out); +size_t rpc__resp__otaend__pack_to_buffer + (const RpcRespOTAEnd *message, + ProtobufCBuffer *buffer); +RpcRespOTAEnd * + rpc__resp__otaend__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__otaend__free_unpacked + (RpcRespOTAEnd *message, + ProtobufCAllocator *allocator); +/* RpcReqOTAActivate methods */ +void rpc__req__otaactivate__init + (RpcReqOTAActivate *message); +size_t rpc__req__otaactivate__get_packed_size + (const RpcReqOTAActivate *message); +size_t rpc__req__otaactivate__pack + (const RpcReqOTAActivate *message, + uint8_t *out); +size_t rpc__req__otaactivate__pack_to_buffer + (const RpcReqOTAActivate *message, + ProtobufCBuffer *buffer); +RpcReqOTAActivate * + rpc__req__otaactivate__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__otaactivate__free_unpacked + (RpcReqOTAActivate *message, + ProtobufCAllocator *allocator); +/* RpcRespOTAActivate methods */ +void rpc__resp__otaactivate__init + (RpcRespOTAActivate *message); +size_t rpc__resp__otaactivate__get_packed_size + (const RpcRespOTAActivate *message); +size_t rpc__resp__otaactivate__pack + (const RpcRespOTAActivate *message, + uint8_t *out); +size_t rpc__resp__otaactivate__pack_to_buffer + (const RpcRespOTAActivate *message, + ProtobufCBuffer *buffer); +RpcRespOTAActivate * + rpc__resp__otaactivate__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__otaactivate__free_unpacked + (RpcRespOTAActivate *message, + ProtobufCAllocator *allocator); +/* RpcReqAppGetDesc methods */ +void rpc__req__app_get_desc__init + (RpcReqAppGetDesc *message); +size_t rpc__req__app_get_desc__get_packed_size + (const RpcReqAppGetDesc *message); +size_t rpc__req__app_get_desc__pack + (const RpcReqAppGetDesc *message, + uint8_t *out); +size_t rpc__req__app_get_desc__pack_to_buffer + (const RpcReqAppGetDesc *message, + ProtobufCBuffer *buffer); +RpcReqAppGetDesc * + rpc__req__app_get_desc__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__app_get_desc__free_unpacked + (RpcReqAppGetDesc *message, + ProtobufCAllocator *allocator); +/* RpcRespAppGetDesc methods */ +void rpc__resp__app_get_desc__init + (RpcRespAppGetDesc *message); +size_t rpc__resp__app_get_desc__get_packed_size + (const RpcRespAppGetDesc *message); +size_t rpc__resp__app_get_desc__pack + (const RpcRespAppGetDesc *message, + uint8_t *out); +size_t rpc__resp__app_get_desc__pack_to_buffer + (const RpcRespAppGetDesc *message, + ProtobufCBuffer *buffer); +RpcRespAppGetDesc * + rpc__resp__app_get_desc__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__app_get_desc__free_unpacked + (RpcRespAppGetDesc *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiSetMaxTxPower methods */ +void rpc__req__wifi_set_max_tx_power__init + (RpcReqWifiSetMaxTxPower *message); +size_t rpc__req__wifi_set_max_tx_power__get_packed_size + (const RpcReqWifiSetMaxTxPower *message); +size_t rpc__req__wifi_set_max_tx_power__pack + (const RpcReqWifiSetMaxTxPower *message, + uint8_t *out); +size_t rpc__req__wifi_set_max_tx_power__pack_to_buffer + (const RpcReqWifiSetMaxTxPower *message, + ProtobufCBuffer *buffer); +RpcReqWifiSetMaxTxPower * + rpc__req__wifi_set_max_tx_power__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_set_max_tx_power__free_unpacked + (RpcReqWifiSetMaxTxPower *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiSetMaxTxPower methods */ +void rpc__resp__wifi_set_max_tx_power__init + (RpcRespWifiSetMaxTxPower *message); +size_t rpc__resp__wifi_set_max_tx_power__get_packed_size + (const RpcRespWifiSetMaxTxPower *message); +size_t rpc__resp__wifi_set_max_tx_power__pack + (const RpcRespWifiSetMaxTxPower *message, + uint8_t *out); +size_t rpc__resp__wifi_set_max_tx_power__pack_to_buffer + (const RpcRespWifiSetMaxTxPower *message, + ProtobufCBuffer *buffer); +RpcRespWifiSetMaxTxPower * + rpc__resp__wifi_set_max_tx_power__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_set_max_tx_power__free_unpacked + (RpcRespWifiSetMaxTxPower *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiGetMaxTxPower methods */ +void rpc__req__wifi_get_max_tx_power__init + (RpcReqWifiGetMaxTxPower *message); +size_t rpc__req__wifi_get_max_tx_power__get_packed_size + (const RpcReqWifiGetMaxTxPower *message); +size_t rpc__req__wifi_get_max_tx_power__pack + (const RpcReqWifiGetMaxTxPower *message, + uint8_t *out); +size_t rpc__req__wifi_get_max_tx_power__pack_to_buffer + (const RpcReqWifiGetMaxTxPower *message, + ProtobufCBuffer *buffer); +RpcReqWifiGetMaxTxPower * + rpc__req__wifi_get_max_tx_power__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_get_max_tx_power__free_unpacked + (RpcReqWifiGetMaxTxPower *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiGetMaxTxPower methods */ +void rpc__resp__wifi_get_max_tx_power__init + (RpcRespWifiGetMaxTxPower *message); +size_t rpc__resp__wifi_get_max_tx_power__get_packed_size + (const RpcRespWifiGetMaxTxPower *message); +size_t rpc__resp__wifi_get_max_tx_power__pack + (const RpcRespWifiGetMaxTxPower *message, + uint8_t *out); +size_t rpc__resp__wifi_get_max_tx_power__pack_to_buffer + (const RpcRespWifiGetMaxTxPower *message, + ProtobufCBuffer *buffer); +RpcRespWifiGetMaxTxPower * + rpc__resp__wifi_get_max_tx_power__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_get_max_tx_power__free_unpacked + (RpcRespWifiGetMaxTxPower *message, + ProtobufCAllocator *allocator); +/* RpcReqConfigHeartbeat methods */ +void rpc__req__config_heartbeat__init + (RpcReqConfigHeartbeat *message); +size_t rpc__req__config_heartbeat__get_packed_size + (const RpcReqConfigHeartbeat *message); +size_t rpc__req__config_heartbeat__pack + (const RpcReqConfigHeartbeat *message, + uint8_t *out); +size_t rpc__req__config_heartbeat__pack_to_buffer + (const RpcReqConfigHeartbeat *message, + ProtobufCBuffer *buffer); +RpcReqConfigHeartbeat * + rpc__req__config_heartbeat__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__config_heartbeat__free_unpacked + (RpcReqConfigHeartbeat *message, + ProtobufCAllocator *allocator); +/* RpcRespConfigHeartbeat methods */ +void rpc__resp__config_heartbeat__init + (RpcRespConfigHeartbeat *message); +size_t rpc__resp__config_heartbeat__get_packed_size + (const RpcRespConfigHeartbeat *message); +size_t rpc__resp__config_heartbeat__pack + (const RpcRespConfigHeartbeat *message, + uint8_t *out); +size_t rpc__resp__config_heartbeat__pack_to_buffer + (const RpcRespConfigHeartbeat *message, + ProtobufCBuffer *buffer); +RpcRespConfigHeartbeat * + rpc__resp__config_heartbeat__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__config_heartbeat__free_unpacked + (RpcRespConfigHeartbeat *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiInit methods */ +void rpc__req__wifi_init__init + (RpcReqWifiInit *message); +size_t rpc__req__wifi_init__get_packed_size + (const RpcReqWifiInit *message); +size_t rpc__req__wifi_init__pack + (const RpcReqWifiInit *message, + uint8_t *out); +size_t rpc__req__wifi_init__pack_to_buffer + (const RpcReqWifiInit *message, + ProtobufCBuffer *buffer); +RpcReqWifiInit * + rpc__req__wifi_init__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_init__free_unpacked + (RpcReqWifiInit *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiInit methods */ +void rpc__resp__wifi_init__init + (RpcRespWifiInit *message); +size_t rpc__resp__wifi_init__get_packed_size + (const RpcRespWifiInit *message); +size_t rpc__resp__wifi_init__pack + (const RpcRespWifiInit *message, + uint8_t *out); +size_t rpc__resp__wifi_init__pack_to_buffer + (const RpcRespWifiInit *message, + ProtobufCBuffer *buffer); +RpcRespWifiInit * + rpc__resp__wifi_init__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_init__free_unpacked + (RpcRespWifiInit *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiDeinit methods */ +void rpc__req__wifi_deinit__init + (RpcReqWifiDeinit *message); +size_t rpc__req__wifi_deinit__get_packed_size + (const RpcReqWifiDeinit *message); +size_t rpc__req__wifi_deinit__pack + (const RpcReqWifiDeinit *message, + uint8_t *out); +size_t rpc__req__wifi_deinit__pack_to_buffer + (const RpcReqWifiDeinit *message, + ProtobufCBuffer *buffer); +RpcReqWifiDeinit * + rpc__req__wifi_deinit__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_deinit__free_unpacked + (RpcReqWifiDeinit *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiDeinit methods */ +void rpc__resp__wifi_deinit__init + (RpcRespWifiDeinit *message); +size_t rpc__resp__wifi_deinit__get_packed_size + (const RpcRespWifiDeinit *message); +size_t rpc__resp__wifi_deinit__pack + (const RpcRespWifiDeinit *message, + uint8_t *out); +size_t rpc__resp__wifi_deinit__pack_to_buffer + (const RpcRespWifiDeinit *message, + ProtobufCBuffer *buffer); +RpcRespWifiDeinit * + rpc__resp__wifi_deinit__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_deinit__free_unpacked + (RpcRespWifiDeinit *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiSetConfig methods */ +void rpc__req__wifi_set_config__init + (RpcReqWifiSetConfig *message); +size_t rpc__req__wifi_set_config__get_packed_size + (const RpcReqWifiSetConfig *message); +size_t rpc__req__wifi_set_config__pack + (const RpcReqWifiSetConfig *message, + uint8_t *out); +size_t rpc__req__wifi_set_config__pack_to_buffer + (const RpcReqWifiSetConfig *message, + ProtobufCBuffer *buffer); +RpcReqWifiSetConfig * + rpc__req__wifi_set_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_set_config__free_unpacked + (RpcReqWifiSetConfig *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiSetConfig methods */ +void rpc__resp__wifi_set_config__init + (RpcRespWifiSetConfig *message); +size_t rpc__resp__wifi_set_config__get_packed_size + (const RpcRespWifiSetConfig *message); +size_t rpc__resp__wifi_set_config__pack + (const RpcRespWifiSetConfig *message, + uint8_t *out); +size_t rpc__resp__wifi_set_config__pack_to_buffer + (const RpcRespWifiSetConfig *message, + ProtobufCBuffer *buffer); +RpcRespWifiSetConfig * + rpc__resp__wifi_set_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_set_config__free_unpacked + (RpcRespWifiSetConfig *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiGetConfig methods */ +void rpc__req__wifi_get_config__init + (RpcReqWifiGetConfig *message); +size_t rpc__req__wifi_get_config__get_packed_size + (const RpcReqWifiGetConfig *message); +size_t rpc__req__wifi_get_config__pack + (const RpcReqWifiGetConfig *message, + uint8_t *out); +size_t rpc__req__wifi_get_config__pack_to_buffer + (const RpcReqWifiGetConfig *message, + ProtobufCBuffer *buffer); +RpcReqWifiGetConfig * + rpc__req__wifi_get_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_get_config__free_unpacked + (RpcReqWifiGetConfig *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiGetConfig methods */ +void rpc__resp__wifi_get_config__init + (RpcRespWifiGetConfig *message); +size_t rpc__resp__wifi_get_config__get_packed_size + (const RpcRespWifiGetConfig *message); +size_t rpc__resp__wifi_get_config__pack + (const RpcRespWifiGetConfig *message, + uint8_t *out); +size_t rpc__resp__wifi_get_config__pack_to_buffer + (const RpcRespWifiGetConfig *message, + ProtobufCBuffer *buffer); +RpcRespWifiGetConfig * + rpc__resp__wifi_get_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_get_config__free_unpacked + (RpcRespWifiGetConfig *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiConnect methods */ +void rpc__req__wifi_connect__init + (RpcReqWifiConnect *message); +size_t rpc__req__wifi_connect__get_packed_size + (const RpcReqWifiConnect *message); +size_t rpc__req__wifi_connect__pack + (const RpcReqWifiConnect *message, + uint8_t *out); +size_t rpc__req__wifi_connect__pack_to_buffer + (const RpcReqWifiConnect *message, + ProtobufCBuffer *buffer); +RpcReqWifiConnect * + rpc__req__wifi_connect__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_connect__free_unpacked + (RpcReqWifiConnect *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiConnect methods */ +void rpc__resp__wifi_connect__init + (RpcRespWifiConnect *message); +size_t rpc__resp__wifi_connect__get_packed_size + (const RpcRespWifiConnect *message); +size_t rpc__resp__wifi_connect__pack + (const RpcRespWifiConnect *message, + uint8_t *out); +size_t rpc__resp__wifi_connect__pack_to_buffer + (const RpcRespWifiConnect *message, + ProtobufCBuffer *buffer); +RpcRespWifiConnect * + rpc__resp__wifi_connect__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_connect__free_unpacked + (RpcRespWifiConnect *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiDisconnect methods */ +void rpc__req__wifi_disconnect__init + (RpcReqWifiDisconnect *message); +size_t rpc__req__wifi_disconnect__get_packed_size + (const RpcReqWifiDisconnect *message); +size_t rpc__req__wifi_disconnect__pack + (const RpcReqWifiDisconnect *message, + uint8_t *out); +size_t rpc__req__wifi_disconnect__pack_to_buffer + (const RpcReqWifiDisconnect *message, + ProtobufCBuffer *buffer); +RpcReqWifiDisconnect * + rpc__req__wifi_disconnect__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_disconnect__free_unpacked + (RpcReqWifiDisconnect *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiDisconnect methods */ +void rpc__resp__wifi_disconnect__init + (RpcRespWifiDisconnect *message); +size_t rpc__resp__wifi_disconnect__get_packed_size + (const RpcRespWifiDisconnect *message); +size_t rpc__resp__wifi_disconnect__pack + (const RpcRespWifiDisconnect *message, + uint8_t *out); +size_t rpc__resp__wifi_disconnect__pack_to_buffer + (const RpcRespWifiDisconnect *message, + ProtobufCBuffer *buffer); +RpcRespWifiDisconnect * + rpc__resp__wifi_disconnect__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_disconnect__free_unpacked + (RpcRespWifiDisconnect *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiStart methods */ +void rpc__req__wifi_start__init + (RpcReqWifiStart *message); +size_t rpc__req__wifi_start__get_packed_size + (const RpcReqWifiStart *message); +size_t rpc__req__wifi_start__pack + (const RpcReqWifiStart *message, + uint8_t *out); +size_t rpc__req__wifi_start__pack_to_buffer + (const RpcReqWifiStart *message, + ProtobufCBuffer *buffer); +RpcReqWifiStart * + rpc__req__wifi_start__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_start__free_unpacked + (RpcReqWifiStart *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiStart methods */ +void rpc__resp__wifi_start__init + (RpcRespWifiStart *message); +size_t rpc__resp__wifi_start__get_packed_size + (const RpcRespWifiStart *message); +size_t rpc__resp__wifi_start__pack + (const RpcRespWifiStart *message, + uint8_t *out); +size_t rpc__resp__wifi_start__pack_to_buffer + (const RpcRespWifiStart *message, + ProtobufCBuffer *buffer); +RpcRespWifiStart * + rpc__resp__wifi_start__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_start__free_unpacked + (RpcRespWifiStart *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiStop methods */ +void rpc__req__wifi_stop__init + (RpcReqWifiStop *message); +size_t rpc__req__wifi_stop__get_packed_size + (const RpcReqWifiStop *message); +size_t rpc__req__wifi_stop__pack + (const RpcReqWifiStop *message, + uint8_t *out); +size_t rpc__req__wifi_stop__pack_to_buffer + (const RpcReqWifiStop *message, + ProtobufCBuffer *buffer); +RpcReqWifiStop * + rpc__req__wifi_stop__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_stop__free_unpacked + (RpcReqWifiStop *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiStop methods */ +void rpc__resp__wifi_stop__init + (RpcRespWifiStop *message); +size_t rpc__resp__wifi_stop__get_packed_size + (const RpcRespWifiStop *message); +size_t rpc__resp__wifi_stop__pack + (const RpcRespWifiStop *message, + uint8_t *out); +size_t rpc__resp__wifi_stop__pack_to_buffer + (const RpcRespWifiStop *message, + ProtobufCBuffer *buffer); +RpcRespWifiStop * + rpc__resp__wifi_stop__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_stop__free_unpacked + (RpcRespWifiStop *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiScanStart methods */ +void rpc__req__wifi_scan_start__init + (RpcReqWifiScanStart *message); +size_t rpc__req__wifi_scan_start__get_packed_size + (const RpcReqWifiScanStart *message); +size_t rpc__req__wifi_scan_start__pack + (const RpcReqWifiScanStart *message, + uint8_t *out); +size_t rpc__req__wifi_scan_start__pack_to_buffer + (const RpcReqWifiScanStart *message, + ProtobufCBuffer *buffer); +RpcReqWifiScanStart * + rpc__req__wifi_scan_start__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_scan_start__free_unpacked + (RpcReqWifiScanStart *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiScanStart methods */ +void rpc__resp__wifi_scan_start__init + (RpcRespWifiScanStart *message); +size_t rpc__resp__wifi_scan_start__get_packed_size + (const RpcRespWifiScanStart *message); +size_t rpc__resp__wifi_scan_start__pack + (const RpcRespWifiScanStart *message, + uint8_t *out); +size_t rpc__resp__wifi_scan_start__pack_to_buffer + (const RpcRespWifiScanStart *message, + ProtobufCBuffer *buffer); +RpcRespWifiScanStart * + rpc__resp__wifi_scan_start__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_scan_start__free_unpacked + (RpcRespWifiScanStart *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiScanStop methods */ +void rpc__req__wifi_scan_stop__init + (RpcReqWifiScanStop *message); +size_t rpc__req__wifi_scan_stop__get_packed_size + (const RpcReqWifiScanStop *message); +size_t rpc__req__wifi_scan_stop__pack + (const RpcReqWifiScanStop *message, + uint8_t *out); +size_t rpc__req__wifi_scan_stop__pack_to_buffer + (const RpcReqWifiScanStop *message, + ProtobufCBuffer *buffer); +RpcReqWifiScanStop * + rpc__req__wifi_scan_stop__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_scan_stop__free_unpacked + (RpcReqWifiScanStop *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiScanStop methods */ +void rpc__resp__wifi_scan_stop__init + (RpcRespWifiScanStop *message); +size_t rpc__resp__wifi_scan_stop__get_packed_size + (const RpcRespWifiScanStop *message); +size_t rpc__resp__wifi_scan_stop__pack + (const RpcRespWifiScanStop *message, + uint8_t *out); +size_t rpc__resp__wifi_scan_stop__pack_to_buffer + (const RpcRespWifiScanStop *message, + ProtobufCBuffer *buffer); +RpcRespWifiScanStop * + rpc__resp__wifi_scan_stop__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_scan_stop__free_unpacked + (RpcRespWifiScanStop *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiScanGetApNum methods */ +void rpc__req__wifi_scan_get_ap_num__init + (RpcReqWifiScanGetApNum *message); +size_t rpc__req__wifi_scan_get_ap_num__get_packed_size + (const RpcReqWifiScanGetApNum *message); +size_t rpc__req__wifi_scan_get_ap_num__pack + (const RpcReqWifiScanGetApNum *message, + uint8_t *out); +size_t rpc__req__wifi_scan_get_ap_num__pack_to_buffer + (const RpcReqWifiScanGetApNum *message, + ProtobufCBuffer *buffer); +RpcReqWifiScanGetApNum * + rpc__req__wifi_scan_get_ap_num__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_scan_get_ap_num__free_unpacked + (RpcReqWifiScanGetApNum *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiScanGetApNum methods */ +void rpc__resp__wifi_scan_get_ap_num__init + (RpcRespWifiScanGetApNum *message); +size_t rpc__resp__wifi_scan_get_ap_num__get_packed_size + (const RpcRespWifiScanGetApNum *message); +size_t rpc__resp__wifi_scan_get_ap_num__pack + (const RpcRespWifiScanGetApNum *message, + uint8_t *out); +size_t rpc__resp__wifi_scan_get_ap_num__pack_to_buffer + (const RpcRespWifiScanGetApNum *message, + ProtobufCBuffer *buffer); +RpcRespWifiScanGetApNum * + rpc__resp__wifi_scan_get_ap_num__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_scan_get_ap_num__free_unpacked + (RpcRespWifiScanGetApNum *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiScanGetApRecords methods */ +void rpc__req__wifi_scan_get_ap_records__init + (RpcReqWifiScanGetApRecords *message); +size_t rpc__req__wifi_scan_get_ap_records__get_packed_size + (const RpcReqWifiScanGetApRecords *message); +size_t rpc__req__wifi_scan_get_ap_records__pack + (const RpcReqWifiScanGetApRecords *message, + uint8_t *out); +size_t rpc__req__wifi_scan_get_ap_records__pack_to_buffer + (const RpcReqWifiScanGetApRecords *message, + ProtobufCBuffer *buffer); +RpcReqWifiScanGetApRecords * + rpc__req__wifi_scan_get_ap_records__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_scan_get_ap_records__free_unpacked + (RpcReqWifiScanGetApRecords *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiScanGetApRecords methods */ +void rpc__resp__wifi_scan_get_ap_records__init + (RpcRespWifiScanGetApRecords *message); +size_t rpc__resp__wifi_scan_get_ap_records__get_packed_size + (const RpcRespWifiScanGetApRecords *message); +size_t rpc__resp__wifi_scan_get_ap_records__pack + (const RpcRespWifiScanGetApRecords *message, + uint8_t *out); +size_t rpc__resp__wifi_scan_get_ap_records__pack_to_buffer + (const RpcRespWifiScanGetApRecords *message, + ProtobufCBuffer *buffer); +RpcRespWifiScanGetApRecords * + rpc__resp__wifi_scan_get_ap_records__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_scan_get_ap_records__free_unpacked + (RpcRespWifiScanGetApRecords *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiScanGetApRecord methods */ +void rpc__req__wifi_scan_get_ap_record__init + (RpcReqWifiScanGetApRecord *message); +size_t rpc__req__wifi_scan_get_ap_record__get_packed_size + (const RpcReqWifiScanGetApRecord *message); +size_t rpc__req__wifi_scan_get_ap_record__pack + (const RpcReqWifiScanGetApRecord *message, + uint8_t *out); +size_t rpc__req__wifi_scan_get_ap_record__pack_to_buffer + (const RpcReqWifiScanGetApRecord *message, + ProtobufCBuffer *buffer); +RpcReqWifiScanGetApRecord * + rpc__req__wifi_scan_get_ap_record__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_scan_get_ap_record__free_unpacked + (RpcReqWifiScanGetApRecord *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiScanGetApRecord methods */ +void rpc__resp__wifi_scan_get_ap_record__init + (RpcRespWifiScanGetApRecord *message); +size_t rpc__resp__wifi_scan_get_ap_record__get_packed_size + (const RpcRespWifiScanGetApRecord *message); +size_t rpc__resp__wifi_scan_get_ap_record__pack + (const RpcRespWifiScanGetApRecord *message, + uint8_t *out); +size_t rpc__resp__wifi_scan_get_ap_record__pack_to_buffer + (const RpcRespWifiScanGetApRecord *message, + ProtobufCBuffer *buffer); +RpcRespWifiScanGetApRecord * + rpc__resp__wifi_scan_get_ap_record__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_scan_get_ap_record__free_unpacked + (RpcRespWifiScanGetApRecord *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiClearApList methods */ +void rpc__req__wifi_clear_ap_list__init + (RpcReqWifiClearApList *message); +size_t rpc__req__wifi_clear_ap_list__get_packed_size + (const RpcReqWifiClearApList *message); +size_t rpc__req__wifi_clear_ap_list__pack + (const RpcReqWifiClearApList *message, + uint8_t *out); +size_t rpc__req__wifi_clear_ap_list__pack_to_buffer + (const RpcReqWifiClearApList *message, + ProtobufCBuffer *buffer); +RpcReqWifiClearApList * + rpc__req__wifi_clear_ap_list__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_clear_ap_list__free_unpacked + (RpcReqWifiClearApList *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiClearApList methods */ +void rpc__resp__wifi_clear_ap_list__init + (RpcRespWifiClearApList *message); +size_t rpc__resp__wifi_clear_ap_list__get_packed_size + (const RpcRespWifiClearApList *message); +size_t rpc__resp__wifi_clear_ap_list__pack + (const RpcRespWifiClearApList *message, + uint8_t *out); +size_t rpc__resp__wifi_clear_ap_list__pack_to_buffer + (const RpcRespWifiClearApList *message, + ProtobufCBuffer *buffer); +RpcRespWifiClearApList * + rpc__resp__wifi_clear_ap_list__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_clear_ap_list__free_unpacked + (RpcRespWifiClearApList *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiRestore methods */ +void rpc__req__wifi_restore__init + (RpcReqWifiRestore *message); +size_t rpc__req__wifi_restore__get_packed_size + (const RpcReqWifiRestore *message); +size_t rpc__req__wifi_restore__pack + (const RpcReqWifiRestore *message, + uint8_t *out); +size_t rpc__req__wifi_restore__pack_to_buffer + (const RpcReqWifiRestore *message, + ProtobufCBuffer *buffer); +RpcReqWifiRestore * + rpc__req__wifi_restore__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_restore__free_unpacked + (RpcReqWifiRestore *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiRestore methods */ +void rpc__resp__wifi_restore__init + (RpcRespWifiRestore *message); +size_t rpc__resp__wifi_restore__get_packed_size + (const RpcRespWifiRestore *message); +size_t rpc__resp__wifi_restore__pack + (const RpcRespWifiRestore *message, + uint8_t *out); +size_t rpc__resp__wifi_restore__pack_to_buffer + (const RpcRespWifiRestore *message, + ProtobufCBuffer *buffer); +RpcRespWifiRestore * + rpc__resp__wifi_restore__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_restore__free_unpacked + (RpcRespWifiRestore *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiClearFastConnect methods */ +void rpc__req__wifi_clear_fast_connect__init + (RpcReqWifiClearFastConnect *message); +size_t rpc__req__wifi_clear_fast_connect__get_packed_size + (const RpcReqWifiClearFastConnect *message); +size_t rpc__req__wifi_clear_fast_connect__pack + (const RpcReqWifiClearFastConnect *message, + uint8_t *out); +size_t rpc__req__wifi_clear_fast_connect__pack_to_buffer + (const RpcReqWifiClearFastConnect *message, + ProtobufCBuffer *buffer); +RpcReqWifiClearFastConnect * + rpc__req__wifi_clear_fast_connect__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_clear_fast_connect__free_unpacked + (RpcReqWifiClearFastConnect *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiClearFastConnect methods */ +void rpc__resp__wifi_clear_fast_connect__init + (RpcRespWifiClearFastConnect *message); +size_t rpc__resp__wifi_clear_fast_connect__get_packed_size + (const RpcRespWifiClearFastConnect *message); +size_t rpc__resp__wifi_clear_fast_connect__pack + (const RpcRespWifiClearFastConnect *message, + uint8_t *out); +size_t rpc__resp__wifi_clear_fast_connect__pack_to_buffer + (const RpcRespWifiClearFastConnect *message, + ProtobufCBuffer *buffer); +RpcRespWifiClearFastConnect * + rpc__resp__wifi_clear_fast_connect__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_clear_fast_connect__free_unpacked + (RpcRespWifiClearFastConnect *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiDeauthSta methods */ +void rpc__req__wifi_deauth_sta__init + (RpcReqWifiDeauthSta *message); +size_t rpc__req__wifi_deauth_sta__get_packed_size + (const RpcReqWifiDeauthSta *message); +size_t rpc__req__wifi_deauth_sta__pack + (const RpcReqWifiDeauthSta *message, + uint8_t *out); +size_t rpc__req__wifi_deauth_sta__pack_to_buffer + (const RpcReqWifiDeauthSta *message, + ProtobufCBuffer *buffer); +RpcReqWifiDeauthSta * + rpc__req__wifi_deauth_sta__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_deauth_sta__free_unpacked + (RpcReqWifiDeauthSta *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiDeauthSta methods */ +void rpc__resp__wifi_deauth_sta__init + (RpcRespWifiDeauthSta *message); +size_t rpc__resp__wifi_deauth_sta__get_packed_size + (const RpcRespWifiDeauthSta *message); +size_t rpc__resp__wifi_deauth_sta__pack + (const RpcRespWifiDeauthSta *message, + uint8_t *out); +size_t rpc__resp__wifi_deauth_sta__pack_to_buffer + (const RpcRespWifiDeauthSta *message, + ProtobufCBuffer *buffer); +RpcRespWifiDeauthSta * + rpc__resp__wifi_deauth_sta__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_deauth_sta__free_unpacked + (RpcRespWifiDeauthSta *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiStaGetApInfo methods */ +void rpc__req__wifi_sta_get_ap_info__init + (RpcReqWifiStaGetApInfo *message); +size_t rpc__req__wifi_sta_get_ap_info__get_packed_size + (const RpcReqWifiStaGetApInfo *message); +size_t rpc__req__wifi_sta_get_ap_info__pack + (const RpcReqWifiStaGetApInfo *message, + uint8_t *out); +size_t rpc__req__wifi_sta_get_ap_info__pack_to_buffer + (const RpcReqWifiStaGetApInfo *message, + ProtobufCBuffer *buffer); +RpcReqWifiStaGetApInfo * + rpc__req__wifi_sta_get_ap_info__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_sta_get_ap_info__free_unpacked + (RpcReqWifiStaGetApInfo *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiStaGetApInfo methods */ +void rpc__resp__wifi_sta_get_ap_info__init + (RpcRespWifiStaGetApInfo *message); +size_t rpc__resp__wifi_sta_get_ap_info__get_packed_size + (const RpcRespWifiStaGetApInfo *message); +size_t rpc__resp__wifi_sta_get_ap_info__pack + (const RpcRespWifiStaGetApInfo *message, + uint8_t *out); +size_t rpc__resp__wifi_sta_get_ap_info__pack_to_buffer + (const RpcRespWifiStaGetApInfo *message, + ProtobufCBuffer *buffer); +RpcRespWifiStaGetApInfo * + rpc__resp__wifi_sta_get_ap_info__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_sta_get_ap_info__free_unpacked + (RpcRespWifiStaGetApInfo *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiSetProtocol methods */ +void rpc__req__wifi_set_protocol__init + (RpcReqWifiSetProtocol *message); +size_t rpc__req__wifi_set_protocol__get_packed_size + (const RpcReqWifiSetProtocol *message); +size_t rpc__req__wifi_set_protocol__pack + (const RpcReqWifiSetProtocol *message, + uint8_t *out); +size_t rpc__req__wifi_set_protocol__pack_to_buffer + (const RpcReqWifiSetProtocol *message, + ProtobufCBuffer *buffer); +RpcReqWifiSetProtocol * + rpc__req__wifi_set_protocol__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_set_protocol__free_unpacked + (RpcReqWifiSetProtocol *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiSetProtocol methods */ +void rpc__resp__wifi_set_protocol__init + (RpcRespWifiSetProtocol *message); +size_t rpc__resp__wifi_set_protocol__get_packed_size + (const RpcRespWifiSetProtocol *message); +size_t rpc__resp__wifi_set_protocol__pack + (const RpcRespWifiSetProtocol *message, + uint8_t *out); +size_t rpc__resp__wifi_set_protocol__pack_to_buffer + (const RpcRespWifiSetProtocol *message, + ProtobufCBuffer *buffer); +RpcRespWifiSetProtocol * + rpc__resp__wifi_set_protocol__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_set_protocol__free_unpacked + (RpcRespWifiSetProtocol *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiGetProtocol methods */ +void rpc__req__wifi_get_protocol__init + (RpcReqWifiGetProtocol *message); +size_t rpc__req__wifi_get_protocol__get_packed_size + (const RpcReqWifiGetProtocol *message); +size_t rpc__req__wifi_get_protocol__pack + (const RpcReqWifiGetProtocol *message, + uint8_t *out); +size_t rpc__req__wifi_get_protocol__pack_to_buffer + (const RpcReqWifiGetProtocol *message, + ProtobufCBuffer *buffer); +RpcReqWifiGetProtocol * + rpc__req__wifi_get_protocol__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_get_protocol__free_unpacked + (RpcReqWifiGetProtocol *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiGetProtocol methods */ +void rpc__resp__wifi_get_protocol__init + (RpcRespWifiGetProtocol *message); +size_t rpc__resp__wifi_get_protocol__get_packed_size + (const RpcRespWifiGetProtocol *message); +size_t rpc__resp__wifi_get_protocol__pack + (const RpcRespWifiGetProtocol *message, + uint8_t *out); +size_t rpc__resp__wifi_get_protocol__pack_to_buffer + (const RpcRespWifiGetProtocol *message, + ProtobufCBuffer *buffer); +RpcRespWifiGetProtocol * + rpc__resp__wifi_get_protocol__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_get_protocol__free_unpacked + (RpcRespWifiGetProtocol *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiSetBandwidth methods */ +void rpc__req__wifi_set_bandwidth__init + (RpcReqWifiSetBandwidth *message); +size_t rpc__req__wifi_set_bandwidth__get_packed_size + (const RpcReqWifiSetBandwidth *message); +size_t rpc__req__wifi_set_bandwidth__pack + (const RpcReqWifiSetBandwidth *message, + uint8_t *out); +size_t rpc__req__wifi_set_bandwidth__pack_to_buffer + (const RpcReqWifiSetBandwidth *message, + ProtobufCBuffer *buffer); +RpcReqWifiSetBandwidth * + rpc__req__wifi_set_bandwidth__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_set_bandwidth__free_unpacked + (RpcReqWifiSetBandwidth *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiSetBandwidth methods */ +void rpc__resp__wifi_set_bandwidth__init + (RpcRespWifiSetBandwidth *message); +size_t rpc__resp__wifi_set_bandwidth__get_packed_size + (const RpcRespWifiSetBandwidth *message); +size_t rpc__resp__wifi_set_bandwidth__pack + (const RpcRespWifiSetBandwidth *message, + uint8_t *out); +size_t rpc__resp__wifi_set_bandwidth__pack_to_buffer + (const RpcRespWifiSetBandwidth *message, + ProtobufCBuffer *buffer); +RpcRespWifiSetBandwidth * + rpc__resp__wifi_set_bandwidth__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_set_bandwidth__free_unpacked + (RpcRespWifiSetBandwidth *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiGetBandwidth methods */ +void rpc__req__wifi_get_bandwidth__init + (RpcReqWifiGetBandwidth *message); +size_t rpc__req__wifi_get_bandwidth__get_packed_size + (const RpcReqWifiGetBandwidth *message); +size_t rpc__req__wifi_get_bandwidth__pack + (const RpcReqWifiGetBandwidth *message, + uint8_t *out); +size_t rpc__req__wifi_get_bandwidth__pack_to_buffer + (const RpcReqWifiGetBandwidth *message, + ProtobufCBuffer *buffer); +RpcReqWifiGetBandwidth * + rpc__req__wifi_get_bandwidth__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_get_bandwidth__free_unpacked + (RpcReqWifiGetBandwidth *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiGetBandwidth methods */ +void rpc__resp__wifi_get_bandwidth__init + (RpcRespWifiGetBandwidth *message); +size_t rpc__resp__wifi_get_bandwidth__get_packed_size + (const RpcRespWifiGetBandwidth *message); +size_t rpc__resp__wifi_get_bandwidth__pack + (const RpcRespWifiGetBandwidth *message, + uint8_t *out); +size_t rpc__resp__wifi_get_bandwidth__pack_to_buffer + (const RpcRespWifiGetBandwidth *message, + ProtobufCBuffer *buffer); +RpcRespWifiGetBandwidth * + rpc__resp__wifi_get_bandwidth__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_get_bandwidth__free_unpacked + (RpcRespWifiGetBandwidth *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiSetChannel methods */ +void rpc__req__wifi_set_channel__init + (RpcReqWifiSetChannel *message); +size_t rpc__req__wifi_set_channel__get_packed_size + (const RpcReqWifiSetChannel *message); +size_t rpc__req__wifi_set_channel__pack + (const RpcReqWifiSetChannel *message, + uint8_t *out); +size_t rpc__req__wifi_set_channel__pack_to_buffer + (const RpcReqWifiSetChannel *message, + ProtobufCBuffer *buffer); +RpcReqWifiSetChannel * + rpc__req__wifi_set_channel__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_set_channel__free_unpacked + (RpcReqWifiSetChannel *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiSetChannel methods */ +void rpc__resp__wifi_set_channel__init + (RpcRespWifiSetChannel *message); +size_t rpc__resp__wifi_set_channel__get_packed_size + (const RpcRespWifiSetChannel *message); +size_t rpc__resp__wifi_set_channel__pack + (const RpcRespWifiSetChannel *message, + uint8_t *out); +size_t rpc__resp__wifi_set_channel__pack_to_buffer + (const RpcRespWifiSetChannel *message, + ProtobufCBuffer *buffer); +RpcRespWifiSetChannel * + rpc__resp__wifi_set_channel__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_set_channel__free_unpacked + (RpcRespWifiSetChannel *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiGetChannel methods */ +void rpc__req__wifi_get_channel__init + (RpcReqWifiGetChannel *message); +size_t rpc__req__wifi_get_channel__get_packed_size + (const RpcReqWifiGetChannel *message); +size_t rpc__req__wifi_get_channel__pack + (const RpcReqWifiGetChannel *message, + uint8_t *out); +size_t rpc__req__wifi_get_channel__pack_to_buffer + (const RpcReqWifiGetChannel *message, + ProtobufCBuffer *buffer); +RpcReqWifiGetChannel * + rpc__req__wifi_get_channel__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_get_channel__free_unpacked + (RpcReqWifiGetChannel *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiGetChannel methods */ +void rpc__resp__wifi_get_channel__init + (RpcRespWifiGetChannel *message); +size_t rpc__resp__wifi_get_channel__get_packed_size + (const RpcRespWifiGetChannel *message); +size_t rpc__resp__wifi_get_channel__pack + (const RpcRespWifiGetChannel *message, + uint8_t *out); +size_t rpc__resp__wifi_get_channel__pack_to_buffer + (const RpcRespWifiGetChannel *message, + ProtobufCBuffer *buffer); +RpcRespWifiGetChannel * + rpc__resp__wifi_get_channel__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_get_channel__free_unpacked + (RpcRespWifiGetChannel *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiSetStorage methods */ +void rpc__req__wifi_set_storage__init + (RpcReqWifiSetStorage *message); +size_t rpc__req__wifi_set_storage__get_packed_size + (const RpcReqWifiSetStorage *message); +size_t rpc__req__wifi_set_storage__pack + (const RpcReqWifiSetStorage *message, + uint8_t *out); +size_t rpc__req__wifi_set_storage__pack_to_buffer + (const RpcReqWifiSetStorage *message, + ProtobufCBuffer *buffer); +RpcReqWifiSetStorage * + rpc__req__wifi_set_storage__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_set_storage__free_unpacked + (RpcReqWifiSetStorage *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiSetStorage methods */ +void rpc__resp__wifi_set_storage__init + (RpcRespWifiSetStorage *message); +size_t rpc__resp__wifi_set_storage__get_packed_size + (const RpcRespWifiSetStorage *message); +size_t rpc__resp__wifi_set_storage__pack + (const RpcRespWifiSetStorage *message, + uint8_t *out); +size_t rpc__resp__wifi_set_storage__pack_to_buffer + (const RpcRespWifiSetStorage *message, + ProtobufCBuffer *buffer); +RpcRespWifiSetStorage * + rpc__resp__wifi_set_storage__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_set_storage__free_unpacked + (RpcRespWifiSetStorage *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiSetCountryCode methods */ +void rpc__req__wifi_set_country_code__init + (RpcReqWifiSetCountryCode *message); +size_t rpc__req__wifi_set_country_code__get_packed_size + (const RpcReqWifiSetCountryCode *message); +size_t rpc__req__wifi_set_country_code__pack + (const RpcReqWifiSetCountryCode *message, + uint8_t *out); +size_t rpc__req__wifi_set_country_code__pack_to_buffer + (const RpcReqWifiSetCountryCode *message, + ProtobufCBuffer *buffer); +RpcReqWifiSetCountryCode * + rpc__req__wifi_set_country_code__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_set_country_code__free_unpacked + (RpcReqWifiSetCountryCode *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiSetCountryCode methods */ +void rpc__resp__wifi_set_country_code__init + (RpcRespWifiSetCountryCode *message); +size_t rpc__resp__wifi_set_country_code__get_packed_size + (const RpcRespWifiSetCountryCode *message); +size_t rpc__resp__wifi_set_country_code__pack + (const RpcRespWifiSetCountryCode *message, + uint8_t *out); +size_t rpc__resp__wifi_set_country_code__pack_to_buffer + (const RpcRespWifiSetCountryCode *message, + ProtobufCBuffer *buffer); +RpcRespWifiSetCountryCode * + rpc__resp__wifi_set_country_code__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_set_country_code__free_unpacked + (RpcRespWifiSetCountryCode *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiGetCountryCode methods */ +void rpc__req__wifi_get_country_code__init + (RpcReqWifiGetCountryCode *message); +size_t rpc__req__wifi_get_country_code__get_packed_size + (const RpcReqWifiGetCountryCode *message); +size_t rpc__req__wifi_get_country_code__pack + (const RpcReqWifiGetCountryCode *message, + uint8_t *out); +size_t rpc__req__wifi_get_country_code__pack_to_buffer + (const RpcReqWifiGetCountryCode *message, + ProtobufCBuffer *buffer); +RpcReqWifiGetCountryCode * + rpc__req__wifi_get_country_code__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_get_country_code__free_unpacked + (RpcReqWifiGetCountryCode *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiGetCountryCode methods */ +void rpc__resp__wifi_get_country_code__init + (RpcRespWifiGetCountryCode *message); +size_t rpc__resp__wifi_get_country_code__get_packed_size + (const RpcRespWifiGetCountryCode *message); +size_t rpc__resp__wifi_get_country_code__pack + (const RpcRespWifiGetCountryCode *message, + uint8_t *out); +size_t rpc__resp__wifi_get_country_code__pack_to_buffer + (const RpcRespWifiGetCountryCode *message, + ProtobufCBuffer *buffer); +RpcRespWifiGetCountryCode * + rpc__resp__wifi_get_country_code__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_get_country_code__free_unpacked + (RpcRespWifiGetCountryCode *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiSetCountry methods */ +void rpc__req__wifi_set_country__init + (RpcReqWifiSetCountry *message); +size_t rpc__req__wifi_set_country__get_packed_size + (const RpcReqWifiSetCountry *message); +size_t rpc__req__wifi_set_country__pack + (const RpcReqWifiSetCountry *message, + uint8_t *out); +size_t rpc__req__wifi_set_country__pack_to_buffer + (const RpcReqWifiSetCountry *message, + ProtobufCBuffer *buffer); +RpcReqWifiSetCountry * + rpc__req__wifi_set_country__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_set_country__free_unpacked + (RpcReqWifiSetCountry *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiSetCountry methods */ +void rpc__resp__wifi_set_country__init + (RpcRespWifiSetCountry *message); +size_t rpc__resp__wifi_set_country__get_packed_size + (const RpcRespWifiSetCountry *message); +size_t rpc__resp__wifi_set_country__pack + (const RpcRespWifiSetCountry *message, + uint8_t *out); +size_t rpc__resp__wifi_set_country__pack_to_buffer + (const RpcRespWifiSetCountry *message, + ProtobufCBuffer *buffer); +RpcRespWifiSetCountry * + rpc__resp__wifi_set_country__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_set_country__free_unpacked + (RpcRespWifiSetCountry *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiGetCountry methods */ +void rpc__req__wifi_get_country__init + (RpcReqWifiGetCountry *message); +size_t rpc__req__wifi_get_country__get_packed_size + (const RpcReqWifiGetCountry *message); +size_t rpc__req__wifi_get_country__pack + (const RpcReqWifiGetCountry *message, + uint8_t *out); +size_t rpc__req__wifi_get_country__pack_to_buffer + (const RpcReqWifiGetCountry *message, + ProtobufCBuffer *buffer); +RpcReqWifiGetCountry * + rpc__req__wifi_get_country__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_get_country__free_unpacked + (RpcReqWifiGetCountry *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiGetCountry methods */ +void rpc__resp__wifi_get_country__init + (RpcRespWifiGetCountry *message); +size_t rpc__resp__wifi_get_country__get_packed_size + (const RpcRespWifiGetCountry *message); +size_t rpc__resp__wifi_get_country__pack + (const RpcRespWifiGetCountry *message, + uint8_t *out); +size_t rpc__resp__wifi_get_country__pack_to_buffer + (const RpcRespWifiGetCountry *message, + ProtobufCBuffer *buffer); +RpcRespWifiGetCountry * + rpc__resp__wifi_get_country__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_get_country__free_unpacked + (RpcRespWifiGetCountry *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiApGetStaList methods */ +void rpc__req__wifi_ap_get_sta_list__init + (RpcReqWifiApGetStaList *message); +size_t rpc__req__wifi_ap_get_sta_list__get_packed_size + (const RpcReqWifiApGetStaList *message); +size_t rpc__req__wifi_ap_get_sta_list__pack + (const RpcReqWifiApGetStaList *message, + uint8_t *out); +size_t rpc__req__wifi_ap_get_sta_list__pack_to_buffer + (const RpcReqWifiApGetStaList *message, + ProtobufCBuffer *buffer); +RpcReqWifiApGetStaList * + rpc__req__wifi_ap_get_sta_list__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_ap_get_sta_list__free_unpacked + (RpcReqWifiApGetStaList *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiApGetStaList methods */ +void rpc__resp__wifi_ap_get_sta_list__init + (RpcRespWifiApGetStaList *message); +size_t rpc__resp__wifi_ap_get_sta_list__get_packed_size + (const RpcRespWifiApGetStaList *message); +size_t rpc__resp__wifi_ap_get_sta_list__pack + (const RpcRespWifiApGetStaList *message, + uint8_t *out); +size_t rpc__resp__wifi_ap_get_sta_list__pack_to_buffer + (const RpcRespWifiApGetStaList *message, + ProtobufCBuffer *buffer); +RpcRespWifiApGetStaList * + rpc__resp__wifi_ap_get_sta_list__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_ap_get_sta_list__free_unpacked + (RpcRespWifiApGetStaList *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiApGetStaAid methods */ +void rpc__req__wifi_ap_get_sta_aid__init + (RpcReqWifiApGetStaAid *message); +size_t rpc__req__wifi_ap_get_sta_aid__get_packed_size + (const RpcReqWifiApGetStaAid *message); +size_t rpc__req__wifi_ap_get_sta_aid__pack + (const RpcReqWifiApGetStaAid *message, + uint8_t *out); +size_t rpc__req__wifi_ap_get_sta_aid__pack_to_buffer + (const RpcReqWifiApGetStaAid *message, + ProtobufCBuffer *buffer); +RpcReqWifiApGetStaAid * + rpc__req__wifi_ap_get_sta_aid__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_ap_get_sta_aid__free_unpacked + (RpcReqWifiApGetStaAid *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiStaGetNegotiatedPhymode methods */ +void rpc__req__wifi_sta_get_negotiated_phymode__init + (RpcReqWifiStaGetNegotiatedPhymode *message); +size_t rpc__req__wifi_sta_get_negotiated_phymode__get_packed_size + (const RpcReqWifiStaGetNegotiatedPhymode *message); +size_t rpc__req__wifi_sta_get_negotiated_phymode__pack + (const RpcReqWifiStaGetNegotiatedPhymode *message, + uint8_t *out); +size_t rpc__req__wifi_sta_get_negotiated_phymode__pack_to_buffer + (const RpcReqWifiStaGetNegotiatedPhymode *message, + ProtobufCBuffer *buffer); +RpcReqWifiStaGetNegotiatedPhymode * + rpc__req__wifi_sta_get_negotiated_phymode__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_sta_get_negotiated_phymode__free_unpacked + (RpcReqWifiStaGetNegotiatedPhymode *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiStaGetNegotiatedPhymode methods */ +void rpc__resp__wifi_sta_get_negotiated_phymode__init + (RpcRespWifiStaGetNegotiatedPhymode *message); +size_t rpc__resp__wifi_sta_get_negotiated_phymode__get_packed_size + (const RpcRespWifiStaGetNegotiatedPhymode *message); +size_t rpc__resp__wifi_sta_get_negotiated_phymode__pack + (const RpcRespWifiStaGetNegotiatedPhymode *message, + uint8_t *out); +size_t rpc__resp__wifi_sta_get_negotiated_phymode__pack_to_buffer + (const RpcRespWifiStaGetNegotiatedPhymode *message, + ProtobufCBuffer *buffer); +RpcRespWifiStaGetNegotiatedPhymode * + rpc__resp__wifi_sta_get_negotiated_phymode__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_sta_get_negotiated_phymode__free_unpacked + (RpcRespWifiStaGetNegotiatedPhymode *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiApGetStaAid methods */ +void rpc__resp__wifi_ap_get_sta_aid__init + (RpcRespWifiApGetStaAid *message); +size_t rpc__resp__wifi_ap_get_sta_aid__get_packed_size + (const RpcRespWifiApGetStaAid *message); +size_t rpc__resp__wifi_ap_get_sta_aid__pack + (const RpcRespWifiApGetStaAid *message, + uint8_t *out); +size_t rpc__resp__wifi_ap_get_sta_aid__pack_to_buffer + (const RpcRespWifiApGetStaAid *message, + ProtobufCBuffer *buffer); +RpcRespWifiApGetStaAid * + rpc__resp__wifi_ap_get_sta_aid__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_ap_get_sta_aid__free_unpacked + (RpcRespWifiApGetStaAid *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiStaGetRssi methods */ +void rpc__req__wifi_sta_get_rssi__init + (RpcReqWifiStaGetRssi *message); +size_t rpc__req__wifi_sta_get_rssi__get_packed_size + (const RpcReqWifiStaGetRssi *message); +size_t rpc__req__wifi_sta_get_rssi__pack + (const RpcReqWifiStaGetRssi *message, + uint8_t *out); +size_t rpc__req__wifi_sta_get_rssi__pack_to_buffer + (const RpcReqWifiStaGetRssi *message, + ProtobufCBuffer *buffer); +RpcReqWifiStaGetRssi * + rpc__req__wifi_sta_get_rssi__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_sta_get_rssi__free_unpacked + (RpcReqWifiStaGetRssi *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiStaGetRssi methods */ +void rpc__resp__wifi_sta_get_rssi__init + (RpcRespWifiStaGetRssi *message); +size_t rpc__resp__wifi_sta_get_rssi__get_packed_size + (const RpcRespWifiStaGetRssi *message); +size_t rpc__resp__wifi_sta_get_rssi__pack + (const RpcRespWifiStaGetRssi *message, + uint8_t *out); +size_t rpc__resp__wifi_sta_get_rssi__pack_to_buffer + (const RpcRespWifiStaGetRssi *message, + ProtobufCBuffer *buffer); +RpcRespWifiStaGetRssi * + rpc__resp__wifi_sta_get_rssi__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_sta_get_rssi__free_unpacked + (RpcRespWifiStaGetRssi *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiScanParams methods */ +void rpc__req__wifi_scan_params__init + (RpcReqWifiScanParams *message); +size_t rpc__req__wifi_scan_params__get_packed_size + (const RpcReqWifiScanParams *message); +size_t rpc__req__wifi_scan_params__pack + (const RpcReqWifiScanParams *message, + uint8_t *out); +size_t rpc__req__wifi_scan_params__pack_to_buffer + (const RpcReqWifiScanParams *message, + ProtobufCBuffer *buffer); +RpcReqWifiScanParams * + rpc__req__wifi_scan_params__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_scan_params__free_unpacked + (RpcReqWifiScanParams *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiScanParams methods */ +void rpc__resp__wifi_scan_params__init + (RpcRespWifiScanParams *message); +size_t rpc__resp__wifi_scan_params__get_packed_size + (const RpcRespWifiScanParams *message); +size_t rpc__resp__wifi_scan_params__pack + (const RpcRespWifiScanParams *message, + uint8_t *out); +size_t rpc__resp__wifi_scan_params__pack_to_buffer + (const RpcRespWifiScanParams *message, + ProtobufCBuffer *buffer); +RpcRespWifiScanParams * + rpc__resp__wifi_scan_params__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_scan_params__free_unpacked + (RpcRespWifiScanParams *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiStaGetAid methods */ +void rpc__req__wifi_sta_get_aid__init + (RpcReqWifiStaGetAid *message); +size_t rpc__req__wifi_sta_get_aid__get_packed_size + (const RpcReqWifiStaGetAid *message); +size_t rpc__req__wifi_sta_get_aid__pack + (const RpcReqWifiStaGetAid *message, + uint8_t *out); +size_t rpc__req__wifi_sta_get_aid__pack_to_buffer + (const RpcReqWifiStaGetAid *message, + ProtobufCBuffer *buffer); +RpcReqWifiStaGetAid * + rpc__req__wifi_sta_get_aid__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_sta_get_aid__free_unpacked + (RpcReqWifiStaGetAid *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiStaGetAid methods */ +void rpc__resp__wifi_sta_get_aid__init + (RpcRespWifiStaGetAid *message); +size_t rpc__resp__wifi_sta_get_aid__get_packed_size + (const RpcRespWifiStaGetAid *message); +size_t rpc__resp__wifi_sta_get_aid__pack + (const RpcRespWifiStaGetAid *message, + uint8_t *out); +size_t rpc__resp__wifi_sta_get_aid__pack_to_buffer + (const RpcRespWifiStaGetAid *message, + ProtobufCBuffer *buffer); +RpcRespWifiStaGetAid * + rpc__resp__wifi_sta_get_aid__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_sta_get_aid__free_unpacked + (RpcRespWifiStaGetAid *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiSetProtocols methods */ +void rpc__req__wifi_set_protocols__init + (RpcReqWifiSetProtocols *message); +size_t rpc__req__wifi_set_protocols__get_packed_size + (const RpcReqWifiSetProtocols *message); +size_t rpc__req__wifi_set_protocols__pack + (const RpcReqWifiSetProtocols *message, + uint8_t *out); +size_t rpc__req__wifi_set_protocols__pack_to_buffer + (const RpcReqWifiSetProtocols *message, + ProtobufCBuffer *buffer); +RpcReqWifiSetProtocols * + rpc__req__wifi_set_protocols__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_set_protocols__free_unpacked + (RpcReqWifiSetProtocols *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiSetProtocols methods */ +void rpc__resp__wifi_set_protocols__init + (RpcRespWifiSetProtocols *message); +size_t rpc__resp__wifi_set_protocols__get_packed_size + (const RpcRespWifiSetProtocols *message); +size_t rpc__resp__wifi_set_protocols__pack + (const RpcRespWifiSetProtocols *message, + uint8_t *out); +size_t rpc__resp__wifi_set_protocols__pack_to_buffer + (const RpcRespWifiSetProtocols *message, + ProtobufCBuffer *buffer); +RpcRespWifiSetProtocols * + rpc__resp__wifi_set_protocols__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_set_protocols__free_unpacked + (RpcRespWifiSetProtocols *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiGetProtocols methods */ +void rpc__req__wifi_get_protocols__init + (RpcReqWifiGetProtocols *message); +size_t rpc__req__wifi_get_protocols__get_packed_size + (const RpcReqWifiGetProtocols *message); +size_t rpc__req__wifi_get_protocols__pack + (const RpcReqWifiGetProtocols *message, + uint8_t *out); +size_t rpc__req__wifi_get_protocols__pack_to_buffer + (const RpcReqWifiGetProtocols *message, + ProtobufCBuffer *buffer); +RpcReqWifiGetProtocols * + rpc__req__wifi_get_protocols__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_get_protocols__free_unpacked + (RpcReqWifiGetProtocols *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiGetProtocols methods */ +void rpc__resp__wifi_get_protocols__init + (RpcRespWifiGetProtocols *message); +size_t rpc__resp__wifi_get_protocols__get_packed_size + (const RpcRespWifiGetProtocols *message); +size_t rpc__resp__wifi_get_protocols__pack + (const RpcRespWifiGetProtocols *message, + uint8_t *out); +size_t rpc__resp__wifi_get_protocols__pack_to_buffer + (const RpcRespWifiGetProtocols *message, + ProtobufCBuffer *buffer); +RpcRespWifiGetProtocols * + rpc__resp__wifi_get_protocols__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_get_protocols__free_unpacked + (RpcRespWifiGetProtocols *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiSetBandwidths methods */ +void rpc__req__wifi_set_bandwidths__init + (RpcReqWifiSetBandwidths *message); +size_t rpc__req__wifi_set_bandwidths__get_packed_size + (const RpcReqWifiSetBandwidths *message); +size_t rpc__req__wifi_set_bandwidths__pack + (const RpcReqWifiSetBandwidths *message, + uint8_t *out); +size_t rpc__req__wifi_set_bandwidths__pack_to_buffer + (const RpcReqWifiSetBandwidths *message, + ProtobufCBuffer *buffer); +RpcReqWifiSetBandwidths * + rpc__req__wifi_set_bandwidths__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_set_bandwidths__free_unpacked + (RpcReqWifiSetBandwidths *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiSetBandwidths methods */ +void rpc__resp__wifi_set_bandwidths__init + (RpcRespWifiSetBandwidths *message); +size_t rpc__resp__wifi_set_bandwidths__get_packed_size + (const RpcRespWifiSetBandwidths *message); +size_t rpc__resp__wifi_set_bandwidths__pack + (const RpcRespWifiSetBandwidths *message, + uint8_t *out); +size_t rpc__resp__wifi_set_bandwidths__pack_to_buffer + (const RpcRespWifiSetBandwidths *message, + ProtobufCBuffer *buffer); +RpcRespWifiSetBandwidths * + rpc__resp__wifi_set_bandwidths__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_set_bandwidths__free_unpacked + (RpcRespWifiSetBandwidths *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiGetBandwidths methods */ +void rpc__req__wifi_get_bandwidths__init + (RpcReqWifiGetBandwidths *message); +size_t rpc__req__wifi_get_bandwidths__get_packed_size + (const RpcReqWifiGetBandwidths *message); +size_t rpc__req__wifi_get_bandwidths__pack + (const RpcReqWifiGetBandwidths *message, + uint8_t *out); +size_t rpc__req__wifi_get_bandwidths__pack_to_buffer + (const RpcReqWifiGetBandwidths *message, + ProtobufCBuffer *buffer); +RpcReqWifiGetBandwidths * + rpc__req__wifi_get_bandwidths__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_get_bandwidths__free_unpacked + (RpcReqWifiGetBandwidths *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiGetBandwidths methods */ +void rpc__resp__wifi_get_bandwidths__init + (RpcRespWifiGetBandwidths *message); +size_t rpc__resp__wifi_get_bandwidths__get_packed_size + (const RpcRespWifiGetBandwidths *message); +size_t rpc__resp__wifi_get_bandwidths__pack + (const RpcRespWifiGetBandwidths *message, + uint8_t *out); +size_t rpc__resp__wifi_get_bandwidths__pack_to_buffer + (const RpcRespWifiGetBandwidths *message, + ProtobufCBuffer *buffer); +RpcRespWifiGetBandwidths * + rpc__resp__wifi_get_bandwidths__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_get_bandwidths__free_unpacked + (RpcRespWifiGetBandwidths *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiSetBand methods */ +void rpc__req__wifi_set_band__init + (RpcReqWifiSetBand *message); +size_t rpc__req__wifi_set_band__get_packed_size + (const RpcReqWifiSetBand *message); +size_t rpc__req__wifi_set_band__pack + (const RpcReqWifiSetBand *message, + uint8_t *out); +size_t rpc__req__wifi_set_band__pack_to_buffer + (const RpcReqWifiSetBand *message, + ProtobufCBuffer *buffer); +RpcReqWifiSetBand * + rpc__req__wifi_set_band__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_set_band__free_unpacked + (RpcReqWifiSetBand *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiSetBand methods */ +void rpc__resp__wifi_set_band__init + (RpcRespWifiSetBand *message); +size_t rpc__resp__wifi_set_band__get_packed_size + (const RpcRespWifiSetBand *message); +size_t rpc__resp__wifi_set_band__pack + (const RpcRespWifiSetBand *message, + uint8_t *out); +size_t rpc__resp__wifi_set_band__pack_to_buffer + (const RpcRespWifiSetBand *message, + ProtobufCBuffer *buffer); +RpcRespWifiSetBand * + rpc__resp__wifi_set_band__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_set_band__free_unpacked + (RpcRespWifiSetBand *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiGetBand methods */ +void rpc__req__wifi_get_band__init + (RpcReqWifiGetBand *message); +size_t rpc__req__wifi_get_band__get_packed_size + (const RpcReqWifiGetBand *message); +size_t rpc__req__wifi_get_band__pack + (const RpcReqWifiGetBand *message, + uint8_t *out); +size_t rpc__req__wifi_get_band__pack_to_buffer + (const RpcReqWifiGetBand *message, + ProtobufCBuffer *buffer); +RpcReqWifiGetBand * + rpc__req__wifi_get_band__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_get_band__free_unpacked + (RpcReqWifiGetBand *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiGetBand methods */ +void rpc__resp__wifi_get_band__init + (RpcRespWifiGetBand *message); +size_t rpc__resp__wifi_get_band__get_packed_size + (const RpcRespWifiGetBand *message); +size_t rpc__resp__wifi_get_band__pack + (const RpcRespWifiGetBand *message, + uint8_t *out); +size_t rpc__resp__wifi_get_band__pack_to_buffer + (const RpcRespWifiGetBand *message, + ProtobufCBuffer *buffer); +RpcRespWifiGetBand * + rpc__resp__wifi_get_band__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_get_band__free_unpacked + (RpcRespWifiGetBand *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiSetBandMode methods */ +void rpc__req__wifi_set_band_mode__init + (RpcReqWifiSetBandMode *message); +size_t rpc__req__wifi_set_band_mode__get_packed_size + (const RpcReqWifiSetBandMode *message); +size_t rpc__req__wifi_set_band_mode__pack + (const RpcReqWifiSetBandMode *message, + uint8_t *out); +size_t rpc__req__wifi_set_band_mode__pack_to_buffer + (const RpcReqWifiSetBandMode *message, + ProtobufCBuffer *buffer); +RpcReqWifiSetBandMode * + rpc__req__wifi_set_band_mode__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_set_band_mode__free_unpacked + (RpcReqWifiSetBandMode *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiSetBandMode methods */ +void rpc__resp__wifi_set_band_mode__init + (RpcRespWifiSetBandMode *message); +size_t rpc__resp__wifi_set_band_mode__get_packed_size + (const RpcRespWifiSetBandMode *message); +size_t rpc__resp__wifi_set_band_mode__pack + (const RpcRespWifiSetBandMode *message, + uint8_t *out); +size_t rpc__resp__wifi_set_band_mode__pack_to_buffer + (const RpcRespWifiSetBandMode *message, + ProtobufCBuffer *buffer); +RpcRespWifiSetBandMode * + rpc__resp__wifi_set_band_mode__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_set_band_mode__free_unpacked + (RpcRespWifiSetBandMode *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiGetBandMode methods */ +void rpc__req__wifi_get_band_mode__init + (RpcReqWifiGetBandMode *message); +size_t rpc__req__wifi_get_band_mode__get_packed_size + (const RpcReqWifiGetBandMode *message); +size_t rpc__req__wifi_get_band_mode__pack + (const RpcReqWifiGetBandMode *message, + uint8_t *out); +size_t rpc__req__wifi_get_band_mode__pack_to_buffer + (const RpcReqWifiGetBandMode *message, + ProtobufCBuffer *buffer); +RpcReqWifiGetBandMode * + rpc__req__wifi_get_band_mode__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_get_band_mode__free_unpacked + (RpcReqWifiGetBandMode *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiGetBandMode methods */ +void rpc__resp__wifi_get_band_mode__init + (RpcRespWifiGetBandMode *message); +size_t rpc__resp__wifi_get_band_mode__get_packed_size + (const RpcRespWifiGetBandMode *message); +size_t rpc__resp__wifi_get_band_mode__pack + (const RpcRespWifiGetBandMode *message, + uint8_t *out); +size_t rpc__resp__wifi_get_band_mode__pack_to_buffer + (const RpcRespWifiGetBandMode *message, + ProtobufCBuffer *buffer); +RpcRespWifiGetBandMode * + rpc__resp__wifi_get_band_mode__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_get_band_mode__free_unpacked + (RpcRespWifiGetBandMode *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiSetInactiveTime methods */ +void rpc__req__wifi_set_inactive_time__init + (RpcReqWifiSetInactiveTime *message); +size_t rpc__req__wifi_set_inactive_time__get_packed_size + (const RpcReqWifiSetInactiveTime *message); +size_t rpc__req__wifi_set_inactive_time__pack + (const RpcReqWifiSetInactiveTime *message, + uint8_t *out); +size_t rpc__req__wifi_set_inactive_time__pack_to_buffer + (const RpcReqWifiSetInactiveTime *message, + ProtobufCBuffer *buffer); +RpcReqWifiSetInactiveTime * + rpc__req__wifi_set_inactive_time__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_set_inactive_time__free_unpacked + (RpcReqWifiSetInactiveTime *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiSetInactiveTime methods */ +void rpc__resp__wifi_set_inactive_time__init + (RpcRespWifiSetInactiveTime *message); +size_t rpc__resp__wifi_set_inactive_time__get_packed_size + (const RpcRespWifiSetInactiveTime *message); +size_t rpc__resp__wifi_set_inactive_time__pack + (const RpcRespWifiSetInactiveTime *message, + uint8_t *out); +size_t rpc__resp__wifi_set_inactive_time__pack_to_buffer + (const RpcRespWifiSetInactiveTime *message, + ProtobufCBuffer *buffer); +RpcRespWifiSetInactiveTime * + rpc__resp__wifi_set_inactive_time__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_set_inactive_time__free_unpacked + (RpcRespWifiSetInactiveTime *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiGetInactiveTime methods */ +void rpc__req__wifi_get_inactive_time__init + (RpcReqWifiGetInactiveTime *message); +size_t rpc__req__wifi_get_inactive_time__get_packed_size + (const RpcReqWifiGetInactiveTime *message); +size_t rpc__req__wifi_get_inactive_time__pack + (const RpcReqWifiGetInactiveTime *message, + uint8_t *out); +size_t rpc__req__wifi_get_inactive_time__pack_to_buffer + (const RpcReqWifiGetInactiveTime *message, + ProtobufCBuffer *buffer); +RpcReqWifiGetInactiveTime * + rpc__req__wifi_get_inactive_time__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_get_inactive_time__free_unpacked + (RpcReqWifiGetInactiveTime *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiGetInactiveTime methods */ +void rpc__resp__wifi_get_inactive_time__init + (RpcRespWifiGetInactiveTime *message); +size_t rpc__resp__wifi_get_inactive_time__get_packed_size + (const RpcRespWifiGetInactiveTime *message); +size_t rpc__resp__wifi_get_inactive_time__pack + (const RpcRespWifiGetInactiveTime *message, + uint8_t *out); +size_t rpc__resp__wifi_get_inactive_time__pack_to_buffer + (const RpcRespWifiGetInactiveTime *message, + ProtobufCBuffer *buffer); +RpcRespWifiGetInactiveTime * + rpc__resp__wifi_get_inactive_time__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_get_inactive_time__free_unpacked + (RpcRespWifiGetInactiveTime *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiDisablePmfConfig methods */ +void rpc__req__wifi_disable_pmf_config__init + (RpcReqWifiDisablePmfConfig *message); +size_t rpc__req__wifi_disable_pmf_config__get_packed_size + (const RpcReqWifiDisablePmfConfig *message); +size_t rpc__req__wifi_disable_pmf_config__pack + (const RpcReqWifiDisablePmfConfig *message, + uint8_t *out); +size_t rpc__req__wifi_disable_pmf_config__pack_to_buffer + (const RpcReqWifiDisablePmfConfig *message, + ProtobufCBuffer *buffer); +RpcReqWifiDisablePmfConfig * + rpc__req__wifi_disable_pmf_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_disable_pmf_config__free_unpacked + (RpcReqWifiDisablePmfConfig *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiDisablePmfConfig methods */ +void rpc__resp__wifi_disable_pmf_config__init + (RpcRespWifiDisablePmfConfig *message); +size_t rpc__resp__wifi_disable_pmf_config__get_packed_size + (const RpcRespWifiDisablePmfConfig *message); +size_t rpc__resp__wifi_disable_pmf_config__pack + (const RpcRespWifiDisablePmfConfig *message, + uint8_t *out); +size_t rpc__resp__wifi_disable_pmf_config__pack_to_buffer + (const RpcRespWifiDisablePmfConfig *message, + ProtobufCBuffer *buffer); +RpcRespWifiDisablePmfConfig * + rpc__resp__wifi_disable_pmf_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_disable_pmf_config__free_unpacked + (RpcRespWifiDisablePmfConfig *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiStaItwtSetup methods */ +void rpc__req__wifi_sta_itwt_setup__init + (RpcReqWifiStaItwtSetup *message); +size_t rpc__req__wifi_sta_itwt_setup__get_packed_size + (const RpcReqWifiStaItwtSetup *message); +size_t rpc__req__wifi_sta_itwt_setup__pack + (const RpcReqWifiStaItwtSetup *message, + uint8_t *out); +size_t rpc__req__wifi_sta_itwt_setup__pack_to_buffer + (const RpcReqWifiStaItwtSetup *message, + ProtobufCBuffer *buffer); +RpcReqWifiStaItwtSetup * + rpc__req__wifi_sta_itwt_setup__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_sta_itwt_setup__free_unpacked + (RpcReqWifiStaItwtSetup *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiStaItwtSetup methods */ +void rpc__resp__wifi_sta_itwt_setup__init + (RpcRespWifiStaItwtSetup *message); +size_t rpc__resp__wifi_sta_itwt_setup__get_packed_size + (const RpcRespWifiStaItwtSetup *message); +size_t rpc__resp__wifi_sta_itwt_setup__pack + (const RpcRespWifiStaItwtSetup *message, + uint8_t *out); +size_t rpc__resp__wifi_sta_itwt_setup__pack_to_buffer + (const RpcRespWifiStaItwtSetup *message, + ProtobufCBuffer *buffer); +RpcRespWifiStaItwtSetup * + rpc__resp__wifi_sta_itwt_setup__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_sta_itwt_setup__free_unpacked + (RpcRespWifiStaItwtSetup *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiStaItwtTeardown methods */ +void rpc__req__wifi_sta_itwt_teardown__init + (RpcReqWifiStaItwtTeardown *message); +size_t rpc__req__wifi_sta_itwt_teardown__get_packed_size + (const RpcReqWifiStaItwtTeardown *message); +size_t rpc__req__wifi_sta_itwt_teardown__pack + (const RpcReqWifiStaItwtTeardown *message, + uint8_t *out); +size_t rpc__req__wifi_sta_itwt_teardown__pack_to_buffer + (const RpcReqWifiStaItwtTeardown *message, + ProtobufCBuffer *buffer); +RpcReqWifiStaItwtTeardown * + rpc__req__wifi_sta_itwt_teardown__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_sta_itwt_teardown__free_unpacked + (RpcReqWifiStaItwtTeardown *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiStaItwtTeardown methods */ +void rpc__resp__wifi_sta_itwt_teardown__init + (RpcRespWifiStaItwtTeardown *message); +size_t rpc__resp__wifi_sta_itwt_teardown__get_packed_size + (const RpcRespWifiStaItwtTeardown *message); +size_t rpc__resp__wifi_sta_itwt_teardown__pack + (const RpcRespWifiStaItwtTeardown *message, + uint8_t *out); +size_t rpc__resp__wifi_sta_itwt_teardown__pack_to_buffer + (const RpcRespWifiStaItwtTeardown *message, + ProtobufCBuffer *buffer); +RpcRespWifiStaItwtTeardown * + rpc__resp__wifi_sta_itwt_teardown__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_sta_itwt_teardown__free_unpacked + (RpcRespWifiStaItwtTeardown *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiStaItwtSuspend methods */ +void rpc__req__wifi_sta_itwt_suspend__init + (RpcReqWifiStaItwtSuspend *message); +size_t rpc__req__wifi_sta_itwt_suspend__get_packed_size + (const RpcReqWifiStaItwtSuspend *message); +size_t rpc__req__wifi_sta_itwt_suspend__pack + (const RpcReqWifiStaItwtSuspend *message, + uint8_t *out); +size_t rpc__req__wifi_sta_itwt_suspend__pack_to_buffer + (const RpcReqWifiStaItwtSuspend *message, + ProtobufCBuffer *buffer); +RpcReqWifiStaItwtSuspend * + rpc__req__wifi_sta_itwt_suspend__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_sta_itwt_suspend__free_unpacked + (RpcReqWifiStaItwtSuspend *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiStaItwtSuspend methods */ +void rpc__resp__wifi_sta_itwt_suspend__init + (RpcRespWifiStaItwtSuspend *message); +size_t rpc__resp__wifi_sta_itwt_suspend__get_packed_size + (const RpcRespWifiStaItwtSuspend *message); +size_t rpc__resp__wifi_sta_itwt_suspend__pack + (const RpcRespWifiStaItwtSuspend *message, + uint8_t *out); +size_t rpc__resp__wifi_sta_itwt_suspend__pack_to_buffer + (const RpcRespWifiStaItwtSuspend *message, + ProtobufCBuffer *buffer); +RpcRespWifiStaItwtSuspend * + rpc__resp__wifi_sta_itwt_suspend__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_sta_itwt_suspend__free_unpacked + (RpcRespWifiStaItwtSuspend *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiStaItwtGetFlowIdStatus methods */ +void rpc__req__wifi_sta_itwt_get_flow_id_status__init + (RpcReqWifiStaItwtGetFlowIdStatus *message); +size_t rpc__req__wifi_sta_itwt_get_flow_id_status__get_packed_size + (const RpcReqWifiStaItwtGetFlowIdStatus *message); +size_t rpc__req__wifi_sta_itwt_get_flow_id_status__pack + (const RpcReqWifiStaItwtGetFlowIdStatus *message, + uint8_t *out); +size_t rpc__req__wifi_sta_itwt_get_flow_id_status__pack_to_buffer + (const RpcReqWifiStaItwtGetFlowIdStatus *message, + ProtobufCBuffer *buffer); +RpcReqWifiStaItwtGetFlowIdStatus * + rpc__req__wifi_sta_itwt_get_flow_id_status__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_sta_itwt_get_flow_id_status__free_unpacked + (RpcReqWifiStaItwtGetFlowIdStatus *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiStaItwtGetFlowIdStatus methods */ +void rpc__resp__wifi_sta_itwt_get_flow_id_status__init + (RpcRespWifiStaItwtGetFlowIdStatus *message); +size_t rpc__resp__wifi_sta_itwt_get_flow_id_status__get_packed_size + (const RpcRespWifiStaItwtGetFlowIdStatus *message); +size_t rpc__resp__wifi_sta_itwt_get_flow_id_status__pack + (const RpcRespWifiStaItwtGetFlowIdStatus *message, + uint8_t *out); +size_t rpc__resp__wifi_sta_itwt_get_flow_id_status__pack_to_buffer + (const RpcRespWifiStaItwtGetFlowIdStatus *message, + ProtobufCBuffer *buffer); +RpcRespWifiStaItwtGetFlowIdStatus * + rpc__resp__wifi_sta_itwt_get_flow_id_status__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_sta_itwt_get_flow_id_status__free_unpacked + (RpcRespWifiStaItwtGetFlowIdStatus *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiStaItwtSendProbeReq methods */ +void rpc__req__wifi_sta_itwt_send_probe_req__init + (RpcReqWifiStaItwtSendProbeReq *message); +size_t rpc__req__wifi_sta_itwt_send_probe_req__get_packed_size + (const RpcReqWifiStaItwtSendProbeReq *message); +size_t rpc__req__wifi_sta_itwt_send_probe_req__pack + (const RpcReqWifiStaItwtSendProbeReq *message, + uint8_t *out); +size_t rpc__req__wifi_sta_itwt_send_probe_req__pack_to_buffer + (const RpcReqWifiStaItwtSendProbeReq *message, + ProtobufCBuffer *buffer); +RpcReqWifiStaItwtSendProbeReq * + rpc__req__wifi_sta_itwt_send_probe_req__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_sta_itwt_send_probe_req__free_unpacked + (RpcReqWifiStaItwtSendProbeReq *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiStaItwtSendProbeReq methods */ +void rpc__resp__wifi_sta_itwt_send_probe_req__init + (RpcRespWifiStaItwtSendProbeReq *message); +size_t rpc__resp__wifi_sta_itwt_send_probe_req__get_packed_size + (const RpcRespWifiStaItwtSendProbeReq *message); +size_t rpc__resp__wifi_sta_itwt_send_probe_req__pack + (const RpcRespWifiStaItwtSendProbeReq *message, + uint8_t *out); +size_t rpc__resp__wifi_sta_itwt_send_probe_req__pack_to_buffer + (const RpcRespWifiStaItwtSendProbeReq *message, + ProtobufCBuffer *buffer); +RpcRespWifiStaItwtSendProbeReq * + rpc__resp__wifi_sta_itwt_send_probe_req__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_sta_itwt_send_probe_req__free_unpacked + (RpcRespWifiStaItwtSendProbeReq *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiStaItwtSetTargetWakeTimeOffset methods */ +void rpc__req__wifi_sta_itwt_set_target_wake_time_offset__init + (RpcReqWifiStaItwtSetTargetWakeTimeOffset *message); +size_t rpc__req__wifi_sta_itwt_set_target_wake_time_offset__get_packed_size + (const RpcReqWifiStaItwtSetTargetWakeTimeOffset *message); +size_t rpc__req__wifi_sta_itwt_set_target_wake_time_offset__pack + (const RpcReqWifiStaItwtSetTargetWakeTimeOffset *message, + uint8_t *out); +size_t rpc__req__wifi_sta_itwt_set_target_wake_time_offset__pack_to_buffer + (const RpcReqWifiStaItwtSetTargetWakeTimeOffset *message, + ProtobufCBuffer *buffer); +RpcReqWifiStaItwtSetTargetWakeTimeOffset * + rpc__req__wifi_sta_itwt_set_target_wake_time_offset__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_sta_itwt_set_target_wake_time_offset__free_unpacked + (RpcReqWifiStaItwtSetTargetWakeTimeOffset *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiStaItwtSetTargetWakeTimeOffset methods */ +void rpc__resp__wifi_sta_itwt_set_target_wake_time_offset__init + (RpcRespWifiStaItwtSetTargetWakeTimeOffset *message); +size_t rpc__resp__wifi_sta_itwt_set_target_wake_time_offset__get_packed_size + (const RpcRespWifiStaItwtSetTargetWakeTimeOffset *message); +size_t rpc__resp__wifi_sta_itwt_set_target_wake_time_offset__pack + (const RpcRespWifiStaItwtSetTargetWakeTimeOffset *message, + uint8_t *out); +size_t rpc__resp__wifi_sta_itwt_set_target_wake_time_offset__pack_to_buffer + (const RpcRespWifiStaItwtSetTargetWakeTimeOffset *message, + ProtobufCBuffer *buffer); +RpcRespWifiStaItwtSetTargetWakeTimeOffset * + rpc__resp__wifi_sta_itwt_set_target_wake_time_offset__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_sta_itwt_set_target_wake_time_offset__free_unpacked + (RpcRespWifiStaItwtSetTargetWakeTimeOffset *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiStaTwtConfig methods */ +void rpc__req__wifi_sta_twt_config__init + (RpcReqWifiStaTwtConfig *message); +size_t rpc__req__wifi_sta_twt_config__get_packed_size + (const RpcReqWifiStaTwtConfig *message); +size_t rpc__req__wifi_sta_twt_config__pack + (const RpcReqWifiStaTwtConfig *message, + uint8_t *out); +size_t rpc__req__wifi_sta_twt_config__pack_to_buffer + (const RpcReqWifiStaTwtConfig *message, + ProtobufCBuffer *buffer); +RpcReqWifiStaTwtConfig * + rpc__req__wifi_sta_twt_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_sta_twt_config__free_unpacked + (RpcReqWifiStaTwtConfig *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiStaTwtConfig methods */ +void rpc__resp__wifi_sta_twt_config__init + (RpcRespWifiStaTwtConfig *message); +size_t rpc__resp__wifi_sta_twt_config__get_packed_size + (const RpcRespWifiStaTwtConfig *message); +size_t rpc__resp__wifi_sta_twt_config__pack + (const RpcRespWifiStaTwtConfig *message, + uint8_t *out); +size_t rpc__resp__wifi_sta_twt_config__pack_to_buffer + (const RpcRespWifiStaTwtConfig *message, + ProtobufCBuffer *buffer); +RpcRespWifiStaTwtConfig * + rpc__resp__wifi_sta_twt_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_sta_twt_config__free_unpacked + (RpcRespWifiStaTwtConfig *message, + ProtobufCAllocator *allocator); +/* RpcReqGetCoprocessorFwVersion methods */ +void rpc__req__get_coprocessor_fw_version__init + (RpcReqGetCoprocessorFwVersion *message); +size_t rpc__req__get_coprocessor_fw_version__get_packed_size + (const RpcReqGetCoprocessorFwVersion *message); +size_t rpc__req__get_coprocessor_fw_version__pack + (const RpcReqGetCoprocessorFwVersion *message, + uint8_t *out); +size_t rpc__req__get_coprocessor_fw_version__pack_to_buffer + (const RpcReqGetCoprocessorFwVersion *message, + ProtobufCBuffer *buffer); +RpcReqGetCoprocessorFwVersion * + rpc__req__get_coprocessor_fw_version__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__get_coprocessor_fw_version__free_unpacked + (RpcReqGetCoprocessorFwVersion *message, + ProtobufCAllocator *allocator); +/* RpcRespGetCoprocessorFwVersion methods */ +void rpc__resp__get_coprocessor_fw_version__init + (RpcRespGetCoprocessorFwVersion *message); +size_t rpc__resp__get_coprocessor_fw_version__get_packed_size + (const RpcRespGetCoprocessorFwVersion *message); +size_t rpc__resp__get_coprocessor_fw_version__pack + (const RpcRespGetCoprocessorFwVersion *message, + uint8_t *out); +size_t rpc__resp__get_coprocessor_fw_version__pack_to_buffer + (const RpcRespGetCoprocessorFwVersion *message, + ProtobufCBuffer *buffer); +RpcRespGetCoprocessorFwVersion * + rpc__resp__get_coprocessor_fw_version__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__get_coprocessor_fw_version__free_unpacked + (RpcRespGetCoprocessorFwVersion *message, + ProtobufCAllocator *allocator); +/* RpcReqSetDhcpDnsStatus methods */ +void rpc__req__set_dhcp_dns_status__init + (RpcReqSetDhcpDnsStatus *message); +size_t rpc__req__set_dhcp_dns_status__get_packed_size + (const RpcReqSetDhcpDnsStatus *message); +size_t rpc__req__set_dhcp_dns_status__pack + (const RpcReqSetDhcpDnsStatus *message, + uint8_t *out); +size_t rpc__req__set_dhcp_dns_status__pack_to_buffer + (const RpcReqSetDhcpDnsStatus *message, + ProtobufCBuffer *buffer); +RpcReqSetDhcpDnsStatus * + rpc__req__set_dhcp_dns_status__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__set_dhcp_dns_status__free_unpacked + (RpcReqSetDhcpDnsStatus *message, + ProtobufCAllocator *allocator); +/* RpcRespSetDhcpDnsStatus methods */ +void rpc__resp__set_dhcp_dns_status__init + (RpcRespSetDhcpDnsStatus *message); +size_t rpc__resp__set_dhcp_dns_status__get_packed_size + (const RpcRespSetDhcpDnsStatus *message); +size_t rpc__resp__set_dhcp_dns_status__pack + (const RpcRespSetDhcpDnsStatus *message, + uint8_t *out); +size_t rpc__resp__set_dhcp_dns_status__pack_to_buffer + (const RpcRespSetDhcpDnsStatus *message, + ProtobufCBuffer *buffer); +RpcRespSetDhcpDnsStatus * + rpc__resp__set_dhcp_dns_status__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__set_dhcp_dns_status__free_unpacked + (RpcRespSetDhcpDnsStatus *message, + ProtobufCAllocator *allocator); +/* RpcReqGetDhcpDnsStatus methods */ +void rpc__req__get_dhcp_dns_status__init + (RpcReqGetDhcpDnsStatus *message); +size_t rpc__req__get_dhcp_dns_status__get_packed_size + (const RpcReqGetDhcpDnsStatus *message); +size_t rpc__req__get_dhcp_dns_status__pack + (const RpcReqGetDhcpDnsStatus *message, + uint8_t *out); +size_t rpc__req__get_dhcp_dns_status__pack_to_buffer + (const RpcReqGetDhcpDnsStatus *message, + ProtobufCBuffer *buffer); +RpcReqGetDhcpDnsStatus * + rpc__req__get_dhcp_dns_status__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__get_dhcp_dns_status__free_unpacked + (RpcReqGetDhcpDnsStatus *message, + ProtobufCAllocator *allocator); +/* RpcRespGetDhcpDnsStatus methods */ +void rpc__resp__get_dhcp_dns_status__init + (RpcRespGetDhcpDnsStatus *message); +size_t rpc__resp__get_dhcp_dns_status__get_packed_size + (const RpcRespGetDhcpDnsStatus *message); +size_t rpc__resp__get_dhcp_dns_status__pack + (const RpcRespGetDhcpDnsStatus *message, + uint8_t *out); +size_t rpc__resp__get_dhcp_dns_status__pack_to_buffer + (const RpcRespGetDhcpDnsStatus *message, + ProtobufCBuffer *buffer); +RpcRespGetDhcpDnsStatus * + rpc__resp__get_dhcp_dns_status__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__get_dhcp_dns_status__free_unpacked + (RpcRespGetDhcpDnsStatus *message, + ProtobufCAllocator *allocator); +/* RpcReqSuppDppInit methods */ +void rpc__req__supp_dpp_init__init + (RpcReqSuppDppInit *message); +size_t rpc__req__supp_dpp_init__get_packed_size + (const RpcReqSuppDppInit *message); +size_t rpc__req__supp_dpp_init__pack + (const RpcReqSuppDppInit *message, + uint8_t *out); +size_t rpc__req__supp_dpp_init__pack_to_buffer + (const RpcReqSuppDppInit *message, + ProtobufCBuffer *buffer); +RpcReqSuppDppInit * + rpc__req__supp_dpp_init__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__supp_dpp_init__free_unpacked + (RpcReqSuppDppInit *message, + ProtobufCAllocator *allocator); +/* RpcRespSuppDppInit methods */ +void rpc__resp__supp_dpp_init__init + (RpcRespSuppDppInit *message); +size_t rpc__resp__supp_dpp_init__get_packed_size + (const RpcRespSuppDppInit *message); +size_t rpc__resp__supp_dpp_init__pack + (const RpcRespSuppDppInit *message, + uint8_t *out); +size_t rpc__resp__supp_dpp_init__pack_to_buffer + (const RpcRespSuppDppInit *message, + ProtobufCBuffer *buffer); +RpcRespSuppDppInit * + rpc__resp__supp_dpp_init__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__supp_dpp_init__free_unpacked + (RpcRespSuppDppInit *message, + ProtobufCAllocator *allocator); +/* RpcReqSuppDppDeinit methods */ +void rpc__req__supp_dpp_deinit__init + (RpcReqSuppDppDeinit *message); +size_t rpc__req__supp_dpp_deinit__get_packed_size + (const RpcReqSuppDppDeinit *message); +size_t rpc__req__supp_dpp_deinit__pack + (const RpcReqSuppDppDeinit *message, + uint8_t *out); +size_t rpc__req__supp_dpp_deinit__pack_to_buffer + (const RpcReqSuppDppDeinit *message, + ProtobufCBuffer *buffer); +RpcReqSuppDppDeinit * + rpc__req__supp_dpp_deinit__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__supp_dpp_deinit__free_unpacked + (RpcReqSuppDppDeinit *message, + ProtobufCAllocator *allocator); +/* RpcRespSuppDppDeinit methods */ +void rpc__resp__supp_dpp_deinit__init + (RpcRespSuppDppDeinit *message); +size_t rpc__resp__supp_dpp_deinit__get_packed_size + (const RpcRespSuppDppDeinit *message); +size_t rpc__resp__supp_dpp_deinit__pack + (const RpcRespSuppDppDeinit *message, + uint8_t *out); +size_t rpc__resp__supp_dpp_deinit__pack_to_buffer + (const RpcRespSuppDppDeinit *message, + ProtobufCBuffer *buffer); +RpcRespSuppDppDeinit * + rpc__resp__supp_dpp_deinit__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__supp_dpp_deinit__free_unpacked + (RpcRespSuppDppDeinit *message, + ProtobufCAllocator *allocator); +/* RpcReqSuppDppBootstrapGen methods */ +void rpc__req__supp_dpp_bootstrap_gen__init + (RpcReqSuppDppBootstrapGen *message); +size_t rpc__req__supp_dpp_bootstrap_gen__get_packed_size + (const RpcReqSuppDppBootstrapGen *message); +size_t rpc__req__supp_dpp_bootstrap_gen__pack + (const RpcReqSuppDppBootstrapGen *message, + uint8_t *out); +size_t rpc__req__supp_dpp_bootstrap_gen__pack_to_buffer + (const RpcReqSuppDppBootstrapGen *message, + ProtobufCBuffer *buffer); +RpcReqSuppDppBootstrapGen * + rpc__req__supp_dpp_bootstrap_gen__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__supp_dpp_bootstrap_gen__free_unpacked + (RpcReqSuppDppBootstrapGen *message, + ProtobufCAllocator *allocator); +/* RpcRespSuppDppBootstrapGen methods */ +void rpc__resp__supp_dpp_bootstrap_gen__init + (RpcRespSuppDppBootstrapGen *message); +size_t rpc__resp__supp_dpp_bootstrap_gen__get_packed_size + (const RpcRespSuppDppBootstrapGen *message); +size_t rpc__resp__supp_dpp_bootstrap_gen__pack + (const RpcRespSuppDppBootstrapGen *message, + uint8_t *out); +size_t rpc__resp__supp_dpp_bootstrap_gen__pack_to_buffer + (const RpcRespSuppDppBootstrapGen *message, + ProtobufCBuffer *buffer); +RpcRespSuppDppBootstrapGen * + rpc__resp__supp_dpp_bootstrap_gen__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__supp_dpp_bootstrap_gen__free_unpacked + (RpcRespSuppDppBootstrapGen *message, + ProtobufCAllocator *allocator); +/* RpcReqSuppDppStartListen methods */ +void rpc__req__supp_dpp_start_listen__init + (RpcReqSuppDppStartListen *message); +size_t rpc__req__supp_dpp_start_listen__get_packed_size + (const RpcReqSuppDppStartListen *message); +size_t rpc__req__supp_dpp_start_listen__pack + (const RpcReqSuppDppStartListen *message, + uint8_t *out); +size_t rpc__req__supp_dpp_start_listen__pack_to_buffer + (const RpcReqSuppDppStartListen *message, + ProtobufCBuffer *buffer); +RpcReqSuppDppStartListen * + rpc__req__supp_dpp_start_listen__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__supp_dpp_start_listen__free_unpacked + (RpcReqSuppDppStartListen *message, + ProtobufCAllocator *allocator); +/* RpcRespSuppDppStartListen methods */ +void rpc__resp__supp_dpp_start_listen__init + (RpcRespSuppDppStartListen *message); +size_t rpc__resp__supp_dpp_start_listen__get_packed_size + (const RpcRespSuppDppStartListen *message); +size_t rpc__resp__supp_dpp_start_listen__pack + (const RpcRespSuppDppStartListen *message, + uint8_t *out); +size_t rpc__resp__supp_dpp_start_listen__pack_to_buffer + (const RpcRespSuppDppStartListen *message, + ProtobufCBuffer *buffer); +RpcRespSuppDppStartListen * + rpc__resp__supp_dpp_start_listen__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__supp_dpp_start_listen__free_unpacked + (RpcRespSuppDppStartListen *message, + ProtobufCAllocator *allocator); +/* RpcReqSuppDppStopListen methods */ +void rpc__req__supp_dpp_stop_listen__init + (RpcReqSuppDppStopListen *message); +size_t rpc__req__supp_dpp_stop_listen__get_packed_size + (const RpcReqSuppDppStopListen *message); +size_t rpc__req__supp_dpp_stop_listen__pack + (const RpcReqSuppDppStopListen *message, + uint8_t *out); +size_t rpc__req__supp_dpp_stop_listen__pack_to_buffer + (const RpcReqSuppDppStopListen *message, + ProtobufCBuffer *buffer); +RpcReqSuppDppStopListen * + rpc__req__supp_dpp_stop_listen__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__supp_dpp_stop_listen__free_unpacked + (RpcReqSuppDppStopListen *message, + ProtobufCAllocator *allocator); +/* RpcRespSuppDppStopListen methods */ +void rpc__resp__supp_dpp_stop_listen__init + (RpcRespSuppDppStopListen *message); +size_t rpc__resp__supp_dpp_stop_listen__get_packed_size + (const RpcRespSuppDppStopListen *message); +size_t rpc__resp__supp_dpp_stop_listen__pack + (const RpcRespSuppDppStopListen *message, + uint8_t *out); +size_t rpc__resp__supp_dpp_stop_listen__pack_to_buffer + (const RpcRespSuppDppStopListen *message, + ProtobufCBuffer *buffer); +RpcRespSuppDppStopListen * + rpc__resp__supp_dpp_stop_listen__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__supp_dpp_stop_listen__free_unpacked + (RpcRespSuppDppStopListen *message, + ProtobufCAllocator *allocator); +/* RpcReqIfaceMacAddrSetGet methods */ +void rpc__req__iface_mac_addr_set_get__init + (RpcReqIfaceMacAddrSetGet *message); +size_t rpc__req__iface_mac_addr_set_get__get_packed_size + (const RpcReqIfaceMacAddrSetGet *message); +size_t rpc__req__iface_mac_addr_set_get__pack + (const RpcReqIfaceMacAddrSetGet *message, + uint8_t *out); +size_t rpc__req__iface_mac_addr_set_get__pack_to_buffer + (const RpcReqIfaceMacAddrSetGet *message, + ProtobufCBuffer *buffer); +RpcReqIfaceMacAddrSetGet * + rpc__req__iface_mac_addr_set_get__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__iface_mac_addr_set_get__free_unpacked + (RpcReqIfaceMacAddrSetGet *message, + ProtobufCAllocator *allocator); +/* RpcRespIfaceMacAddrSetGet methods */ +void rpc__resp__iface_mac_addr_set_get__init + (RpcRespIfaceMacAddrSetGet *message); +size_t rpc__resp__iface_mac_addr_set_get__get_packed_size + (const RpcRespIfaceMacAddrSetGet *message); +size_t rpc__resp__iface_mac_addr_set_get__pack + (const RpcRespIfaceMacAddrSetGet *message, + uint8_t *out); +size_t rpc__resp__iface_mac_addr_set_get__pack_to_buffer + (const RpcRespIfaceMacAddrSetGet *message, + ProtobufCBuffer *buffer); +RpcRespIfaceMacAddrSetGet * + rpc__resp__iface_mac_addr_set_get__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__iface_mac_addr_set_get__free_unpacked + (RpcRespIfaceMacAddrSetGet *message, + ProtobufCAllocator *allocator); +/* RpcReqIfaceMacAddrLenGet methods */ +void rpc__req__iface_mac_addr_len_get__init + (RpcReqIfaceMacAddrLenGet *message); +size_t rpc__req__iface_mac_addr_len_get__get_packed_size + (const RpcReqIfaceMacAddrLenGet *message); +size_t rpc__req__iface_mac_addr_len_get__pack + (const RpcReqIfaceMacAddrLenGet *message, + uint8_t *out); +size_t rpc__req__iface_mac_addr_len_get__pack_to_buffer + (const RpcReqIfaceMacAddrLenGet *message, + ProtobufCBuffer *buffer); +RpcReqIfaceMacAddrLenGet * + rpc__req__iface_mac_addr_len_get__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__iface_mac_addr_len_get__free_unpacked + (RpcReqIfaceMacAddrLenGet *message, + ProtobufCAllocator *allocator); +/* RpcRespIfaceMacAddrLenGet methods */ +void rpc__resp__iface_mac_addr_len_get__init + (RpcRespIfaceMacAddrLenGet *message); +size_t rpc__resp__iface_mac_addr_len_get__get_packed_size + (const RpcRespIfaceMacAddrLenGet *message); +size_t rpc__resp__iface_mac_addr_len_get__pack + (const RpcRespIfaceMacAddrLenGet *message, + uint8_t *out); +size_t rpc__resp__iface_mac_addr_len_get__pack_to_buffer + (const RpcRespIfaceMacAddrLenGet *message, + ProtobufCBuffer *buffer); +RpcRespIfaceMacAddrLenGet * + rpc__resp__iface_mac_addr_len_get__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__iface_mac_addr_len_get__free_unpacked + (RpcRespIfaceMacAddrLenGet *message, + ProtobufCAllocator *allocator); +/* RpcReqFeatureControl methods */ +void rpc__req__feature_control__init + (RpcReqFeatureControl *message); +size_t rpc__req__feature_control__get_packed_size + (const RpcReqFeatureControl *message); +size_t rpc__req__feature_control__pack + (const RpcReqFeatureControl *message, + uint8_t *out); +size_t rpc__req__feature_control__pack_to_buffer + (const RpcReqFeatureControl *message, + ProtobufCBuffer *buffer); +RpcReqFeatureControl * + rpc__req__feature_control__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__feature_control__free_unpacked + (RpcReqFeatureControl *message, + ProtobufCAllocator *allocator); +/* RpcRespFeatureControl methods */ +void rpc__resp__feature_control__init + (RpcRespFeatureControl *message); +size_t rpc__resp__feature_control__get_packed_size + (const RpcRespFeatureControl *message); +size_t rpc__resp__feature_control__pack + (const RpcRespFeatureControl *message, + uint8_t *out); +size_t rpc__resp__feature_control__pack_to_buffer + (const RpcRespFeatureControl *message, + ProtobufCBuffer *buffer); +RpcRespFeatureControl * + rpc__resp__feature_control__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__feature_control__free_unpacked + (RpcRespFeatureControl *message, + ProtobufCAllocator *allocator); +/* RpcReqMemMonitor methods */ +void rpc__req__mem_monitor__init + (RpcReqMemMonitor *message); +size_t rpc__req__mem_monitor__get_packed_size + (const RpcReqMemMonitor *message); +size_t rpc__req__mem_monitor__pack + (const RpcReqMemMonitor *message, + uint8_t *out); +size_t rpc__req__mem_monitor__pack_to_buffer + (const RpcReqMemMonitor *message, + ProtobufCBuffer *buffer); +RpcReqMemMonitor * + rpc__req__mem_monitor__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__mem_monitor__free_unpacked + (RpcReqMemMonitor *message, + ProtobufCAllocator *allocator); +/* RpcRespMemMonitor methods */ +void rpc__resp__mem_monitor__init + (RpcRespMemMonitor *message); +size_t rpc__resp__mem_monitor__get_packed_size + (const RpcRespMemMonitor *message); +size_t rpc__resp__mem_monitor__pack + (const RpcRespMemMonitor *message, + uint8_t *out); +size_t rpc__resp__mem_monitor__pack_to_buffer + (const RpcRespMemMonitor *message, + ProtobufCBuffer *buffer); +RpcRespMemMonitor * + rpc__resp__mem_monitor__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__mem_monitor__free_unpacked + (RpcRespMemMonitor *message, + ProtobufCAllocator *allocator); +/* RpcEventWifiEventNoArgs methods */ +void rpc__event__wifi_event_no_args__init + (RpcEventWifiEventNoArgs *message); +size_t rpc__event__wifi_event_no_args__get_packed_size + (const RpcEventWifiEventNoArgs *message); +size_t rpc__event__wifi_event_no_args__pack + (const RpcEventWifiEventNoArgs *message, + uint8_t *out); +size_t rpc__event__wifi_event_no_args__pack_to_buffer + (const RpcEventWifiEventNoArgs *message, + ProtobufCBuffer *buffer); +RpcEventWifiEventNoArgs * + rpc__event__wifi_event_no_args__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__event__wifi_event_no_args__free_unpacked + (RpcEventWifiEventNoArgs *message, + ProtobufCAllocator *allocator); +/* RpcEventESPInit methods */ +void rpc__event__espinit__init + (RpcEventESPInit *message); +size_t rpc__event__espinit__get_packed_size + (const RpcEventESPInit *message); +size_t rpc__event__espinit__pack + (const RpcEventESPInit *message, + uint8_t *out); +size_t rpc__event__espinit__pack_to_buffer + (const RpcEventESPInit *message, + ProtobufCBuffer *buffer); +RpcEventESPInit * + rpc__event__espinit__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__event__espinit__free_unpacked + (RpcEventESPInit *message, + ProtobufCAllocator *allocator); +/* RpcEventHeartbeat methods */ +void rpc__event__heartbeat__init + (RpcEventHeartbeat *message); +size_t rpc__event__heartbeat__get_packed_size + (const RpcEventHeartbeat *message); +size_t rpc__event__heartbeat__pack + (const RpcEventHeartbeat *message, + uint8_t *out); +size_t rpc__event__heartbeat__pack_to_buffer + (const RpcEventHeartbeat *message, + ProtobufCBuffer *buffer); +RpcEventHeartbeat * + rpc__event__heartbeat__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__event__heartbeat__free_unpacked + (RpcEventHeartbeat *message, + ProtobufCAllocator *allocator); +/* RpcEventAPStaDisconnected methods */ +void rpc__event__ap__sta_disconnected__init + (RpcEventAPStaDisconnected *message); +size_t rpc__event__ap__sta_disconnected__get_packed_size + (const RpcEventAPStaDisconnected *message); +size_t rpc__event__ap__sta_disconnected__pack + (const RpcEventAPStaDisconnected *message, + uint8_t *out); +size_t rpc__event__ap__sta_disconnected__pack_to_buffer + (const RpcEventAPStaDisconnected *message, + ProtobufCBuffer *buffer); +RpcEventAPStaDisconnected * + rpc__event__ap__sta_disconnected__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__event__ap__sta_disconnected__free_unpacked + (RpcEventAPStaDisconnected *message, + ProtobufCAllocator *allocator); +/* RpcEventAPStaConnected methods */ +void rpc__event__ap__sta_connected__init + (RpcEventAPStaConnected *message); +size_t rpc__event__ap__sta_connected__get_packed_size + (const RpcEventAPStaConnected *message); +size_t rpc__event__ap__sta_connected__pack + (const RpcEventAPStaConnected *message, + uint8_t *out); +size_t rpc__event__ap__sta_connected__pack_to_buffer + (const RpcEventAPStaConnected *message, + ProtobufCBuffer *buffer); +RpcEventAPStaConnected * + rpc__event__ap__sta_connected__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__event__ap__sta_connected__free_unpacked + (RpcEventAPStaConnected *message, + ProtobufCAllocator *allocator); +/* RpcEventStaScanDone methods */ +void rpc__event__sta_scan_done__init + (RpcEventStaScanDone *message); +size_t rpc__event__sta_scan_done__get_packed_size + (const RpcEventStaScanDone *message); +size_t rpc__event__sta_scan_done__pack + (const RpcEventStaScanDone *message, + uint8_t *out); +size_t rpc__event__sta_scan_done__pack_to_buffer + (const RpcEventStaScanDone *message, + ProtobufCBuffer *buffer); +RpcEventStaScanDone * + rpc__event__sta_scan_done__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__event__sta_scan_done__free_unpacked + (RpcEventStaScanDone *message, + ProtobufCAllocator *allocator); +/* RpcEventStaConnected methods */ +void rpc__event__sta_connected__init + (RpcEventStaConnected *message); +size_t rpc__event__sta_connected__get_packed_size + (const RpcEventStaConnected *message); +size_t rpc__event__sta_connected__pack + (const RpcEventStaConnected *message, + uint8_t *out); +size_t rpc__event__sta_connected__pack_to_buffer + (const RpcEventStaConnected *message, + ProtobufCBuffer *buffer); +RpcEventStaConnected * + rpc__event__sta_connected__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__event__sta_connected__free_unpacked + (RpcEventStaConnected *message, + ProtobufCAllocator *allocator); +/* RpcEventStaDisconnected methods */ +void rpc__event__sta_disconnected__init + (RpcEventStaDisconnected *message); +size_t rpc__event__sta_disconnected__get_packed_size + (const RpcEventStaDisconnected *message); +size_t rpc__event__sta_disconnected__pack + (const RpcEventStaDisconnected *message, + uint8_t *out); +size_t rpc__event__sta_disconnected__pack_to_buffer + (const RpcEventStaDisconnected *message, + ProtobufCBuffer *buffer); +RpcEventStaDisconnected * + rpc__event__sta_disconnected__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__event__sta_disconnected__free_unpacked + (RpcEventStaDisconnected *message, + ProtobufCAllocator *allocator); +/* RpcGpioConfig methods */ +void rpc__gpio_config__init + (RpcGpioConfig *message); +size_t rpc__gpio_config__get_packed_size + (const RpcGpioConfig *message); +size_t rpc__gpio_config__pack + (const RpcGpioConfig *message, + uint8_t *out); +size_t rpc__gpio_config__pack_to_buffer + (const RpcGpioConfig *message, + ProtobufCBuffer *buffer); +RpcGpioConfig * + rpc__gpio_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__gpio_config__free_unpacked + (RpcGpioConfig *message, + ProtobufCAllocator *allocator); +/* RpcReqGpioConfig methods */ +void rpc__req__gpio_config__init + (RpcReqGpioConfig *message); +size_t rpc__req__gpio_config__get_packed_size + (const RpcReqGpioConfig *message); +size_t rpc__req__gpio_config__pack + (const RpcReqGpioConfig *message, + uint8_t *out); +size_t rpc__req__gpio_config__pack_to_buffer + (const RpcReqGpioConfig *message, + ProtobufCBuffer *buffer); +RpcReqGpioConfig * + rpc__req__gpio_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__gpio_config__free_unpacked + (RpcReqGpioConfig *message, + ProtobufCAllocator *allocator); +/* RpcRespGpioConfig methods */ +void rpc__resp__gpio_config__init + (RpcRespGpioConfig *message); +size_t rpc__resp__gpio_config__get_packed_size + (const RpcRespGpioConfig *message); +size_t rpc__resp__gpio_config__pack + (const RpcRespGpioConfig *message, + uint8_t *out); +size_t rpc__resp__gpio_config__pack_to_buffer + (const RpcRespGpioConfig *message, + ProtobufCBuffer *buffer); +RpcRespGpioConfig * + rpc__resp__gpio_config__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__gpio_config__free_unpacked + (RpcRespGpioConfig *message, + ProtobufCAllocator *allocator); +/* RpcReqGpioResetPin methods */ +void rpc__req__gpio_reset_pin__init + (RpcReqGpioResetPin *message); +size_t rpc__req__gpio_reset_pin__get_packed_size + (const RpcReqGpioResetPin *message); +size_t rpc__req__gpio_reset_pin__pack + (const RpcReqGpioResetPin *message, + uint8_t *out); +size_t rpc__req__gpio_reset_pin__pack_to_buffer + (const RpcReqGpioResetPin *message, + ProtobufCBuffer *buffer); +RpcReqGpioResetPin * + rpc__req__gpio_reset_pin__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__gpio_reset_pin__free_unpacked + (RpcReqGpioResetPin *message, + ProtobufCAllocator *allocator); +/* RpcRespGpioResetPin methods */ +void rpc__resp__gpio_reset_pin__init + (RpcRespGpioResetPin *message); +size_t rpc__resp__gpio_reset_pin__get_packed_size + (const RpcRespGpioResetPin *message); +size_t rpc__resp__gpio_reset_pin__pack + (const RpcRespGpioResetPin *message, + uint8_t *out); +size_t rpc__resp__gpio_reset_pin__pack_to_buffer + (const RpcRespGpioResetPin *message, + ProtobufCBuffer *buffer); +RpcRespGpioResetPin * + rpc__resp__gpio_reset_pin__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__gpio_reset_pin__free_unpacked + (RpcRespGpioResetPin *message, + ProtobufCAllocator *allocator); +/* RpcReqGpioSetLevel methods */ +void rpc__req__gpio_set_level__init + (RpcReqGpioSetLevel *message); +size_t rpc__req__gpio_set_level__get_packed_size + (const RpcReqGpioSetLevel *message); +size_t rpc__req__gpio_set_level__pack + (const RpcReqGpioSetLevel *message, + uint8_t *out); +size_t rpc__req__gpio_set_level__pack_to_buffer + (const RpcReqGpioSetLevel *message, + ProtobufCBuffer *buffer); +RpcReqGpioSetLevel * + rpc__req__gpio_set_level__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__gpio_set_level__free_unpacked + (RpcReqGpioSetLevel *message, + ProtobufCAllocator *allocator); +/* RpcRespGpioSetLevel methods */ +void rpc__resp__gpio_set_level__init + (RpcRespGpioSetLevel *message); +size_t rpc__resp__gpio_set_level__get_packed_size + (const RpcRespGpioSetLevel *message); +size_t rpc__resp__gpio_set_level__pack + (const RpcRespGpioSetLevel *message, + uint8_t *out); +size_t rpc__resp__gpio_set_level__pack_to_buffer + (const RpcRespGpioSetLevel *message, + ProtobufCBuffer *buffer); +RpcRespGpioSetLevel * + rpc__resp__gpio_set_level__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__gpio_set_level__free_unpacked + (RpcRespGpioSetLevel *message, + ProtobufCAllocator *allocator); +/* RpcReqGpioGetLevel methods */ +void rpc__req__gpio_get_level__init + (RpcReqGpioGetLevel *message); +size_t rpc__req__gpio_get_level__get_packed_size + (const RpcReqGpioGetLevel *message); +size_t rpc__req__gpio_get_level__pack + (const RpcReqGpioGetLevel *message, + uint8_t *out); +size_t rpc__req__gpio_get_level__pack_to_buffer + (const RpcReqGpioGetLevel *message, + ProtobufCBuffer *buffer); +RpcReqGpioGetLevel * + rpc__req__gpio_get_level__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__gpio_get_level__free_unpacked + (RpcReqGpioGetLevel *message, + ProtobufCAllocator *allocator); +/* RpcRespGpioGetLevel methods */ +void rpc__resp__gpio_get_level__init + (RpcRespGpioGetLevel *message); +size_t rpc__resp__gpio_get_level__get_packed_size + (const RpcRespGpioGetLevel *message); +size_t rpc__resp__gpio_get_level__pack + (const RpcRespGpioGetLevel *message, + uint8_t *out); +size_t rpc__resp__gpio_get_level__pack_to_buffer + (const RpcRespGpioGetLevel *message, + ProtobufCBuffer *buffer); +RpcRespGpioGetLevel * + rpc__resp__gpio_get_level__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__gpio_get_level__free_unpacked + (RpcRespGpioGetLevel *message, + ProtobufCAllocator *allocator); +/* RpcReqGpioSetDirection methods */ +void rpc__req__gpio_set_direction__init + (RpcReqGpioSetDirection *message); +size_t rpc__req__gpio_set_direction__get_packed_size + (const RpcReqGpioSetDirection *message); +size_t rpc__req__gpio_set_direction__pack + (const RpcReqGpioSetDirection *message, + uint8_t *out); +size_t rpc__req__gpio_set_direction__pack_to_buffer + (const RpcReqGpioSetDirection *message, + ProtobufCBuffer *buffer); +RpcReqGpioSetDirection * + rpc__req__gpio_set_direction__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__gpio_set_direction__free_unpacked + (RpcReqGpioSetDirection *message, + ProtobufCAllocator *allocator); +/* RpcRespGpioSetDirection methods */ +void rpc__resp__gpio_set_direction__init + (RpcRespGpioSetDirection *message); +size_t rpc__resp__gpio_set_direction__get_packed_size + (const RpcRespGpioSetDirection *message); +size_t rpc__resp__gpio_set_direction__pack + (const RpcRespGpioSetDirection *message, + uint8_t *out); +size_t rpc__resp__gpio_set_direction__pack_to_buffer + (const RpcRespGpioSetDirection *message, + ProtobufCBuffer *buffer); +RpcRespGpioSetDirection * + rpc__resp__gpio_set_direction__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__gpio_set_direction__free_unpacked + (RpcRespGpioSetDirection *message, + ProtobufCAllocator *allocator); +/* RpcReqGpioInputEnable methods */ +void rpc__req__gpio_input_enable__init + (RpcReqGpioInputEnable *message); +size_t rpc__req__gpio_input_enable__get_packed_size + (const RpcReqGpioInputEnable *message); +size_t rpc__req__gpio_input_enable__pack + (const RpcReqGpioInputEnable *message, + uint8_t *out); +size_t rpc__req__gpio_input_enable__pack_to_buffer + (const RpcReqGpioInputEnable *message, + ProtobufCBuffer *buffer); +RpcReqGpioInputEnable * + rpc__req__gpio_input_enable__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__gpio_input_enable__free_unpacked + (RpcReqGpioInputEnable *message, + ProtobufCAllocator *allocator); +/* RpcRespGpioInputEnable methods */ +void rpc__resp__gpio_input_enable__init + (RpcRespGpioInputEnable *message); +size_t rpc__resp__gpio_input_enable__get_packed_size + (const RpcRespGpioInputEnable *message); +size_t rpc__resp__gpio_input_enable__pack + (const RpcRespGpioInputEnable *message, + uint8_t *out); +size_t rpc__resp__gpio_input_enable__pack_to_buffer + (const RpcRespGpioInputEnable *message, + ProtobufCBuffer *buffer); +RpcRespGpioInputEnable * + rpc__resp__gpio_input_enable__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__gpio_input_enable__free_unpacked + (RpcRespGpioInputEnable *message, + ProtobufCAllocator *allocator); +/* RpcReqGpioSetPullMode methods */ +void rpc__req__gpio_set_pull_mode__init + (RpcReqGpioSetPullMode *message); +size_t rpc__req__gpio_set_pull_mode__get_packed_size + (const RpcReqGpioSetPullMode *message); +size_t rpc__req__gpio_set_pull_mode__pack + (const RpcReqGpioSetPullMode *message, + uint8_t *out); +size_t rpc__req__gpio_set_pull_mode__pack_to_buffer + (const RpcReqGpioSetPullMode *message, + ProtobufCBuffer *buffer); +RpcReqGpioSetPullMode * + rpc__req__gpio_set_pull_mode__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__gpio_set_pull_mode__free_unpacked + (RpcReqGpioSetPullMode *message, + ProtobufCAllocator *allocator); +/* RpcRespGpioSetPullMode methods */ +void rpc__resp__gpio_set_pull_mode__init + (RpcRespGpioSetPullMode *message); +size_t rpc__resp__gpio_set_pull_mode__get_packed_size + (const RpcRespGpioSetPullMode *message); +size_t rpc__resp__gpio_set_pull_mode__pack + (const RpcRespGpioSetPullMode *message, + uint8_t *out); +size_t rpc__resp__gpio_set_pull_mode__pack_to_buffer + (const RpcRespGpioSetPullMode *message, + ProtobufCBuffer *buffer); +RpcRespGpioSetPullMode * + rpc__resp__gpio_set_pull_mode__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__gpio_set_pull_mode__free_unpacked + (RpcRespGpioSetPullMode *message, + ProtobufCAllocator *allocator); +/* RpcReqExtCoex methods */ +void rpc__req__ext_coex__init + (RpcReqExtCoex *message); +size_t rpc__req__ext_coex__get_packed_size + (const RpcReqExtCoex *message); +size_t rpc__req__ext_coex__pack + (const RpcReqExtCoex *message, + uint8_t *out); +size_t rpc__req__ext_coex__pack_to_buffer + (const RpcReqExtCoex *message, + ProtobufCBuffer *buffer); +RpcReqExtCoex * + rpc__req__ext_coex__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__ext_coex__free_unpacked + (RpcReqExtCoex *message, + ProtobufCAllocator *allocator); +/* RpcRespExtCoex methods */ +void rpc__resp__ext_coex__init + (RpcRespExtCoex *message); +size_t rpc__resp__ext_coex__get_packed_size + (const RpcRespExtCoex *message); +size_t rpc__resp__ext_coex__pack + (const RpcRespExtCoex *message, + uint8_t *out); +size_t rpc__resp__ext_coex__pack_to_buffer + (const RpcRespExtCoex *message, + ProtobufCBuffer *buffer); +RpcRespExtCoex * + rpc__resp__ext_coex__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__ext_coex__free_unpacked + (RpcRespExtCoex *message, + ProtobufCAllocator *allocator); +/* RpcEventDhcpDnsStatus methods */ +void rpc__event__dhcp_dns_status__init + (RpcEventDhcpDnsStatus *message); +size_t rpc__event__dhcp_dns_status__get_packed_size + (const RpcEventDhcpDnsStatus *message); +size_t rpc__event__dhcp_dns_status__pack + (const RpcEventDhcpDnsStatus *message, + uint8_t *out); +size_t rpc__event__dhcp_dns_status__pack_to_buffer + (const RpcEventDhcpDnsStatus *message, + ProtobufCBuffer *buffer); +RpcEventDhcpDnsStatus * + rpc__event__dhcp_dns_status__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__event__dhcp_dns_status__free_unpacked + (RpcEventDhcpDnsStatus *message, + ProtobufCAllocator *allocator); +/* RpcEventStaItwtSetup methods */ +void rpc__event__sta_itwt_setup__init + (RpcEventStaItwtSetup *message); +size_t rpc__event__sta_itwt_setup__get_packed_size + (const RpcEventStaItwtSetup *message); +size_t rpc__event__sta_itwt_setup__pack + (const RpcEventStaItwtSetup *message, + uint8_t *out); +size_t rpc__event__sta_itwt_setup__pack_to_buffer + (const RpcEventStaItwtSetup *message, + ProtobufCBuffer *buffer); +RpcEventStaItwtSetup * + rpc__event__sta_itwt_setup__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__event__sta_itwt_setup__free_unpacked + (RpcEventStaItwtSetup *message, + ProtobufCAllocator *allocator); +/* RpcEventStaItwtTeardown methods */ +void rpc__event__sta_itwt_teardown__init + (RpcEventStaItwtTeardown *message); +size_t rpc__event__sta_itwt_teardown__get_packed_size + (const RpcEventStaItwtTeardown *message); +size_t rpc__event__sta_itwt_teardown__pack + (const RpcEventStaItwtTeardown *message, + uint8_t *out); +size_t rpc__event__sta_itwt_teardown__pack_to_buffer + (const RpcEventStaItwtTeardown *message, + ProtobufCBuffer *buffer); +RpcEventStaItwtTeardown * + rpc__event__sta_itwt_teardown__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__event__sta_itwt_teardown__free_unpacked + (RpcEventStaItwtTeardown *message, + ProtobufCAllocator *allocator); +/* RpcEventStaItwtSuspend methods */ +void rpc__event__sta_itwt_suspend__init + (RpcEventStaItwtSuspend *message); +size_t rpc__event__sta_itwt_suspend__get_packed_size + (const RpcEventStaItwtSuspend *message); +size_t rpc__event__sta_itwt_suspend__pack + (const RpcEventStaItwtSuspend *message, + uint8_t *out); +size_t rpc__event__sta_itwt_suspend__pack_to_buffer + (const RpcEventStaItwtSuspend *message, + ProtobufCBuffer *buffer); +RpcEventStaItwtSuspend * + rpc__event__sta_itwt_suspend__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__event__sta_itwt_suspend__free_unpacked + (RpcEventStaItwtSuspend *message, + ProtobufCAllocator *allocator); +/* RpcEventStaItwtProbe methods */ +void rpc__event__sta_itwt_probe__init + (RpcEventStaItwtProbe *message); +size_t rpc__event__sta_itwt_probe__get_packed_size + (const RpcEventStaItwtProbe *message); +size_t rpc__event__sta_itwt_probe__pack + (const RpcEventStaItwtProbe *message, + uint8_t *out); +size_t rpc__event__sta_itwt_probe__pack_to_buffer + (const RpcEventStaItwtProbe *message, + ProtobufCBuffer *buffer); +RpcEventStaItwtProbe * + rpc__event__sta_itwt_probe__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__event__sta_itwt_probe__free_unpacked + (RpcEventStaItwtProbe *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiStaEnterpriseEnable methods */ +void rpc__req__wifi_sta_enterprise_enable__init + (RpcReqWifiStaEnterpriseEnable *message); +size_t rpc__req__wifi_sta_enterprise_enable__get_packed_size + (const RpcReqWifiStaEnterpriseEnable *message); +size_t rpc__req__wifi_sta_enterprise_enable__pack + (const RpcReqWifiStaEnterpriseEnable *message, + uint8_t *out); +size_t rpc__req__wifi_sta_enterprise_enable__pack_to_buffer + (const RpcReqWifiStaEnterpriseEnable *message, + ProtobufCBuffer *buffer); +RpcReqWifiStaEnterpriseEnable * + rpc__req__wifi_sta_enterprise_enable__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_sta_enterprise_enable__free_unpacked + (RpcReqWifiStaEnterpriseEnable *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiStaEnterpriseEnable methods */ +void rpc__resp__wifi_sta_enterprise_enable__init + (RpcRespWifiStaEnterpriseEnable *message); +size_t rpc__resp__wifi_sta_enterprise_enable__get_packed_size + (const RpcRespWifiStaEnterpriseEnable *message); +size_t rpc__resp__wifi_sta_enterprise_enable__pack + (const RpcRespWifiStaEnterpriseEnable *message, + uint8_t *out); +size_t rpc__resp__wifi_sta_enterprise_enable__pack_to_buffer + (const RpcRespWifiStaEnterpriseEnable *message, + ProtobufCBuffer *buffer); +RpcRespWifiStaEnterpriseEnable * + rpc__resp__wifi_sta_enterprise_enable__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_sta_enterprise_enable__free_unpacked + (RpcRespWifiStaEnterpriseEnable *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiStaEnterpriseDisable methods */ +void rpc__req__wifi_sta_enterprise_disable__init + (RpcReqWifiStaEnterpriseDisable *message); +size_t rpc__req__wifi_sta_enterprise_disable__get_packed_size + (const RpcReqWifiStaEnterpriseDisable *message); +size_t rpc__req__wifi_sta_enterprise_disable__pack + (const RpcReqWifiStaEnterpriseDisable *message, + uint8_t *out); +size_t rpc__req__wifi_sta_enterprise_disable__pack_to_buffer + (const RpcReqWifiStaEnterpriseDisable *message, + ProtobufCBuffer *buffer); +RpcReqWifiStaEnterpriseDisable * + rpc__req__wifi_sta_enterprise_disable__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_sta_enterprise_disable__free_unpacked + (RpcReqWifiStaEnterpriseDisable *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiStaEnterpriseDisable methods */ +void rpc__resp__wifi_sta_enterprise_disable__init + (RpcRespWifiStaEnterpriseDisable *message); +size_t rpc__resp__wifi_sta_enterprise_disable__get_packed_size + (const RpcRespWifiStaEnterpriseDisable *message); +size_t rpc__resp__wifi_sta_enterprise_disable__pack + (const RpcRespWifiStaEnterpriseDisable *message, + uint8_t *out); +size_t rpc__resp__wifi_sta_enterprise_disable__pack_to_buffer + (const RpcRespWifiStaEnterpriseDisable *message, + ProtobufCBuffer *buffer); +RpcRespWifiStaEnterpriseDisable * + rpc__resp__wifi_sta_enterprise_disable__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_sta_enterprise_disable__free_unpacked + (RpcRespWifiStaEnterpriseDisable *message, + ProtobufCAllocator *allocator); +/* RpcReqEapSetIdentity methods */ +void rpc__req__eap_set_identity__init + (RpcReqEapSetIdentity *message); +size_t rpc__req__eap_set_identity__get_packed_size + (const RpcReqEapSetIdentity *message); +size_t rpc__req__eap_set_identity__pack + (const RpcReqEapSetIdentity *message, + uint8_t *out); +size_t rpc__req__eap_set_identity__pack_to_buffer + (const RpcReqEapSetIdentity *message, + ProtobufCBuffer *buffer); +RpcReqEapSetIdentity * + rpc__req__eap_set_identity__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__eap_set_identity__free_unpacked + (RpcReqEapSetIdentity *message, + ProtobufCAllocator *allocator); +/* RpcRespEapSetIdentity methods */ +void rpc__resp__eap_set_identity__init + (RpcRespEapSetIdentity *message); +size_t rpc__resp__eap_set_identity__get_packed_size + (const RpcRespEapSetIdentity *message); +size_t rpc__resp__eap_set_identity__pack + (const RpcRespEapSetIdentity *message, + uint8_t *out); +size_t rpc__resp__eap_set_identity__pack_to_buffer + (const RpcRespEapSetIdentity *message, + ProtobufCBuffer *buffer); +RpcRespEapSetIdentity * + rpc__resp__eap_set_identity__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__eap_set_identity__free_unpacked + (RpcRespEapSetIdentity *message, + ProtobufCAllocator *allocator); +/* RpcReqEapClearIdentity methods */ +void rpc__req__eap_clear_identity__init + (RpcReqEapClearIdentity *message); +size_t rpc__req__eap_clear_identity__get_packed_size + (const RpcReqEapClearIdentity *message); +size_t rpc__req__eap_clear_identity__pack + (const RpcReqEapClearIdentity *message, + uint8_t *out); +size_t rpc__req__eap_clear_identity__pack_to_buffer + (const RpcReqEapClearIdentity *message, + ProtobufCBuffer *buffer); +RpcReqEapClearIdentity * + rpc__req__eap_clear_identity__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__eap_clear_identity__free_unpacked + (RpcReqEapClearIdentity *message, + ProtobufCAllocator *allocator); +/* RpcRespEapClearIdentity methods */ +void rpc__resp__eap_clear_identity__init + (RpcRespEapClearIdentity *message); +size_t rpc__resp__eap_clear_identity__get_packed_size + (const RpcRespEapClearIdentity *message); +size_t rpc__resp__eap_clear_identity__pack + (const RpcRespEapClearIdentity *message, + uint8_t *out); +size_t rpc__resp__eap_clear_identity__pack_to_buffer + (const RpcRespEapClearIdentity *message, + ProtobufCBuffer *buffer); +RpcRespEapClearIdentity * + rpc__resp__eap_clear_identity__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__eap_clear_identity__free_unpacked + (RpcRespEapClearIdentity *message, + ProtobufCAllocator *allocator); +/* RpcReqEapSetUsername methods */ +void rpc__req__eap_set_username__init + (RpcReqEapSetUsername *message); +size_t rpc__req__eap_set_username__get_packed_size + (const RpcReqEapSetUsername *message); +size_t rpc__req__eap_set_username__pack + (const RpcReqEapSetUsername *message, + uint8_t *out); +size_t rpc__req__eap_set_username__pack_to_buffer + (const RpcReqEapSetUsername *message, + ProtobufCBuffer *buffer); +RpcReqEapSetUsername * + rpc__req__eap_set_username__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__eap_set_username__free_unpacked + (RpcReqEapSetUsername *message, + ProtobufCAllocator *allocator); +/* RpcRespEapSetUsername methods */ +void rpc__resp__eap_set_username__init + (RpcRespEapSetUsername *message); +size_t rpc__resp__eap_set_username__get_packed_size + (const RpcRespEapSetUsername *message); +size_t rpc__resp__eap_set_username__pack + (const RpcRespEapSetUsername *message, + uint8_t *out); +size_t rpc__resp__eap_set_username__pack_to_buffer + (const RpcRespEapSetUsername *message, + ProtobufCBuffer *buffer); +RpcRespEapSetUsername * + rpc__resp__eap_set_username__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__eap_set_username__free_unpacked + (RpcRespEapSetUsername *message, + ProtobufCAllocator *allocator); +/* RpcReqEapClearUsername methods */ +void rpc__req__eap_clear_username__init + (RpcReqEapClearUsername *message); +size_t rpc__req__eap_clear_username__get_packed_size + (const RpcReqEapClearUsername *message); +size_t rpc__req__eap_clear_username__pack + (const RpcReqEapClearUsername *message, + uint8_t *out); +size_t rpc__req__eap_clear_username__pack_to_buffer + (const RpcReqEapClearUsername *message, + ProtobufCBuffer *buffer); +RpcReqEapClearUsername * + rpc__req__eap_clear_username__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__eap_clear_username__free_unpacked + (RpcReqEapClearUsername *message, + ProtobufCAllocator *allocator); +/* RpcRespEapClearUsername methods */ +void rpc__resp__eap_clear_username__init + (RpcRespEapClearUsername *message); +size_t rpc__resp__eap_clear_username__get_packed_size + (const RpcRespEapClearUsername *message); +size_t rpc__resp__eap_clear_username__pack + (const RpcRespEapClearUsername *message, + uint8_t *out); +size_t rpc__resp__eap_clear_username__pack_to_buffer + (const RpcRespEapClearUsername *message, + ProtobufCBuffer *buffer); +RpcRespEapClearUsername * + rpc__resp__eap_clear_username__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__eap_clear_username__free_unpacked + (RpcRespEapClearUsername *message, + ProtobufCAllocator *allocator); +/* RpcReqEapSetPassword methods */ +void rpc__req__eap_set_password__init + (RpcReqEapSetPassword *message); +size_t rpc__req__eap_set_password__get_packed_size + (const RpcReqEapSetPassword *message); +size_t rpc__req__eap_set_password__pack + (const RpcReqEapSetPassword *message, + uint8_t *out); +size_t rpc__req__eap_set_password__pack_to_buffer + (const RpcReqEapSetPassword *message, + ProtobufCBuffer *buffer); +RpcReqEapSetPassword * + rpc__req__eap_set_password__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__eap_set_password__free_unpacked + (RpcReqEapSetPassword *message, + ProtobufCAllocator *allocator); +/* RpcRespEapSetPassword methods */ +void rpc__resp__eap_set_password__init + (RpcRespEapSetPassword *message); +size_t rpc__resp__eap_set_password__get_packed_size + (const RpcRespEapSetPassword *message); +size_t rpc__resp__eap_set_password__pack + (const RpcRespEapSetPassword *message, + uint8_t *out); +size_t rpc__resp__eap_set_password__pack_to_buffer + (const RpcRespEapSetPassword *message, + ProtobufCBuffer *buffer); +RpcRespEapSetPassword * + rpc__resp__eap_set_password__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__eap_set_password__free_unpacked + (RpcRespEapSetPassword *message, + ProtobufCAllocator *allocator); +/* RpcReqEapClearPassword methods */ +void rpc__req__eap_clear_password__init + (RpcReqEapClearPassword *message); +size_t rpc__req__eap_clear_password__get_packed_size + (const RpcReqEapClearPassword *message); +size_t rpc__req__eap_clear_password__pack + (const RpcReqEapClearPassword *message, + uint8_t *out); +size_t rpc__req__eap_clear_password__pack_to_buffer + (const RpcReqEapClearPassword *message, + ProtobufCBuffer *buffer); +RpcReqEapClearPassword * + rpc__req__eap_clear_password__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__eap_clear_password__free_unpacked + (RpcReqEapClearPassword *message, + ProtobufCAllocator *allocator); +/* RpcRespEapClearPassword methods */ +void rpc__resp__eap_clear_password__init + (RpcRespEapClearPassword *message); +size_t rpc__resp__eap_clear_password__get_packed_size + (const RpcRespEapClearPassword *message); +size_t rpc__resp__eap_clear_password__pack + (const RpcRespEapClearPassword *message, + uint8_t *out); +size_t rpc__resp__eap_clear_password__pack_to_buffer + (const RpcRespEapClearPassword *message, + ProtobufCBuffer *buffer); +RpcRespEapClearPassword * + rpc__resp__eap_clear_password__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__eap_clear_password__free_unpacked + (RpcRespEapClearPassword *message, + ProtobufCAllocator *allocator); +/* RpcReqEapSetNewPassword methods */ +void rpc__req__eap_set_new_password__init + (RpcReqEapSetNewPassword *message); +size_t rpc__req__eap_set_new_password__get_packed_size + (const RpcReqEapSetNewPassword *message); +size_t rpc__req__eap_set_new_password__pack + (const RpcReqEapSetNewPassword *message, + uint8_t *out); +size_t rpc__req__eap_set_new_password__pack_to_buffer + (const RpcReqEapSetNewPassword *message, + ProtobufCBuffer *buffer); +RpcReqEapSetNewPassword * + rpc__req__eap_set_new_password__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__eap_set_new_password__free_unpacked + (RpcReqEapSetNewPassword *message, + ProtobufCAllocator *allocator); +/* RpcRespEapSetNewPassword methods */ +void rpc__resp__eap_set_new_password__init + (RpcRespEapSetNewPassword *message); +size_t rpc__resp__eap_set_new_password__get_packed_size + (const RpcRespEapSetNewPassword *message); +size_t rpc__resp__eap_set_new_password__pack + (const RpcRespEapSetNewPassword *message, + uint8_t *out); +size_t rpc__resp__eap_set_new_password__pack_to_buffer + (const RpcRespEapSetNewPassword *message, + ProtobufCBuffer *buffer); +RpcRespEapSetNewPassword * + rpc__resp__eap_set_new_password__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__eap_set_new_password__free_unpacked + (RpcRespEapSetNewPassword *message, + ProtobufCAllocator *allocator); +/* RpcReqEapClearNewPassword methods */ +void rpc__req__eap_clear_new_password__init + (RpcReqEapClearNewPassword *message); +size_t rpc__req__eap_clear_new_password__get_packed_size + (const RpcReqEapClearNewPassword *message); +size_t rpc__req__eap_clear_new_password__pack + (const RpcReqEapClearNewPassword *message, + uint8_t *out); +size_t rpc__req__eap_clear_new_password__pack_to_buffer + (const RpcReqEapClearNewPassword *message, + ProtobufCBuffer *buffer); +RpcReqEapClearNewPassword * + rpc__req__eap_clear_new_password__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__eap_clear_new_password__free_unpacked + (RpcReqEapClearNewPassword *message, + ProtobufCAllocator *allocator); +/* RpcRespEapClearNewPassword methods */ +void rpc__resp__eap_clear_new_password__init + (RpcRespEapClearNewPassword *message); +size_t rpc__resp__eap_clear_new_password__get_packed_size + (const RpcRespEapClearNewPassword *message); +size_t rpc__resp__eap_clear_new_password__pack + (const RpcRespEapClearNewPassword *message, + uint8_t *out); +size_t rpc__resp__eap_clear_new_password__pack_to_buffer + (const RpcRespEapClearNewPassword *message, + ProtobufCBuffer *buffer); +RpcRespEapClearNewPassword * + rpc__resp__eap_clear_new_password__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__eap_clear_new_password__free_unpacked + (RpcRespEapClearNewPassword *message, + ProtobufCAllocator *allocator); +/* RpcReqEapSetCaCert methods */ +void rpc__req__eap_set_ca_cert__init + (RpcReqEapSetCaCert *message); +size_t rpc__req__eap_set_ca_cert__get_packed_size + (const RpcReqEapSetCaCert *message); +size_t rpc__req__eap_set_ca_cert__pack + (const RpcReqEapSetCaCert *message, + uint8_t *out); +size_t rpc__req__eap_set_ca_cert__pack_to_buffer + (const RpcReqEapSetCaCert *message, + ProtobufCBuffer *buffer); +RpcReqEapSetCaCert * + rpc__req__eap_set_ca_cert__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__eap_set_ca_cert__free_unpacked + (RpcReqEapSetCaCert *message, + ProtobufCAllocator *allocator); +/* RpcRespEapSetCaCert methods */ +void rpc__resp__eap_set_ca_cert__init + (RpcRespEapSetCaCert *message); +size_t rpc__resp__eap_set_ca_cert__get_packed_size + (const RpcRespEapSetCaCert *message); +size_t rpc__resp__eap_set_ca_cert__pack + (const RpcRespEapSetCaCert *message, + uint8_t *out); +size_t rpc__resp__eap_set_ca_cert__pack_to_buffer + (const RpcRespEapSetCaCert *message, + ProtobufCBuffer *buffer); +RpcRespEapSetCaCert * + rpc__resp__eap_set_ca_cert__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__eap_set_ca_cert__free_unpacked + (RpcRespEapSetCaCert *message, + ProtobufCAllocator *allocator); +/* RpcReqEapClearCaCert methods */ +void rpc__req__eap_clear_ca_cert__init + (RpcReqEapClearCaCert *message); +size_t rpc__req__eap_clear_ca_cert__get_packed_size + (const RpcReqEapClearCaCert *message); +size_t rpc__req__eap_clear_ca_cert__pack + (const RpcReqEapClearCaCert *message, + uint8_t *out); +size_t rpc__req__eap_clear_ca_cert__pack_to_buffer + (const RpcReqEapClearCaCert *message, + ProtobufCBuffer *buffer); +RpcReqEapClearCaCert * + rpc__req__eap_clear_ca_cert__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__eap_clear_ca_cert__free_unpacked + (RpcReqEapClearCaCert *message, + ProtobufCAllocator *allocator); +/* RpcRespEapClearCaCert methods */ +void rpc__resp__eap_clear_ca_cert__init + (RpcRespEapClearCaCert *message); +size_t rpc__resp__eap_clear_ca_cert__get_packed_size + (const RpcRespEapClearCaCert *message); +size_t rpc__resp__eap_clear_ca_cert__pack + (const RpcRespEapClearCaCert *message, + uint8_t *out); +size_t rpc__resp__eap_clear_ca_cert__pack_to_buffer + (const RpcRespEapClearCaCert *message, + ProtobufCBuffer *buffer); +RpcRespEapClearCaCert * + rpc__resp__eap_clear_ca_cert__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__eap_clear_ca_cert__free_unpacked + (RpcRespEapClearCaCert *message, + ProtobufCAllocator *allocator); +/* RpcReqEapSetCertificateAndKey methods */ +void rpc__req__eap_set_certificate_and_key__init + (RpcReqEapSetCertificateAndKey *message); +size_t rpc__req__eap_set_certificate_and_key__get_packed_size + (const RpcReqEapSetCertificateAndKey *message); +size_t rpc__req__eap_set_certificate_and_key__pack + (const RpcReqEapSetCertificateAndKey *message, + uint8_t *out); +size_t rpc__req__eap_set_certificate_and_key__pack_to_buffer + (const RpcReqEapSetCertificateAndKey *message, + ProtobufCBuffer *buffer); +RpcReqEapSetCertificateAndKey * + rpc__req__eap_set_certificate_and_key__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__eap_set_certificate_and_key__free_unpacked + (RpcReqEapSetCertificateAndKey *message, + ProtobufCAllocator *allocator); +/* RpcRespEapSetCertificateAndKey methods */ +void rpc__resp__eap_set_certificate_and_key__init + (RpcRespEapSetCertificateAndKey *message); +size_t rpc__resp__eap_set_certificate_and_key__get_packed_size + (const RpcRespEapSetCertificateAndKey *message); +size_t rpc__resp__eap_set_certificate_and_key__pack + (const RpcRespEapSetCertificateAndKey *message, + uint8_t *out); +size_t rpc__resp__eap_set_certificate_and_key__pack_to_buffer + (const RpcRespEapSetCertificateAndKey *message, + ProtobufCBuffer *buffer); +RpcRespEapSetCertificateAndKey * + rpc__resp__eap_set_certificate_and_key__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__eap_set_certificate_and_key__free_unpacked + (RpcRespEapSetCertificateAndKey *message, + ProtobufCAllocator *allocator); +/* RpcReqEapClearCertificateAndKey methods */ +void rpc__req__eap_clear_certificate_and_key__init + (RpcReqEapClearCertificateAndKey *message); +size_t rpc__req__eap_clear_certificate_and_key__get_packed_size + (const RpcReqEapClearCertificateAndKey *message); +size_t rpc__req__eap_clear_certificate_and_key__pack + (const RpcReqEapClearCertificateAndKey *message, + uint8_t *out); +size_t rpc__req__eap_clear_certificate_and_key__pack_to_buffer + (const RpcReqEapClearCertificateAndKey *message, + ProtobufCBuffer *buffer); +RpcReqEapClearCertificateAndKey * + rpc__req__eap_clear_certificate_and_key__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__eap_clear_certificate_and_key__free_unpacked + (RpcReqEapClearCertificateAndKey *message, + ProtobufCAllocator *allocator); +/* RpcRespEapClearCertificateAndKey methods */ +void rpc__resp__eap_clear_certificate_and_key__init + (RpcRespEapClearCertificateAndKey *message); +size_t rpc__resp__eap_clear_certificate_and_key__get_packed_size + (const RpcRespEapClearCertificateAndKey *message); +size_t rpc__resp__eap_clear_certificate_and_key__pack + (const RpcRespEapClearCertificateAndKey *message, + uint8_t *out); +size_t rpc__resp__eap_clear_certificate_and_key__pack_to_buffer + (const RpcRespEapClearCertificateAndKey *message, + ProtobufCBuffer *buffer); +RpcRespEapClearCertificateAndKey * + rpc__resp__eap_clear_certificate_and_key__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__eap_clear_certificate_and_key__free_unpacked + (RpcRespEapClearCertificateAndKey *message, + ProtobufCAllocator *allocator); +/* RpcReqEapSetDisableTimeCheck methods */ +void rpc__req__eap_set_disable_time_check__init + (RpcReqEapSetDisableTimeCheck *message); +size_t rpc__req__eap_set_disable_time_check__get_packed_size + (const RpcReqEapSetDisableTimeCheck *message); +size_t rpc__req__eap_set_disable_time_check__pack + (const RpcReqEapSetDisableTimeCheck *message, + uint8_t *out); +size_t rpc__req__eap_set_disable_time_check__pack_to_buffer + (const RpcReqEapSetDisableTimeCheck *message, + ProtobufCBuffer *buffer); +RpcReqEapSetDisableTimeCheck * + rpc__req__eap_set_disable_time_check__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__eap_set_disable_time_check__free_unpacked + (RpcReqEapSetDisableTimeCheck *message, + ProtobufCAllocator *allocator); +/* RpcRespEapSetDisableTimeCheck methods */ +void rpc__resp__eap_set_disable_time_check__init + (RpcRespEapSetDisableTimeCheck *message); +size_t rpc__resp__eap_set_disable_time_check__get_packed_size + (const RpcRespEapSetDisableTimeCheck *message); +size_t rpc__resp__eap_set_disable_time_check__pack + (const RpcRespEapSetDisableTimeCheck *message, + uint8_t *out); +size_t rpc__resp__eap_set_disable_time_check__pack_to_buffer + (const RpcRespEapSetDisableTimeCheck *message, + ProtobufCBuffer *buffer); +RpcRespEapSetDisableTimeCheck * + rpc__resp__eap_set_disable_time_check__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__eap_set_disable_time_check__free_unpacked + (RpcRespEapSetDisableTimeCheck *message, + ProtobufCAllocator *allocator); +/* RpcReqEapGetDisableTimeCheck methods */ +void rpc__req__eap_get_disable_time_check__init + (RpcReqEapGetDisableTimeCheck *message); +size_t rpc__req__eap_get_disable_time_check__get_packed_size + (const RpcReqEapGetDisableTimeCheck *message); +size_t rpc__req__eap_get_disable_time_check__pack + (const RpcReqEapGetDisableTimeCheck *message, + uint8_t *out); +size_t rpc__req__eap_get_disable_time_check__pack_to_buffer + (const RpcReqEapGetDisableTimeCheck *message, + ProtobufCBuffer *buffer); +RpcReqEapGetDisableTimeCheck * + rpc__req__eap_get_disable_time_check__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__eap_get_disable_time_check__free_unpacked + (RpcReqEapGetDisableTimeCheck *message, + ProtobufCAllocator *allocator); +/* RpcRespEapGetDisableTimeCheck methods */ +void rpc__resp__eap_get_disable_time_check__init + (RpcRespEapGetDisableTimeCheck *message); +size_t rpc__resp__eap_get_disable_time_check__get_packed_size + (const RpcRespEapGetDisableTimeCheck *message); +size_t rpc__resp__eap_get_disable_time_check__pack + (const RpcRespEapGetDisableTimeCheck *message, + uint8_t *out); +size_t rpc__resp__eap_get_disable_time_check__pack_to_buffer + (const RpcRespEapGetDisableTimeCheck *message, + ProtobufCBuffer *buffer); +RpcRespEapGetDisableTimeCheck * + rpc__resp__eap_get_disable_time_check__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__eap_get_disable_time_check__free_unpacked + (RpcRespEapGetDisableTimeCheck *message, + ProtobufCAllocator *allocator); +/* RpcReqEapSetTtlsPhase2Method methods */ +void rpc__req__eap_set_ttls_phase2_method__init + (RpcReqEapSetTtlsPhase2Method *message); +size_t rpc__req__eap_set_ttls_phase2_method__get_packed_size + (const RpcReqEapSetTtlsPhase2Method *message); +size_t rpc__req__eap_set_ttls_phase2_method__pack + (const RpcReqEapSetTtlsPhase2Method *message, + uint8_t *out); +size_t rpc__req__eap_set_ttls_phase2_method__pack_to_buffer + (const RpcReqEapSetTtlsPhase2Method *message, + ProtobufCBuffer *buffer); +RpcReqEapSetTtlsPhase2Method * + rpc__req__eap_set_ttls_phase2_method__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__eap_set_ttls_phase2_method__free_unpacked + (RpcReqEapSetTtlsPhase2Method *message, + ProtobufCAllocator *allocator); +/* RpcRespEapSetTtlsPhase2Method methods */ +void rpc__resp__eap_set_ttls_phase2_method__init + (RpcRespEapSetTtlsPhase2Method *message); +size_t rpc__resp__eap_set_ttls_phase2_method__get_packed_size + (const RpcRespEapSetTtlsPhase2Method *message); +size_t rpc__resp__eap_set_ttls_phase2_method__pack + (const RpcRespEapSetTtlsPhase2Method *message, + uint8_t *out); +size_t rpc__resp__eap_set_ttls_phase2_method__pack_to_buffer + (const RpcRespEapSetTtlsPhase2Method *message, + ProtobufCBuffer *buffer); +RpcRespEapSetTtlsPhase2Method * + rpc__resp__eap_set_ttls_phase2_method__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__eap_set_ttls_phase2_method__free_unpacked + (RpcRespEapSetTtlsPhase2Method *message, + ProtobufCAllocator *allocator); +/* RpcReqEapSetSuiteb192bitCertification methods */ +void rpc__req__eap_set_suiteb192bit_certification__init + (RpcReqEapSetSuiteb192bitCertification *message); +size_t rpc__req__eap_set_suiteb192bit_certification__get_packed_size + (const RpcReqEapSetSuiteb192bitCertification *message); +size_t rpc__req__eap_set_suiteb192bit_certification__pack + (const RpcReqEapSetSuiteb192bitCertification *message, + uint8_t *out); +size_t rpc__req__eap_set_suiteb192bit_certification__pack_to_buffer + (const RpcReqEapSetSuiteb192bitCertification *message, + ProtobufCBuffer *buffer); +RpcReqEapSetSuiteb192bitCertification * + rpc__req__eap_set_suiteb192bit_certification__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__eap_set_suiteb192bit_certification__free_unpacked + (RpcReqEapSetSuiteb192bitCertification *message, + ProtobufCAllocator *allocator); +/* RpcRespEapSetSuiteb192bitCertification methods */ +void rpc__resp__eap_set_suiteb192bit_certification__init + (RpcRespEapSetSuiteb192bitCertification *message); +size_t rpc__resp__eap_set_suiteb192bit_certification__get_packed_size + (const RpcRespEapSetSuiteb192bitCertification *message); +size_t rpc__resp__eap_set_suiteb192bit_certification__pack + (const RpcRespEapSetSuiteb192bitCertification *message, + uint8_t *out); +size_t rpc__resp__eap_set_suiteb192bit_certification__pack_to_buffer + (const RpcRespEapSetSuiteb192bitCertification *message, + ProtobufCBuffer *buffer); +RpcRespEapSetSuiteb192bitCertification * + rpc__resp__eap_set_suiteb192bit_certification__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__eap_set_suiteb192bit_certification__free_unpacked + (RpcRespEapSetSuiteb192bitCertification *message, + ProtobufCAllocator *allocator); +/* RpcReqEapSetPacFile methods */ +void rpc__req__eap_set_pac_file__init + (RpcReqEapSetPacFile *message); +size_t rpc__req__eap_set_pac_file__get_packed_size + (const RpcReqEapSetPacFile *message); +size_t rpc__req__eap_set_pac_file__pack + (const RpcReqEapSetPacFile *message, + uint8_t *out); +size_t rpc__req__eap_set_pac_file__pack_to_buffer + (const RpcReqEapSetPacFile *message, + ProtobufCBuffer *buffer); +RpcReqEapSetPacFile * + rpc__req__eap_set_pac_file__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__eap_set_pac_file__free_unpacked + (RpcReqEapSetPacFile *message, + ProtobufCAllocator *allocator); +/* RpcRespEapSetPacFile methods */ +void rpc__resp__eap_set_pac_file__init + (RpcRespEapSetPacFile *message); +size_t rpc__resp__eap_set_pac_file__get_packed_size + (const RpcRespEapSetPacFile *message); +size_t rpc__resp__eap_set_pac_file__pack + (const RpcRespEapSetPacFile *message, + uint8_t *out); +size_t rpc__resp__eap_set_pac_file__pack_to_buffer + (const RpcRespEapSetPacFile *message, + ProtobufCBuffer *buffer); +RpcRespEapSetPacFile * + rpc__resp__eap_set_pac_file__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__eap_set_pac_file__free_unpacked + (RpcRespEapSetPacFile *message, + ProtobufCAllocator *allocator); +/* RpcReqEapSetFastParams methods */ +void rpc__req__eap_set_fast_params__init + (RpcReqEapSetFastParams *message); +size_t rpc__req__eap_set_fast_params__get_packed_size + (const RpcReqEapSetFastParams *message); +size_t rpc__req__eap_set_fast_params__pack + (const RpcReqEapSetFastParams *message, + uint8_t *out); +size_t rpc__req__eap_set_fast_params__pack_to_buffer + (const RpcReqEapSetFastParams *message, + ProtobufCBuffer *buffer); +RpcReqEapSetFastParams * + rpc__req__eap_set_fast_params__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__eap_set_fast_params__free_unpacked + (RpcReqEapSetFastParams *message, + ProtobufCAllocator *allocator); +/* RpcRespEapSetFastParams methods */ +void rpc__resp__eap_set_fast_params__init + (RpcRespEapSetFastParams *message); +size_t rpc__resp__eap_set_fast_params__get_packed_size + (const RpcRespEapSetFastParams *message); +size_t rpc__resp__eap_set_fast_params__pack + (const RpcRespEapSetFastParams *message, + uint8_t *out); +size_t rpc__resp__eap_set_fast_params__pack_to_buffer + (const RpcRespEapSetFastParams *message, + ProtobufCBuffer *buffer); +RpcRespEapSetFastParams * + rpc__resp__eap_set_fast_params__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__eap_set_fast_params__free_unpacked + (RpcRespEapSetFastParams *message, + ProtobufCAllocator *allocator); +/* RpcReqEapUseDefaultCertBundle methods */ +void rpc__req__eap_use_default_cert_bundle__init + (RpcReqEapUseDefaultCertBundle *message); +size_t rpc__req__eap_use_default_cert_bundle__get_packed_size + (const RpcReqEapUseDefaultCertBundle *message); +size_t rpc__req__eap_use_default_cert_bundle__pack + (const RpcReqEapUseDefaultCertBundle *message, + uint8_t *out); +size_t rpc__req__eap_use_default_cert_bundle__pack_to_buffer + (const RpcReqEapUseDefaultCertBundle *message, + ProtobufCBuffer *buffer); +RpcReqEapUseDefaultCertBundle * + rpc__req__eap_use_default_cert_bundle__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__eap_use_default_cert_bundle__free_unpacked + (RpcReqEapUseDefaultCertBundle *message, + ProtobufCAllocator *allocator); +/* RpcRespEapUseDefaultCertBundle methods */ +void rpc__resp__eap_use_default_cert_bundle__init + (RpcRespEapUseDefaultCertBundle *message); +size_t rpc__resp__eap_use_default_cert_bundle__get_packed_size + (const RpcRespEapUseDefaultCertBundle *message); +size_t rpc__resp__eap_use_default_cert_bundle__pack + (const RpcRespEapUseDefaultCertBundle *message, + uint8_t *out); +size_t rpc__resp__eap_use_default_cert_bundle__pack_to_buffer + (const RpcRespEapUseDefaultCertBundle *message, + ProtobufCBuffer *buffer); +RpcRespEapUseDefaultCertBundle * + rpc__resp__eap_use_default_cert_bundle__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__eap_use_default_cert_bundle__free_unpacked + (RpcRespEapUseDefaultCertBundle *message, + ProtobufCAllocator *allocator); +/* RpcReqWifiSetOkcSupport methods */ +void rpc__req__wifi_set_okc_support__init + (RpcReqWifiSetOkcSupport *message); +size_t rpc__req__wifi_set_okc_support__get_packed_size + (const RpcReqWifiSetOkcSupport *message); +size_t rpc__req__wifi_set_okc_support__pack + (const RpcReqWifiSetOkcSupport *message, + uint8_t *out); +size_t rpc__req__wifi_set_okc_support__pack_to_buffer + (const RpcReqWifiSetOkcSupport *message, + ProtobufCBuffer *buffer); +RpcReqWifiSetOkcSupport * + rpc__req__wifi_set_okc_support__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__wifi_set_okc_support__free_unpacked + (RpcReqWifiSetOkcSupport *message, + ProtobufCAllocator *allocator); +/* RpcRespWifiSetOkcSupport methods */ +void rpc__resp__wifi_set_okc_support__init + (RpcRespWifiSetOkcSupport *message); +size_t rpc__resp__wifi_set_okc_support__get_packed_size + (const RpcRespWifiSetOkcSupport *message); +size_t rpc__resp__wifi_set_okc_support__pack + (const RpcRespWifiSetOkcSupport *message, + uint8_t *out); +size_t rpc__resp__wifi_set_okc_support__pack_to_buffer + (const RpcRespWifiSetOkcSupport *message, + ProtobufCBuffer *buffer); +RpcRespWifiSetOkcSupport * + rpc__resp__wifi_set_okc_support__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__wifi_set_okc_support__free_unpacked + (RpcRespWifiSetOkcSupport *message, + ProtobufCAllocator *allocator); +/* RpcReqEapSetDomainName methods */ +void rpc__req__eap_set_domain_name__init + (RpcReqEapSetDomainName *message); +size_t rpc__req__eap_set_domain_name__get_packed_size + (const RpcReqEapSetDomainName *message); +size_t rpc__req__eap_set_domain_name__pack + (const RpcReqEapSetDomainName *message, + uint8_t *out); +size_t rpc__req__eap_set_domain_name__pack_to_buffer + (const RpcReqEapSetDomainName *message, + ProtobufCBuffer *buffer); +RpcReqEapSetDomainName * + rpc__req__eap_set_domain_name__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__eap_set_domain_name__free_unpacked + (RpcReqEapSetDomainName *message, + ProtobufCAllocator *allocator); +/* RpcRespEapSetDomainName methods */ +void rpc__resp__eap_set_domain_name__init + (RpcRespEapSetDomainName *message); +size_t rpc__resp__eap_set_domain_name__get_packed_size + (const RpcRespEapSetDomainName *message); +size_t rpc__resp__eap_set_domain_name__pack + (const RpcRespEapSetDomainName *message, + uint8_t *out); +size_t rpc__resp__eap_set_domain_name__pack_to_buffer + (const RpcRespEapSetDomainName *message, + ProtobufCBuffer *buffer); +RpcRespEapSetDomainName * + rpc__resp__eap_set_domain_name__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__eap_set_domain_name__free_unpacked + (RpcRespEapSetDomainName *message, + ProtobufCAllocator *allocator); +/* RpcReqEapSetEapMethods methods */ +void rpc__req__eap_set_eap_methods__init + (RpcReqEapSetEapMethods *message); +size_t rpc__req__eap_set_eap_methods__get_packed_size + (const RpcReqEapSetEapMethods *message); +size_t rpc__req__eap_set_eap_methods__pack + (const RpcReqEapSetEapMethods *message, + uint8_t *out); +size_t rpc__req__eap_set_eap_methods__pack_to_buffer + (const RpcReqEapSetEapMethods *message, + ProtobufCBuffer *buffer); +RpcReqEapSetEapMethods * + rpc__req__eap_set_eap_methods__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__eap_set_eap_methods__free_unpacked + (RpcReqEapSetEapMethods *message, + ProtobufCAllocator *allocator); +/* RpcRespEapSetEapMethods methods */ +void rpc__resp__eap_set_eap_methods__init + (RpcRespEapSetEapMethods *message); +size_t rpc__resp__eap_set_eap_methods__get_packed_size + (const RpcRespEapSetEapMethods *message); +size_t rpc__resp__eap_set_eap_methods__pack + (const RpcRespEapSetEapMethods *message, + uint8_t *out); +size_t rpc__resp__eap_set_eap_methods__pack_to_buffer + (const RpcRespEapSetEapMethods *message, + ProtobufCBuffer *buffer); +RpcRespEapSetEapMethods * + rpc__resp__eap_set_eap_methods__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__eap_set_eap_methods__free_unpacked + (RpcRespEapSetEapMethods *message, + ProtobufCAllocator *allocator); +/* RpcEventSuppDppUriReady methods */ +void rpc__event__supp_dpp_uri_ready__init + (RpcEventSuppDppUriReady *message); +size_t rpc__event__supp_dpp_uri_ready__get_packed_size + (const RpcEventSuppDppUriReady *message); +size_t rpc__event__supp_dpp_uri_ready__pack + (const RpcEventSuppDppUriReady *message, + uint8_t *out); +size_t rpc__event__supp_dpp_uri_ready__pack_to_buffer + (const RpcEventSuppDppUriReady *message, + ProtobufCBuffer *buffer); +RpcEventSuppDppUriReady * + rpc__event__supp_dpp_uri_ready__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__event__supp_dpp_uri_ready__free_unpacked + (RpcEventSuppDppUriReady *message, + ProtobufCAllocator *allocator); +/* RpcEventSuppDppCfgRecvd methods */ +void rpc__event__supp_dpp_cfg_recvd__init + (RpcEventSuppDppCfgRecvd *message); +size_t rpc__event__supp_dpp_cfg_recvd__get_packed_size + (const RpcEventSuppDppCfgRecvd *message); +size_t rpc__event__supp_dpp_cfg_recvd__pack + (const RpcEventSuppDppCfgRecvd *message, + uint8_t *out); +size_t rpc__event__supp_dpp_cfg_recvd__pack_to_buffer + (const RpcEventSuppDppCfgRecvd *message, + ProtobufCBuffer *buffer); +RpcEventSuppDppCfgRecvd * + rpc__event__supp_dpp_cfg_recvd__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__event__supp_dpp_cfg_recvd__free_unpacked + (RpcEventSuppDppCfgRecvd *message, + ProtobufCAllocator *allocator); +/* RpcEventSuppDppFail methods */ +void rpc__event__supp_dpp_fail__init + (RpcEventSuppDppFail *message); +size_t rpc__event__supp_dpp_fail__get_packed_size + (const RpcEventSuppDppFail *message); +size_t rpc__event__supp_dpp_fail__pack + (const RpcEventSuppDppFail *message, + uint8_t *out); +size_t rpc__event__supp_dpp_fail__pack_to_buffer + (const RpcEventSuppDppFail *message, + ProtobufCBuffer *buffer); +RpcEventSuppDppFail * + rpc__event__supp_dpp_fail__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__event__supp_dpp_fail__free_unpacked + (RpcEventSuppDppFail *message, + ProtobufCAllocator *allocator); +/* RpcEventWifiDppUriReady methods */ +void rpc__event__wifi_dpp_uri_ready__init + (RpcEventWifiDppUriReady *message); +size_t rpc__event__wifi_dpp_uri_ready__get_packed_size + (const RpcEventWifiDppUriReady *message); +size_t rpc__event__wifi_dpp_uri_ready__pack + (const RpcEventWifiDppUriReady *message, + uint8_t *out); +size_t rpc__event__wifi_dpp_uri_ready__pack_to_buffer + (const RpcEventWifiDppUriReady *message, + ProtobufCBuffer *buffer); +RpcEventWifiDppUriReady * + rpc__event__wifi_dpp_uri_ready__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__event__wifi_dpp_uri_ready__free_unpacked + (RpcEventWifiDppUriReady *message, + ProtobufCAllocator *allocator); +/* RpcEventWifiDppCfgRecvd methods */ +void rpc__event__wifi_dpp_cfg_recvd__init + (RpcEventWifiDppCfgRecvd *message); +size_t rpc__event__wifi_dpp_cfg_recvd__get_packed_size + (const RpcEventWifiDppCfgRecvd *message); +size_t rpc__event__wifi_dpp_cfg_recvd__pack + (const RpcEventWifiDppCfgRecvd *message, + uint8_t *out); +size_t rpc__event__wifi_dpp_cfg_recvd__pack_to_buffer + (const RpcEventWifiDppCfgRecvd *message, + ProtobufCBuffer *buffer); +RpcEventWifiDppCfgRecvd * + rpc__event__wifi_dpp_cfg_recvd__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__event__wifi_dpp_cfg_recvd__free_unpacked + (RpcEventWifiDppCfgRecvd *message, + ProtobufCAllocator *allocator); +/* RpcEventWifiDppFail methods */ +void rpc__event__wifi_dpp_fail__init + (RpcEventWifiDppFail *message); +size_t rpc__event__wifi_dpp_fail__get_packed_size + (const RpcEventWifiDppFail *message); +size_t rpc__event__wifi_dpp_fail__pack + (const RpcEventWifiDppFail *message, + uint8_t *out); +size_t rpc__event__wifi_dpp_fail__pack_to_buffer + (const RpcEventWifiDppFail *message, + ProtobufCBuffer *buffer); +RpcEventWifiDppFail * + rpc__event__wifi_dpp_fail__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__event__wifi_dpp_fail__free_unpacked + (RpcEventWifiDppFail *message, + ProtobufCAllocator *allocator); +/* RpcReqCustomRpc methods */ +void rpc__req__custom_rpc__init + (RpcReqCustomRpc *message); +size_t rpc__req__custom_rpc__get_packed_size + (const RpcReqCustomRpc *message); +size_t rpc__req__custom_rpc__pack + (const RpcReqCustomRpc *message, + uint8_t *out); +size_t rpc__req__custom_rpc__pack_to_buffer + (const RpcReqCustomRpc *message, + ProtobufCBuffer *buffer); +RpcReqCustomRpc * + rpc__req__custom_rpc__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__req__custom_rpc__free_unpacked + (RpcReqCustomRpc *message, + ProtobufCAllocator *allocator); +/* RpcRespCustomRpc methods */ +void rpc__resp__custom_rpc__init + (RpcRespCustomRpc *message); +size_t rpc__resp__custom_rpc__get_packed_size + (const RpcRespCustomRpc *message); +size_t rpc__resp__custom_rpc__pack + (const RpcRespCustomRpc *message, + uint8_t *out); +size_t rpc__resp__custom_rpc__pack_to_buffer + (const RpcRespCustomRpc *message, + ProtobufCBuffer *buffer); +RpcRespCustomRpc * + rpc__resp__custom_rpc__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__resp__custom_rpc__free_unpacked + (RpcRespCustomRpc *message, + ProtobufCAllocator *allocator); +/* RpcEventCustomRpc methods */ +void rpc__event__custom_rpc__init + (RpcEventCustomRpc *message); +size_t rpc__event__custom_rpc__get_packed_size + (const RpcEventCustomRpc *message); +size_t rpc__event__custom_rpc__pack + (const RpcEventCustomRpc *message, + uint8_t *out); +size_t rpc__event__custom_rpc__pack_to_buffer + (const RpcEventCustomRpc *message, + ProtobufCBuffer *buffer); +RpcEventCustomRpc * + rpc__event__custom_rpc__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__event__custom_rpc__free_unpacked + (RpcEventCustomRpc *message, + ProtobufCAllocator *allocator); +/* RpcEventMemMonitor methods */ +void rpc__event__mem_monitor__init + (RpcEventMemMonitor *message); +size_t rpc__event__mem_monitor__get_packed_size + (const RpcEventMemMonitor *message); +size_t rpc__event__mem_monitor__pack + (const RpcEventMemMonitor *message, + uint8_t *out); +size_t rpc__event__mem_monitor__pack_to_buffer + (const RpcEventMemMonitor *message, + ProtobufCBuffer *buffer); +RpcEventMemMonitor * + rpc__event__mem_monitor__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__event__mem_monitor__free_unpacked + (RpcEventMemMonitor *message, + ProtobufCAllocator *allocator); +/* Rpc methods */ +void rpc__init + (Rpc *message); +size_t rpc__get_packed_size + (const Rpc *message); +size_t rpc__pack + (const Rpc *message, + uint8_t *out); +size_t rpc__pack_to_buffer + (const Rpc *message, + ProtobufCBuffer *buffer); +Rpc * + rpc__unpack + (ProtobufCAllocator *allocator, + size_t len, + const uint8_t *data); +void rpc__free_unpacked + (Rpc *message, + ProtobufCAllocator *allocator); +/* --- per-message closures --- */ + +typedef void (*WifiInitConfig_Closure) + (const WifiInitConfig *message, + void *closure_data); +typedef void (*WifiCountry_Closure) + (const WifiCountry *message, + void *closure_data); +typedef void (*WifiActiveScanTime_Closure) + (const WifiActiveScanTime *message, + void *closure_data); +typedef void (*WifiScanTime_Closure) + (const WifiScanTime *message, + void *closure_data); +typedef void (*WifiScanChannelBitmap_Closure) + (const WifiScanChannelBitmap *message, + void *closure_data); +typedef void (*WifiScanConfig_Closure) + (const WifiScanConfig *message, + void *closure_data); +typedef void (*WifiScanDefaultParams_Closure) + (const WifiScanDefaultParams *message, + void *closure_data); +typedef void (*WifiHeApInfo_Closure) + (const WifiHeApInfo *message, + void *closure_data); +typedef void (*WifiApRecord_Closure) + (const WifiApRecord *message, + void *closure_data); +typedef void (*WifiScanThreshold_Closure) + (const WifiScanThreshold *message, + void *closure_data); +typedef void (*WifiPmfConfig_Closure) + (const WifiPmfConfig *message, + void *closure_data); +typedef void (*WifiBssMaxIdleConfig_Closure) + (const WifiBssMaxIdleConfig *message, + void *closure_data); +typedef void (*WifiApConfig_Closure) + (const WifiApConfig *message, + void *closure_data); +typedef void (*WifiStaConfig_Closure) + (const WifiStaConfig *message, + void *closure_data); +typedef void (*WifiConfig_Closure) + (const WifiConfig *message, + void *closure_data); +typedef void (*WifiStaInfo_Closure) + (const WifiStaInfo *message, + void *closure_data); +typedef void (*WifiStaList_Closure) + (const WifiStaList *message, + void *closure_data); +typedef void (*WifiPktRxCtrl_Closure) + (const WifiPktRxCtrl *message, + void *closure_data); +typedef void (*WifiPromiscuousPkt_Closure) + (const WifiPromiscuousPkt *message, + void *closure_data); +typedef void (*WifiPromiscuousFilter_Closure) + (const WifiPromiscuousFilter *message, + void *closure_data); +typedef void (*WifiCsiConfig_Closure) + (const WifiCsiConfig *message, + void *closure_data); +typedef void (*WifiCsiInfo_Closure) + (const WifiCsiInfo *message, + void *closure_data); +typedef void (*WifiAntGpio_Closure) + (const WifiAntGpio *message, + void *closure_data); +typedef void (*WifiAntGpioConfig_Closure) + (const WifiAntGpioConfig *message, + void *closure_data); +typedef void (*WifiAntConfig_Closure) + (const WifiAntConfig *message, + void *closure_data); +typedef void (*WifiActionTxReq_Closure) + (const WifiActionTxReq *message, + void *closure_data); +typedef void (*WifiFtmInitiatorCfg_Closure) + (const WifiFtmInitiatorCfg *message, + void *closure_data); +typedef void (*WifiEventStaScanDone_Closure) + (const WifiEventStaScanDone *message, + void *closure_data); +typedef void (*WifiEventStaConnected_Closure) + (const WifiEventStaConnected *message, + void *closure_data); +typedef void (*WifiEventStaDisconnected_Closure) + (const WifiEventStaDisconnected *message, + void *closure_data); +typedef void (*WifiEventStaAuthmodeChange_Closure) + (const WifiEventStaAuthmodeChange *message, + void *closure_data); +typedef void (*WifiEventStaWpsErPin_Closure) + (const WifiEventStaWpsErPin *message, + void *closure_data); +typedef void (*ApCred_Closure) + (const ApCred *message, + void *closure_data); +typedef void (*WifiEventStaWpsErSuccess_Closure) + (const WifiEventStaWpsErSuccess *message, + void *closure_data); +typedef void (*WifiEventApProbeReqRx_Closure) + (const WifiEventApProbeReqRx *message, + void *closure_data); +typedef void (*WifiEventBssRssiLow_Closure) + (const WifiEventBssRssiLow *message, + void *closure_data); +typedef void (*WifiFtmReportEntry_Closure) + (const WifiFtmReportEntry *message, + void *closure_data); +typedef void (*WifiEventFtmReport_Closure) + (const WifiEventFtmReport *message, + void *closure_data); +typedef void (*WifiEventActionTxStatus_Closure) + (const WifiEventActionTxStatus *message, + void *closure_data); +typedef void (*WifiEventRocDone_Closure) + (const WifiEventRocDone *message, + void *closure_data); +typedef void (*WifiEventApWpsRgPin_Closure) + (const WifiEventApWpsRgPin *message, + void *closure_data); +typedef void (*WifiEventApWpsRgFailReason_Closure) + (const WifiEventApWpsRgFailReason *message, + void *closure_data); +typedef void (*WifiEventApWpsRgSuccess_Closure) + (const WifiEventApWpsRgSuccess *message, + void *closure_data); +typedef void (*WifiProtocols_Closure) + (const WifiProtocols *message, + void *closure_data); +typedef void (*WifiBandwidths_Closure) + (const WifiBandwidths *message, + void *closure_data); +typedef void (*WifiItwtSetupConfig_Closure) + (const WifiItwtSetupConfig *message, + void *closure_data); +typedef void (*WifiTwtConfig_Closure) + (const WifiTwtConfig *message, + void *closure_data); +typedef void (*EspAppDesc_Closure) + (const EspAppDesc *message, + void *closure_data); +typedef void (*HeapSizeThreshold_Closure) + (const HeapSizeThreshold *message, + void *closure_data); +typedef void (*MemInfo_Closure) + (const MemInfo *message, + void *closure_data); +typedef void (*HeapInfo_Closure) + (const HeapInfo *message, + void *closure_data); +typedef void (*ConnectedSTAList_Closure) + (const ConnectedSTAList *message, + void *closure_data); +typedef void (*EapFastConfig_Closure) + (const EapFastConfig *message, + void *closure_data); +typedef void (*RpcReqGetMacAddress_Closure) + (const RpcReqGetMacAddress *message, + void *closure_data); +typedef void (*RpcRespGetMacAddress_Closure) + (const RpcRespGetMacAddress *message, + void *closure_data); +typedef void (*RpcReqGetMode_Closure) + (const RpcReqGetMode *message, + void *closure_data); +typedef void (*RpcRespGetMode_Closure) + (const RpcRespGetMode *message, + void *closure_data); +typedef void (*RpcReqSetMode_Closure) + (const RpcReqSetMode *message, + void *closure_data); +typedef void (*RpcRespSetMode_Closure) + (const RpcRespSetMode *message, + void *closure_data); +typedef void (*RpcReqGetPs_Closure) + (const RpcReqGetPs *message, + void *closure_data); +typedef void (*RpcRespGetPs_Closure) + (const RpcRespGetPs *message, + void *closure_data); +typedef void (*RpcReqSetPs_Closure) + (const RpcReqSetPs *message, + void *closure_data); +typedef void (*RpcRespSetPs_Closure) + (const RpcRespSetPs *message, + void *closure_data); +typedef void (*RpcReqSetMacAddress_Closure) + (const RpcReqSetMacAddress *message, + void *closure_data); +typedef void (*RpcRespSetMacAddress_Closure) + (const RpcRespSetMacAddress *message, + void *closure_data); +typedef void (*RpcReqOTABegin_Closure) + (const RpcReqOTABegin *message, + void *closure_data); +typedef void (*RpcRespOTABegin_Closure) + (const RpcRespOTABegin *message, + void *closure_data); +typedef void (*RpcReqOTAWrite_Closure) + (const RpcReqOTAWrite *message, + void *closure_data); +typedef void (*RpcRespOTAWrite_Closure) + (const RpcRespOTAWrite *message, + void *closure_data); +typedef void (*RpcReqOTAEnd_Closure) + (const RpcReqOTAEnd *message, + void *closure_data); +typedef void (*RpcRespOTAEnd_Closure) + (const RpcRespOTAEnd *message, + void *closure_data); +typedef void (*RpcReqOTAActivate_Closure) + (const RpcReqOTAActivate *message, + void *closure_data); +typedef void (*RpcRespOTAActivate_Closure) + (const RpcRespOTAActivate *message, + void *closure_data); +typedef void (*RpcReqAppGetDesc_Closure) + (const RpcReqAppGetDesc *message, + void *closure_data); +typedef void (*RpcRespAppGetDesc_Closure) + (const RpcRespAppGetDesc *message, + void *closure_data); +typedef void (*RpcReqWifiSetMaxTxPower_Closure) + (const RpcReqWifiSetMaxTxPower *message, + void *closure_data); +typedef void (*RpcRespWifiSetMaxTxPower_Closure) + (const RpcRespWifiSetMaxTxPower *message, + void *closure_data); +typedef void (*RpcReqWifiGetMaxTxPower_Closure) + (const RpcReqWifiGetMaxTxPower *message, + void *closure_data); +typedef void (*RpcRespWifiGetMaxTxPower_Closure) + (const RpcRespWifiGetMaxTxPower *message, + void *closure_data); +typedef void (*RpcReqConfigHeartbeat_Closure) + (const RpcReqConfigHeartbeat *message, + void *closure_data); +typedef void (*RpcRespConfigHeartbeat_Closure) + (const RpcRespConfigHeartbeat *message, + void *closure_data); +typedef void (*RpcReqWifiInit_Closure) + (const RpcReqWifiInit *message, + void *closure_data); +typedef void (*RpcRespWifiInit_Closure) + (const RpcRespWifiInit *message, + void *closure_data); +typedef void (*RpcReqWifiDeinit_Closure) + (const RpcReqWifiDeinit *message, + void *closure_data); +typedef void (*RpcRespWifiDeinit_Closure) + (const RpcRespWifiDeinit *message, + void *closure_data); +typedef void (*RpcReqWifiSetConfig_Closure) + (const RpcReqWifiSetConfig *message, + void *closure_data); +typedef void (*RpcRespWifiSetConfig_Closure) + (const RpcRespWifiSetConfig *message, + void *closure_data); +typedef void (*RpcReqWifiGetConfig_Closure) + (const RpcReqWifiGetConfig *message, + void *closure_data); +typedef void (*RpcRespWifiGetConfig_Closure) + (const RpcRespWifiGetConfig *message, + void *closure_data); +typedef void (*RpcReqWifiConnect_Closure) + (const RpcReqWifiConnect *message, + void *closure_data); +typedef void (*RpcRespWifiConnect_Closure) + (const RpcRespWifiConnect *message, + void *closure_data); +typedef void (*RpcReqWifiDisconnect_Closure) + (const RpcReqWifiDisconnect *message, + void *closure_data); +typedef void (*RpcRespWifiDisconnect_Closure) + (const RpcRespWifiDisconnect *message, + void *closure_data); +typedef void (*RpcReqWifiStart_Closure) + (const RpcReqWifiStart *message, + void *closure_data); +typedef void (*RpcRespWifiStart_Closure) + (const RpcRespWifiStart *message, + void *closure_data); +typedef void (*RpcReqWifiStop_Closure) + (const RpcReqWifiStop *message, + void *closure_data); +typedef void (*RpcRespWifiStop_Closure) + (const RpcRespWifiStop *message, + void *closure_data); +typedef void (*RpcReqWifiScanStart_Closure) + (const RpcReqWifiScanStart *message, + void *closure_data); +typedef void (*RpcRespWifiScanStart_Closure) + (const RpcRespWifiScanStart *message, + void *closure_data); +typedef void (*RpcReqWifiScanStop_Closure) + (const RpcReqWifiScanStop *message, + void *closure_data); +typedef void (*RpcRespWifiScanStop_Closure) + (const RpcRespWifiScanStop *message, + void *closure_data); +typedef void (*RpcReqWifiScanGetApNum_Closure) + (const RpcReqWifiScanGetApNum *message, + void *closure_data); +typedef void (*RpcRespWifiScanGetApNum_Closure) + (const RpcRespWifiScanGetApNum *message, + void *closure_data); +typedef void (*RpcReqWifiScanGetApRecords_Closure) + (const RpcReqWifiScanGetApRecords *message, + void *closure_data); +typedef void (*RpcRespWifiScanGetApRecords_Closure) + (const RpcRespWifiScanGetApRecords *message, + void *closure_data); +typedef void (*RpcReqWifiScanGetApRecord_Closure) + (const RpcReqWifiScanGetApRecord *message, + void *closure_data); +typedef void (*RpcRespWifiScanGetApRecord_Closure) + (const RpcRespWifiScanGetApRecord *message, + void *closure_data); +typedef void (*RpcReqWifiClearApList_Closure) + (const RpcReqWifiClearApList *message, + void *closure_data); +typedef void (*RpcRespWifiClearApList_Closure) + (const RpcRespWifiClearApList *message, + void *closure_data); +typedef void (*RpcReqWifiRestore_Closure) + (const RpcReqWifiRestore *message, + void *closure_data); +typedef void (*RpcRespWifiRestore_Closure) + (const RpcRespWifiRestore *message, + void *closure_data); +typedef void (*RpcReqWifiClearFastConnect_Closure) + (const RpcReqWifiClearFastConnect *message, + void *closure_data); +typedef void (*RpcRespWifiClearFastConnect_Closure) + (const RpcRespWifiClearFastConnect *message, + void *closure_data); +typedef void (*RpcReqWifiDeauthSta_Closure) + (const RpcReqWifiDeauthSta *message, + void *closure_data); +typedef void (*RpcRespWifiDeauthSta_Closure) + (const RpcRespWifiDeauthSta *message, + void *closure_data); +typedef void (*RpcReqWifiStaGetApInfo_Closure) + (const RpcReqWifiStaGetApInfo *message, + void *closure_data); +typedef void (*RpcRespWifiStaGetApInfo_Closure) + (const RpcRespWifiStaGetApInfo *message, + void *closure_data); +typedef void (*RpcReqWifiSetProtocol_Closure) + (const RpcReqWifiSetProtocol *message, + void *closure_data); +typedef void (*RpcRespWifiSetProtocol_Closure) + (const RpcRespWifiSetProtocol *message, + void *closure_data); +typedef void (*RpcReqWifiGetProtocol_Closure) + (const RpcReqWifiGetProtocol *message, + void *closure_data); +typedef void (*RpcRespWifiGetProtocol_Closure) + (const RpcRespWifiGetProtocol *message, + void *closure_data); +typedef void (*RpcReqWifiSetBandwidth_Closure) + (const RpcReqWifiSetBandwidth *message, + void *closure_data); +typedef void (*RpcRespWifiSetBandwidth_Closure) + (const RpcRespWifiSetBandwidth *message, + void *closure_data); +typedef void (*RpcReqWifiGetBandwidth_Closure) + (const RpcReqWifiGetBandwidth *message, + void *closure_data); +typedef void (*RpcRespWifiGetBandwidth_Closure) + (const RpcRespWifiGetBandwidth *message, + void *closure_data); +typedef void (*RpcReqWifiSetChannel_Closure) + (const RpcReqWifiSetChannel *message, + void *closure_data); +typedef void (*RpcRespWifiSetChannel_Closure) + (const RpcRespWifiSetChannel *message, + void *closure_data); +typedef void (*RpcReqWifiGetChannel_Closure) + (const RpcReqWifiGetChannel *message, + void *closure_data); +typedef void (*RpcRespWifiGetChannel_Closure) + (const RpcRespWifiGetChannel *message, + void *closure_data); +typedef void (*RpcReqWifiSetStorage_Closure) + (const RpcReqWifiSetStorage *message, + void *closure_data); +typedef void (*RpcRespWifiSetStorage_Closure) + (const RpcRespWifiSetStorage *message, + void *closure_data); +typedef void (*RpcReqWifiSetCountryCode_Closure) + (const RpcReqWifiSetCountryCode *message, + void *closure_data); +typedef void (*RpcRespWifiSetCountryCode_Closure) + (const RpcRespWifiSetCountryCode *message, + void *closure_data); +typedef void (*RpcReqWifiGetCountryCode_Closure) + (const RpcReqWifiGetCountryCode *message, + void *closure_data); +typedef void (*RpcRespWifiGetCountryCode_Closure) + (const RpcRespWifiGetCountryCode *message, + void *closure_data); +typedef void (*RpcReqWifiSetCountry_Closure) + (const RpcReqWifiSetCountry *message, + void *closure_data); +typedef void (*RpcRespWifiSetCountry_Closure) + (const RpcRespWifiSetCountry *message, + void *closure_data); +typedef void (*RpcReqWifiGetCountry_Closure) + (const RpcReqWifiGetCountry *message, + void *closure_data); +typedef void (*RpcRespWifiGetCountry_Closure) + (const RpcRespWifiGetCountry *message, + void *closure_data); +typedef void (*RpcReqWifiApGetStaList_Closure) + (const RpcReqWifiApGetStaList *message, + void *closure_data); +typedef void (*RpcRespWifiApGetStaList_Closure) + (const RpcRespWifiApGetStaList *message, + void *closure_data); +typedef void (*RpcReqWifiApGetStaAid_Closure) + (const RpcReqWifiApGetStaAid *message, + void *closure_data); +typedef void (*RpcReqWifiStaGetNegotiatedPhymode_Closure) + (const RpcReqWifiStaGetNegotiatedPhymode *message, + void *closure_data); +typedef void (*RpcRespWifiStaGetNegotiatedPhymode_Closure) + (const RpcRespWifiStaGetNegotiatedPhymode *message, + void *closure_data); +typedef void (*RpcRespWifiApGetStaAid_Closure) + (const RpcRespWifiApGetStaAid *message, + void *closure_data); +typedef void (*RpcReqWifiStaGetRssi_Closure) + (const RpcReqWifiStaGetRssi *message, + void *closure_data); +typedef void (*RpcRespWifiStaGetRssi_Closure) + (const RpcRespWifiStaGetRssi *message, + void *closure_data); +typedef void (*RpcReqWifiScanParams_Closure) + (const RpcReqWifiScanParams *message, + void *closure_data); +typedef void (*RpcRespWifiScanParams_Closure) + (const RpcRespWifiScanParams *message, + void *closure_data); +typedef void (*RpcReqWifiStaGetAid_Closure) + (const RpcReqWifiStaGetAid *message, + void *closure_data); +typedef void (*RpcRespWifiStaGetAid_Closure) + (const RpcRespWifiStaGetAid *message, + void *closure_data); +typedef void (*RpcReqWifiSetProtocols_Closure) + (const RpcReqWifiSetProtocols *message, + void *closure_data); +typedef void (*RpcRespWifiSetProtocols_Closure) + (const RpcRespWifiSetProtocols *message, + void *closure_data); +typedef void (*RpcReqWifiGetProtocols_Closure) + (const RpcReqWifiGetProtocols *message, + void *closure_data); +typedef void (*RpcRespWifiGetProtocols_Closure) + (const RpcRespWifiGetProtocols *message, + void *closure_data); +typedef void (*RpcReqWifiSetBandwidths_Closure) + (const RpcReqWifiSetBandwidths *message, + void *closure_data); +typedef void (*RpcRespWifiSetBandwidths_Closure) + (const RpcRespWifiSetBandwidths *message, + void *closure_data); +typedef void (*RpcReqWifiGetBandwidths_Closure) + (const RpcReqWifiGetBandwidths *message, + void *closure_data); +typedef void (*RpcRespWifiGetBandwidths_Closure) + (const RpcRespWifiGetBandwidths *message, + void *closure_data); +typedef void (*RpcReqWifiSetBand_Closure) + (const RpcReqWifiSetBand *message, + void *closure_data); +typedef void (*RpcRespWifiSetBand_Closure) + (const RpcRespWifiSetBand *message, + void *closure_data); +typedef void (*RpcReqWifiGetBand_Closure) + (const RpcReqWifiGetBand *message, + void *closure_data); +typedef void (*RpcRespWifiGetBand_Closure) + (const RpcRespWifiGetBand *message, + void *closure_data); +typedef void (*RpcReqWifiSetBandMode_Closure) + (const RpcReqWifiSetBandMode *message, + void *closure_data); +typedef void (*RpcRespWifiSetBandMode_Closure) + (const RpcRespWifiSetBandMode *message, + void *closure_data); +typedef void (*RpcReqWifiGetBandMode_Closure) + (const RpcReqWifiGetBandMode *message, + void *closure_data); +typedef void (*RpcRespWifiGetBandMode_Closure) + (const RpcRespWifiGetBandMode *message, + void *closure_data); +typedef void (*RpcReqWifiSetInactiveTime_Closure) + (const RpcReqWifiSetInactiveTime *message, + void *closure_data); +typedef void (*RpcRespWifiSetInactiveTime_Closure) + (const RpcRespWifiSetInactiveTime *message, + void *closure_data); +typedef void (*RpcReqWifiGetInactiveTime_Closure) + (const RpcReqWifiGetInactiveTime *message, + void *closure_data); +typedef void (*RpcRespWifiGetInactiveTime_Closure) + (const RpcRespWifiGetInactiveTime *message, + void *closure_data); +typedef void (*RpcReqWifiDisablePmfConfig_Closure) + (const RpcReqWifiDisablePmfConfig *message, + void *closure_data); +typedef void (*RpcRespWifiDisablePmfConfig_Closure) + (const RpcRespWifiDisablePmfConfig *message, + void *closure_data); +typedef void (*RpcReqWifiStaItwtSetup_Closure) + (const RpcReqWifiStaItwtSetup *message, + void *closure_data); +typedef void (*RpcRespWifiStaItwtSetup_Closure) + (const RpcRespWifiStaItwtSetup *message, + void *closure_data); +typedef void (*RpcReqWifiStaItwtTeardown_Closure) + (const RpcReqWifiStaItwtTeardown *message, + void *closure_data); +typedef void (*RpcRespWifiStaItwtTeardown_Closure) + (const RpcRespWifiStaItwtTeardown *message, + void *closure_data); +typedef void (*RpcReqWifiStaItwtSuspend_Closure) + (const RpcReqWifiStaItwtSuspend *message, + void *closure_data); +typedef void (*RpcRespWifiStaItwtSuspend_Closure) + (const RpcRespWifiStaItwtSuspend *message, + void *closure_data); +typedef void (*RpcReqWifiStaItwtGetFlowIdStatus_Closure) + (const RpcReqWifiStaItwtGetFlowIdStatus *message, + void *closure_data); +typedef void (*RpcRespWifiStaItwtGetFlowIdStatus_Closure) + (const RpcRespWifiStaItwtGetFlowIdStatus *message, + void *closure_data); +typedef void (*RpcReqWifiStaItwtSendProbeReq_Closure) + (const RpcReqWifiStaItwtSendProbeReq *message, + void *closure_data); +typedef void (*RpcRespWifiStaItwtSendProbeReq_Closure) + (const RpcRespWifiStaItwtSendProbeReq *message, + void *closure_data); +typedef void (*RpcReqWifiStaItwtSetTargetWakeTimeOffset_Closure) + (const RpcReqWifiStaItwtSetTargetWakeTimeOffset *message, + void *closure_data); +typedef void (*RpcRespWifiStaItwtSetTargetWakeTimeOffset_Closure) + (const RpcRespWifiStaItwtSetTargetWakeTimeOffset *message, + void *closure_data); +typedef void (*RpcReqWifiStaTwtConfig_Closure) + (const RpcReqWifiStaTwtConfig *message, + void *closure_data); +typedef void (*RpcRespWifiStaTwtConfig_Closure) + (const RpcRespWifiStaTwtConfig *message, + void *closure_data); +typedef void (*RpcReqGetCoprocessorFwVersion_Closure) + (const RpcReqGetCoprocessorFwVersion *message, + void *closure_data); +typedef void (*RpcRespGetCoprocessorFwVersion_Closure) + (const RpcRespGetCoprocessorFwVersion *message, + void *closure_data); +typedef void (*RpcReqSetDhcpDnsStatus_Closure) + (const RpcReqSetDhcpDnsStatus *message, + void *closure_data); +typedef void (*RpcRespSetDhcpDnsStatus_Closure) + (const RpcRespSetDhcpDnsStatus *message, + void *closure_data); +typedef void (*RpcReqGetDhcpDnsStatus_Closure) + (const RpcReqGetDhcpDnsStatus *message, + void *closure_data); +typedef void (*RpcRespGetDhcpDnsStatus_Closure) + (const RpcRespGetDhcpDnsStatus *message, + void *closure_data); +typedef void (*RpcReqSuppDppInit_Closure) + (const RpcReqSuppDppInit *message, + void *closure_data); +typedef void (*RpcRespSuppDppInit_Closure) + (const RpcRespSuppDppInit *message, + void *closure_data); +typedef void (*RpcReqSuppDppDeinit_Closure) + (const RpcReqSuppDppDeinit *message, + void *closure_data); +typedef void (*RpcRespSuppDppDeinit_Closure) + (const RpcRespSuppDppDeinit *message, + void *closure_data); +typedef void (*RpcReqSuppDppBootstrapGen_Closure) + (const RpcReqSuppDppBootstrapGen *message, + void *closure_data); +typedef void (*RpcRespSuppDppBootstrapGen_Closure) + (const RpcRespSuppDppBootstrapGen *message, + void *closure_data); +typedef void (*RpcReqSuppDppStartListen_Closure) + (const RpcReqSuppDppStartListen *message, + void *closure_data); +typedef void (*RpcRespSuppDppStartListen_Closure) + (const RpcRespSuppDppStartListen *message, + void *closure_data); +typedef void (*RpcReqSuppDppStopListen_Closure) + (const RpcReqSuppDppStopListen *message, + void *closure_data); +typedef void (*RpcRespSuppDppStopListen_Closure) + (const RpcRespSuppDppStopListen *message, + void *closure_data); +typedef void (*RpcReqIfaceMacAddrSetGet_Closure) + (const RpcReqIfaceMacAddrSetGet *message, + void *closure_data); +typedef void (*RpcRespIfaceMacAddrSetGet_Closure) + (const RpcRespIfaceMacAddrSetGet *message, + void *closure_data); +typedef void (*RpcReqIfaceMacAddrLenGet_Closure) + (const RpcReqIfaceMacAddrLenGet *message, + void *closure_data); +typedef void (*RpcRespIfaceMacAddrLenGet_Closure) + (const RpcRespIfaceMacAddrLenGet *message, + void *closure_data); +typedef void (*RpcReqFeatureControl_Closure) + (const RpcReqFeatureControl *message, + void *closure_data); +typedef void (*RpcRespFeatureControl_Closure) + (const RpcRespFeatureControl *message, + void *closure_data); +typedef void (*RpcReqMemMonitor_Closure) + (const RpcReqMemMonitor *message, + void *closure_data); +typedef void (*RpcRespMemMonitor_Closure) + (const RpcRespMemMonitor *message, + void *closure_data); +typedef void (*RpcEventWifiEventNoArgs_Closure) + (const RpcEventWifiEventNoArgs *message, + void *closure_data); +typedef void (*RpcEventESPInit_Closure) + (const RpcEventESPInit *message, + void *closure_data); +typedef void (*RpcEventHeartbeat_Closure) + (const RpcEventHeartbeat *message, + void *closure_data); +typedef void (*RpcEventAPStaDisconnected_Closure) + (const RpcEventAPStaDisconnected *message, + void *closure_data); +typedef void (*RpcEventAPStaConnected_Closure) + (const RpcEventAPStaConnected *message, + void *closure_data); +typedef void (*RpcEventStaScanDone_Closure) + (const RpcEventStaScanDone *message, + void *closure_data); +typedef void (*RpcEventStaConnected_Closure) + (const RpcEventStaConnected *message, + void *closure_data); +typedef void (*RpcEventStaDisconnected_Closure) + (const RpcEventStaDisconnected *message, + void *closure_data); +typedef void (*RpcGpioConfig_Closure) + (const RpcGpioConfig *message, + void *closure_data); +typedef void (*RpcReqGpioConfig_Closure) + (const RpcReqGpioConfig *message, + void *closure_data); +typedef void (*RpcRespGpioConfig_Closure) + (const RpcRespGpioConfig *message, + void *closure_data); +typedef void (*RpcReqGpioResetPin_Closure) + (const RpcReqGpioResetPin *message, + void *closure_data); +typedef void (*RpcRespGpioResetPin_Closure) + (const RpcRespGpioResetPin *message, + void *closure_data); +typedef void (*RpcReqGpioSetLevel_Closure) + (const RpcReqGpioSetLevel *message, + void *closure_data); +typedef void (*RpcRespGpioSetLevel_Closure) + (const RpcRespGpioSetLevel *message, + void *closure_data); +typedef void (*RpcReqGpioGetLevel_Closure) + (const RpcReqGpioGetLevel *message, + void *closure_data); +typedef void (*RpcRespGpioGetLevel_Closure) + (const RpcRespGpioGetLevel *message, + void *closure_data); +typedef void (*RpcReqGpioSetDirection_Closure) + (const RpcReqGpioSetDirection *message, + void *closure_data); +typedef void (*RpcRespGpioSetDirection_Closure) + (const RpcRespGpioSetDirection *message, + void *closure_data); +typedef void (*RpcReqGpioInputEnable_Closure) + (const RpcReqGpioInputEnable *message, + void *closure_data); +typedef void (*RpcRespGpioInputEnable_Closure) + (const RpcRespGpioInputEnable *message, + void *closure_data); +typedef void (*RpcReqGpioSetPullMode_Closure) + (const RpcReqGpioSetPullMode *message, + void *closure_data); +typedef void (*RpcRespGpioSetPullMode_Closure) + (const RpcRespGpioSetPullMode *message, + void *closure_data); +typedef void (*RpcReqExtCoex_Closure) + (const RpcReqExtCoex *message, + void *closure_data); +typedef void (*RpcRespExtCoex_Closure) + (const RpcRespExtCoex *message, + void *closure_data); +typedef void (*RpcEventDhcpDnsStatus_Closure) + (const RpcEventDhcpDnsStatus *message, + void *closure_data); +typedef void (*RpcEventStaItwtSetup_Closure) + (const RpcEventStaItwtSetup *message, + void *closure_data); +typedef void (*RpcEventStaItwtTeardown_Closure) + (const RpcEventStaItwtTeardown *message, + void *closure_data); +typedef void (*RpcEventStaItwtSuspend_Closure) + (const RpcEventStaItwtSuspend *message, + void *closure_data); +typedef void (*RpcEventStaItwtProbe_Closure) + (const RpcEventStaItwtProbe *message, + void *closure_data); +typedef void (*RpcReqWifiStaEnterpriseEnable_Closure) + (const RpcReqWifiStaEnterpriseEnable *message, + void *closure_data); +typedef void (*RpcRespWifiStaEnterpriseEnable_Closure) + (const RpcRespWifiStaEnterpriseEnable *message, + void *closure_data); +typedef void (*RpcReqWifiStaEnterpriseDisable_Closure) + (const RpcReqWifiStaEnterpriseDisable *message, + void *closure_data); +typedef void (*RpcRespWifiStaEnterpriseDisable_Closure) + (const RpcRespWifiStaEnterpriseDisable *message, + void *closure_data); +typedef void (*RpcReqEapSetIdentity_Closure) + (const RpcReqEapSetIdentity *message, + void *closure_data); +typedef void (*RpcRespEapSetIdentity_Closure) + (const RpcRespEapSetIdentity *message, + void *closure_data); +typedef void (*RpcReqEapClearIdentity_Closure) + (const RpcReqEapClearIdentity *message, + void *closure_data); +typedef void (*RpcRespEapClearIdentity_Closure) + (const RpcRespEapClearIdentity *message, + void *closure_data); +typedef void (*RpcReqEapSetUsername_Closure) + (const RpcReqEapSetUsername *message, + void *closure_data); +typedef void (*RpcRespEapSetUsername_Closure) + (const RpcRespEapSetUsername *message, + void *closure_data); +typedef void (*RpcReqEapClearUsername_Closure) + (const RpcReqEapClearUsername *message, + void *closure_data); +typedef void (*RpcRespEapClearUsername_Closure) + (const RpcRespEapClearUsername *message, + void *closure_data); +typedef void (*RpcReqEapSetPassword_Closure) + (const RpcReqEapSetPassword *message, + void *closure_data); +typedef void (*RpcRespEapSetPassword_Closure) + (const RpcRespEapSetPassword *message, + void *closure_data); +typedef void (*RpcReqEapClearPassword_Closure) + (const RpcReqEapClearPassword *message, + void *closure_data); +typedef void (*RpcRespEapClearPassword_Closure) + (const RpcRespEapClearPassword *message, + void *closure_data); +typedef void (*RpcReqEapSetNewPassword_Closure) + (const RpcReqEapSetNewPassword *message, + void *closure_data); +typedef void (*RpcRespEapSetNewPassword_Closure) + (const RpcRespEapSetNewPassword *message, + void *closure_data); +typedef void (*RpcReqEapClearNewPassword_Closure) + (const RpcReqEapClearNewPassword *message, + void *closure_data); +typedef void (*RpcRespEapClearNewPassword_Closure) + (const RpcRespEapClearNewPassword *message, + void *closure_data); +typedef void (*RpcReqEapSetCaCert_Closure) + (const RpcReqEapSetCaCert *message, + void *closure_data); +typedef void (*RpcRespEapSetCaCert_Closure) + (const RpcRespEapSetCaCert *message, + void *closure_data); +typedef void (*RpcReqEapClearCaCert_Closure) + (const RpcReqEapClearCaCert *message, + void *closure_data); +typedef void (*RpcRespEapClearCaCert_Closure) + (const RpcRespEapClearCaCert *message, + void *closure_data); +typedef void (*RpcReqEapSetCertificateAndKey_Closure) + (const RpcReqEapSetCertificateAndKey *message, + void *closure_data); +typedef void (*RpcRespEapSetCertificateAndKey_Closure) + (const RpcRespEapSetCertificateAndKey *message, + void *closure_data); +typedef void (*RpcReqEapClearCertificateAndKey_Closure) + (const RpcReqEapClearCertificateAndKey *message, + void *closure_data); +typedef void (*RpcRespEapClearCertificateAndKey_Closure) + (const RpcRespEapClearCertificateAndKey *message, + void *closure_data); +typedef void (*RpcReqEapSetDisableTimeCheck_Closure) + (const RpcReqEapSetDisableTimeCheck *message, + void *closure_data); +typedef void (*RpcRespEapSetDisableTimeCheck_Closure) + (const RpcRespEapSetDisableTimeCheck *message, + void *closure_data); +typedef void (*RpcReqEapGetDisableTimeCheck_Closure) + (const RpcReqEapGetDisableTimeCheck *message, + void *closure_data); +typedef void (*RpcRespEapGetDisableTimeCheck_Closure) + (const RpcRespEapGetDisableTimeCheck *message, + void *closure_data); +typedef void (*RpcReqEapSetTtlsPhase2Method_Closure) + (const RpcReqEapSetTtlsPhase2Method *message, + void *closure_data); +typedef void (*RpcRespEapSetTtlsPhase2Method_Closure) + (const RpcRespEapSetTtlsPhase2Method *message, + void *closure_data); +typedef void (*RpcReqEapSetSuiteb192bitCertification_Closure) + (const RpcReqEapSetSuiteb192bitCertification *message, + void *closure_data); +typedef void (*RpcRespEapSetSuiteb192bitCertification_Closure) + (const RpcRespEapSetSuiteb192bitCertification *message, + void *closure_data); +typedef void (*RpcReqEapSetPacFile_Closure) + (const RpcReqEapSetPacFile *message, + void *closure_data); +typedef void (*RpcRespEapSetPacFile_Closure) + (const RpcRespEapSetPacFile *message, + void *closure_data); +typedef void (*RpcReqEapSetFastParams_Closure) + (const RpcReqEapSetFastParams *message, + void *closure_data); +typedef void (*RpcRespEapSetFastParams_Closure) + (const RpcRespEapSetFastParams *message, + void *closure_data); +typedef void (*RpcReqEapUseDefaultCertBundle_Closure) + (const RpcReqEapUseDefaultCertBundle *message, + void *closure_data); +typedef void (*RpcRespEapUseDefaultCertBundle_Closure) + (const RpcRespEapUseDefaultCertBundle *message, + void *closure_data); +typedef void (*RpcReqWifiSetOkcSupport_Closure) + (const RpcReqWifiSetOkcSupport *message, + void *closure_data); +typedef void (*RpcRespWifiSetOkcSupport_Closure) + (const RpcRespWifiSetOkcSupport *message, + void *closure_data); +typedef void (*RpcReqEapSetDomainName_Closure) + (const RpcReqEapSetDomainName *message, + void *closure_data); +typedef void (*RpcRespEapSetDomainName_Closure) + (const RpcRespEapSetDomainName *message, + void *closure_data); +typedef void (*RpcReqEapSetEapMethods_Closure) + (const RpcReqEapSetEapMethods *message, + void *closure_data); +typedef void (*RpcRespEapSetEapMethods_Closure) + (const RpcRespEapSetEapMethods *message, + void *closure_data); +typedef void (*RpcEventSuppDppUriReady_Closure) + (const RpcEventSuppDppUriReady *message, + void *closure_data); +typedef void (*RpcEventSuppDppCfgRecvd_Closure) + (const RpcEventSuppDppCfgRecvd *message, + void *closure_data); +typedef void (*RpcEventSuppDppFail_Closure) + (const RpcEventSuppDppFail *message, + void *closure_data); +typedef void (*RpcEventWifiDppUriReady_Closure) + (const RpcEventWifiDppUriReady *message, + void *closure_data); +typedef void (*RpcEventWifiDppCfgRecvd_Closure) + (const RpcEventWifiDppCfgRecvd *message, + void *closure_data); +typedef void (*RpcEventWifiDppFail_Closure) + (const RpcEventWifiDppFail *message, + void *closure_data); +typedef void (*RpcReqCustomRpc_Closure) + (const RpcReqCustomRpc *message, + void *closure_data); +typedef void (*RpcRespCustomRpc_Closure) + (const RpcRespCustomRpc *message, + void *closure_data); +typedef void (*RpcEventCustomRpc_Closure) + (const RpcEventCustomRpc *message, + void *closure_data); +typedef void (*RpcEventMemMonitor_Closure) + (const RpcEventMemMonitor *message, + void *closure_data); +typedef void (*Rpc_Closure) + (const Rpc *message, + void *closure_data); + +/* --- services --- */ + + +/* --- descriptors --- */ + +extern const ProtobufCEnumDescriptor rpc__wifi_bw__descriptor; +extern const ProtobufCEnumDescriptor rpc__wifi_power_save__descriptor; +extern const ProtobufCEnumDescriptor rpc__wifi_sec_prot__descriptor; +extern const ProtobufCEnumDescriptor rpc__status__descriptor; +extern const ProtobufCEnumDescriptor rpc_cmd__descriptor; +extern const ProtobufCEnumDescriptor rpc_type__descriptor; +extern const ProtobufCEnumDescriptor rpc_feature__descriptor; +extern const ProtobufCEnumDescriptor rpc_feature_command__descriptor; +extern const ProtobufCEnumDescriptor rpc_feature_option__descriptor; +extern const ProtobufCEnumDescriptor rpc_id__descriptor; +extern const ProtobufCEnumDescriptor rpc__gpio_mode__descriptor; +extern const ProtobufCEnumDescriptor rpc__gpio_pull_mode__descriptor; +extern const ProtobufCEnumDescriptor rpc__mem_monitor_config__descriptor; +extern const ProtobufCEnumDescriptor rpc__ext_coex_cmd__descriptor; +extern const ProtobufCMessageDescriptor wifi_init_config__descriptor; +extern const ProtobufCMessageDescriptor wifi_country__descriptor; +extern const ProtobufCMessageDescriptor wifi_active_scan_time__descriptor; +extern const ProtobufCMessageDescriptor wifi_scan_time__descriptor; +extern const ProtobufCMessageDescriptor wifi_scan_channel_bitmap__descriptor; +extern const ProtobufCMessageDescriptor wifi_scan_config__descriptor; +extern const ProtobufCMessageDescriptor wifi_scan_default_params__descriptor; +extern const ProtobufCMessageDescriptor wifi_he_ap_info__descriptor; +extern const ProtobufCMessageDescriptor wifi_ap_record__descriptor; +extern const ProtobufCMessageDescriptor wifi_scan_threshold__descriptor; +extern const ProtobufCMessageDescriptor wifi_pmf_config__descriptor; +extern const ProtobufCMessageDescriptor wifi_bss_max_idle_config__descriptor; +extern const ProtobufCMessageDescriptor wifi_ap_config__descriptor; +extern const ProtobufCMessageDescriptor wifi_sta_config__descriptor; +extern const ProtobufCMessageDescriptor wifi_config__descriptor; +extern const ProtobufCMessageDescriptor wifi_sta_info__descriptor; +extern const ProtobufCMessageDescriptor wifi_sta_list__descriptor; +extern const ProtobufCMessageDescriptor wifi_pkt_rx_ctrl__descriptor; +extern const ProtobufCMessageDescriptor wifi_promiscuous_pkt__descriptor; +extern const ProtobufCMessageDescriptor wifi_promiscuous_filter__descriptor; +extern const ProtobufCMessageDescriptor wifi_csi_config__descriptor; +extern const ProtobufCMessageDescriptor wifi_csi_info__descriptor; +extern const ProtobufCMessageDescriptor wifi_ant_gpio__descriptor; +extern const ProtobufCMessageDescriptor wifi_ant_gpio_config__descriptor; +extern const ProtobufCMessageDescriptor wifi_ant_config__descriptor; +extern const ProtobufCMessageDescriptor wifi_action_tx_req__descriptor; +extern const ProtobufCMessageDescriptor wifi_ftm_initiator_cfg__descriptor; +extern const ProtobufCMessageDescriptor wifi_event_sta_scan_done__descriptor; +extern const ProtobufCMessageDescriptor wifi_event_sta_connected__descriptor; +extern const ProtobufCMessageDescriptor wifi_event_sta_disconnected__descriptor; +extern const ProtobufCMessageDescriptor wifi_event_sta_authmode_change__descriptor; +extern const ProtobufCMessageDescriptor wifi_event_sta_wps_er_pin__descriptor; +extern const ProtobufCMessageDescriptor ap_cred__descriptor; +extern const ProtobufCMessageDescriptor wifi_event_sta_wps_er_success__descriptor; +extern const ProtobufCMessageDescriptor wifi_event_ap_probe_req_rx__descriptor; +extern const ProtobufCMessageDescriptor wifi_event_bss_rssi_low__descriptor; +extern const ProtobufCMessageDescriptor wifi_ftm_report_entry__descriptor; +extern const ProtobufCMessageDescriptor wifi_event_ftm_report__descriptor; +extern const ProtobufCMessageDescriptor wifi_event_action_tx_status__descriptor; +extern const ProtobufCMessageDescriptor wifi_event_roc_done__descriptor; +extern const ProtobufCMessageDescriptor wifi_event_ap_wps_rg_pin__descriptor; +extern const ProtobufCMessageDescriptor wifi_event_ap_wps_rg_fail_reason__descriptor; +extern const ProtobufCMessageDescriptor wifi_event_ap_wps_rg_success__descriptor; +extern const ProtobufCMessageDescriptor wifi_protocols__descriptor; +extern const ProtobufCMessageDescriptor wifi_bandwidths__descriptor; +extern const ProtobufCMessageDescriptor wifi_itwt_setup_config__descriptor; +extern const ProtobufCMessageDescriptor wifi_twt_config__descriptor; +extern const ProtobufCMessageDescriptor esp_app_desc__descriptor; +extern const ProtobufCMessageDescriptor heap_size_threshold__descriptor; +extern const ProtobufCMessageDescriptor mem_info__descriptor; +extern const ProtobufCMessageDescriptor heap_info__descriptor; +extern const ProtobufCMessageDescriptor connected_stalist__descriptor; +extern const ProtobufCMessageDescriptor eap_fast_config__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__get_mac_address__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__get_mac_address__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__get_mode__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__get_mode__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__set_mode__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__set_mode__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__get_ps__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__get_ps__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__set_ps__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__set_ps__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__set_mac_address__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__set_mac_address__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__otabegin__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__otabegin__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__otawrite__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__otawrite__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__otaend__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__otaend__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__otaactivate__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__otaactivate__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__app_get_desc__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__app_get_desc__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_set_max_tx_power__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_set_max_tx_power__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_get_max_tx_power__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_get_max_tx_power__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__config_heartbeat__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__config_heartbeat__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_init__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_init__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_deinit__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_deinit__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_set_config__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_set_config__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_get_config__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_get_config__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_connect__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_connect__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_disconnect__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_disconnect__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_start__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_start__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_stop__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_stop__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_scan_start__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_scan_start__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_scan_stop__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_scan_stop__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_scan_get_ap_num__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_scan_get_ap_num__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_scan_get_ap_records__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_scan_get_ap_records__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_scan_get_ap_record__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_scan_get_ap_record__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_clear_ap_list__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_clear_ap_list__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_restore__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_restore__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_clear_fast_connect__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_clear_fast_connect__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_deauth_sta__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_deauth_sta__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_sta_get_ap_info__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_sta_get_ap_info__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_set_protocol__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_set_protocol__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_get_protocol__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_get_protocol__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_set_bandwidth__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_set_bandwidth__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_get_bandwidth__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_get_bandwidth__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_set_channel__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_set_channel__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_get_channel__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_get_channel__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_set_storage__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_set_storage__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_set_country_code__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_set_country_code__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_get_country_code__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_get_country_code__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_set_country__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_set_country__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_get_country__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_get_country__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_ap_get_sta_list__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_ap_get_sta_list__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_ap_get_sta_aid__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_sta_get_negotiated_phymode__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_sta_get_negotiated_phymode__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_ap_get_sta_aid__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_sta_get_rssi__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_sta_get_rssi__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_scan_params__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_scan_params__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_sta_get_aid__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_sta_get_aid__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_set_protocols__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_set_protocols__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_get_protocols__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_get_protocols__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_set_bandwidths__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_set_bandwidths__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_get_bandwidths__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_get_bandwidths__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_set_band__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_set_band__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_get_band__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_get_band__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_set_band_mode__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_set_band_mode__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_get_band_mode__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_get_band_mode__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_set_inactive_time__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_set_inactive_time__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_get_inactive_time__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_get_inactive_time__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_disable_pmf_config__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_disable_pmf_config__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_sta_itwt_setup__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_sta_itwt_setup__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_sta_itwt_teardown__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_sta_itwt_teardown__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_sta_itwt_suspend__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_sta_itwt_suspend__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_sta_itwt_get_flow_id_status__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_sta_itwt_get_flow_id_status__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_sta_itwt_send_probe_req__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_sta_itwt_send_probe_req__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_sta_itwt_set_target_wake_time_offset__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_sta_itwt_set_target_wake_time_offset__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_sta_twt_config__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_sta_twt_config__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__get_coprocessor_fw_version__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__get_coprocessor_fw_version__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__set_dhcp_dns_status__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__set_dhcp_dns_status__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__get_dhcp_dns_status__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__get_dhcp_dns_status__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__supp_dpp_init__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__supp_dpp_init__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__supp_dpp_deinit__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__supp_dpp_deinit__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__supp_dpp_bootstrap_gen__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__supp_dpp_bootstrap_gen__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__supp_dpp_start_listen__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__supp_dpp_start_listen__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__supp_dpp_stop_listen__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__supp_dpp_stop_listen__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__iface_mac_addr_set_get__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__iface_mac_addr_set_get__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__iface_mac_addr_len_get__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__iface_mac_addr_len_get__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__feature_control__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__feature_control__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__mem_monitor__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__mem_monitor__descriptor; +extern const ProtobufCMessageDescriptor rpc__event__wifi_event_no_args__descriptor; +extern const ProtobufCMessageDescriptor rpc__event__espinit__descriptor; +extern const ProtobufCMessageDescriptor rpc__event__heartbeat__descriptor; +extern const ProtobufCMessageDescriptor rpc__event__ap__sta_disconnected__descriptor; +extern const ProtobufCMessageDescriptor rpc__event__ap__sta_connected__descriptor; +extern const ProtobufCMessageDescriptor rpc__event__sta_scan_done__descriptor; +extern const ProtobufCMessageDescriptor rpc__event__sta_connected__descriptor; +extern const ProtobufCMessageDescriptor rpc__event__sta_disconnected__descriptor; +extern const ProtobufCMessageDescriptor rpc__gpio_config__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__gpio_config__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__gpio_config__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__gpio_reset_pin__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__gpio_reset_pin__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__gpio_set_level__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__gpio_set_level__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__gpio_get_level__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__gpio_get_level__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__gpio_set_direction__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__gpio_set_direction__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__gpio_input_enable__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__gpio_input_enable__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__gpio_set_pull_mode__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__gpio_set_pull_mode__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__ext_coex__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__ext_coex__descriptor; +extern const ProtobufCMessageDescriptor rpc__event__dhcp_dns_status__descriptor; +extern const ProtobufCMessageDescriptor rpc__event__sta_itwt_setup__descriptor; +extern const ProtobufCMessageDescriptor rpc__event__sta_itwt_teardown__descriptor; +extern const ProtobufCMessageDescriptor rpc__event__sta_itwt_suspend__descriptor; +extern const ProtobufCMessageDescriptor rpc__event__sta_itwt_probe__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_sta_enterprise_enable__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_sta_enterprise_enable__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_sta_enterprise_disable__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_sta_enterprise_disable__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__eap_set_identity__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__eap_set_identity__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__eap_clear_identity__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__eap_clear_identity__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__eap_set_username__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__eap_set_username__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__eap_clear_username__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__eap_clear_username__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__eap_set_password__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__eap_set_password__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__eap_clear_password__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__eap_clear_password__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__eap_set_new_password__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__eap_set_new_password__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__eap_clear_new_password__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__eap_clear_new_password__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__eap_set_ca_cert__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__eap_set_ca_cert__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__eap_clear_ca_cert__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__eap_clear_ca_cert__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__eap_set_certificate_and_key__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__eap_set_certificate_and_key__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__eap_clear_certificate_and_key__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__eap_clear_certificate_and_key__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__eap_set_disable_time_check__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__eap_set_disable_time_check__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__eap_get_disable_time_check__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__eap_get_disable_time_check__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__eap_set_ttls_phase2_method__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__eap_set_ttls_phase2_method__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__eap_set_suiteb192bit_certification__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__eap_set_suiteb192bit_certification__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__eap_set_pac_file__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__eap_set_pac_file__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__eap_set_fast_params__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__eap_set_fast_params__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__eap_use_default_cert_bundle__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__eap_use_default_cert_bundle__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__wifi_set_okc_support__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__wifi_set_okc_support__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__eap_set_domain_name__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__eap_set_domain_name__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__eap_set_eap_methods__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__eap_set_eap_methods__descriptor; +extern const ProtobufCMessageDescriptor rpc__event__supp_dpp_uri_ready__descriptor; +extern const ProtobufCMessageDescriptor rpc__event__supp_dpp_cfg_recvd__descriptor; +extern const ProtobufCMessageDescriptor rpc__event__supp_dpp_fail__descriptor; +extern const ProtobufCMessageDescriptor rpc__event__wifi_dpp_uri_ready__descriptor; +extern const ProtobufCMessageDescriptor rpc__event__wifi_dpp_cfg_recvd__descriptor; +extern const ProtobufCMessageDescriptor rpc__event__wifi_dpp_fail__descriptor; +extern const ProtobufCMessageDescriptor rpc__req__custom_rpc__descriptor; +extern const ProtobufCMessageDescriptor rpc__resp__custom_rpc__descriptor; +extern const ProtobufCMessageDescriptor rpc__event__custom_rpc__descriptor; +extern const ProtobufCMessageDescriptor rpc__event__mem_monitor__descriptor; +extern const ProtobufCMessageDescriptor rpc__descriptor; + +PROTOBUF_C__END_DECLS + + +#endif /* PROTOBUF_C_esp_5fhosted_5frpc_2eproto__INCLUDED */ diff --git a/firmware/components/esp_hosted/common/proto/esp_hosted_rpc.proto b/firmware/components/esp_hosted/common/proto/esp_hosted_rpc.proto new file mode 100644 index 0000000..4736a0a --- /dev/null +++ b/firmware/components/esp_hosted/common/proto/esp_hosted_rpc.proto @@ -0,0 +1,2479 @@ +/* SPDX-FileCopyrightText: 2015-2025 Espressif Systems (Shanghai) CO LTD */ +/* SPDX-License-Identifier: Apache-2.0 */ + +syntax = "proto3"; + +enum Rpc_WifiBw { + BW_Invalid = 0; + HT20 = 1; + HT40 = 2; +} + +enum Rpc_WifiPowerSave { + PS_Invalid = 0; + MIN_MODEM = 1; + MAX_MODEM = 2; +} + +enum Rpc_WifiSecProt { + Open = 0; + WEP = 1; + WPA_PSK = 2; + WPA2_PSK = 3; + WPA_WPA2_PSK = 4; + WPA2_ENTERPRISE = 5; + WPA3_PSK = 6; + WPA2_WPA3_PSK = 7; +} + +/* enums for Control path */ +enum Rpc_Status { + Connected = 0; + Not_Connected = 1; + No_AP_Found = 2; + Connection_Fail = 3; + Invalid_Argument = 4; + Out_Of_Range = 5; +} + + +enum RpcCmd { + Invalid = 0; + Get = 1; + Set = 2; +} + +enum RpcType { +MsgType_Invalid = 0; + Req = 1; + Resp = 2; + Event = 3; + MsgType_Max = 4; +} + +enum RpcFeature { + Feature_None = 0; + // Bluetooth (BT) Feature + Feature_Bluetooth = 1; + // OpenThread RCP (Radio Co-processor) Feature + Feature_Openthread_Rcp = 2; + // add additional features here +} + +enum RpcFeatureCommand { + Feature_Command_None = 0; + // Bluetooth (BT) Feature Commands + Feature_Command_BT_Init = 1; + Feature_Command_BT_Deinit = 2; + Feature_Command_BT_Enable = 3; + Feature_Command_BT_Disable = 4; + // Generic Feature Commands. Currently used for: + // - OpenThread (OT) + Feature_Command_Init = 5; + Feature_Command_Deinit = 6; + Feature_Command_Enable = 7; + Feature_Command_Disable = 8; + Feature_Command_Query = 9; + // add additional feature commands here +} + +enum RpcFeatureOption { + Feature_Option_None = 0; + // Bluetooth (BT) Feature Options + Feature_Option_BT_Deinit_Release_Memory = 1; // release memory when deinit BT + // Generic Queries. Currently used for: + // - OpenThread (OT) + Feature_Option_Query_Configured = 2; // is the feature configured (via Kconfig) + Feature_Option_Query_Inited = 3; // is the feature initialised + Feature_Option_Query_Enabled = 4; // is the feature enabled + Feature_Option_Query_Ready = 5; // is the feature ready + // add additional feature options here +} + +enum RpcId { + MsgId_Invalid = 0; + + /** Request Msgs **/ + Req_Base = 256; //0x100 + + Req_GetMACAddress = 257; //0x101 + Req_SetMacAddress = 258; //0x102 + Req_GetWifiMode = 259; //0x103 + Req_SetWifiMode = 260; //0x104 + + Req_SuppDppInit = 261; //0x105 + Req_SuppDppDeinit = 262; //0x106 + Req_SuppDppBootstrapGen = 263; //0x107 + Req_SuppDppStartListen = 264; //0x108 + Req_SuppDppStopListen = 265; //0x109 + + Req_OTAActivate = 266; //0x10a + + Req_AppGetDesc = 267; //0x10b + Req_MemMonitor = 268; //0x10c + Req_WifiScanParams = 269; //0x10d + + Req_WifiSetPs = 270; //0x10e + Req_WifiGetPs = 271; //0x10f + + Req_OTABegin = 272; //0x110 + Req_OTAWrite = 273; //0x111 + Req_OTAEnd = 274; //0x112 + + Req_WifiSetMaxTxPower = 275; //0x113 + Req_WifiGetMaxTxPower = 276; //0x114 + + Req_ConfigHeartbeat = 277; //0x115 + + Req_WifiInit = 278; //0x116 + Req_WifiDeinit = 279; //0x117 + Req_WifiStart = 280; //0x118 + Req_WifiStop = 281; //0x119 + Req_WifiConnect = 282; //0x11a + Req_WifiDisconnect = 283; //0x11b + Req_WifiSetConfig = 284; //0x11c + Req_WifiGetConfig = 285; //0x11d + + Req_WifiScanStart = 286; //0x11e + Req_WifiScanStop = 287; //0x11f + Req_WifiScanGetApNum = 288; //0x120 + Req_WifiScanGetApRecords = 289; //0x121 + Req_WifiClearApList = 290; //0x122 + + Req_WifiRestore = 291; //0x123 + Req_WifiClearFastConnect = 292; //0x124 + Req_WifiDeauthSta = 293; //0x125 + Req_WifiStaGetApInfo = 294; //0x126 + //Req_WifiSetPs = 295; //0x127 + //Req_WifiGetPs = 296; //0x128 + Req_WifiSetProtocol = 297; //0x129 + Req_WifiGetProtocol = 298; //0x12a + Req_WifiSetBandwidth = 299; //0x12b + Req_WifiGetBandwidth = 300; //0x12c + Req_WifiSetChannel = 301; //0x12d + Req_WifiGetChannel = 302; //0x12e + Req_WifiSetCountry = 303; //0x12f + Req_WifiGetCountry = 304; //0x130 + +// Req_WifiSetPromiscuousRxCb = 305; //0x131 + Req_WifiSetPromiscuous = 305; //0x131 + Req_WifiGetPromiscuous = 306; //0x132 + Req_WifiSetPromiscuousFilter = 307; //0x133 + Req_WifiGetPromiscuousFilter = 308; //0x134 + Req_WifiSetPromiscuousCtrlFilter = 309; //0x135 + Req_WifiGetPromiscuousCtrlFilter = 310; //0x136 + + Req_WifiApGetStaList = 311; //0x137 + Req_WifiApGetStaAid = 312; //0x138 + Req_WifiSetStorage = 313; //0x139 + Req_WifiSetVendorIe = 314; //0x13a +// Req_WifiSetVendorIeCb = 315; //0x13b + Req_WifiSetEventMask = 315; //0x13b + Req_WifiGetEventMask = 316; //0x13c + Req_Wifi80211Tx = 317; //0x13d + +// Req_WifiSetCsiRxCb = 318; //0x13e + Req_WifiSetCsiConfig = 318; //0x13e + Req_WifiSetCsi = 319; //0x13f + + Req_WifiSetAntGpio = 320; //0x140 + Req_WifiGetAntGpio = 321; //0x141 + Req_WifiSetAnt = 322; //0x142 + Req_WifiGetAnt = 323; //0x143 + + Req_WifiGetTsfTime = 324; //0x144 + Req_WifiSetInactiveTime = 325; //0x145 + Req_WifiGetInactiveTime = 326; //0x146 + Req_WifiStatisDump = 327; //0x147 + Req_WifiSetRssiThreshold = 328; //0x148 + + Req_WifiFtmInitiateSession = 329; //0x149 + Req_WifiFtmEndSession = 330; //0x14a + Req_WifiFtmRespSetOffset = 331; //0x14b + + Req_WifiConfig11bRate = 332; //0x14c + Req_WifiConnectionlessModuleSetWakeInterval = 333; //0x14d + Req_WifiSetCountryCode = 334; //0x14e + Req_WifiGetCountryCode = 335; //0x14f + Req_WifiConfig80211TxRate = 336; //0x150 + Req_WifiDisablePmfConfig = 337; //0x151 + Req_WifiStaGetAid = 338; //0x152 + Req_WifiStaGetNegotiatedPhymode = 339; //0x153 + Req_WifiSetDynamicCs = 340; //0x154 + Req_WifiStaGetRssi = 341; //0x155 + + Req_WifiSetProtocols = 342; //0x156 + Req_WifiGetProtocols = 343; //0x157 + Req_WifiSetBandwidths = 344; //0x158 + Req_WifiGetBandwidths = 345; //0x159 + + Req_WifiSetBand = 346; //0x15a + Req_WifiGetBand = 347; //0x15b + Req_WifiSetBandMode = 348; //0x15c + Req_WifiGetBandMode = 349; //0x15d + + Req_GetCoprocessorFwVersion = 350; //0x15e + + Req_WifiScanGetApRecord = 351; //0x15f + + Req_SetDhcpDnsStatus = 352; //0x160 + Req_GetDhcpDnsStatus = 353; //0x161 + + Req_WifiStaTwtConfig = 354; //0x162 + Req_WifiStaItwtSetup = 355; //0x163 + Req_WifiStaItwtTeardown = 356; //0x164 + Req_WifiStaItwtSuspend = 357; //0x165 + Req_WifiStaItwtGetFlowIdStatus = 358; //0x166 + Req_WifiStaItwtSendProbeReq = 359; //0x167 + Req_WifiStaItwtSetTargetWakeTimeOffset = 360; //0x168 + + Req_WifiStaEnterpriseEnable = 361; //0x169 + Req_WifiStaEnterpriseDisable = 362; //0x16A + Req_EapSetIdentity = 363; //0x16B + Req_EapClearIdentity = 364; //0x16C + Req_EapSetUsername = 365; //0x16D + Req_EapClearUsername = 366; //0x16E + Req_EapSetPassword = 367; //0x16F + Req_EapClearPassword = 368; //0x170 + Req_EapSetNewPassword = 369; //0x171 + Req_EapClearNewPassword = 370; //0x172 + Req_EapSetCaCert = 371; //0x173 + Req_EapClearCaCert = 372; //0x174 + Req_EapSetCertificateAndKey = 373; //0x175 + Req_EapClearCertificateAndKey = 374; //0x176 + Req_EapGetDisableTimeCheck = 375; //0x177 + Req_EapSetTtlsPhase2Method = 376; //0x178 + Req_EapSetSuitebCertification = 377; //0x179 + Req_EapSetPacFile = 378; //0x17A + Req_EapSetFastParams = 379; //0x17B + Req_EapUseDefaultCertBundle = 380; //0x17C + Req_WifiSetOkcSupport = 381; //0x17D + Req_EapSetDomainName = 382; //0x17E + Req_EapSetDisableTimeCheck = 383; //0x17F + Req_EapSetEapMethods = 384; //0x180 + + Req_IfaceMacAddrSetGet = 385; //0x181 + Req_IfaceMacAddrLenGet = 386; //0x182 + + /* Common RPC to handle simple feature control with one optional parameter + * Supported Features: + * - BT Init/Deinit/Enable/Disable + */ + Req_FeatureControl = 387; //0x183 + + /* Custom RPC for user-defined packed structures */ + Req_CustomRpc = 388; //0x184 + + Req_GpioConfig = 389; // 0x185 + Req_GpioResetPin = 390; // 0x186 + Req_GpioSetLevel = 391; // 0x187 + Req_GpioGetLevel = 392; // 0x188 + Req_GpioSetDirection = 393; // 0x189 + Req_GpioInputEnable = 394; // 0x18a + Req_GpioSetPullMode = 395; // 0x18B + + Req_ExtCoex = 396; // 0x18C + + /* Add new control path command response before Req_Max + * and update Req_Max */ + Req_Max = 397; //0x18D + + /** Response Msgs **/ + Resp_Base = 512; + + Resp_GetMACAddress = 513; + Resp_SetMacAddress = 514; + Resp_GetWifiMode = 515; + Resp_SetWifiMode = 516; + + Resp_SuppDppInit = 517; + Resp_SuppDppDeinit = 518; + Resp_SuppDppBootstrapGen = 519; + Resp_SuppDppStartListen = 520; + Resp_SuppDppStopListen = 521; + + //Resp_SetSoftAPVendorSpecificIE = 522; + //Resp_StartSoftAP = 523; + //Resp_GetSoftAPConnectedSTAList = 524; + //Resp_StopSoftAP = 525; + Resp_OTAActivate = 522; + + Resp_AppGetDesc = 523; + Resp_MemMonitor = 524; + Resp_WifiScanParams = 525; + + Resp_WifiSetPs = 526; + Resp_WifiGetPs = 527; + + Resp_OTABegin = 528; + Resp_OTAWrite = 529; + Resp_OTAEnd = 530; + + Resp_WifiSetMaxTxPower = 531; + Resp_WifiGetMaxTxPower = 532; + + Resp_ConfigHeartbeat = 533; + + Resp_WifiInit = 534; + Resp_WifiDeinit = 535; + Resp_WifiStart = 536; + Resp_WifiStop = 537; + Resp_WifiConnect = 538; + Resp_WifiDisconnect = 539; + Resp_WifiSetConfig = 540; + Resp_WifiGetConfig = 541; + + Resp_WifiScanStart = 542; + Resp_WifiScanStop = 543; + Resp_WifiScanGetApNum = 544; + Resp_WifiScanGetApRecords = 545; + Resp_WifiClearApList = 546; + + Resp_WifiRestore = 547; + Resp_WifiClearFastConnect = 548; + Resp_WifiDeauthSta = 549; + Resp_WifiStaGetApInfo = 550; + //Resp_WifiSetPs = 551; + //Resp_WifiGetPs = 552; + Resp_WifiSetProtocol = 553; + Resp_WifiGetProtocol = 554; + Resp_WifiSetBandwidth = 555; + Resp_WifiGetBandwidth = 556; + Resp_WifiSetChannel = 557; + Resp_WifiGetChannel = 558; + Resp_WifiSetCountry = 559; + Resp_WifiGetCountry = 560; + +// Resp_WifiSetPromiscuousRxCb = 561; + Resp_WifiSetPromiscuous = 561; + Resp_WifiGetPromiscuous = 562; + Resp_WifiSetPromiscuousFilter = 563; + Resp_WifiGetPromiscuousFilter = 564; + Resp_WifiSetPromiscuousCtrlFilter = 565; + Resp_WifiGetPromiscuousCtrlFilter = 566; + + Resp_WifiApGetStaList = 567; + Resp_WifiApGetStaAid = 568; + Resp_WifiSetStorage = 569; + Resp_WifiSetVendorIe = 570; +// Resp_WifiSetVendorIeCb = 571; + Resp_WifiSetEventMask = 571; + Resp_WifiGetEventMask = 572; + Resp_Wifi80211Tx = 573; + +// Resp_WifiSetCsiRxCb = 573; + Resp_WifiSetCsiConfig = 574; + Resp_WifiSetCsi = 575; + + Resp_WifiSetAntGpio = 576; + Resp_WifiGetAntGpio = 577; + Resp_WifiSetAnt = 578; + Resp_WifiGetAnt = 579; + + Resp_WifiGetTsfTime = 580; + Resp_WifiSetInactiveTime = 581; + Resp_WifiGetInactiveTime = 582; + Resp_WifiStatisDump = 583; + Resp_WifiSetRssiThreshold = 584; + + Resp_WifiFtmInitiateSession = 585; + Resp_WifiFtmEndSession = 586; + Resp_WifiFtmRespSetOffset = 587; + + Resp_WifiConfig11bRate = 588; + Resp_WifiConnectionlessModuleSetWakeInterval = 589; + Resp_WifiSetCountryCode = 590; + Resp_WifiGetCountryCode = 591; + Resp_WifiConfig80211TxRate = 592; + Resp_WifiDisablePmfConfig = 593; + Resp_WifiStaGetAid = 594; + Resp_WifiStaGetNegotiatedPhymode = 595; + Resp_WifiSetDynamicCs = 596; + Resp_WifiStaGetRssi = 597; + + Resp_WifiSetProtocols = 598; + Resp_WifiGetProtocols = 599; + Resp_WifiSetBandwidths = 600; + Resp_WifiGetBandwidths = 601; + + Resp_WifiSetBand = 602; + Resp_WifiGetBand = 603; + Resp_WifiSetBandMode = 604; + Resp_WifiGetBandMode = 605; + + Resp_GetCoprocessorFwVersion = 606; + + Resp_WifiScanGetApRecord = 607; + + Resp_SetDhcpDnsStatus = 608; + Resp_GetDhcpDnsStatus = 609; + + Resp_WifiStaTwtConfig = 610; + Resp_WifiStaItwtSetup = 611; + Resp_WifiStaItwtTeardown = 612; + Resp_WifiStaItwtSuspend = 613; + Resp_WifiStaItwtGetFlowIdStatus = 614; + Resp_WifiStaItwtSendProbeReq = 615; + Resp_WifiStaItwtSetTargetWakeTimeOffset = 616; + + Resp_WifiStaEnterpriseEnable = 617; + Resp_WifiStaEnterpriseDisable = 618; + Resp_EapSetIdentity = 619; + Resp_EapClearIdentity = 620; + Resp_EapSetUsername = 621; + Resp_EapClearUsername = 622; + Resp_EapSetPassword = 623; + Resp_EapClearPassword = 624; + Resp_EapSetNewPassword = 625; + Resp_EapClearNewPassword = 626; + Resp_EapSetCaCert = 627; + Resp_EapClearCaCert = 628; + Resp_EapSetCertificateAndKey = 629; + Resp_EapClearCertificateAndKey = 630; + Resp_EapGetDisableTimeCheck = 631; + Resp_EapSetTtlsPhase2Method = 632; + Resp_EapSetSuitebCertification = 633; + Resp_EapSetPacFile = 634; + Resp_EapSetFastParams = 635; + Resp_EapUseDefaultCertBundle = 636; + Resp_WifiSetOkcSupport = 637; + Resp_EapSetDomainName = 638; + Resp_EapSetDisableTimeCheck = 639; + Resp_EapSetEapMethods = 640; + + Resp_IfaceMacAddrSetGet = 641; + Resp_IfaceMacAddrLenGet = 642; + Resp_FeatureControl = 643; + + Resp_CustomRpc = 644; + + Resp_GpioConfig = 645; + Resp_GpioResetPin = 646; + Resp_GpioSetLevel = 647; + Resp_GpioGetLevel = 648; + Resp_GpioSetDirection = 649; + Resp_GpioInputEnable = 650; + Resp_GpioSetPullMode = 651; + Resp_ExtCoex = 652; + + /* Add new control path command response before Resp_Max + * and update Resp_Max */ + Resp_Max = 653; + + /** Event Msgs **/ + Event_Base = 768; + Event_ESPInit = 769; + Event_Heartbeat = 770; + Event_AP_StaConnected = 771; + Event_AP_StaDisconnected = 772; + Event_WifiEventNoArgs = 773; + Event_StaScanDone = 774; + Event_StaConnected = 775; + Event_StaDisconnected = 776; + Event_DhcpDnsStatus = 777; + + Event_StaItwtSetup = 778; + Event_StaItwtTeardown = 779; + Event_StaItwtSuspend = 780; + Event_StaItwtProbe = 781; + + // Supplicant DPP Events received by dpp callback on host + Event_SuppDppUriReady = 782; + Event_SuppDppCfgRecvd = 783; + Event_SuppDppFail = 784; + // Wifi DPP Events + Event_WifiDppUriReady = 785; + Event_WifiDppCfgRecvd = 786; + Event_WifiDppFail = 787; + + /* Custom RPC event for user-defined packed structures */ + Event_CustomRpc = 788; + + Event_MemMonitor = 789; + + /* Add new control path command notification before Event_Max + * and update Event_Max */ + Event_Max = 790; +} + +message wifi_init_config { + int32 static_rx_buf_num = 1; /**< WiFi static RX buffer number */ + int32 dynamic_rx_buf_num = 2; /**< WiFi dynamic RX buffer number */ + int32 tx_buf_type = 3; /**< WiFi TX buffer type */ + int32 static_tx_buf_num = 4; /**< WiFi static TX buffer number */ + int32 dynamic_tx_buf_num = 5; /**< WiFi dynamic TX buffer number */ + int32 cache_tx_buf_num = 6; /**< WiFi TX cache buffer number */ + int32 csi_enable = 7; /**< WiFi channel state information enable flag */ + int32 ampdu_rx_enable = 8; /**< WiFi AMPDU RX feature enable flag */ + int32 ampdu_tx_enable = 9; /**< WiFi AMPDU TX feature enable flag */ + int32 amsdu_tx_enable = 10; /**< WiFi AMSDU TX feature enable flag */ + int32 nvs_enable = 11; /**< WiFi NVS flash enable flag */ + int32 nano_enable = 12; /**< Nano option for printf/scan family enable flag */ + int32 rx_ba_win = 13; /**< WiFi Block Ack RX window size */ + int32 wifi_task_core_id = 14; /**< WiFi Task Core ID */ + int32 beacon_max_len = 15; /**< WiFi softAP maximum length of the beacon */ + int32 mgmt_sbuf_num = 16; /**< WiFi management short buffer number, the minimum value is 6, the maximum value is 32 */ + uint64 feature_caps = 17; /**< Enables additional WiFi features and capabilities */ + bool sta_disconnected_pm = 18; /**< WiFi Power Management for station at disconnected status */ + int32 espnow_max_encrypt_num = 19; /**< Maximum encrypt number of peers supported by espnow */ + int32 magic = 20; /**< WiFi init magic number, it should be the last field */ + int32 rx_mgmt_buf_type = 21; /**< WiFi RX MGMT buffer type */ + int32 rx_mgmt_buf_num = 22; /**< WiFi RX MGMT buffer number */ + int32 tx_hetb_queue_num = 23; /**< WiFi TX HE TB QUEUE number for STA HE TB PPDU transmission */ + int32 dump_hesigb_enable = 24; /**< enable dump sigb field */ +} + +message wifi_country { + bytes cc = 1; /**< country code string of 3 chars*/ + uint32 schan = 2; /**< start channel */ + uint32 nchan = 3; /**< total channel number */ + int32 max_tx_power = 4; /**< This field is used for getting WiFi maximum transmitting power, + call esp_wifi_set_max_tx_power to set the maximum transmitting power. */ + int32 policy = 5; /**< country policy */ +} + + +message wifi_active_scan_time { + uint32 min = 1; /**< minimum active scan time per channel, units: millisecond */ + uint32 max = 2; /**< maximum active scan time per channel, units: millisecond, values above 1500ms may + cause station to disconnect from AP and are not recommended. */ +} ; + +message wifi_scan_time { + wifi_active_scan_time active = 1; /**< active scan time per channel, units: millisecond. */ + uint32 passive = 2; /**< passive scan time per channel, units: millisecond, values above 1500ms may + cause station to disconnect from AP and are not recommended. */ +} + +message wifi_scan_channel_bitmap { + uint32 ghz_2_channels = 1; /**< Represents 2.4 GHz channels, that bits can be set as wifi_2g_channel_bit_t shown. */ + uint32 ghz_5_channels = 2; /**< Represents 5 GHz channels, that bits can be set as wifi_5g_channel_bit_t shown. */ +} + +message wifi_scan_config { + bytes ssid = 1; /**< SSID of AP 33char*/ + bytes bssid = 2; /**< MAC address of AP 6char */ + uint32 channel = 3; /**< channel, scan the specific channel */ + bool show_hidden = 4; /**< enable to scan AP whose SSID is hidden */ + int32 scan_type = 5; /**< scan type, active or passive */ + wifi_scan_time scan_time = 6; /**< scan time per channel */ + uint32 home_chan_dwell_time = 7; /**< time spent at home channel between scanning consecutive channels.*/ + wifi_scan_channel_bitmap channel_bitmap = 8; /**< Channel bitmap for setting specific channels to be scanned. + Please note that the 'channel' parameter above needs to be set to 0 to allow scanning by bitmap. + Also, note that only allowed channels configured by wifi_country_t can be scanned. */ +} + +message wifi_scan_default_params { + wifi_scan_time scan_time = 1; /**< Scan time per channel */ + uint32 home_chan_dwell_time = 2; /**< Time spent at home channel between scanning consecutive channels.*/ +} + +message wifi_he_ap_info { + //uint8_t bss_color:6; /**< an unsigned integer whose value is the BSS Color of the BSS corresponding to the AP */ + //uint8_t partial_bss_color:1; /**< indicate if an AID assignment rule based on the BSS color */ + //uint8_t bss_color_disabled:1; /**< indicate if the use of BSS color is disabled */ + uint32 bitmask = 1; /* Manually have to parse for above bits */ + uint32 bssid_index = 2; /**< in M-BSSID set, identifies the nontransmitted BSSID */ +} + +message wifi_ap_record { + bytes bssid = 1; /**< MAC address of AP 6char */ + bytes ssid = 2; /**< SSID of AP 33char */ + uint32 primary = 3; /**< channel of AP */ + int32 second = 4; /**< secondary channel of AP */ + int32 rssi = 5; /**< signal strength of AP */ + int32 authmode = 6; /**< authmode of AP */ + int32 pairwise_cipher = 7; /**< pairwise cipher of AP */ + int32 group_cipher = 8; /**< group cipher of AP */ + int32 ant = 9; /**< antenna used to receive beacon from AP */ + //uint32_t phy_11b:1; /**< bit: 0 flag to identify if 11b mode is enabled or not */ + //uint32_t phy_11g:1; /**< bit: 1 flag to identify if 11g mode is enabled or not */ + //uint32_t phy_11n:1; /**< bit: 2 flag to identify if 11n mode is enabled or not */ + //uint32_t phy_lr:1; /**< bit: 3 flag to identify if low rate is enabled or not */ + //uint32_t wps:1; /**< bit: 4 flag to identify if WPS is supported or not */ + //uint32_t ftm_responder:1; /**< bit: 5 flag to identify if FTM is supported in responder mode */ + //uint32_t ftm_initiator:1; /**< bit: 6 flag to identify if FTM is supported in initiator mode */ + //uint32_t reserved:25; /**< bit: 7..31 reserved */ + uint32 bitmask = 10; /* Manually have to parse for above bits */ + + wifi_country country = 11; /**< country information of AP */ + wifi_he_ap_info he_ap = 12; + uint32 bandwidth = 13; /**< For AP 20 MHz this value is set to 1. For AP 40 MHz this value is set to 2. + For AP 80 MHz this value is set to 3. For AP 160MHz this value is set to 4. + For AP 80+80MHz this value is set to 5*/ + uint32 vht_ch_freq1 = 14; /**< This fields are used only AP bandwidth is 80 and 160 MHz, to transmit the center channel + frequency of the BSS. For AP bandwidth is 80 + 80 MHz, it is the center channel frequency + of the lower frequency segment.*/ + uint32 vht_ch_freq2 = 15; /**< This fields are used only AP bandwidth is 80 + 80 MHz, and is used to transmit the center + channel frequency of the second segment. */ +} + +message wifi_scan_threshold { + int32 rssi = 1; /**< The minimum rssi to accept in the fast scan mode */ + int32 authmode = 2; /**< The weakest authmode to accept in the fast scan mode +Note: In case this value is not set and password is set as per WPA2 standards(password len >= 8), +it will be defaulted to WPA2 and device won't connect to deprecated WEP/WPA networks. +Please set authmode threshold as WIFI_AUTH_WEP/WIFI_AUTH_WPA_PSK to connect to WEP/WPA networks */ + uint32 rssi_5g_adjustment = 3; /**< The RSSI value of the 5G AP is within the rssi_5g_adjustment range compared to the 2G AP, the 5G AP will be given priority for connection. */ +} + +message wifi_pmf_config { + bool capable = 1; /**< Deprecated variable. Device will always connect in PMF mode if other device also advertises PMF capability. */ + bool required = 2; /**< Advertises that Protected Management Frame is required. Device will not associate to non-PMF capable devices. */ +} + +message wifi_bss_max_idle_config { + uint32 period = 1; /**< Sets BSS Max idle period (1 Unit = 1000TUs OR 1.024 Seconds). If there are no frames for this period from a STA, SoftAP will disassociate due to inactivity. Setting it to 0 disables the feature */ + bool protected_keep_alive = 2; /**< Requires clients to use protected keep alive frames for BSS Max Idle period */ +} + +message wifi_ap_config { + bytes ssid = 1; /**< SSID of ESP32 soft-AP. If ssid_len field is 0, this must be a Null terminated string. Otherwise, length is set according to ssid_len. 32 char*/ + bytes password = 2; /**< Password of ESP32 soft-AP. 64 char*/ + uint32 ssid_len = 3; /**< Optional length of SSID field. */ + uint32 channel = 4; /**< Channel of ESP32 soft-AP */ + int32 authmode = 5; /**< Auth mode of ESP32 soft-AP. Do not support AUTH_WEP in soft-AP mode */ + uint32 ssid_hidden = 6; /**< Broadcast SSID or not, default 0, broadcast the SSID */ + uint32 max_connection = 7; /**< Max number of stations allowed to connect in */ + uint32 beacon_interval = 8; /**< Beacon interval which should be multiples of 100. Unit: TU(time unit, 1 TU = 1024 us). Range: 100 ~ 60000. Default value: 100 */ + int32 pairwise_cipher = 9; /**< pairwise cipher of SoftAP, group cipher will be derived using this. + cipher values are valid starting from WIFI_CIPHER_TYPE_TKIP, enum values before that will be considered as invalid and default cipher suites(TKIP+CCMP) will be used. + Valid cipher suites in softAP mode are WIFI_CIPHER_TYPE_TKIP, WIFI_CIPHER_TYPE_CCMP and WIFI_CIPHER_TYPE_TKIP_CCMP. */ + bool ftm_responder = 10; /**< Enable FTM Responder mode */ + wifi_pmf_config pmf_cfg = 11; /**< Configuration for Protected Management Frame */ + int32 sae_pwe_h2e = 12; /**< Configuration for SAE PWE derivation method */ + uint32 csa_count = 13; /**< Channel Switch Announcement Count. Notify the station that the channel will switch after the csa_count beacon intervals. Default value: 3 */ + uint32 dtim_period = 14; /**< Dtim period of soft-AP. Range: 1 ~ 10. Default value: 1 */ + uint32 transition_disable = 15; /**< Whether to enable transition disable feature */ + uint32 sae_ext = 16; /**< Enable SAE EXT feature. SOC_GCMP_SUPPORT is required for this feature. */ + wifi_bss_max_idle_config bss_max_idle_cfg = 17; /**< Configuration for bss max idle, effective if CONFIG_WIFI_BSS_MAX_IDLE_SUPPORT is enabled */ + uint32 gtk_rekey_interval = 18; /**< GTK rekeying interval in seconds. If set to 0, GTK rekeying is disabled. Range: 60 ~ 65535 including 0. */ +} + +message wifi_sta_config { + bytes ssid = 1; /**< SSID of target AP. 32char */ + bytes password = 2; /**< Password of target AP. 64char */ + int32 scan_method = 3; /**< do all channel scan or fast scan */ + bool bssid_set = 4; /**< whether set MAC address of target AP or not. Generally, station_config.bssid_set needs to be 0, + and it needs to be 1 only when users need to check the MAC address of the AP.*/ + bytes bssid = 5; /**< MAC address of target AP 6char */ + uint32 channel = 6; /**< channel of target AP. Set to 1~13 to scan starting from the specified channel + before connecting to AP. If the channel of AP is unknown, set it to 0.*/ + uint32 listen_interval = 7; /**< Listen interval for ESP32 station to receive beacon when WIFI_PS_MAX_MODEM is set. +Units: AP beacon intervals. Defaults to 3 if set to 0. */ + int32 sort_method = 8; /**< sort the connect AP in the list by rssi or security mode */ + wifi_scan_threshold threshold = 9; /**< When sort_method is set, only APs which have an auth mode that is more secure + than the selected auth mode and a signal stronger than the minimum RSSI will be used. */ + wifi_pmf_config pmf_cfg = 10; /**< Configuration for Protected Management Frame. Will be advertised in RSN Capabilities in RSN IE. */ + //uint32_t rm_enabled:1; /**< Whether Radio Measurements are enabled for the connection */ + //uint32_t btm_enabled:1; /**< Whether BSS Transition Management is enabled for the connection */ + //uint32_t mbo_enabled:1; /**< Whether MBO is enabled for the connection */ + //uint32_t ft_enabled:1; /**< Whether FT is enabled for the connection */ + //uint32_t owe_enabled:1; /**< Whether OWE is enabled for the connection */ + //uint32_t transition_disable:1; /**< Whether to enable transition disable feature */ + //uint32_t reserved:26; /**< Reserved for future feature set */ + uint32 bitmask = 11; + int32 sae_pwe_h2e = 12; /**< Whether SAE hash to element is enabled */ + uint32 failure_retry_cnt = 13; /**< Number of connection retries station will do before moving to next AP. + scan_method should be set as WIFI_ALL_CHANNEL_SCAN to use this config. + Note: Enabling this may cause connection time to increase in case best AP doesn't behave properly. */ + //uint32_t he_dcm_set:1; /**< Whether DCM max.constellation for transmission and reception is set. */ + //uint32_t he_dcm_max_constellation_tx:2; /**< Indicate the max.constellation for DCM in TB PPDU the STA supported. 0: not supported. 1: BPSK, 2: QPSK, 3: 16-QAM. The default value is 3. */ + //uint32_t he_dcm_max_constellation_rx:2; /**< Indicate the max.constellation for DCM in both Data field and HE-SIG-B field the STA supported. 0: not supported. 1: BPSK, 2: QPSK, 3: 16-QAM. The default value is 3. */ + //uint32_t he_mcs9_enabled:1; /**< Whether to support HE-MCS 0 to 9. The default value is 0. */ + //uint32_t he_su_beamformee_disabled:1; /**< Whether to disable support for operation as an SU beamformee. */ + //uint32_t he_trig_su_bmforming_feedback_disabled:1; /**< Whether to disable support the transmission of SU feedback in an HE TB sounding sequence. */ + //uint32_t he_trig_mu_bmforming_partial_feedback_disabled:1; /**< Whether to disable support the transmission of partial-bandwidth MU feedback in an HE TB sounding sequence. */ + // uint32_t he_trig_cqi_feedback_disabled:1; /**< Whether to disable support the transmission of CQI feedback in an HE TB sounding sequence. */ + // uint32_t vht_su_beamformee_disabled: 1; /**< Whether to disable support for operation as an VHT SU beamformee. */ + // uint32_t vht_mu_beamformee_disabled: 1; /**< Whether to disable support for operation as an VHT MU beamformee. */ + // uint32_t vht_mcs8_enabled: 1; /**< Whether to support VHT-MCS8. The default value is 0. */ + // uint32_t he_reserved:19; /**< Reserved for future feature set */ + uint32 he_bitmask = 14; + bytes sae_h2e_identifier = 15; /**< Password identifier for H2E. this needs to be null terminated string. SAE_H2E_IDENTIFIER_LEN chars */ + uint32 sae_pk_mode = 16; /**< Configuration for SAE-PK (Public Key) Authentication method */ +} + +message wifi_config { + oneof u { + wifi_ap_config ap = 1; /**< configuration of AP */ + wifi_sta_config sta = 2; /**< configuration of STA */ + } +} + +message wifi_sta_info { + bytes mac = 1; /**< mac address 6 char */ + int32 rssi = 2; /**< current average rssi of sta connected */ + //uint32_t phy_11b:1; /**< bit: 0 flag to identify if 11b mode is enabled or not */ + //uint32_t phy_11g:1; /**< bit: 1 flag to identify if 11g mode is enabled or not */ + //uint32_t phy_11n:1; /**< bit: 2 flag to identify if 11n mode is enabled or not */ + //uint32_t phy_lr:1; /**< bit: 3 flag to identify if low rate is enabled or not */ + //uint32_t phy_11x:1; /**< bit: 4 flag to identify identify if 11ax mode is enabled or not */ + //uint32_t is_mesh_child:1; /**< bit: 5 flag to identify mesh child */ + //uint32_t reserved:26; /**< bit: 6..31 reserved */ + uint32 bitmask = 3; +} + +message wifi_sta_list { + repeated wifi_sta_info sta = 1; /**< station list */ + int32 num = 2; /**< number of stations in the list (other entries are invalid) */ +} + +//message vendor_ie_data { +// uint32 element_id = 1; /**< Should be set to WIFI_VENDOR_IE_ELEMENT_ID (0xDD) */ +// uint32 length = 2; /**< Length of all bytes in the element data following this field. Minimum 4. */ +// bytes vendor_oui = 3; /**< Vendor identifier (OUI). 3 chars */ +// uint32 vendor_oui_type = 4; /**< Vendor-specific OUI type. */ +// bytes payload = 5; /**< Payload. Length is equal to value in 'length' field, minus 4. Note: Variable size */ +//} + +message wifi_pkt_rx_ctrl { + int32 rssi = 1; /**< 8bits Received Signal Strength Indicator(RSSI) of packet. unit: dBm */ + uint32 rate = 2; /**< 5bits PHY rate encoding of the packet. Only valid for non HT(11bg) packet */ + //uint32 :1; /**< reserved */ + uint32 sig_mode = 3; /**< 2bits 0: non HT(11bg) packet; 1: HT(11n) packet; 3: VHT(11ac) packet */ + //uint32 :16; /**< reserved */ + uint32 mcs = 4; /**< 7bits Modulation Coding Scheme. If is HT(11n) packet, shows the modulation, range from 0 to 76(MSC0 ~ MCS76) */ + uint32 cwb = 5; /**< 1bit Channel Bandwidth of the packet. 0: 20MHz; 1: 40MHz */ + //uint32 :16; /**< reserved */ + uint32 smoothing = 6; /**< 1bit reserved */ + uint32 not_sounding = 7; /**< 1bit reserved */ + //uint32 :1; /**< reserved */ + uint32 aggregation = 8; /**< 1bit Aggregation. 0: MPDU packet; 1: AMPDU packet */ + uint32 stbc = 9; /**< 2bits Space Time Block Code(STBC). 0: non STBC packet; 1: STBC packet */ + uint32 fec_coding = 10; /**< 1bit Flag is set for 11n packets which are LDPC */ + uint32 sgi = 11; /**< 1bit Short Guide Interval(SGI). 0: Long GI; 1: Short GI */ + int32 noise_floor = 12; /**< 8bits noise floor of Radio Frequency Module(RF). unit: dBm*/ + uint32 ampdu_cnt = 13; /**< 8bits ampdu cnt */ + uint32 channel = 14; /**< 4bits primary channel on which this packet is received */ + uint32 secondary_channel = 15; /**< 4bits secondary channel on which this packet is received. 0: none; 1: above; 2: below */ + //uint32 :8; /**< reserved */ + uint32 timestamp = 16; /**< 32bit timestamp. The local time when this packet is received. It is precise only if modem sleep or light sleep is not enabled. unit: microsecond */ + //uint32 :32; /**< reserved */ + //unsigned :32; /**< reserved */ + //unsigned :31; /**< reserved */ + uint32 ant = 17; /**< 1bit antenna number from which this packet is received. 0: WiFi antenna 0; 1: WiFi antenna 1 */ + uint32 sig_len = 18; /**< 12bits length of packet including Frame Check Sequence(FCS) */ + //unsigned :12; /**< reserved */ + uint32 rx_state = 19; /**< 8bits state of the packet. 0: no error; others: error numbers which are not public */ +} + +message wifi_promiscuous_pkt { + wifi_pkt_rx_ctrl rx_ctrl = 1; /**< metadata header */ + bytes payload = 2; /**< Note: variable length. Data or management payload. Length of payload is described by rx_ctrl.sig_len. Type of content determined by packet type argument of callback. */ +} + +message wifi_promiscuous_filter { + uint32 filter_mask = 1; /**< OR of one or more filter values WIFI_PROMIS_FILTER_* */ +} + +message wifi_csi_config { + bool lltf_en = 1; /**< enable to receive legacy long training field(lltf) data. Default enabled */ + bool htltf_en = 2; /**< enable to receive HT long training field(htltf) data. Default enabled */ + bool stbc_htltf2_en = 3; /**< enable to receive space time block code HT long training field(stbc-htltf2) data. Default enabled */ + bool ltf_merge_en = 4; /**< enable to generate htlft data by averaging lltf and ht_ltf data when receiving HT packet. Otherwise, use ht_ltf data directly. Default enabled */ + bool channel_filter_en = 5; /**< enable to turn on channel filter to smooth adjacent sub-carrier. Disable it to keep independence of adjacent sub-carrier. Default enabled */ + bool manu_scale = 6; /**< manually scale the CSI data by left shifting or automatically scale the CSI data. + If set true, please set the shift bits. false: automatically. true: manually. Default false */ + uint32 shift = 7; /**< manually left shift bits of the scale of the CSI data. The range of the left shift bits is 0~15 */ +} + +message wifi_csi_info { + wifi_pkt_rx_ctrl rx_ctrl = 1; /**< received packet radio metadata header of the CSI data */ + bytes mac = 2; /**< 6bits source MAC address of the CSI data */ + bytes dmac = 3; /**< 6bits destination MAC address of the CSI data */ + bool first_word_invalid = 4; /**< first four bytes of the CSI data is invalid or not */ + bytes buf = 5; /**< Note: variable length. buffer of CSI data */ + uint32 len = 6; /**< length of CSI data */ +} + +message wifi_ant_gpio { + uint32 gpio_select = 1; /**< 1bit Whether this GPIO is connected to external antenna switch */ + uint32 gpio_num = 2; /**< 7bits The GPIO number that connects to external antenna switch */ +} + +message wifi_ant_gpio_config { + repeated wifi_ant_gpio gpio_cfgs = 1; /**< The configurations of GPIOs that connect to external antenna switch */ +} + +message wifi_ant_config { + int32 rx_ant_mode = 1; /**< WiFi antenna mode for receiving */ + int32 rx_ant_default = 2; /**< Default antenna mode for receiving, it's ignored if rx_ant_mode is not WIFI_ANT_MODE_AUTO */ + int32 tx_ant_mode = 3; /**< WiFi antenna mode for transmission, it can be set to WIFI_ANT_MODE_AUTO only if rx_ant_mode is set to WIFI_ANT_MODE_AUTO */ + uint32 enabled_ant0 = 4; /**< 4bits Index (in antenna GPIO configuration) of enabled WIFI_ANT_MODE_ANT0 */ + uint32 enabled_ant1 = 5; /**< 4bits Index (in antenna GPIO configuration) of enabled WIFI_ANT_MODE_ANT1 */ +} + +message wifi_action_tx_req { + int32 ifx = 1; /**< WiFi interface to send request to */ + bytes dest_mac = 2; /**< 6bits Destination MAC address */ + bool no_ack = 3; /**< Indicates no ack required */ + //TODO + //wifi_action_rx_cb_t rx_cb; /**< Rx Callback to receive any response */ + uint32 data_len = 4; /**< Length of the appended Data */ + bytes data = 5; /**< note: variable length. Appended Data payload */ +} + +message wifi_ftm_initiator_cfg { + bytes resp_mac = 1; /**< 6bits MAC address of the FTM Responder */ + uint32 channel = 2; /**< Primary channel of the FTM Responder */ + uint32 frm_count = 3; /**< No. of FTM frames requested in terms of 4 or 8 bursts (allowed values - 0(No pref), 16, 24, 32, 64) */ + uint32 burst_period = 4; /**< Requested time period between consecutive FTM bursts in 100's of milliseconds (0 - No pref) */ +} + +message wifi_event_sta_scan_done { + uint32 status = 1; /**< status of scanning APs: 0 — success, 1 - failure */ + uint32 number = 2; /**< number of scan results */ + uint32 scan_id = 3; /**< scan sequence number, used for block scan */ +} + +message wifi_event_sta_connected { + bytes ssid = 1; /**< 32bytes SSID of connected AP */ + uint32 ssid_len = 2; /**< SSID length of connected AP */ + bytes bssid = 3; /**< 6bytes BSSID of connected AP*/ + uint32 channel = 4; /**< channel of connected AP*/ + int32 authmode = 5; /**< authentication mode used by AP*/ + int32 aid = 6; /**< authentication id assigned by the connected AP*/ +} + +message wifi_event_sta_disconnected { + bytes ssid = 1; /**< SSID of disconnected AP */ + uint32 ssid_len = 2; /**< SSID length of disconnected AP */ + bytes bssid = 3; /**< BSSID of disconnected AP */ + uint32 reason = 4; /**< reason of disconnection */ + int32 rssi = 5; /**< rssi of disconnection */ +} + +message wifi_event_sta_authmode_change { + int32 old_mode = 1; /**< the old auth mode of AP */ + int32 new_mode = 2; /**< the new auth mode of AP */ +} + +message wifi_event_sta_wps_er_pin { + bytes pin_code = 1; /**< 8bytes PIN code of station in enrollee mode */ +} + +message ap_cred { + bytes ssid = 1; /**< 32bytes SSID of AP */ + bytes passphrase = 2; /**< 64bytes Passphrase for the AP */ +} + +message wifi_event_sta_wps_er_success { + uint32 ap_cred_cnt = 1; /**< Number of AP credentials received */ + repeated ap_cred ap_creds = 2; /**< All AP credentials received from WPS handshake */ +} + +/** Argument structure for WIFI_EVENT_AP_PROBEREQRECVED event */ +message wifi_event_ap_probe_req_rx { + int32 rssi = 1; /**< Received probe request signal strength */ + uint32 mac = 2; /**< MAC address of the station which send probe request */ +} + +/** Argument structure for WIFI_EVENT_STA_BSS_RSSI_LOW event */ +message wifi_event_bss_rssi_low { + int32 rssi = 1; /**< RSSI value of bss */ +} + +message wifi_ftm_report_entry { + uint32 dlog_token = 1; /* *< Dialog Token of the FTM frame */ + int32 rssi = 2; /* *< RSSI of the FTM frame received */ + uint32 rtt = 3; /* *< Round Trip Time in pSec with a peer */ + /* TODO: uint32 is supported by proto? */ + uint64 t1 = 4; /* *< Time of departure of FTM frame from FTM Responder in pSec */ + uint64 t2 = 5; /* *< Time of arrival of FTM frame at FTM Initiator in pSec */ + uint64 t3 = 6; /* *< Time of departure of ACK from FTM Initiator in pSec */ + uint64 t4 = 7; /* *< Time of arrival of ACK at FTM Responder in pSec */ +} + +message wifi_event_ftm_report { + bytes peer_mac = 1; /* *< 6bytes MAC address of the FTM Peer */ + int32 status = 2; /* *< Status of the FTM operation */ + uint32 rtt_raw = 3; /* *< Raw average Round-Trip-Time with peer in Nano-Seconds */ + uint32 rtt_est = 4; /* *< Estimated Round-Trip-Time with peer in Nano-Seconds */ + uint32 dist_est = 5; /* *< Estimated one-way distance in Centi-Meters */ + repeated wifi_ftm_report_entry ftm_report_data = 6; /* *< Note var len Pointer to FTM Report with multiple entries, should be freed after use */ + uint32 ftm_report_num_entries = 7; /* *< Number of entries in the FTM Report data */ +} + +message wifi_event_action_tx_status { + int32 ifx = 1; /**< WiFi interface to send request to */ + uint32 context = 2; /**< Context to identify the request */ + bytes da = 3; /**< 6bytes Destination MAC address */ + uint32 status = 4; /**< Status of the operation */ +} + +message wifi_event_roc_done { + uint32 context = 1; /**< Context to identify the request */ +} + +message wifi_event_ap_wps_rg_pin { + bytes pin_code = 1; /**< 8bytes PIN code of station in enrollee mode */ +} + +message wifi_event_ap_wps_rg_fail_reason { + int32 reason = 1; /**< WPS failure reason wps_fail_reason_t */ + bytes peer_macaddr = 2; /**< 6bytes Enrollee mac address */ +} + +message wifi_event_ap_wps_rg_success { + bytes peer_macaddr = 1; /**< 6bytes Enrollee mac address */ +} + +message wifi_protocols { + uint32 ghz_2g = 1; /**< Represents 2.4 GHz protocol, support 802.11b or 802.11g or 802.11n or 802.11ax or LR mode */ + uint32 ghz_5g = 2; /**< Represents 5 GHz protocol, support 802.11a or 802.11n or 802.11ac or 802.11ax */ +} + +message wifi_bandwidths { + uint32 ghz_2g = 1; /* Represents 2.4 GHz bandwidth */ + uint32 ghz_5g = 2; /* Represents 5 GHz bandwidth */ +} + +message wifi_itwt_setup_config { + uint32 setup_cmd = 1; + // uint16_t trigger : 1; /**< 1: a trigger-enabled individual TWT, 0: a non-trigger-enabled individual TWT */ + // uint16_t flow_type : 1; /**< 0: an announced individual TWT, 1: an unannounced individual TWT */ + // uint16_t flow_id : 3; /**< When set up an individual TWT agreement, the flow id will be assigned by AP after a successful agreement setup. + // flow_id could be specified to a value in the range of [0, 7], but it might be changed by AP in the response. + // When change TWT parameters of the existing TWT agreement, flow_id should be an existing one. The value range is [0, 7]. */ + // uint16_t wake_invl_expn : 5; /**< Individual TWT Wake Interval Exponent. The value range is [0, 31]. */ + // uint16_t wake_duration_unit : 1; /**< Individual TWT Wake duration unit, 0: 256us 1: TU (TU = 1024us)*/ + // uint16_t reserved : 5; /**< bit: 11.15 reserved */ + uint32 bitmask_1 = 2; + uint32 min_wake_dura = 3; + uint32 wake_invl_mant = 4; + uint32 twt_id = 5; + uint32 timeout_time_ms = 6; +} + +message wifi_twt_config { + bool post_wakeup_event = 1; /**< post twt wakeup event */ + bool twt_enable_keep_alive = 2; /**< twt enable send qos null to keep alive */ +} + +message esp_app_desc { + uint32 magic_word = 1; /*!< Magic word ESP_APP_DESC_MAGIC_WORD */ + uint32 secure_version = 2; /*!< Secure version */ + bytes reserv1 = 3; /*!< reserv1 */ + bytes version = 4; /*!< Application version */ + bytes project_name = 5; /*!< Project name */ + bytes time = 6; /*!< Compile time */ + bytes date = 7; /*!< Compile date*/ + bytes idf_ver = 8; /*!< Version IDF */ + bytes app_elf_sha256 = 9; /*!< sha256 of elf file */ + uint32 min_efuse_blk_rev_full = 10; /*!< Minimal eFuse block revision supported by image, in format: major * 100 + minor */ + uint32 max_efuse_blk_rev_full = 11; /*!< Maximal eFuse block revision supported by image, in format: major * 100 + minor */ + uint32 mmu_page_size = 12; /*!< MMU page size in log base 2 format */ + bytes reserv3 = 13; /*!< reserv3 */ + bytes reserv2 = 14; /*!< reserv2 */ +} + +// heap size threshold based on memory capability +message heap_size_threshold { + uint32 threshold_mem_dma = 1; + uint32 threshold_mem_8bit = 2; +} + +message mem_info { + uint32 free_size = 1; // current heap free size + uint32 largest_free_block = 2; // largest free block of memory able to be allocated +} + +// heap info based on capability +message heap_info { + mem_info mem_dma = 1; + mem_info mem_8bit = 2; +} + +/* internal supporting structures for Rpc */ +//message ScanResult { +// bytes bssid = 1; +// bytes ssid = 2; +// uint32 chnl = 3; +// int32 rssi = 4; +// int32 sec_prot = 5; +//} + +message ConnectedSTAList { + bytes mac = 1; + int32 rssi = 2; +} + +message eap_fast_config { + int32 fast_provisioning = 1; // Enable or disable Fast Provisioning in EAP-FAST (0 = disabled, 1 = enabled) + int32 fast_max_pac_list_len = 2; // Maximum length of the PAC (Protected Access Credential) list + bool fast_pac_format_binary = 3; // Set to true for binary format PAC, false for ASCII format PAC +} + +/* Control path structures */ +/** Req/Resp structure **/ +message Rpc_Req_GetMacAddress { + int32 mode = 1; +} + +message Rpc_Resp_GetMacAddress { + bytes mac = 1; + int32 resp = 2; +} + +message Rpc_Req_GetMode { +} + +message Rpc_Resp_GetMode { + int32 mode = 1; + int32 resp = 2; +} + +message Rpc_Req_SetMode { + int32 mode = 1; +} + +message Rpc_Resp_SetMode { + int32 resp = 1; +} + +message Rpc_Req_GetPs { +} + +message Rpc_Resp_GetPs { + int32 resp = 1; + int32 type = 2; +} + +message Rpc_Req_SetPs { + int32 type = 1; +} + +message Rpc_Resp_SetPs { + int32 resp = 1; +} + +message Rpc_Req_SetMacAddress { + bytes mac = 1; + int32 mode = 2; +} + +message Rpc_Resp_SetMacAddress { + int32 resp = 1; +} + +message Rpc_Req_OTABegin { +} + +message Rpc_Resp_OTABegin { + int32 resp = 1; +} + +message Rpc_Req_OTAWrite { + bytes ota_data = 1; +} + +message Rpc_Resp_OTAWrite { + int32 resp = 1; +} + +message Rpc_Req_OTAEnd { +} + +message Rpc_Resp_OTAEnd { + int32 resp = 1; +} + +message Rpc_Req_OTAActivate { +} + +message Rpc_Resp_OTAActivate { + int32 resp = 1; +} + +message Rpc_Req_AppGetDesc { +} + +message Rpc_Resp_AppGetDesc { + int32 resp = 1; + esp_app_desc app_desc = 2; +} + +message Rpc_Req_WifiSetMaxTxPower { + int32 power = 1; +} + +message Rpc_Resp_WifiSetMaxTxPower { + int32 resp = 1; +} + +message Rpc_Req_WifiGetMaxTxPower { +} + +message Rpc_Resp_WifiGetMaxTxPower { + int32 power = 1; + int32 resp = 2; +} + +message Rpc_Req_ConfigHeartbeat { + bool enable = 1; + int32 duration = 2; +} + +message Rpc_Resp_ConfigHeartbeat { + int32 resp = 1; +} + +message Rpc_Req_WifiInit { + wifi_init_config cfg = 1; +} + +message Rpc_Resp_WifiInit { + int32 resp = 1; +} + +message Rpc_Req_WifiDeinit { +} + +message Rpc_Resp_WifiDeinit { + int32 resp = 1; +} + +message Rpc_Req_WifiSetConfig { + int32 iface = 1; + wifi_config cfg = 2; +} + +message Rpc_Resp_WifiSetConfig { + int32 resp = 1; +} + +message Rpc_Req_WifiGetConfig { + int32 iface = 1; +} + +message Rpc_Resp_WifiGetConfig { + int32 resp = 1; + int32 iface = 2; + wifi_config cfg = 3; +} + +message Rpc_Req_WifiConnect { +} + +message Rpc_Resp_WifiConnect { + int32 resp = 1; +} + +message Rpc_Req_WifiDisconnect { +} + +message Rpc_Resp_WifiDisconnect { + int32 resp = 1; +} + +message Rpc_Req_WifiStart { +} + +message Rpc_Resp_WifiStart { + int32 resp = 1; +} + +message Rpc_Req_WifiStop { +} + +message Rpc_Resp_WifiStop { + int32 resp = 1; +} + +message Rpc_Req_WifiScanStart { + wifi_scan_config config = 1; + bool block = 2; + int32 config_set = 3; +} + +message Rpc_Resp_WifiScanStart { + int32 resp = 1; +} + +message Rpc_Req_WifiScanStop { +} + +message Rpc_Resp_WifiScanStop { + int32 resp = 1; +} + +message Rpc_Req_WifiScanGetApNum { +} + +message Rpc_Resp_WifiScanGetApNum { + int32 resp = 1; + int32 number = 2; +} + +message Rpc_Req_WifiScanGetApRecords { + int32 number = 1; +} + +message Rpc_Resp_WifiScanGetApRecords { + int32 resp = 1; + int32 number = 2; + repeated wifi_ap_record ap_records = 3; +} + +message Rpc_Req_WifiScanGetApRecord { +} + +message Rpc_Resp_WifiScanGetApRecord { + int32 resp = 1; + wifi_ap_record ap_record = 2; +} + +message Rpc_Req_WifiClearApList { +} + +message Rpc_Resp_WifiClearApList { + int32 resp = 1; +} + +message Rpc_Req_WifiRestore { +} + +message Rpc_Resp_WifiRestore { + int32 resp = 1; +} + +message Rpc_Req_WifiClearFastConnect{ +} + +message Rpc_Resp_WifiClearFastConnect { + int32 resp = 1; +} + +message Rpc_Req_WifiDeauthSta { + int32 aid = 1; +} + +message Rpc_Resp_WifiDeauthSta { + int32 resp = 1; + int32 aid = 2; +} + +message Rpc_Req_WifiStaGetApInfo { +} + +message Rpc_Resp_WifiStaGetApInfo { + int32 resp = 1; + wifi_ap_record ap_record = 2; +} + +message Rpc_Req_WifiSetProtocol { + int32 ifx = 1; + int32 protocol_bitmap = 2; +} + +message Rpc_Resp_WifiSetProtocol { + int32 resp = 1; +} + +message Rpc_Req_WifiGetProtocol { + int32 ifx = 1; +} + +message Rpc_Resp_WifiGetProtocol { + int32 resp = 1; + int32 protocol_bitmap = 2; +} + +message Rpc_Req_WifiSetBandwidth { + int32 ifx = 1; + int32 bw = 2; +} + +message Rpc_Resp_WifiSetBandwidth { + int32 resp = 1; +} + +message Rpc_Req_WifiGetBandwidth { + int32 ifx = 1; +} + +message Rpc_Resp_WifiGetBandwidth { + int32 resp = 1; + int32 bw = 2; +} + +message Rpc_Req_WifiSetChannel { + int32 primary = 1; + int32 second = 2; +} + +message Rpc_Resp_WifiSetChannel { + int32 resp = 1; +} + +message Rpc_Req_WifiGetChannel { +} + +message Rpc_Resp_WifiGetChannel { + int32 resp = 1; + int32 primary = 2; + int32 second = 3; +} + +message Rpc_Req_WifiSetStorage { + int32 storage = 1; +} + +message Rpc_Resp_WifiSetStorage { + int32 resp = 1; +} + +message Rpc_Req_WifiSetCountryCode { + bytes country = 1; + bool ieee80211d_enabled = 2; +} + +message Rpc_Resp_WifiSetCountryCode { + int32 resp = 1; +} + +message Rpc_Req_WifiGetCountryCode { +} + +message Rpc_Resp_WifiGetCountryCode { + int32 resp = 1; + bytes country = 2; +} + +message Rpc_Req_WifiSetCountry { + wifi_country country = 1; +} + +message Rpc_Resp_WifiSetCountry { + int32 resp = 1; +} + +message Rpc_Req_WifiGetCountry { +} + +message Rpc_Resp_WifiGetCountry { + int32 resp = 1; + wifi_country country = 2; +} + +message Rpc_Req_WifiApGetStaList { +} + +message Rpc_Resp_WifiApGetStaList { + int32 resp = 1; + wifi_sta_list sta_list = 2; +} + +message Rpc_Req_WifiApGetStaAid { + bytes mac = 1; +} + +message Rpc_Req_WifiStaGetNegotiatedPhymode { +} + +message Rpc_Resp_WifiStaGetNegotiatedPhymode { + int32 resp = 1; + uint32 phymode = 2; +} + +message Rpc_Resp_WifiApGetStaAid { + int32 resp = 1; + uint32 aid = 2; +} + +message Rpc_Req_WifiStaGetRssi { +} + +message Rpc_Resp_WifiStaGetRssi { + int32 resp = 1; + int32 rssi = 2; +} + +message Rpc_Req_WifiScanParams { + RpcCmd cmd = 1; + wifi_scan_default_params config = 2; + bool is_config_null = 3; +} + +message Rpc_Resp_WifiScanParams { + int32 resp = 1; + wifi_scan_default_params config = 2; +} + +message Rpc_Req_WifiStaGetAid { +} + +message Rpc_Resp_WifiStaGetAid { + int32 resp = 1; + uint32 aid = 2; +} + +message Rpc_Req_WifiSetProtocols { + int32 ifx = 1; + wifi_protocols protocols = 2; +} + +message Rpc_Resp_WifiSetProtocols { + int32 resp = 1; + uint32 ifx = 2; +} + +message Rpc_Req_WifiGetProtocols { + int32 ifx = 1; +} + +message Rpc_Resp_WifiGetProtocols { + int32 resp = 1; + int32 ifx = 2; + wifi_protocols protocols = 3; +} + +message Rpc_Req_WifiSetBandwidths { + int32 ifx = 1; + wifi_bandwidths bandwidths = 2; +} + +message Rpc_Resp_WifiSetBandwidths { + int32 resp = 1; + int32 ifx = 2; +} + +message Rpc_Req_WifiGetBandwidths { + int32 ifx = 1; +} + +message Rpc_Resp_WifiGetBandwidths { + int32 resp = 1; + int32 ifx = 2; + wifi_bandwidths bandwidths = 3; +} + +message Rpc_Req_WifiSetBand { + uint32 band = 1; +} + +message Rpc_Resp_WifiSetBand { + int32 resp = 1; +} + +message Rpc_Req_WifiGetBand { +} + +message Rpc_Resp_WifiGetBand { + int32 resp = 1; + uint32 band = 2; +} + +message Rpc_Req_WifiSetBandMode { + uint32 bandmode = 1; +} + +message Rpc_Resp_WifiSetBandMode { + int32 resp = 1; +} + +message Rpc_Req_WifiGetBandMode { +} + +message Rpc_Resp_WifiGetBandMode { + int32 resp = 1; + uint32 bandmode = 2; +} + +message Rpc_Req_WifiSetInactiveTime { + uint32 ifx = 1; + uint32 sec = 2; +} + +message Rpc_Resp_WifiSetInactiveTime { + int32 resp = 1; +} + +message Rpc_Req_WifiGetInactiveTime { + uint32 ifx = 1; +} + +message Rpc_Resp_WifiGetInactiveTime { + int32 resp = 1; + uint32 sec = 2; +} + +message Rpc_Req_WifiDisablePmfConfig { + uint32 ifx = 1; +} + +message Rpc_Resp_WifiDisablePmfConfig { + int32 resp = 1; + uint32 ifx = 2; +} + +message Rpc_Req_WifiStaItwtSetup { + wifi_itwt_setup_config setup_config = 1; +} + +message Rpc_Resp_WifiStaItwtSetup { + int32 resp = 1; +} + +message Rpc_Req_WifiStaItwtTeardown { + int32 flow_id = 1; +} + +message Rpc_Resp_WifiStaItwtTeardown { + int32 resp = 1; +} + +message Rpc_Req_WifiStaItwtSuspend { + int32 flow_id = 1; + int32 suspend_time_ms = 2; +} + +message Rpc_Resp_WifiStaItwtSuspend { + int32 resp = 1; +} + +message Rpc_Req_WifiStaItwtGetFlowIdStatus { +} + +message Rpc_Resp_WifiStaItwtGetFlowIdStatus { + int32 resp = 1; + int32 flow_id_bitmap = 2; +} + +message Rpc_Req_WifiStaItwtSendProbeReq { + int32 timeout_ms = 1; +} + +message Rpc_Resp_WifiStaItwtSendProbeReq { + int32 resp = 1; +} + +message Rpc_Req_WifiStaItwtSetTargetWakeTimeOffset { + int32 offset_us = 1; +} + +message Rpc_Resp_WifiStaItwtSetTargetWakeTimeOffset { + int32 resp = 1; +} + +message Rpc_Req_WifiStaTwtConfig { + wifi_twt_config config = 1; +} + +message Rpc_Resp_WifiStaTwtConfig { + int32 resp = 1; +} + +message Rpc_Req_GetCoprocessorFwVersion { +} + +message Rpc_Resp_GetCoprocessorFwVersion { + int32 resp = 1; + uint32 major1 = 2; + uint32 minor1 = 3; + uint32 patch1 = 4; + int32 revision = 5; + int32 prerelease = 6; + int32 build = 7; + uint32 chip_id = 8; // from sdkconfig->CONFIG_IDF_FIRMWARE_CHIP_ID + bytes idf_target = 9; // from sdkconfig->CONFIG_IDF_TARGET +} + +message Rpc_Req_SetDhcpDnsStatus { + int32 iface = 1; + int32 net_link_up = 2; + + int32 dhcp_up = 3; + bytes dhcp_ip = 4; + bytes dhcp_nm = 5; + bytes dhcp_gw = 6; + + int32 dns_up = 7; + bytes dns_ip = 8; + int32 dns_type = 9; +} + +message Rpc_Resp_SetDhcpDnsStatus { + int32 resp = 1; +} + +message Rpc_Req_GetDhcpDnsStatus { + int32 iface = 1; +} + +message Rpc_Resp_GetDhcpDnsStatus { + int32 iface = 1; + int32 net_link_up = 2; + + int32 dhcp_up = 3; + bytes dhcp_ip = 4; + bytes dhcp_nm = 5; + bytes dhcp_gw = 6; + + int32 dns_up = 7; + bytes dns_ip = 8; + int32 dns_type = 9; + int32 resp = 10; +} + +message Rpc_Req_SuppDppInit { + bool cb = 1; // enables sending of Event_SuppDpp to host via callback +} + +message Rpc_Resp_SuppDppInit { + int32 resp = 1; +} + +message Rpc_Req_SuppDppDeinit { +} + +message Rpc_Resp_SuppDppDeinit { + int32 resp = 1; +} + +message Rpc_Req_SuppDppBootstrapGen { + bytes chan_list = 1; // DPP Bootstrapping listen channels separated by commas + int32 type = 2; // Bootstrap method type, only QR Code method is supported for now. + bytes key = 3; // (Optional) 32 byte Raw Private Key for generating a Bootstrapping Public Key + bytes info = 4; // (Optional) Ancillary Device Information like Serial Number +} + +message Rpc_Resp_SuppDppBootstrapGen { + int32 resp = 1; +} + +message Rpc_Req_SuppDppStartListen { +} + +message Rpc_Resp_SuppDppStartListen { + int32 resp = 1; +} + +message Rpc_Req_SuppDppStopListen { +} + +message Rpc_Resp_SuppDppStopListen { + int32 resp = 1; +} + +message Rpc_Req_IfaceMacAddrSetGet { + bool set = 1; + uint32 type = 2; + bytes mac = 3; // only valid for set +}; + +message Rpc_Resp_IfaceMacAddrSetGet { + int32 resp = 1; + bool set = 2; + uint32 type = 3; + bytes mac = 4; +}; + +message Rpc_Req_IfaceMacAddrLenGet { + uint32 type = 1; +}; + +message Rpc_Resp_IfaceMacAddrLenGet { + int32 resp = 1; + uint32 type = 2; + uint32 len = 3; +}; + +message Rpc_Req_FeatureControl { + RpcFeature feature = 1; + RpcFeatureCommand command = 2; + RpcFeatureOption option = 3; +}; + +message Rpc_Resp_FeatureControl { + int32 resp = 1; + RpcFeature feature = 2; + RpcFeatureCommand command = 3; + RpcFeatureOption option = 4; +}; + +/* Configures the memory threshold for heap space monitoring for both internal and external ram + Set values to 0 to disable +*/ +message Rpc_Req_MemMonitor { + Rpc_MemMonitorConfig config = 1; // configure monitor + bool report_always = 2; // report the memory used based on the set interval. When disabled, report only when heap memory falls below a set value + uint32 interval_sec = 3; // interval between heap checks, periodic reports (if enabled) + heap_size_threshold internal = 4; // minimum reporting threshold for internal memory + heap_size_threshold external = 5; // minimum reporting threshold for external memory +} + +message Rpc_Resp_MemMonitor { + int32 resp = 1; + Rpc_MemMonitorConfig config = 2; + bool report_always = 3; + uint32 interval_sec = 4; + uint32 curr_total_heap_size = 5; // current total free heap size + heap_info curr_internal = 6; // current heap sizes for internal memory + heap_info curr_external = 7; // current heap sizes for external memory +} + +/** Event structure **/ + +message Rpc_Event_WifiEventNoArgs { + int32 resp = 1; + int32 event_id = 2; +} + +message Rpc_Event_ESPInit { + bytes init_data = 1; // reserved + uint32 cp_reset_reason = 2; +} + +message Rpc_Event_Heartbeat { + int32 hb_num = 1; +} + +message Rpc_Event_AP_StaDisconnected { + int32 resp = 1; + bytes mac = 2; + uint32 aid = 3; + bool is_mesh_child = 4; + uint32 reason = 5; +} + +message Rpc_Event_AP_StaConnected { + int32 resp = 1; + bytes mac = 2; + uint32 aid = 3; + bool is_mesh_child = 4; +} + +message Rpc_Event_StaScanDone { + int32 resp = 1; + wifi_event_sta_scan_done scan_done = 2; +} + +message Rpc_Event_StaConnected { + int32 resp = 1; + wifi_event_sta_connected sta_connected = 2; +} + +message Rpc_Event_StaDisconnected { + int32 resp = 1; + wifi_event_sta_disconnected sta_disconnected = 2; +} + +enum Rpc_GpioMode { + GPIO_MODE_DISABLE = 0; + GPIO_MODE_INPUT = 1; + GPIO_MODE_OUTPUT = 2; + GPIO_MODE_INPUT_OUTPUT = 3; +} + +enum Rpc_GpioPullMode { + GPIO_PULL_NONE = 0; + GPIO_PULL_UP = 1; + GPIO_PULL_DOWN = 2; +} + +enum Rpc_MemMonitorConfig { + MEMMONITOR_NO_CHANGE = 0; // don't change the monitor configuration + // - to get current memory values without modifying config + MEMMONITOR_DISABLE = 1; // disable the monitor + MEMMONITOR_ENABLE = 2; // (re)enable the monitor with new configuration +} + +message Rpc_GpioConfig { + uint64 pin_bit_mask = 1; + Rpc_GpioMode mode = 2; + bool pull_up_en = 3; + bool pull_down_en = 4; + int32 intr_type = 5; +} + +message Rpc_Req_GpioConfig { + Rpc_GpioConfig config = 1; +} +message Rpc_Resp_GpioConfig { + int32 resp = 1; +} + +message Rpc_Req_GpioResetPin { + int32 gpio_num = 1; +} +message Rpc_Resp_GpioResetPin { + int32 resp = 1; +} + +message Rpc_Req_GpioSetLevel { + int32 gpio_num = 1; + uint32 level = 2; // 0 or 1 +} +message Rpc_Resp_GpioSetLevel { + int32 resp = 1; +} + +message Rpc_Req_GpioGetLevel { + int32 gpio_num = 1; +} +message Rpc_Resp_GpioGetLevel { + int32 resp = 1; + uint32 level = 2; +} + +message Rpc_Req_GpioSetDirection { + int32 gpio_num = 1; + Rpc_GpioMode mode = 2; +} +message Rpc_Resp_GpioSetDirection { + int32 resp = 1; +} + +message Rpc_Req_GpioInputEnable { + int32 gpio_num = 1; +} +message Rpc_Resp_GpioInputEnable { + int32 resp = 1; +} + +message Rpc_Req_GpioSetPullMode { + int32 gpio_num = 1; + Rpc_GpioPullMode pull = 2; +} +message Rpc_Resp_GpioSetPullMode { + int32 resp = 1; +} + +/* Single RPC for external coex: cmd determines which fields are used */ +enum Rpc_ExtCoexCmd { + SetGpioPin = 0; + Disable = 1; + SetWorkMode = 2; + SetGrantDelay = 3; + SetValidateHigh = 4; +} + +message Rpc_Req_ExtCoex { + uint32 cmd = 1; + uint32 set_gpio_wire_type = 2; + int32 set_gpio_request_pin = 3; + int32 set_gpio_priority_pin = 4; + int32 set_gpio_grant_pin = 5; + int32 set_gpio_tx_line_pin = 6; + uint32 set_work_mode = 7; + uint32 set_grant_delay_us = 8; + bool set_validate_high = 9; +} +message Rpc_Resp_ExtCoex { + int32 resp = 1; +} + +message Rpc_Event_DhcpDnsStatus { + int32 iface = 1; + int32 net_link_up = 2; + + int32 dhcp_up = 3; + bytes dhcp_ip = 4; + bytes dhcp_nm = 5; + bytes dhcp_gw = 6; + + int32 dns_up = 7; + bytes dns_ip = 8; + int32 dns_type = 9; + int32 resp = 10; +} + +message Rpc_Event_StaItwtSetup { + int32 resp = 1; + wifi_itwt_setup_config config = 2; + int32 status = 3; + uint32 reason = 4; + uint64 target_wake_time = 5; +} + +message Rpc_Event_StaItwtTeardown { + int32 resp = 1; + uint32 flow_id = 2; + uint32 status = 3; +} + +message Rpc_Event_StaItwtSuspend { + int32 resp = 1; + int32 status = 2; + uint32 flow_id_bitmap = 3; + repeated uint32 actual_suspend_time_ms = 4; // represents uint32_t actual_suspend_time_ms[] +} + +message Rpc_Event_StaItwtProbe { + int32 resp = 1; + int32 status = 2; + uint32 reason = 3; +} + +message Rpc_Req_WifiStaEnterpriseEnable { +} + +message Rpc_Resp_WifiStaEnterpriseEnable { + int32 resp = 1; +} + +message Rpc_Req_WifiStaEnterpriseDisable { +} + +message Rpc_Resp_WifiStaEnterpriseDisable { + int32 resp = 1; +} + +message Rpc_Req_EapSetIdentity { + bytes identity = 1; + int32 len = 2; +} + +message Rpc_Resp_EapSetIdentity { + int32 resp = 1; +} + +message Rpc_Req_EapClearIdentity { +} + +message Rpc_Resp_EapClearIdentity { + int32 resp = 1; +} + +message Rpc_Req_EapSetUsername { + bytes username = 1; + int32 len = 2; +} + +message Rpc_Resp_EapSetUsername { + int32 resp = 1; +} + +message Rpc_Req_EapClearUsername { +} + +message Rpc_Resp_EapClearUsername { + int32 resp = 1; +} + +message Rpc_Req_EapSetPassword { + bytes password = 1; + int32 len = 2; +} + +message Rpc_Resp_EapSetPassword { + int32 resp = 1; +} + +message Rpc_Req_EapClearPassword { +} + +message Rpc_Resp_EapClearPassword { + int32 resp = 1; +} + +message Rpc_Req_EapSetNewPassword { + bytes new_password = 1; + int32 len = 2; +} + +message Rpc_Resp_EapSetNewPassword { + int32 resp = 1; +} + +message Rpc_Req_EapClearNewPassword { +} + +message Rpc_Resp_EapClearNewPassword { + int32 resp = 1; +} + +message Rpc_Req_EapSetCaCert { + bytes ca_cert = 1; + int32 ca_cert_len = 2; +} + +message Rpc_Resp_EapSetCaCert { + int32 resp = 1; +} + +message Rpc_Req_EapClearCaCert { +} + +message Rpc_Resp_EapClearCaCert { + int32 resp = 1; +} + +message Rpc_Req_EapSetCertificateAndKey { + bytes client_cert = 1; + int32 client_cert_len = 2; + bytes private_key = 3; + int32 private_key_len = 4; + bytes private_key_password = 5; + int32 private_key_passwd_len = 6; +} + +message Rpc_Resp_EapSetCertificateAndKey { + int32 resp = 1; +} + +message Rpc_Req_EapClearCertificateAndKey { +} + +message Rpc_Resp_EapClearCertificateAndKey { + int32 resp = 1; +} + +message Rpc_Req_EapSetDisableTimeCheck { + bool disable = 1; +} + +message Rpc_Resp_EapSetDisableTimeCheck { + int32 resp = 1; +} + +message Rpc_Req_EapGetDisableTimeCheck { +} + +message Rpc_Resp_EapGetDisableTimeCheck { + int32 resp = 1; + bool disable = 2; +} + +message Rpc_Req_EapSetTtlsPhase2Method { + int32 type = 1; +} + +message Rpc_Resp_EapSetTtlsPhase2Method { + int32 resp = 1; +} + +message Rpc_Req_EapSetSuiteb192bitCertification { + bool enable = 1; +} + +message Rpc_Resp_EapSetSuiteb192bitCertification { + int32 resp = 1; +} + +message Rpc_Req_EapSetPacFile { + bytes pac_file = 1; + int32 pac_file_len = 2; +} + +message Rpc_Resp_EapSetPacFile { + int32 resp = 1; +} + +message Rpc_Req_EapSetFastParams { + eap_fast_config eap_fast_config = 1; +} + +message Rpc_Resp_EapSetFastParams { + int32 resp = 1; +} + +message Rpc_Req_EapUseDefaultCertBundle { + bool use_default_bundle = 1; +} + +message Rpc_Resp_EapUseDefaultCertBundle { + int32 resp = 1; +} + +message Rpc_Req_WifiSetOkcSupport { + bool enable = 1; +} + +message Rpc_Resp_WifiSetOkcSupport { + int32 resp = 1; +} + +message Rpc_Req_EapSetDomainName { + bytes domain_name = 1; +} + +message Rpc_Resp_EapSetDomainName { + int32 resp = 1; +} + +message Rpc_Req_EapSetEapMethods { + int32 methods = 1; +} + +message Rpc_Resp_EapSetEapMethods { + int32 resp = 1; +} + +message Rpc_Event_SuppDppUriReady { + int32 resp = 1; + bytes qrcode = 2; // QR Code to configure the enrollee +} + +message Rpc_Event_SuppDppCfgRecvd { + int32 resp = 1; + wifi_config cfg = 2; +} + +message Rpc_Event_SuppDppFail { + int32 resp = 1; + int32 reason = 2; // failure reason +} + +message Rpc_Event_WifiDppUriReady { + int32 resp = 1; + bytes qrcode = 2; // QR Code to configure the enrollee +} + +message Rpc_Event_WifiDppCfgRecvd { + int32 resp = 1; + wifi_config cfg = 2; +} + +message Rpc_Event_WifiDppFail { + int32 resp = 1; + int32 reason = 2; // failure reason +} + +/* Custom RPC messages for user-defined packed structures */ +message Rpc_Req_CustomRpc { + uint32 custom_msg_id = 1; /* User-defined message ID */ + bytes data = 2; /* Raw packed data */ +} + +message Rpc_Resp_CustomRpc { + int32 resp = 1; /* Response status */ + uint32 custom_msg_id = 2; /* User-defined message ID (echoed from request) */ + bytes data = 3; /* Raw packed response data */ +} + +message Rpc_Event_CustomRpc { + int32 resp = 1; /* Event status */ + uint32 custom_event_id = 2; /* User-defined event ID */ + bytes data = 3; /* Raw packed event data */ +} + +/* Sent when heap size is below a set low level marks */ +message Rpc_Event_MemMonitor { + int32 resp = 1; + uint32 curr_total_free_heap_size = 2; // current total heap size + uint32 curr_min_free_heap_size = 3; // current minimum heap size + heap_info curr_internal = 4; // current heap levels for internal memory + heap_info curr_external = 5; // current heap levels for external memory +} + +message Rpc { + /* msg_type could be req, resp or Event */ + RpcType msg_type = 1; + + /* msg id */ + RpcId msg_id = 2; + + /* UID of message */ + uint32 uid = 3; + + /* union of all msg ids */ + oneof payload { + /** Requests **/ + Rpc_Req_GetMacAddress req_get_mac_address = 257; + Rpc_Req_SetMacAddress req_set_mac_address = 258; + Rpc_Req_GetMode req_get_wifi_mode = 259; + Rpc_Req_SetMode req_set_wifi_mode = 260; + + Rpc_Req_SuppDppInit req_supp_dpp_init = 261; + Rpc_Req_SuppDppDeinit req_supp_dpp_deinit = 262; + Rpc_Req_SuppDppBootstrapGen req_supp_dpp_bootstrap_gen = 263; + Rpc_Req_SuppDppStartListen req_supp_dpp_start_listen = 264; + Rpc_Req_SuppDppStopListen req_supp_dpp_stop_listen = 265; + + Rpc_Req_OTAActivate req_ota_activate = 266; + + Rpc_Req_AppGetDesc req_app_get_desc = 267; + + Rpc_Req_MemMonitor req_mem_monitor = 268; + Rpc_Req_WifiScanParams req_wifi_scan_params = 269; + + Rpc_Req_SetPs req_wifi_set_ps = 270; + Rpc_Req_GetPs req_wifi_get_ps = 271; + + Rpc_Req_OTABegin req_ota_begin = 272; + Rpc_Req_OTAWrite req_ota_write = 273; + Rpc_Req_OTAEnd req_ota_end = 274; + + Rpc_Req_WifiSetMaxTxPower req_set_wifi_max_tx_power = 275; + Rpc_Req_WifiGetMaxTxPower req_get_wifi_max_tx_power = 276; + Rpc_Req_ConfigHeartbeat req_config_heartbeat = 277; + + Rpc_Req_WifiInit req_wifi_init = 278; + Rpc_Req_WifiDeinit req_wifi_deinit = 279; + Rpc_Req_WifiStart req_wifi_start = 280; + Rpc_Req_WifiStop req_wifi_stop = 281; + Rpc_Req_WifiConnect req_wifi_connect = 282; + Rpc_Req_WifiDisconnect req_wifi_disconnect = 283; + Rpc_Req_WifiSetConfig req_wifi_set_config = 284; + Rpc_Req_WifiGetConfig req_wifi_get_config = 285; + + Rpc_Req_WifiScanStart req_wifi_scan_start = 286; + Rpc_Req_WifiScanStop req_wifi_scan_stop = 287; + Rpc_Req_WifiScanGetApNum req_wifi_scan_get_ap_num = 288; + Rpc_Req_WifiScanGetApRecords req_wifi_scan_get_ap_records = 289; + Rpc_Req_WifiClearApList req_wifi_clear_ap_list = 290; + + Rpc_Req_WifiRestore req_wifi_restore = 291; + Rpc_Req_WifiClearFastConnect req_wifi_clear_fast_connect = 292; + Rpc_Req_WifiDeauthSta req_wifi_deauth_sta = 293; + Rpc_Req_WifiStaGetApInfo req_wifi_sta_get_ap_info = 294; + + Rpc_Req_WifiSetProtocol req_wifi_set_protocol = 297; + Rpc_Req_WifiGetProtocol req_wifi_get_protocol = 298; + Rpc_Req_WifiSetBandwidth req_wifi_set_bandwidth = 299; + Rpc_Req_WifiGetBandwidth req_wifi_get_bandwidth = 300; + Rpc_Req_WifiSetChannel req_wifi_set_channel = 301; + Rpc_Req_WifiGetChannel req_wifi_get_channel = 302; + Rpc_Req_WifiSetCountry req_wifi_set_country = 303; + Rpc_Req_WifiGetCountry req_wifi_get_country = 304; + + Rpc_Req_WifiApGetStaList req_wifi_ap_get_sta_list = 311; + Rpc_Req_WifiApGetStaAid req_wifi_ap_get_sta_aid = 312; + Rpc_Req_WifiSetStorage req_wifi_set_storage = 313; + + Rpc_Req_WifiSetInactiveTime req_wifi_set_inactive_time = 325; + Rpc_Req_WifiGetInactiveTime req_wifi_get_inactive_time = 326; + + Rpc_Req_WifiSetCountryCode req_wifi_set_country_code = 334; + Rpc_Req_WifiGetCountryCode req_wifi_get_country_code = 335; + Rpc_Req_WifiDisablePmfConfig req_wifi_disable_pmf_config = 337; + Rpc_Req_WifiStaGetAid req_wifi_sta_get_aid = 338; + Rpc_Req_WifiStaGetNegotiatedPhymode req_wifi_sta_get_negotiated_phymode = 339; + + Rpc_Req_WifiStaGetRssi req_wifi_sta_get_rssi = 341; + + Rpc_Req_WifiSetProtocols req_wifi_set_protocols = 342; + Rpc_Req_WifiGetProtocols req_wifi_get_protocols = 343; + Rpc_Req_WifiSetBandwidths req_wifi_set_bandwidths = 344; + Rpc_Req_WifiGetBandwidths req_wifi_get_bandwidths = 345; + + Rpc_Req_WifiSetBand req_wifi_set_band = 346; + Rpc_Req_WifiGetBand req_wifi_get_band = 347; + Rpc_Req_WifiSetBandMode req_wifi_set_bandmode = 348; + Rpc_Req_WifiGetBandMode req_wifi_get_bandmode = 349; + + Rpc_Req_GetCoprocessorFwVersion req_get_coprocessor_fwversion = 350; + + Rpc_Req_WifiScanGetApRecord req_wifi_scan_get_ap_record = 351; + + Rpc_Req_SetDhcpDnsStatus req_set_dhcp_dns = 352; + Rpc_Req_GetDhcpDnsStatus req_get_dhcp_dns = 353; + + Rpc_Req_WifiStaTwtConfig req_wifi_sta_twt_config = 354; + Rpc_Req_WifiStaItwtSetup req_wifi_sta_itwt_setup = 355; + Rpc_Req_WifiStaItwtTeardown req_wifi_sta_itwt_teardown = 356; + Rpc_Req_WifiStaItwtSuspend req_wifi_sta_itwt_suspend = 357; + Rpc_Req_WifiStaItwtGetFlowIdStatus req_wifi_sta_itwt_get_flow_id_status = 358; + Rpc_Req_WifiStaItwtSendProbeReq req_wifi_sta_itwt_send_probe_req = 359; + Rpc_Req_WifiStaItwtSetTargetWakeTimeOffset req_wifi_sta_itwt_set_target_wake_time_offset = 360; + + Rpc_Req_WifiStaEnterpriseEnable req_wifi_sta_enterprise_enable = 361; + Rpc_Req_WifiStaEnterpriseDisable req_wifi_sta_enterprise_disable = 362; + Rpc_Req_EapSetIdentity req_eap_set_identity = 363; + Rpc_Req_EapClearIdentity req_eap_clear_identity = 364; + Rpc_Req_EapSetUsername req_eap_set_username = 365; + Rpc_Req_EapClearUsername req_eap_clear_username = 366; + Rpc_Req_EapSetPassword req_eap_set_password = 367; + Rpc_Req_EapClearPassword req_eap_clear_password = 368; + Rpc_Req_EapSetNewPassword req_eap_set_new_password = 369; + Rpc_Req_EapClearNewPassword req_eap_clear_new_password = 370; + Rpc_Req_EapSetCaCert req_eap_set_ca_cert = 371; + Rpc_Req_EapClearCaCert req_eap_clear_ca_cert = 372; + Rpc_Req_EapSetCertificateAndKey req_eap_set_certificate_and_key = 373; + Rpc_Req_EapClearCertificateAndKey req_eap_clear_certificate_and_key = 374; + Rpc_Req_EapGetDisableTimeCheck req_eap_get_disable_time_check = 375; + Rpc_Req_EapSetTtlsPhase2Method req_eap_set_ttls_phase2_method = 376; + Rpc_Req_EapSetSuiteb192bitCertification req_eap_set_suiteb_certification = 377; + Rpc_Req_EapSetPacFile req_eap_set_pac_file = 378; + Rpc_Req_EapSetFastParams req_eap_set_fast_params = 379; + Rpc_Req_EapUseDefaultCertBundle req_eap_use_default_cert_bundle = 380; + Rpc_Req_WifiSetOkcSupport req_wifi_set_okc_support = 381; + Rpc_Req_EapSetDomainName req_eap_set_domain_name = 382; + Rpc_Req_EapSetDisableTimeCheck req_eap_set_disable_time_check = 383; + Rpc_Req_EapSetEapMethods req_eap_set_eap_methods = 384; + + Rpc_Req_IfaceMacAddrSetGet req_iface_mac_addr_set_get = 385; + Rpc_Req_IfaceMacAddrLenGet req_iface_mac_addr_len_get = 386; + + Rpc_Req_FeatureControl req_feature_control = 387; + + Rpc_Req_CustomRpc req_custom_rpc = 388; + + Rpc_Req_GpioConfig req_gpio_config = 389; + Rpc_Req_GpioResetPin req_gpio_reset_pin = 390; + Rpc_Req_GpioSetLevel req_gpio_set_level = 391; + Rpc_Req_GpioGetLevel req_gpio_get_level = 392; + Rpc_Req_GpioSetDirection req_gpio_set_direction = 393; + Rpc_Req_GpioInputEnable req_gpio_input_enable = 394; + Rpc_Req_GpioSetPullMode req_gpio_set_pull_mode = 395; + + Rpc_Req_ExtCoex req_ext_coex = 396; + + /** Responses **/ + Rpc_Resp_GetMacAddress resp_get_mac_address = 513; + Rpc_Resp_SetMacAddress resp_set_mac_address = 514; + Rpc_Resp_GetMode resp_get_wifi_mode = 515; + Rpc_Resp_SetMode resp_set_wifi_mode = 516; + + Rpc_Resp_SuppDppInit resp_supp_dpp_init = 517; + Rpc_Resp_SuppDppDeinit resp_supp_dpp_deinit = 518; + Rpc_Resp_SuppDppBootstrapGen resp_supp_dpp_bootstrap_gen = 519; + Rpc_Resp_SuppDppStartListen resp_supp_dpp_start_listen = 520; + Rpc_Resp_SuppDppStopListen resp_supp_dpp_stop_listen = 521; + + Rpc_Resp_OTAActivate resp_ota_activate = 522; + + Rpc_Resp_AppGetDesc resp_app_get_desc = 523; + + Rpc_Resp_MemMonitor resp_mem_monitor = 524; + Rpc_Resp_WifiScanParams resp_wifi_scan_params = 525; + + Rpc_Resp_SetPs resp_wifi_set_ps = 526; + Rpc_Resp_GetPs resp_wifi_get_ps = 527; + + Rpc_Resp_OTABegin resp_ota_begin = 528; + Rpc_Resp_OTAWrite resp_ota_write = 529; + Rpc_Resp_OTAEnd resp_ota_end = 530; + Rpc_Resp_WifiSetMaxTxPower resp_set_wifi_max_tx_power = 531; + Rpc_Resp_WifiGetMaxTxPower resp_get_wifi_max_tx_power = 532; + Rpc_Resp_ConfigHeartbeat resp_config_heartbeat = 533; + + Rpc_Resp_WifiInit resp_wifi_init = 534; + Rpc_Resp_WifiDeinit resp_wifi_deinit = 535; + Rpc_Resp_WifiStart resp_wifi_start = 536; + Rpc_Resp_WifiStop resp_wifi_stop = 537; + Rpc_Resp_WifiConnect resp_wifi_connect = 538; + Rpc_Resp_WifiDisconnect resp_wifi_disconnect = 539; + Rpc_Resp_WifiSetConfig resp_wifi_set_config = 540; + Rpc_Resp_WifiGetConfig resp_wifi_get_config = 541; + + Rpc_Resp_WifiScanStart resp_wifi_scan_start = 542; + Rpc_Resp_WifiScanStop resp_wifi_scan_stop = 543; + Rpc_Resp_WifiScanGetApNum resp_wifi_scan_get_ap_num = 544; + Rpc_Resp_WifiScanGetApRecords resp_wifi_scan_get_ap_records = 545; + Rpc_Resp_WifiClearApList resp_wifi_clear_ap_list = 546; + + Rpc_Resp_WifiRestore resp_wifi_restore = 547; + Rpc_Resp_WifiClearFastConnect resp_wifi_clear_fast_connect = 548; + Rpc_Resp_WifiDeauthSta resp_wifi_deauth_sta = 549; + Rpc_Resp_WifiStaGetApInfo resp_wifi_sta_get_ap_info = 550; + + Rpc_Resp_WifiSetProtocol resp_wifi_set_protocol = 553; + Rpc_Resp_WifiGetProtocol resp_wifi_get_protocol = 554; + Rpc_Resp_WifiSetBandwidth resp_wifi_set_bandwidth = 555; + Rpc_Resp_WifiGetBandwidth resp_wifi_get_bandwidth = 556; + Rpc_Resp_WifiSetChannel resp_wifi_set_channel = 557; + Rpc_Resp_WifiGetChannel resp_wifi_get_channel = 558; + Rpc_Resp_WifiSetCountry resp_wifi_set_country = 559; + Rpc_Resp_WifiGetCountry resp_wifi_get_country = 560; + + Rpc_Resp_WifiApGetStaList resp_wifi_ap_get_sta_list = 567; + Rpc_Resp_WifiApGetStaAid resp_wifi_ap_get_sta_aid = 568; + Rpc_Resp_WifiSetStorage resp_wifi_set_storage = 569; + + Rpc_Resp_WifiSetInactiveTime resp_wifi_set_inactive_time = 581; + Rpc_Resp_WifiGetInactiveTime resp_wifi_get_inactive_time = 582; + + Rpc_Resp_WifiSetCountryCode resp_wifi_set_country_code = 590; + Rpc_Resp_WifiGetCountryCode resp_wifi_get_country_code = 591; + Rpc_Resp_WifiDisablePmfConfig resp_wifi_disable_pmf_config = 593; + Rpc_Resp_WifiStaGetAid resp_wifi_sta_get_aid = 594; + Rpc_Resp_WifiStaGetNegotiatedPhymode resp_wifi_sta_get_negotiated_phymode = 595; + + Rpc_Resp_WifiStaGetRssi resp_wifi_sta_get_rssi = 597; + + Rpc_Resp_WifiSetProtocols resp_wifi_set_protocols = 598; + Rpc_Resp_WifiGetProtocols resp_wifi_get_protocols = 599; + Rpc_Resp_WifiSetBandwidths resp_wifi_set_bandwidths = 600; + Rpc_Resp_WifiGetBandwidths resp_wifi_get_bandwidths = 601; + + Rpc_Resp_WifiSetBand resp_wifi_set_band = 602; + Rpc_Resp_WifiGetBand resp_wifi_get_band = 603; + Rpc_Resp_WifiSetBandMode resp_wifi_set_bandmode = 604; + Rpc_Resp_WifiGetBandMode resp_wifi_get_bandmode = 605; + + Rpc_Resp_GetCoprocessorFwVersion resp_get_coprocessor_fwversion = 606; + + Rpc_Resp_WifiScanGetApRecord resp_wifi_scan_get_ap_record = 607; + + Rpc_Resp_SetDhcpDnsStatus resp_set_dhcp_dns = 608; + Rpc_Resp_GetDhcpDnsStatus resp_get_dhcp_dns = 609; + + Rpc_Resp_WifiStaTwtConfig resp_wifi_sta_twt_config = 610; + Rpc_Resp_WifiStaItwtSetup resp_wifi_sta_itwt_setup = 611; + Rpc_Resp_WifiStaItwtTeardown resp_wifi_sta_itwt_teardown = 612; + Rpc_Resp_WifiStaItwtSuspend resp_wifi_sta_itwt_suspend = 613; + Rpc_Resp_WifiStaItwtGetFlowIdStatus resp_wifi_sta_itwt_get_flow_id_status = 614; + Rpc_Resp_WifiStaItwtSendProbeReq resp_wifi_sta_itwt_send_probe_req = 615; + Rpc_Resp_WifiStaItwtSetTargetWakeTimeOffset resp_wifi_sta_itwt_set_target_wake_time_offset = 616; + + Rpc_Resp_WifiStaEnterpriseEnable resp_wifi_sta_enterprise_enable = 617; + Rpc_Resp_WifiStaEnterpriseDisable resp_wifi_sta_enterprise_disable = 618; + Rpc_Resp_EapSetIdentity resp_eap_set_identity = 619; + Rpc_Resp_EapClearIdentity resp_eap_clear_identity = 620; + Rpc_Resp_EapSetUsername resp_eap_set_username = 621; + Rpc_Resp_EapClearUsername resp_eap_clear_username = 622; + Rpc_Resp_EapSetPassword resp_eap_set_password = 623; + Rpc_Resp_EapClearPassword resp_eap_clear_password = 624; + Rpc_Resp_EapSetNewPassword resp_eap_set_new_password = 625; + Rpc_Resp_EapClearNewPassword resp_eap_clear_new_password = 626; + Rpc_Resp_EapSetCaCert resp_eap_set_ca_cert = 627; + Rpc_Resp_EapClearCaCert resp_eap_clear_ca_cert = 628; + Rpc_Resp_EapSetCertificateAndKey resp_eap_set_certificate_and_key = 629; + Rpc_Resp_EapClearCertificateAndKey resp_eap_clear_certificate_and_key = 630; + Rpc_Resp_EapGetDisableTimeCheck resp_eap_get_disable_time_check = 631; + Rpc_Resp_EapSetTtlsPhase2Method resp_eap_set_ttls_phase2_method = 632; + Rpc_Resp_EapSetSuiteb192bitCertification resp_eap_set_suiteb_certification = 633; + Rpc_Resp_EapSetPacFile resp_eap_set_pac_file = 634; + Rpc_Resp_EapSetFastParams resp_eap_set_fast_params = 635; + Rpc_Resp_EapUseDefaultCertBundle resp_eap_use_default_cert_bundle = 636; + Rpc_Resp_WifiSetOkcSupport resp_wifi_set_okc_support = 637; + Rpc_Resp_EapSetDomainName resp_eap_set_domain_name = 638; + Rpc_Resp_EapSetDisableTimeCheck resp_eap_set_disable_time_check = 639; + Rpc_Resp_EapSetEapMethods resp_eap_set_eap_methods = 640; + + Rpc_Resp_IfaceMacAddrSetGet resp_iface_mac_addr_set_get = 641; + Rpc_Resp_IfaceMacAddrLenGet resp_iface_mac_addr_len_get = 642; + + Rpc_Resp_FeatureControl resp_feature_control = 643; + + Rpc_Resp_CustomRpc resp_custom_rpc = 644; + + Rpc_Resp_GpioConfig resp_gpio_config = 645; + Rpc_Resp_GpioResetPin resp_gpio_reset = 646; + Rpc_Resp_GpioSetLevel resp_gpio_set_level = 647; + Rpc_Resp_GpioGetLevel resp_gpio_get_level = 648; + Rpc_Resp_GpioSetDirection resp_gpio_set_direction = 649; + Rpc_Resp_GpioInputEnable resp_gpio_input_enable = 650; + Rpc_Resp_GpioSetPullMode resp_gpio_set_pull_mode = 651; + + Rpc_Resp_ExtCoex resp_ext_coex = 652; + + /** Notifications **/ + Rpc_Event_ESPInit event_esp_init = 769; + Rpc_Event_Heartbeat event_heartbeat = 770; + Rpc_Event_AP_StaConnected event_ap_sta_connected = 771; + Rpc_Event_AP_StaDisconnected event_ap_sta_disconnected = 772; + Rpc_Event_WifiEventNoArgs event_wifi_event_no_args = 773; + Rpc_Event_StaScanDone event_sta_scan_done = 774; + Rpc_Event_StaConnected event_sta_connected = 775; + Rpc_Event_StaDisconnected event_sta_disconnected = 776; + Rpc_Event_DhcpDnsStatus event_dhcp_dns = 777; + Rpc_Event_StaItwtSetup event_sta_itwt_setup = 778; + Rpc_Event_StaItwtTeardown event_sta_itwt_teardown = 779; + Rpc_Event_StaItwtSuspend event_sta_itwt_suspend = 780; + Rpc_Event_StaItwtProbe event_sta_itwt_probe = 781; + Rpc_Event_SuppDppUriReady event_supp_dpp_uri_ready = 782; + Rpc_Event_SuppDppCfgRecvd event_supp_dpp_cfg_recvd = 783; + Rpc_Event_SuppDppFail event_supp_dpp_fail = 784; + Rpc_Event_WifiDppUriReady event_wifi_dpp_uri_ready = 785; + Rpc_Event_WifiDppCfgRecvd event_wifi_dpp_cfg_recvd = 786; + Rpc_Event_WifiDppFail event_wifi_dpp_fail = 787; + + Rpc_Event_CustomRpc event_custom_rpc = 788; + Rpc_Event_MemMonitor event_mem_monitor = 789; + } +} diff --git a/firmware/components/esp_hosted/common/protobuf-c/.commit_docs.sh b/firmware/components/esp_hosted/common/protobuf-c/.commit_docs.sh new file mode 100644 index 0000000..048a81b --- /dev/null +++ b/firmware/components/esp_hosted/common/protobuf-c/.commit_docs.sh @@ -0,0 +1,75 @@ +#!/bin/bash -e + +# from git-sh-setup.sh +require_clean_work_tree () { + git rev-parse --verify HEAD >/dev/null || exit 1 + git update-index -q --ignore-submodules --refresh + err=0 + + if ! git diff-files --quiet --ignore-submodules + then + echo >&2 "Cannot $0: You have unstaged changes." + err=1 + fi + + if ! git diff-index --cached --quiet --ignore-submodules HEAD -- + then + if [ $err = 0 ] + then + echo >&2 "Cannot $0: Your index contains uncommitted changes." + else + echo >&2 "Additionally, your index contains uncommitted changes." + fi + err=1 + fi + + if [ $err = 1 ] + then + test -n "$2" && echo >&2 "$2" + exit 1 + fi +} + +require_clean_work_tree + +if ! which doxygen >/dev/null; then + echo "Error: doxygen is required" + exit 1 +fi + +DOXYGEN_VERSION="$(doxygen --version)" + +DOC_BRANCH="gh-pages" +ORIG_BRANCH="$(git rev-parse --abbrev-ref HEAD)" +ORIG_COMMIT="$(git describe --match=NeVeRmAtCh --always --abbrev=40 --dirty)" + +TOP="$(pwd)" +export GIT_DIR="$TOP/.git" + +TMPDIR="$(mktemp --tmpdir=$TOP -d)" +HTMLDIR="$TMPDIR/_build/html" +INDEX_FILE="$GIT_DIR/index.${DOC_BRANCH}" + +rm -f "$INDEX_FILE" + +trap "{ cd $TOP; git checkout --force ${ORIG_BRANCH}; rm -f $INDEX_FILE; rm -rf $TMPDIR; }" EXIT + +cd "$TMPDIR" +git reset --hard HEAD + +./autogen.sh +mkdir _build +cd _build +../configure +make html + +if ! git checkout "${DOC_BRANCH}"; then + git checkout --orphan "${DOC_BRANCH}" +fi + +touch "$HTMLDIR/.nojekyll" + +GIT_INDEX_FILE="$INDEX_FILE" GIT_WORK_TREE="$HTMLDIR" \ + git add --no-ignore-removal . +GIT_INDEX_FILE="$INDEX_FILE" GIT_WORK_TREE="$HTMLDIR" \ + git commit -m "Rebuild html documentation from commit ${ORIG_COMMIT} using Doxygen ${DOXYGEN_VERSION}" diff --git a/firmware/components/esp_hosted/common/protobuf-c/.gitignore b/firmware/components/esp_hosted/common/protobuf-c/.gitignore new file mode 100644 index 0000000..9733625 --- /dev/null +++ b/firmware/components/esp_hosted/common/protobuf-c/.gitignore @@ -0,0 +1,43 @@ +*~ +.*swp +*.la +*.gcda +*.gcno +*.lo +*.log +*.o +*.tar.gz +*.trs +.deps/ +.dirstamp +.libs/ +/Doxyfile +/Makefile +/Makefile.in +/aclocal.m4 +/autom4te.cache +/build-aux +/config.* +/configure +/doxygen-doc +/html +/libtool +/protobuf-c-*-coverage.info +/protobuf-c-*-coverage/ +/stamp-h1 +/stamp-html +/test-suite.log +TAGS +protobuf-c/libprotobuf-c.pc +protoc-c/protoc-c +protoc-c/protoc-gen-c +t/generated-code/test-generated-code +t/generated-code2/cxx-generate-packed-data +t/generated-code2/test-full-cxx-output.inc +t/generated-code2/test-generated-code2 +t/generated-code3/test-generated-code3 +t/version/version +*.pb-c.c +*.pb-c.h +*.pb.cc +*.pb.h diff --git a/firmware/components/esp_hosted/common/protobuf-c/CONTRIBUTING.md b/firmware/components/esp_hosted/common/protobuf-c/CONTRIBUTING.md new file mode 100644 index 0000000..ceaba8f --- /dev/null +++ b/firmware/components/esp_hosted/common/protobuf-c/CONTRIBUTING.md @@ -0,0 +1,5 @@ +## Contributing + +The most recently released `protobuf-c` version is kept on the `master` branch, while the `next` branch is used for commits targeted at the next release. Please base patches and pull requests against the `next` branch. __Do not open pull requests against master!__ + +Copyright to all contributions are retained by the original author, but must be licensed under the terms of the [BSD-2-Clause](http://opensource.org/licenses/BSD-2-Clause) license. diff --git a/firmware/components/esp_hosted/common/protobuf-c/ChangeLog b/firmware/components/esp_hosted/common/protobuf-c/ChangeLog new file mode 100644 index 0000000..91164dd --- /dev/null +++ b/firmware/components/esp_hosted/common/protobuf-c/ChangeLog @@ -0,0 +1,564 @@ +protobuf-c (1.4.1) + + [ Robert Edmonds ] + * Release 1.4.1 + + [ Todd C. Miller ] + * Only shift unsigned values to avoid implementation-specific behavior + (#506, #508). + * Fix regression with zero-length messages introduced in protobuf-c PR 500. + * Fix a clang analyzer 14 warning about a possible NULL deref (#512, #514). + + [ steed717 ] + * Fix unsigned integer overflow (#499, #513). + +protobuf-c (1.4.0) + + [ Robert Edmonds ] + * Release 1.4.0. + + [ Ilya Lipnitsky ] + * c_message.cc: Resolve name conflict between certain enums and oneofs + (#427). + * protobuf-c.h: Fix Windows DLL export issue with the + protobuf_c_empty_string symbol (#428). + * Standardize pkg-config for use by autotools and cmake, fix cmake tests + (#425). + * protobuf-c.c: Cast %lu args to unsigned long int (#429). + * protoc-c: Remove leading underscores from structs (#430). + * protoc-c: Fix shared lib build on windows, migrate from Travis CI to + GitHub Actions (#459). + * protobuf-c: Don't use ProtobufCWireType internally (#463). + * protoc-c: Add custom options support (#466). + * protobuf-c.c: Fix packed repeated bool parsing (#467). + + [ Markus Engel ] + * Pack nested messages inline (#431). + + [ Daniel Axtens ] + * Travis CI: Test on other platforms (#438). + + [ Adam Cozzette ] + * Update the generator to fully qualify std::string (#443). + + [ Piotr Pietraszkiewicz ] + * Install MSVC debug symbols alongside the protobuf-c.lib file (#456). + + [ ihsinme ] + * Fix invalid unsigned arithmetic (#455). + + [ Wolfram Rösler ] + * Avoid "unused function parameter" compiler warning (#453). + +protobuf-c (1.3.3) + + [ Robert Edmonds ] + * Release 1.3.3. + + * Fix build failure on protobuf 2.x (#398). + + [ msshapira ] + * CMake: Fix support for MSVC static build (#350). + + [ Adam Cozzette ] + * Fix some test assertions in test-generated-code2.c (#392). + + [ Ilya Lipnitskiy ] + * protobuf-c.c: Make zigzag encoding more compact (#400). + + [ Markus Engel ] + * CMake: Fix endianness check. + +protobuf-c (1.3.2) + + [ Robert Edmonds ] + * Release 1.3.2. + + * Use protobuf 3.7.1 in the Travis-CI environment (#368). + + * Fix test suite build failure on newer versions of protobuf (#369). + + [ Ilya Lipnitskiy ] + * Fix proto3 repeated scalar field default packing behavior (#330, #377). + + [ Adam Cozzette ] + * Fix out-of-bounds read in scan_length_prefixed_data() (#375, #376). + + [ Jurriaan Bremer ] + * Fix -Wdeclaration-after-statement warning in parse_oneof_member() (#360). + + [ Hayri Ugur Koltuk ] + * Fix SIGSEGV in protobuf_c_message_check() on messages with unpopulated + oneof members (#358). + + [ Italo Guerrieri ] + * Do not allow tag values of 0 in protobuf messages, as these are not + allowed by proto2 or proto3 (#299). + +protobuf-c (1.3.1) + + [ Robert Edmonds ] + * Release 1.3.1. + + * Restore protobuf-2.x compatibility (#284, #285). + + * Use xenial and protobuf 3.6.1 in the Travis-CI environment (#332). + + * Convert uses of protobuf's scoped_ptr.h to C++11 std::unique_ptr, needed + to compile against protobuf 3.6.1 (#320, #333). + + * Use AX_CXX_COMPILE_STDCXX macro to enable C++11 support in old compilers + (#312, #317, #327, #334). + + [ Fredrik Gustafsson ] + * Add std:: to some types (#294, #305, #309). + + [ Sam Collinson ] + * Check the return value of int_range_lookup before using as an array index; + it can return -1 (#315). + + [ Matthias Dittrich ] + * Fix compilation on mingw by using explicit protoc --plugin=NAME=PATH syntax + in Makefile.am (#289, #290). + +protobuf-c (1.3.0) + + [ Robert Edmonds ] + * Release 1.3.0. + + * Add test case for the issue in #220 (#254). + + * Fix issue #251, "Bad enums with multiple oneofs" (#256). + + * Add warning flags to my_CFLAGS (#257). + + * Fix namespace errors when compiled with latest protobuf (#280). + + * Bump minimum required header version for proto3 syntax (#282). + + [ Paolo Borelli ] + * Turn the compiler into a protoc plugin (#206). This allows the protobuf-c + compiler to be invoked as "protoc --c_out=...". For backwards + compatibility, we still ship a protoc-c command, but it's a symlink to the + protoc-gen-c binary. + + * proto3 support (#228). + + * Remove leftover FIXME comment (#258). + + * Fix proto3 "is zeroish" evaluation (#264). + + * Small cleanup in oneof handling (#265). + + * Rework is_zeroish one more time (#267). + + * proto3: make strings default to "" instead of NULL (#274). + + [ Tomek Wasilczyk ] + * Fix -Wsign-compare warnings (#213). + + * Fix ISO C90 -Wdeclaration-after-statement warnings (#214). + + * Fix bigendian -Wunused-label warning (#215). + + [ Ilya Lipnitsky ] + * protoc-c/c_message.cc: Force int size on oneof enums (#221). Fixes wrong + enum generation and handling for onceof cases (#220). + + [ Adnan ] + * Fix cmake build if built as part of an external project (#231). + + [ Gregory Detal ] + * Remove .pb.{cc,h} in distdir instead of top_distdir in order to prevent + removing files from other projects when protobuf-c is included as an + autotools subproject (#232). + + [ Ben Farnham ] + * Relax autoconf constraint from v2.64 to v2.63 so that it works on older + Linux distros (#233). + + [ Thomas Köckerbauer ] + * rm argument fix for Solaris (#234). + + * Add 'const' qualifier to 'init_value' variable in generated files (#236). + + [ Richard Kettlewell ] + * Document and extend the effect of passing NULL to ..._free_unpacked + functions (#255). + + [ Alex Milich ] + * CMake: Workaround for static builds that use MSVC (#243). + + [ Josh Junon ] + * CMake: Allow protobuf-c to be included via include_subdirectory (#245). + + [ Alexei Kasatkin ] + * CMake: Windows fixes (#266). + +protobuf-c (1.2.1) + + [ Robert Edmonds ] + * Release 1.2.1. + + [ Paolo Borelli ] + * protoc-c: Generate code that uses the universal zero initializer {0} when + initializing a oneof union (#187, #205). + +protobuf-c (1.2.0) + + [ Robert Edmonds ] + * Release 1.2.0. + + [ Ilya Lipnitsky ] + * Implement the "optimize_for = CODE_SIZE" option (#183). + + * Eliminate undefined behavior in zigzag functions (#198). + + * Pack negative enum values correctly (#199). + + [ Peter Leschev ] + * Fix protobuf_c_message_get_packed_size() on 16-bit systems (#196, #197). + + [ Diego Elio Pettenò ] + * Update link to Autotools Mythbuster to canonical site (#201). + + [ Zex Li ] + * Skip test suite when cross-compiling (#184). + +protobuf-c (1.1.1) + + [ Robert Edmonds ] + * Release 1.1.1. + + * Use protobuf 2.6.1 in the Travis-CI environment. + + [ Ilya Lipnitskiy ] + * Munge C block comment delimiters in protobuf comments, preventing syntax + errors in generated header files (Issue #180, #185). + + * Add static qualifier to ProtobufCEnumValue and ProtobufCEnumValueIndex + variables in generated output. + + [ Oleg Efimov ] + * Fix -Wpointer-sign compiler diagnostics in the test suite. + + * Check for NULL pointers in protobuf_c_message_free_unpacked() + (Issue #177). + + * Exclude protoc-c and downloaded protobuf sources from Coveralls report. + + [ Andrey Myznikov ] + * Fix incorrect 'short_name' field values in ProtobufCServiceDescriptor + variables in generated output. + +protobuf-c (1.1.0) + + [ Robert Edmonds ] + * Release 1.1.0. + + [ Ilya Lipnitskiy ] + * Fix a bug when merging optional byte fields. + + * Documentation updates. + + * Implement oneof support (Issue #174). Protobuf 2.6.0 or newer is now + required to build protobuf-c. + + * Print leading comments for enum, message, and field definitions into + generated header files (Issue #175). + +protobuf-c (1.0.2) + + [ Robert Edmonds ] + * Release 1.0.2. + + [ Ilya Lipnitskiy ] + * Fix a build failure with Protobuf 2.6.0 related to aliased enum constants + (Issue #163). + + * Protobuf 2.5.0 or newer is now required to build protobuf-c (Issue #166). + This is due to the fix for #163. + + [ Alexei Kasatkin ] + * Eliminate void pointer arithmetic (Issue #167). + + * Always define PROTOBUF_C__DEPRECATED, even on compilers that are not GCC + (Issue #167). + + * Work around the lack of the 'inline' keyword in Microsoft compilers + (Issue #167). + + * Add a CMakeLists.txt file as a fallback build system for Windows + (Issue #168). + + [ Natanael Copa ] + * Fix a build failure in the test suite that occurred with a parallel make + running on a system with a large number of CPUs (Issue #156, #169). + +protobuf-c (1.0.1) + + [ Robert Edmonds ] + * Explicitly set the .data field of ProtobufCBinaryData's to NULL when + unpacking a zero length byte string (Issue #157). + +protobuf-c (1.0.0) + + [ Andrei Nigmatulin ] + * Append "u", "ull", and "ll" integer literal suffixes for uint32, uint64, + and int64 default values in generated code, in order to avoid "integer + constant is so large that it is unsigned" compiler warnings. + (Issue #136.) + + * Revert the problematic hash-based required field detection. + (Related to Issue #60, #79, #137.) + + * Replace the 'packed' member of ProtobufCFieldDescriptor with a 'flags' + word. Define flags for packed and deprecated fields. (Issue #138.) + + [ Dave Benson ] + * Treat a "length-prefixed" wire-type message for a repeated field as + packed-repeated whenever it makes sense (for all types other than + messages, strings, and bytes). + + * Switch to New BSD license. + + * Add protobuf_c_message_check(). + + * Compile error in packing 64-bit versions on some platforms + (srobbins99: Issue #68 Comment 1). + + * Fix for memory error if the required-field check fails. See Issue #63 + for demo (w/ nice test case by dror.harari). + + * Add PROTOBUF_C_{MAJOR,MINOR} for compile-time checks and + protobuf_c_{major,minor} for checks about the running library + (Issue #53). + + * Use a small constant-size hash-table instead of alloca() for detecting + required fields, and it also prevents us from using too much stack, etc. + (Related to Issue #60, #79). + + * Add a macro to ensure enums are the size of ints (Issue #69). + + [ Ilya Lipnitskiy ] + * Travis-CI integration. + + * Add source .proto filename to generated files. + + * Add protobuf-c version to protoc-c --version output (Issue #52). + + * For embedded submessage fields, merge multiple instances of the same + field, per the protobuf documentation (Issue #91). + + * Don't print unpack errors by default. + + * Optionally allow running the test suite under valgrind with ./configure + --enable-valgrind-tests. (Based on valgrind-tests.m4 from gnulib.) + + [ Kevin Lyda ] + * Autoconf portability fixes. + + * Add doxygen detection and make targets to the build system. + + * Doxygen documentation for the libprotobuf-c public API (Issue #132). + + [ Nick Galbreath ] + * Prevent possible overflow on 64-bit systems (Issue #106). + + [ Robert Edmonds ] + * Remove CMake (Issue #87). + + * Modernize the build system. + - Don't generate any diagnostics when building the build system with + modern autotools (Issue #89). + + - Use the PKG_CHECK_MODULES macro to locate protobuf. + + - Use the AC_C_BIGENDIAN macro to detect endianness, rather than custom + code. + + - Use the automake silent-rules option so the build output is actually + readable. + + - Generate our own pkg-config .pc files. + + * Reorganize the source tree. This affects the public protobuf-c header + path, which is now . A compatibility symlink from + to has been installed so that existing + code will continue to compile. New code should at some point begin using + the new include path, i.e., "#include " rather + than "#include ". + + * The RPC code has been split out into a separate project, protobuf-c-rpc. + + * Fix a potential use of an unitialized value in protobuf_c_message_unpack() + and several memory leaks in protoc-c, discovered by a commercial static code + analysis tool. + + * Bump the libprotobuf-c SONAME. + + * Begin versioning the library's symbols. (Based on ld-version-script.m4 + from gnulib.) + + * Preserve case in enum value names generated by protoc-c (Issue #129). + Reported by Oleg Efimov. + + * Add library functions protobuf_c_version() and protobuf_c_version_string() + for retrieving the version of the compiled library, and header macros + PROTOBUF_C_VERSION and PROTOBUF_C_VERSION_STRING for retrieving the + version of the header file. This replaces the interfaces for retrieving + the protobuf-c version numbers in Issue #53. + + * Add a version guard that ensures that the output of protoc-c is only + compiled against a protobuf-c header file from the exact same protobuf-c + release. + + * Add a --enable-code-coverage option to configure, which enables a + "make check-code-coverage" build target. This generates a code coverage + report and requires the lcov tool to be installed. + + * Remove the old DocBook documentation in doc/c-code-generator.{html,xml}. + Relevant material has been updated and incorporated into the Doxygen + documentation in the protobuf-c header file. + + * Remove the protobuf_c_default_allocator and protobuf_c_system_allocator + global variables from the exported library interface. All exported library + functions that need to perform dynamic memory allocation receive a + user-provided ProtobufCAllocator* parameter. If this parameter is NULL, + the system's default memory allocator will be used. + + Client code that previously passed "&protobuf_c_system_allocator" to + protobuf-c library functions taking a ProtobufCAllocator* argument should + be updated to pass "NULL" instead. + + Client code that previously overrode protobuf_c_default_allocator with + custom allocation functions and passed NULL as the ProtobufCAllocator* + argument to protobuf-c library functions should be updated to instead + enclose the custom allocation functions in a ProtobufCAllocator struct and + pass this object to protobuf-c library functions taking a + ProtobufCAllocator* parameter. + + * Update copyright and license statements throughout. The original + protobuf code released by Google was relicensed from Apache-2.0 to + BSD-3-Clause. Dave Benson also converted his license from BSD-3-Clause + to BSD-2-Clause. + + [ Tomasz Wasilczyk ] + * Don't export protobuf_c_message_init_generic() as an external symbol. + + * Don't use C++ style comments in C code. + + * Fix -Wcast-align warnings when compiled with clang. + +protobuf-c (0.15) + - make protobuf_c_message_init() into a function (Issue #49, daveb) + - Fix for freeing memory after unpacking bytes w/o a default-value. + (Andrei Nigmatulin) + - minor windows portability issues (use ProtobufC_FD) (Pop Stelian) + - --with-endianness={little,big} (Pop Stelian) + - bug setting up values of has_idle in public dispatch, + make protobuf_c_dispatch_run() use only public members (daveb) + - provide cmake support and some Windows compatibility (Nikita Manovich) + +protobuf-c (0.14) + - build fix (missing dependency in test directory) + - add generation / installation of pkg-config files. (Bobby Powers) + - support for packed repeated fields (Dave Benson) + - bug in protobuf_c_dispatch_close_fd(), which usually only + showed up in later function calls. + - support for deprecated fields -- enable a GCC warning + if a field has the "deprecated" option enabled. (Andrei Nigmatulin) + - hackery to try to avoid touching inttypes.h on windows (Issue #41) + - fix for protobuf_c_message_unpack() to issue error if any + "required" field is missing in input stream. (Andrei Nigmatulin) + +protobuf-c (0.13) + - Fix for when the number of connections gets too great in RPC. + (Leszek Swirski) (issue #32) + - Add --disable-protoc to only build libprotobuf-c (daveb) + - Bug fixes for protobuf_c_enum_descriptor_get_value_by_name() + and protobuf_c_service_descriptor_get_method_by_name() + - if descriptor->message_init != NULL, use it from unpack() + as an optimization (daveb) + - implement protobuf_c_{client,server}_set_error_handler() + +protobuf-c (0.12) + - for field names which are reserved words, use the real name + given in the protobuf-c file, not the mangled name which + is the name of the member in the C structure. (Andrei Nigmatulin) + - add protobuf_c_message_init() function; add virtual function + that implements it efficiently. (Andrei Nigmatulin) + - bug fix for sfixed32, fixed32, float wire-types on + big-endian platforms (Robert Edmonds) + - compile with the latest protobuf (the header file wire_format_inl.h + is now wire_format.h) (Robert Edmonds) + +protobuf-c (0.11) + - allow CFLAGS=-DPRINT_UNPACK_ERRORS=0 to suppress + unpack warnings from being printed at compile time (Andrei Nigmatulin) + - give error if an unknown wire-type is encountered (Andrei Nigmatulin) + - fix technically possible overflows during unpack of very + large messages (Andrei Nigmatulin) + - [UNFINISHED] windows RPC work + - use automake's "foreign" mode from within configure.ac + and add version information to the library (Robert Edmonds) + - ProtobufCServiceDescriptor::method_indices_by_name: missing + const. (Issue 21) + - Update to support new UnknownFields API. (fix by dcreager) (Issue 20) + +protobuf-c (0.10) + - build issue on platforms which don't compute library dependencies + automatically. + - fix for certain types of corrupt messages (Landon Fuller) (issue 16) + +protobuf-c (0.9) + - build issue: needed $(EXEEXT) in dependency lists for cygwin + - bug fix: protobuf_c_service_get_method_by_name() was not correct b/c + the service's methods were not sorted by name (the header file + used to incorrectly state that they were). + Now we correctly implement protobuf_c_service_get_method_by_name() + (using a bsearch indexed by separate array). + - generated source incompatibility: we added a new + member to ProtobufCServiceDescriptor (method_indices_by_name). + You will have to run the latest protobuf + to generate those structures. + - rename rpc-client's "autoretry" mechanism to "autoreconnect". + - bug fixes using TCP clients with the RPC system. + - handle allocation failures more gracefully (Jason Lunz) (issue 15) + +protobuf-c (0.8) + - Destroy function typedef for Services was omitting a "*" + - service_machgen_invoke was broken. (issue 12) + - add RPC system (BETA) + - don't segfault when packing NULL strings and messages. (issue 13) + +protobuf-c (0.7) + - memory leak: unknown fields were not being freed by free_unpacked() + - lowercase field names consistently when composing + default_value names. (issue 11) + - remove spurious semicolon (issue 10) + +protobuf-c (0.6) + - Warning suppression for -Wcast-qual and -Wshadow. + - Support for default values of all types allowed by core protobuf. + - Generate message__init functions, for when the static initializer + isn't convenient. + - add some reserved fields at the end of the various descriptors + +protobuf-c (0.5) + - License now included in major files. + - Use little-endian optimizations; fix a bug therein. + - Include 'make deb' target. + +protobuf-c (0.4) + - Update to work with protobuf 2.0.1. + +protobuf-c (0.2) +protobuf-c (0.3) + - Minor pedantic concerns about generated code. + +protobuf-c (0.1) + - Lots of test code (and bug fixes). + +protobuf-c (0.0) + - Initial release. diff --git a/firmware/components/esp_hosted/common/protobuf-c/Doxyfile.in b/firmware/components/esp_hosted/common/protobuf-c/Doxyfile.in new file mode 100644 index 0000000..7d556ec --- /dev/null +++ b/firmware/components/esp_hosted/common/protobuf-c/Doxyfile.in @@ -0,0 +1,2312 @@ +# Doxyfile 1.8.7 + +# This file describes the settings to be used by the documentation system +# doxygen (www.doxygen.org) for a project. +# +# All text after a double hash (##) is considered a comment and is placed in +# front of the TAG it is preceding. +# +# All text after a single hash (#) is considered a comment and will be ignored. +# The format is: +# TAG = value [value, ...] +# For lists, items can also be appended using: +# TAG += value [value, ...] +# Values that contain spaces should be placed between quotes (\" \"). + +#--------------------------------------------------------------------------- +# Project related configuration options +#--------------------------------------------------------------------------- + +# This tag specifies the encoding used for all characters in the config file +# that follow. The default is UTF-8 which is also the encoding used for all text +# before the first occurrence of this tag. Doxygen uses libiconv (or the iconv +# built into libc) for the transcoding. See http://www.gnu.org/software/libiconv +# for the list of possible encodings. +# The default value is: UTF-8. + +DOXYFILE_ENCODING = UTF-8 + +# The PROJECT_NAME tag is a single word (or a sequence of words surrounded by +# double-quotes, unless you are using Doxywizard) that should identify the +# project for which the documentation is generated. This name is used in the +# title of most generated pages and in a few other places. +# The default value is: My Project. + +PROJECT_NAME = "@PACKAGE@" + +# The PROJECT_NUMBER tag can be used to enter a project or revision number. This +# could be handy for archiving the generated documentation or if some version +# control system is used. + +PROJECT_NUMBER = @PACKAGE_VERSION@ + +# Using the PROJECT_BRIEF tag one can provide an optional one line description +# for a project that appears at the top of each page and should give viewer a +# quick idea about the purpose of the project. Keep the description short. + +PROJECT_BRIEF = "@PACKAGE_DESCRIPTION@" + +# With the PROJECT_LOGO tag one can specify an logo or icon that is included in +# the documentation. The maximum height of the logo should not exceed 55 pixels +# and the maximum width should not exceed 200 pixels. Doxygen will copy the logo +# to the output directory. + +PROJECT_LOGO = + +# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) path +# into which the generated documentation will be written. If a relative path is +# entered, it will be relative to the location where doxygen was started. If +# left blank the current directory will be used. + +OUTPUT_DIRECTORY = + +# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create 4096 sub- +# directories (in 2 levels) under the output directory of each output format and +# will distribute the generated files over these directories. Enabling this +# option can be useful when feeding doxygen a huge amount of source files, where +# putting all generated files in the same directory would otherwise causes +# performance problems for the file system. +# The default value is: NO. + +CREATE_SUBDIRS = NO + +# If the ALLOW_UNICODE_NAMES tag is set to YES, doxygen will allow non-ASCII +# characters to appear in the names of generated files. If set to NO, non-ASCII +# characters will be escaped, for example _xE3_x81_x84 will be used for Unicode +# U+3044. +# The default value is: NO. + +ALLOW_UNICODE_NAMES = NO + +# The OUTPUT_LANGUAGE tag is used to specify the language in which all +# documentation generated by doxygen is written. Doxygen will use this +# information to generate all constant output in the proper language. +# Possible values are: Afrikaans, Arabic, Armenian, Brazilian, Catalan, Chinese, +# Chinese-Traditional, Croatian, Czech, Danish, Dutch, English (United States), +# Esperanto, Farsi (Persian), Finnish, French, German, Greek, Hungarian, +# Indonesian, Italian, Japanese, Japanese-en (Japanese with English messages), +# Korean, Korean-en (Korean with English messages), Latvian, Lithuanian, +# Macedonian, Norwegian, Persian (Farsi), Polish, Portuguese, Romanian, Russian, +# Serbian, Serbian-Cyrillic, Slovak, Slovene, Spanish, Swedish, Turkish, +# Ukrainian and Vietnamese. +# The default value is: English. + +OUTPUT_LANGUAGE = English + +# If the BRIEF_MEMBER_DESC tag is set to YES doxygen will include brief member +# descriptions after the members that are listed in the file and class +# documentation (similar to Javadoc). Set to NO to disable this. +# The default value is: YES. + +BRIEF_MEMBER_DESC = YES + +# If the REPEAT_BRIEF tag is set to YES doxygen will prepend the brief +# description of a member or function before the detailed description +# +# Note: If both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the +# brief descriptions will be completely suppressed. +# The default value is: YES. + +REPEAT_BRIEF = YES + +# This tag implements a quasi-intelligent brief description abbreviator that is +# used to form the text in various listings. Each string in this list, if found +# as the leading text of the brief description, will be stripped from the text +# and the result, after processing the whole list, is used as the annotated +# text. Otherwise, the brief description is used as-is. If left blank, the +# following values are used ($name is automatically replaced with the name of +# the entity):The $name class, The $name widget, The $name file, is, provides, +# specifies, contains, represents, a, an and the. + +ABBREVIATE_BRIEF = + +# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then +# doxygen will generate a detailed section even if there is only a brief +# description. +# The default value is: NO. + +ALWAYS_DETAILED_SEC = YES + +# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all +# inherited members of a class in the documentation of that class as if those +# members were ordinary class members. Constructors, destructors and assignment +# operators of the base classes will not be shown. +# The default value is: NO. + +INLINE_INHERITED_MEMB = NO + +# If the FULL_PATH_NAMES tag is set to YES doxygen will prepend the full path +# before files name in the file list and in the header files. If set to NO the +# shortest path that makes the file name unique will be used +# The default value is: YES. + +FULL_PATH_NAMES = NO + +# The STRIP_FROM_PATH tag can be used to strip a user-defined part of the path. +# Stripping is only done if one of the specified strings matches the left-hand +# part of the path. The tag can be used to show relative paths in the file list. +# If left blank the directory from which doxygen is run is used as the path to +# strip. +# +# Note that you can specify absolute paths here, but also relative paths, which +# will be relative from the directory where doxygen is started. +# This tag requires that the tag FULL_PATH_NAMES is set to YES. + +STRIP_FROM_PATH = @top_srcdir@ + +# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of the +# path mentioned in the documentation of a class, which tells the reader which +# header file to include in order to use a class. If left blank only the name of +# the header file containing the class definition is used. Otherwise one should +# specify the list of include paths that are normally passed to the compiler +# using the -I flag. + +STRIP_FROM_INC_PATH = + +# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter (but +# less readable) file names. This can be useful is your file systems doesn't +# support long names like on DOS, Mac, or CD-ROM. +# The default value is: NO. + +SHORT_NAMES = NO + +# If the JAVADOC_AUTOBRIEF tag is set to YES then doxygen will interpret the +# first line (until the first dot) of a Javadoc-style comment as the brief +# description. If set to NO, the Javadoc-style will behave just like regular Qt- +# style comments (thus requiring an explicit @brief command for a brief +# description.) +# The default value is: NO. + +JAVADOC_AUTOBRIEF = YES + +# If the QT_AUTOBRIEF tag is set to YES then doxygen will interpret the first +# line (until the first dot) of a Qt-style comment as the brief description. If +# set to NO, the Qt-style will behave just like regular Qt-style comments (thus +# requiring an explicit \brief command for a brief description.) +# The default value is: NO. + +QT_AUTOBRIEF = NO + +# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make doxygen treat a +# multi-line C++ special comment block (i.e. a block of //! or /// comments) as +# a brief description. This used to be the default behavior. The new default is +# to treat a multi-line C++ comment block as a detailed description. Set this +# tag to YES if you prefer the old behavior instead. +# +# Note that setting this tag to YES also means that rational rose comments are +# not recognized any more. +# The default value is: NO. + +MULTILINE_CPP_IS_BRIEF = NO + +# If the INHERIT_DOCS tag is set to YES then an undocumented member inherits the +# documentation from any documented member that it re-implements. +# The default value is: YES. + +INHERIT_DOCS = YES + +# If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce a +# new page for each member. If set to NO, the documentation of a member will be +# part of the file/class/namespace that contains it. +# The default value is: NO. + +SEPARATE_MEMBER_PAGES = NO + +# The TAB_SIZE tag can be used to set the number of spaces in a tab. Doxygen +# uses this value to replace tabs by spaces in code fragments. +# Minimum value: 1, maximum value: 16, default value: 4. + +TAB_SIZE = 8 + +# This tag can be used to specify a number of aliases that act as commands in +# the documentation. An alias has the form: +# name=value +# For example adding +# "sideeffect=@par Side Effects:\n" +# will allow you to put the command \sideeffect (or @sideeffect) in the +# documentation, which will result in a user-defined paragraph with heading +# "Side Effects:". You can put \n's in the value part of an alias to insert +# newlines. + +ALIASES = + +# This tag can be used to specify a number of word-keyword mappings (TCL only). +# A mapping has the form "name=value". For example adding "class=itcl::class" +# will allow you to use the command class in the itcl::class meaning. + +TCL_SUBST = + +# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources +# only. Doxygen will then generate output that is more tailored for C. For +# instance, some of the names that are used will be different. The list of all +# members will be omitted, etc. +# The default value is: NO. + +OPTIMIZE_OUTPUT_FOR_C = YES + +# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java or +# Python sources only. Doxygen will then generate output that is more tailored +# for that language. For instance, namespaces will be presented as packages, +# qualified scopes will look different, etc. +# The default value is: NO. + +OPTIMIZE_OUTPUT_JAVA = NO + +# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran +# sources. Doxygen will then generate output that is tailored for Fortran. +# The default value is: NO. + +OPTIMIZE_FOR_FORTRAN = NO + +# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL +# sources. Doxygen will then generate output that is tailored for VHDL. +# The default value is: NO. + +OPTIMIZE_OUTPUT_VHDL = NO + +# Doxygen selects the parser to use depending on the extension of the files it +# parses. With this tag you can assign which parser to use for a given +# extension. Doxygen has a built-in mapping, but you can override or extend it +# using this tag. The format is ext=language, where ext is a file extension, and +# language is one of the parsers supported by doxygen: IDL, Java, Javascript, +# C#, C, C++, D, PHP, Objective-C, Python, Fortran (fixed format Fortran: +# FortranFixed, free formatted Fortran: FortranFree, unknown formatted Fortran: +# Fortran. In the later case the parser tries to guess whether the code is fixed +# or free formatted code, this is the default for Fortran type files), VHDL. For +# instance to make doxygen treat .inc files as Fortran files (default is PHP), +# and .f files as C (default is Fortran), use: inc=Fortran f=C. +# +# Note For files without extension you can use no_extension as a placeholder. +# +# Note that for custom extensions you also need to set FILE_PATTERNS otherwise +# the files are not read by doxygen. + +EXTENSION_MAPPING = + +# If the MARKDOWN_SUPPORT tag is enabled then doxygen pre-processes all comments +# according to the Markdown format, which allows for more readable +# documentation. See http://daringfireball.net/projects/markdown/ for details. +# The output of markdown processing is further processed by doxygen, so you can +# mix doxygen, HTML, and XML commands with Markdown formatting. Disable only in +# case of backward compatibilities issues. +# The default value is: YES. + +MARKDOWN_SUPPORT = YES + +# When enabled doxygen tries to link words that correspond to documented +# classes, or namespaces to their corresponding documentation. Such a link can +# be prevented in individual cases by by putting a % sign in front of the word +# or globally by setting AUTOLINK_SUPPORT to NO. +# The default value is: YES. + +AUTOLINK_SUPPORT = YES + +# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want +# to include (a tag file for) the STL sources as input, then you should set this +# tag to YES in order to let doxygen match functions declarations and +# definitions whose arguments contain STL classes (e.g. func(std::string); +# versus func(std::string) {}). This also make the inheritance and collaboration +# diagrams that involve STL classes more complete and accurate. +# The default value is: NO. + +BUILTIN_STL_SUPPORT = NO + +# If you use Microsoft's C++/CLI language, you should set this option to YES to +# enable parsing support. +# The default value is: NO. + +CPP_CLI_SUPPORT = NO + +# Set the SIP_SUPPORT tag to YES if your project consists of sip (see: +# http://www.riverbankcomputing.co.uk/software/sip/intro) sources only. Doxygen +# will parse them like normal C++ but will assume all classes use public instead +# of private inheritance when no explicit protection keyword is present. +# The default value is: NO. + +SIP_SUPPORT = NO + +# For Microsoft's IDL there are propget and propput attributes to indicate +# getter and setter methods for a property. Setting this option to YES will make +# doxygen to replace the get and set methods by a property in the documentation. +# This will only work if the methods are indeed getting or setting a simple +# type. If this is not the case, or you want to show the methods anyway, you +# should set this option to NO. +# The default value is: YES. + +IDL_PROPERTY_SUPPORT = YES + +# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC +# tag is set to YES, then doxygen will reuse the documentation of the first +# member in the group (if any) for the other members of the group. By default +# all members of a group must be documented explicitly. +# The default value is: NO. + +DISTRIBUTE_GROUP_DOC = NO + +# Set the SUBGROUPING tag to YES to allow class member groups of the same type +# (for instance a group of public functions) to be put as a subgroup of that +# type (e.g. under the Public Functions section). Set it to NO to prevent +# subgrouping. Alternatively, this can be done per class using the +# \nosubgrouping command. +# The default value is: YES. + +SUBGROUPING = YES + +# When the INLINE_GROUPED_CLASSES tag is set to YES, classes, structs and unions +# are shown inside the group in which they are included (e.g. using \ingroup) +# instead of on a separate page (for HTML and Man pages) or section (for LaTeX +# and RTF). +# +# Note that this feature does not work in combination with +# SEPARATE_MEMBER_PAGES. +# The default value is: NO. + +INLINE_GROUPED_CLASSES = NO + +# When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and unions +# with only public data fields or simple typedef fields will be shown inline in +# the documentation of the scope in which they are defined (i.e. file, +# namespace, or group documentation), provided this scope is documented. If set +# to NO, structs, classes, and unions are shown on a separate page (for HTML and +# Man pages) or section (for LaTeX and RTF). +# The default value is: NO. + +INLINE_SIMPLE_STRUCTS = NO + +# When TYPEDEF_HIDES_STRUCT tag is enabled, a typedef of a struct, union, or +# enum is documented as struct, union, or enum with the name of the typedef. So +# typedef struct TypeS {} TypeT, will appear in the documentation as a struct +# with name TypeT. When disabled the typedef will appear as a member of a file, +# namespace, or class. And the struct will be named TypeS. This can typically be +# useful for C code in case the coding convention dictates that all compound +# types are typedef'ed and only the typedef is referenced, never the tag name. +# The default value is: NO. + +TYPEDEF_HIDES_STRUCT = YES + +# The size of the symbol lookup cache can be set using LOOKUP_CACHE_SIZE. This +# cache is used to resolve symbols given their name and scope. Since this can be +# an expensive process and often the same symbol appears multiple times in the +# code, doxygen keeps a cache of pre-resolved symbols. If the cache is too small +# doxygen will become slower. If the cache is too large, memory is wasted. The +# cache size is given by this formula: 2^(16+LOOKUP_CACHE_SIZE). The valid range +# is 0..9, the default is 0, corresponding to a cache size of 2^16=65536 +# symbols. At the end of a run doxygen will report the cache usage and suggest +# the optimal cache size from a speed point of view. +# Minimum value: 0, maximum value: 9, default value: 0. + +LOOKUP_CACHE_SIZE = 0 + +#--------------------------------------------------------------------------- +# Build related configuration options +#--------------------------------------------------------------------------- + +# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in +# documentation are documented, even if no documentation was available. Private +# class members and static file members will be hidden unless the +# EXTRACT_PRIVATE respectively EXTRACT_STATIC tags are set to YES. +# Note: This will also disable the warnings about undocumented members that are +# normally produced when WARNINGS is set to YES. +# The default value is: NO. + +EXTRACT_ALL = NO + +# If the EXTRACT_PRIVATE tag is set to YES all private members of a class will +# be included in the documentation. +# The default value is: NO. + +EXTRACT_PRIVATE = NO + +# If the EXTRACT_PACKAGE tag is set to YES all members with package or internal +# scope will be included in the documentation. +# The default value is: NO. + +EXTRACT_PACKAGE = NO + +# If the EXTRACT_STATIC tag is set to YES all static members of a file will be +# included in the documentation. +# The default value is: NO. + +EXTRACT_STATIC = NO + +# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) defined +# locally in source files will be included in the documentation. If set to NO +# only classes defined in header files are included. Does not have any effect +# for Java sources. +# The default value is: YES. + +EXTRACT_LOCAL_CLASSES = YES + +# This flag is only useful for Objective-C code. When set to YES local methods, +# which are defined in the implementation section but not in the interface are +# included in the documentation. If set to NO only methods in the interface are +# included. +# The default value is: NO. + +EXTRACT_LOCAL_METHODS = NO + +# If this flag is set to YES, the members of anonymous namespaces will be +# extracted and appear in the documentation as a namespace called +# 'anonymous_namespace{file}', where file will be replaced with the base name of +# the file that contains the anonymous namespace. By default anonymous namespace +# are hidden. +# The default value is: NO. + +EXTRACT_ANON_NSPACES = NO + +# If the HIDE_UNDOC_MEMBERS tag is set to YES, doxygen will hide all +# undocumented members inside documented classes or files. If set to NO these +# members will be included in the various overviews, but no documentation +# section is generated. This option has no effect if EXTRACT_ALL is enabled. +# The default value is: NO. + +HIDE_UNDOC_MEMBERS = NO + +# If the HIDE_UNDOC_CLASSES tag is set to YES, doxygen will hide all +# undocumented classes that are normally visible in the class hierarchy. If set +# to NO these classes will be included in the various overviews. This option has +# no effect if EXTRACT_ALL is enabled. +# The default value is: NO. + +HIDE_UNDOC_CLASSES = NO + +# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, doxygen will hide all friend +# (class|struct|union) declarations. If set to NO these declarations will be +# included in the documentation. +# The default value is: NO. + +HIDE_FRIEND_COMPOUNDS = NO + +# If the HIDE_IN_BODY_DOCS tag is set to YES, doxygen will hide any +# documentation blocks found inside the body of a function. If set to NO these +# blocks will be appended to the function's detailed documentation block. +# The default value is: NO. + +HIDE_IN_BODY_DOCS = NO + +# The INTERNAL_DOCS tag determines if documentation that is typed after a +# \internal command is included. If the tag is set to NO then the documentation +# will be excluded. Set it to YES to include the internal documentation. +# The default value is: NO. + +INTERNAL_DOCS = NO + +# If the CASE_SENSE_NAMES tag is set to NO then doxygen will only generate file +# names in lower-case letters. If set to YES upper-case letters are also +# allowed. This is useful if you have classes or files whose names only differ +# in case and if your file system supports case sensitive file names. Windows +# and Mac users are advised to set this option to NO. +# The default value is: system dependent. + +CASE_SENSE_NAMES = YES + +# If the HIDE_SCOPE_NAMES tag is set to NO then doxygen will show members with +# their full class and namespace scopes in the documentation. If set to YES the +# scope will be hidden. +# The default value is: NO. + +HIDE_SCOPE_NAMES = NO + +# If the SHOW_INCLUDE_FILES tag is set to YES then doxygen will put a list of +# the files that are included by a file in the documentation of that file. +# The default value is: YES. + +SHOW_INCLUDE_FILES = NO + +# If the SHOW_GROUPED_MEMB_INC tag is set to YES then Doxygen will add for each +# grouped member an include statement to the documentation, telling the reader +# which file to include in order to use the member. +# The default value is: NO. + +SHOW_GROUPED_MEMB_INC = NO + +# If the FORCE_LOCAL_INCLUDES tag is set to YES then doxygen will list include +# files with double quotes in the documentation rather than with sharp brackets. +# The default value is: NO. + +FORCE_LOCAL_INCLUDES = NO + +# If the INLINE_INFO tag is set to YES then a tag [inline] is inserted in the +# documentation for inline members. +# The default value is: YES. + +INLINE_INFO = YES + +# If the SORT_MEMBER_DOCS tag is set to YES then doxygen will sort the +# (detailed) documentation of file and class members alphabetically by member +# name. If set to NO the members will appear in declaration order. +# The default value is: YES. + +SORT_MEMBER_DOCS = NO + +# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the brief +# descriptions of file, namespace and class members alphabetically by member +# name. If set to NO the members will appear in declaration order. Note that +# this will also influence the order of the classes in the class list. +# The default value is: NO. + +SORT_BRIEF_DOCS = NO + +# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen will sort the +# (brief and detailed) documentation of class members so that constructors and +# destructors are listed first. If set to NO the constructors will appear in the +# respective orders defined by SORT_BRIEF_DOCS and SORT_MEMBER_DOCS. +# Note: If SORT_BRIEF_DOCS is set to NO this option is ignored for sorting brief +# member documentation. +# Note: If SORT_MEMBER_DOCS is set to NO this option is ignored for sorting +# detailed member documentation. +# The default value is: NO. + +SORT_MEMBERS_CTORS_1ST = NO + +# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the hierarchy +# of group names into alphabetical order. If set to NO the group names will +# appear in their defined order. +# The default value is: NO. + +SORT_GROUP_NAMES = NO + +# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be sorted by +# fully-qualified names, including namespaces. If set to NO, the class list will +# be sorted only by class name, not including the namespace part. +# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES. +# Note: This option applies only to the class list, not to the alphabetical +# list. +# The default value is: NO. + +SORT_BY_SCOPE_NAME = NO + +# If the STRICT_PROTO_MATCHING option is enabled and doxygen fails to do proper +# type resolution of all parameters of a function it will reject a match between +# the prototype and the implementation of a member function even if there is +# only one candidate or it is obvious which candidate to choose by doing a +# simple string match. By disabling STRICT_PROTO_MATCHING doxygen will still +# accept a match between prototype and implementation in such cases. +# The default value is: NO. + +STRICT_PROTO_MATCHING = NO + +# The GENERATE_TODOLIST tag can be used to enable ( YES) or disable ( NO) the +# todo list. This list is created by putting \todo commands in the +# documentation. +# The default value is: YES. + +GENERATE_TODOLIST = NO + +# The GENERATE_TESTLIST tag can be used to enable ( YES) or disable ( NO) the +# test list. This list is created by putting \test commands in the +# documentation. +# The default value is: YES. + +GENERATE_TESTLIST = NO + +# The GENERATE_BUGLIST tag can be used to enable ( YES) or disable ( NO) the bug +# list. This list is created by putting \bug commands in the documentation. +# The default value is: YES. + +GENERATE_BUGLIST = NO + +# The GENERATE_DEPRECATEDLIST tag can be used to enable ( YES) or disable ( NO) +# the deprecated list. This list is created by putting \deprecated commands in +# the documentation. +# The default value is: YES. + +GENERATE_DEPRECATEDLIST= YES + +# The ENABLED_SECTIONS tag can be used to enable conditional documentation +# sections, marked by \if ... \endif and \cond +# ... \endcond blocks. + +ENABLED_SECTIONS = + +# The MAX_INITIALIZER_LINES tag determines the maximum number of lines that the +# initial value of a variable or macro / define can have for it to appear in the +# documentation. If the initializer consists of more lines than specified here +# it will be hidden. Use a value of 0 to hide initializers completely. The +# appearance of the value of individual variables and macros / defines can be +# controlled using \showinitializer or \hideinitializer command in the +# documentation regardless of this setting. +# Minimum value: 0, maximum value: 10000, default value: 30. + +MAX_INITIALIZER_LINES = 30 + +# Set the SHOW_USED_FILES tag to NO to disable the list of files generated at +# the bottom of the documentation of classes and structs. If set to YES the list +# will mention the files that were used to generate the documentation. +# The default value is: YES. + +SHOW_USED_FILES = NO + +# Set the SHOW_FILES tag to NO to disable the generation of the Files page. This +# will remove the Files entry from the Quick Index and from the Folder Tree View +# (if specified). +# The default value is: YES. + +SHOW_FILES = NO + +# Set the SHOW_NAMESPACES tag to NO to disable the generation of the Namespaces +# page. This will remove the Namespaces entry from the Quick Index and from the +# Folder Tree View (if specified). +# The default value is: YES. + +SHOW_NAMESPACES = NO + +# The FILE_VERSION_FILTER tag can be used to specify a program or script that +# doxygen should invoke to get the current version for each file (typically from +# the version control system). Doxygen will invoke the program by executing (via +# popen()) the command command input-file, where command is the value of the +# FILE_VERSION_FILTER tag, and input-file is the name of an input file provided +# by doxygen. Whatever the program writes to standard output is used as the file +# version. For an example see the documentation. + +FILE_VERSION_FILTER = + +# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed +# by doxygen. The layout file controls the global structure of the generated +# output files in an output format independent way. To create the layout file +# that represents doxygen's defaults, run doxygen with the -l option. You can +# optionally specify a file name after the option, if omitted DoxygenLayout.xml +# will be used as the name of the layout file. +# +# Note that if you run doxygen from a directory containing a file called +# DoxygenLayout.xml, doxygen will parse it automatically even if the LAYOUT_FILE +# tag is left empty. + +LAYOUT_FILE = @top_srcdir@/DoxygenLayout.xml + +# The CITE_BIB_FILES tag can be used to specify one or more bib files containing +# the reference definitions. This must be a list of .bib files. The .bib +# extension is automatically appended if omitted. This requires the bibtex tool +# to be installed. See also http://en.wikipedia.org/wiki/BibTeX for more info. +# For LaTeX the style of the bibliography can be controlled using +# LATEX_BIB_STYLE. To use this feature you need bibtex and perl available in the +# search path. Do not use file names with spaces, bibtex cannot handle them. See +# also \cite for info how to create references. + +CITE_BIB_FILES = + +#--------------------------------------------------------------------------- +# Configuration options related to warning and progress messages +#--------------------------------------------------------------------------- + +# The QUIET tag can be used to turn on/off the messages that are generated to +# standard output by doxygen. If QUIET is set to YES this implies that the +# messages are off. +# The default value is: NO. + +QUIET = YES + +# The WARNINGS tag can be used to turn on/off the warning messages that are +# generated to standard error ( stderr) by doxygen. If WARNINGS is set to YES +# this implies that the warnings are on. +# +# Tip: Turn warnings on while writing the documentation. +# The default value is: YES. + +WARNINGS = YES + +# If the WARN_IF_UNDOCUMENTED tag is set to YES, then doxygen will generate +# warnings for undocumented members. If EXTRACT_ALL is set to YES then this flag +# will automatically be disabled. +# The default value is: YES. + +WARN_IF_UNDOCUMENTED = YES + +# If the WARN_IF_DOC_ERROR tag is set to YES, doxygen will generate warnings for +# potential errors in the documentation, such as not documenting some parameters +# in a documented function, or documenting parameters that don't exist or using +# markup commands wrongly. +# The default value is: YES. + +WARN_IF_DOC_ERROR = YES + +# This WARN_NO_PARAMDOC option can be enabled to get warnings for functions that +# are documented, but have no documentation for their parameters or return +# value. If set to NO doxygen will only warn about wrong or incomplete parameter +# documentation, but not about the absence of documentation. +# The default value is: NO. + +WARN_NO_PARAMDOC = YES + +# The WARN_FORMAT tag determines the format of the warning messages that doxygen +# can produce. The string should contain the $file, $line, and $text tags, which +# will be replaced by the file and line number from which the warning originated +# and the warning text. Optionally the format may contain $version, which will +# be replaced by the version of the file (if it could be obtained via +# FILE_VERSION_FILTER) +# The default value is: $file:$line: $text. + +WARN_FORMAT = "$file:$line: $text" + +# The WARN_LOGFILE tag can be used to specify a file to which warning and error +# messages should be written. If left blank the output is written to standard +# error (stderr). + +WARN_LOGFILE = + +#--------------------------------------------------------------------------- +# Configuration options related to the input files +#--------------------------------------------------------------------------- + +# The INPUT tag is used to specify the files and/or directories that contain +# documented source files. You may enter file names like myfile.cpp or +# directories like /usr/src/myproject. Separate the files or directories with +# spaces. +# Note: If this tag is empty the current directory is searched. + +INPUT = @DOXYGEN_INPUT@ + +# This tag can be used to specify the character encoding of the source files +# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses +# libiconv (or the iconv built into libc) for the transcoding. See the libiconv +# documentation (see: http://www.gnu.org/software/libiconv) for the list of +# possible encodings. +# The default value is: UTF-8. + +INPUT_ENCODING = UTF-8 + +# If the value of the INPUT tag contains directories, you can use the +# FILE_PATTERNS tag to specify one or more wildcard patterns (like *.cpp and +# *.h) to filter out the source-files in the directories. If left blank the +# following patterns are tested:*.c, *.cc, *.cxx, *.cpp, *.c++, *.java, *.ii, +# *.ixx, *.ipp, *.i++, *.inl, *.idl, *.ddl, *.odl, *.h, *.hh, *.hxx, *.hpp, +# *.h++, *.cs, *.d, *.php, *.php4, *.php5, *.phtml, *.inc, *.m, *.markdown, +# *.md, *.mm, *.dox, *.py, *.f90, *.f, *.for, *.tcl, *.vhd, *.vhdl, *.ucf, +# *.qsf, *.as and *.js. + +FILE_PATTERNS = *.h + +# The RECURSIVE tag can be used to specify whether or not subdirectories should +# be searched for input files as well. +# The default value is: NO. + +RECURSIVE = YES + +# The EXCLUDE tag can be used to specify files and/or directories that should be +# excluded from the INPUT source files. This way you can easily exclude a +# subdirectory from a directory tree whose root is specified with the INPUT tag. +# +# Note that relative paths are relative to the directory from which doxygen is +# run. + +EXCLUDE = + +# The EXCLUDE_SYMLINKS tag can be used to select whether or not files or +# directories that are symbolic links (a Unix file system feature) are excluded +# from the input. +# The default value is: NO. + +EXCLUDE_SYMLINKS = NO + +# If the value of the INPUT tag contains directories, you can use the +# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude +# certain files from those directories. +# +# Note that the wildcards are matched against the file with absolute path, so to +# exclude all test directories for example use the pattern */test/* + +EXCLUDE_PATTERNS = *private* + +# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names +# (namespaces, classes, functions, etc.) that should be excluded from the +# output. The symbol name can be a fully qualified name, a word, or if the +# wildcard * is used, a substring. Examples: ANamespace, AClass, +# AClass::ANamespace, ANamespace::*Test +# +# Note that the wildcards are matched against the file with absolute path, so to +# exclude all test directories use the pattern */test/* + +EXCLUDE_SYMBOLS = + +# The EXAMPLE_PATH tag can be used to specify one or more files or directories +# that contain example code fragments that are included (see the \include +# command). + +EXAMPLE_PATH = + +# If the value of the EXAMPLE_PATH tag contains directories, you can use the +# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp and +# *.h) to filter out the source-files in the directories. If left blank all +# files are included. + +EXAMPLE_PATTERNS = + +# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be +# searched for input files to be used with the \include or \dontinclude commands +# irrespective of the value of the RECURSIVE tag. +# The default value is: NO. + +EXAMPLE_RECURSIVE = NO + +# The IMAGE_PATH tag can be used to specify one or more files or directories +# that contain images that are to be included in the documentation (see the +# \image command). + +IMAGE_PATH = + +# The INPUT_FILTER tag can be used to specify a program that doxygen should +# invoke to filter for each input file. Doxygen will invoke the filter program +# by executing (via popen()) the command: +# +# +# +# where is the value of the INPUT_FILTER tag, and is the +# name of an input file. Doxygen will then use the output that the filter +# program writes to standard output. If FILTER_PATTERNS is specified, this tag +# will be ignored. +# +# Note that the filter must not add or remove lines; it is applied before the +# code is scanned, but not when the output code is generated. If lines are added +# or removed, the anchors will not be placed correctly. + +INPUT_FILTER = + +# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern +# basis. Doxygen will compare the file name with each pattern and apply the +# filter if there is a match. The filters are a list of the form: pattern=filter +# (like *.cpp=my_cpp_filter). See INPUT_FILTER for further information on how +# filters are used. If the FILTER_PATTERNS tag is empty or if none of the +# patterns match the file name, INPUT_FILTER is applied. + +FILTER_PATTERNS = + +# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using +# INPUT_FILTER ) will also be used to filter the input files that are used for +# producing the source files to browse (i.e. when SOURCE_BROWSER is set to YES). +# The default value is: NO. + +FILTER_SOURCE_FILES = NO + +# The FILTER_SOURCE_PATTERNS tag can be used to specify source filters per file +# pattern. A pattern will override the setting for FILTER_PATTERN (if any) and +# it is also possible to disable source filtering for a specific pattern using +# *.ext= (so without naming a filter). +# This tag requires that the tag FILTER_SOURCE_FILES is set to YES. + +FILTER_SOURCE_PATTERNS = + +# If the USE_MDFILE_AS_MAINPAGE tag refers to the name of a markdown file that +# is part of the input, its contents will be placed on the main page +# (index.html). This can be useful if you have a project on for instance GitHub +# and want to reuse the introduction page also for the doxygen output. + +USE_MDFILE_AS_MAINPAGE = + +#--------------------------------------------------------------------------- +# Configuration options related to source browsing +#--------------------------------------------------------------------------- + +# If the SOURCE_BROWSER tag is set to YES then a list of source files will be +# generated. Documented entities will be cross-referenced with these sources. +# +# Note: To get rid of all source code in the generated output, make sure that +# also VERBATIM_HEADERS is set to NO. +# The default value is: NO. + +SOURCE_BROWSER = NO + +# Setting the INLINE_SOURCES tag to YES will include the body of functions, +# classes and enums directly into the documentation. +# The default value is: NO. + +INLINE_SOURCES = NO + +# Setting the STRIP_CODE_COMMENTS tag to YES will instruct doxygen to hide any +# special comment blocks from generated source code fragments. Normal C, C++ and +# Fortran comments will always remain visible. +# The default value is: YES. + +STRIP_CODE_COMMENTS = YES + +# If the REFERENCED_BY_RELATION tag is set to YES then for each documented +# function all documented functions referencing it will be listed. +# The default value is: NO. + +REFERENCED_BY_RELATION = NO + +# If the REFERENCES_RELATION tag is set to YES then for each documented function +# all documented entities called/used by that function will be listed. +# The default value is: NO. + +REFERENCES_RELATION = NO + +# If the REFERENCES_LINK_SOURCE tag is set to YES and SOURCE_BROWSER tag is set +# to YES, then the hyperlinks from functions in REFERENCES_RELATION and +# REFERENCED_BY_RELATION lists will link to the source code. Otherwise they will +# link to the documentation. +# The default value is: YES. + +REFERENCES_LINK_SOURCE = YES + +# If SOURCE_TOOLTIPS is enabled (the default) then hovering a hyperlink in the +# source code will show a tooltip with additional information such as prototype, +# brief description and links to the definition and documentation. Since this +# will make the HTML file larger and loading of large files a bit slower, you +# can opt to disable this feature. +# The default value is: YES. +# This tag requires that the tag SOURCE_BROWSER is set to YES. + +SOURCE_TOOLTIPS = NO + +# If the USE_HTAGS tag is set to YES then the references to source code will +# point to the HTML generated by the htags(1) tool instead of doxygen built-in +# source browser. The htags tool is part of GNU's global source tagging system +# (see http://www.gnu.org/software/global/global.html). You will need version +# 4.8.6 or higher. +# +# To use it do the following: +# - Install the latest version of global +# - Enable SOURCE_BROWSER and USE_HTAGS in the config file +# - Make sure the INPUT points to the root of the source tree +# - Run doxygen as normal +# +# Doxygen will invoke htags (and that will in turn invoke gtags), so these +# tools must be available from the command line (i.e. in the search path). +# +# The result: instead of the source browser generated by doxygen, the links to +# source code will now point to the output of htags. +# The default value is: NO. +# This tag requires that the tag SOURCE_BROWSER is set to YES. + +USE_HTAGS = NO + +# If the VERBATIM_HEADERS tag is set the YES then doxygen will generate a +# verbatim copy of the header file for each class for which an include is +# specified. Set to NO to disable this. +# See also: Section \class. +# The default value is: YES. + +VERBATIM_HEADERS = NO + +#--------------------------------------------------------------------------- +# Configuration options related to the alphabetical class index +#--------------------------------------------------------------------------- + +# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index of all +# compounds will be generated. Enable this if the project contains a lot of +# classes, structs, unions or interfaces. +# The default value is: YES. + +ALPHABETICAL_INDEX = NO + +# The COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns in +# which the alphabetical index list will be split. +# Minimum value: 1, maximum value: 20, default value: 5. +# This tag requires that the tag ALPHABETICAL_INDEX is set to YES. + +COLS_IN_ALPHA_INDEX = 5 + +# In case all classes in a project start with a common prefix, all classes will +# be put under the same header in the alphabetical index. The IGNORE_PREFIX tag +# can be used to specify a prefix (or a list of prefixes) that should be ignored +# while generating the index headers. +# This tag requires that the tag ALPHABETICAL_INDEX is set to YES. + +IGNORE_PREFIX = + +#--------------------------------------------------------------------------- +# Configuration options related to the HTML output +#--------------------------------------------------------------------------- + +# If the GENERATE_HTML tag is set to YES doxygen will generate HTML output +# The default value is: YES. + +GENERATE_HTML = YES + +# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. If a +# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of +# it. +# The default directory is: html. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_OUTPUT = html + +# The HTML_FILE_EXTENSION tag can be used to specify the file extension for each +# generated HTML page (for example: .htm, .php, .asp). +# The default value is: .html. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_FILE_EXTENSION = .html + +# The HTML_HEADER tag can be used to specify a user-defined HTML header file for +# each generated HTML page. If the tag is left blank doxygen will generate a +# standard header. +# +# To get valid HTML the header file that includes any scripts and style sheets +# that doxygen needs, which is dependent on the configuration options used (e.g. +# the setting GENERATE_TREEVIEW). It is highly recommended to start with a +# default header using +# doxygen -w html new_header.html new_footer.html new_stylesheet.css +# YourConfigFile +# and then modify the file new_header.html. See also section "Doxygen usage" +# for information on how to generate the default header that doxygen normally +# uses. +# Note: The header is subject to change so you typically have to regenerate the +# default header when upgrading to a newer version of doxygen. For a description +# of the possible markers and block names see the documentation. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_HEADER = + +# The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each +# generated HTML page. If the tag is left blank doxygen will generate a standard +# footer. See HTML_HEADER for more information on how to generate a default +# footer and what special commands can be used inside the footer. See also +# section "Doxygen usage" for information on how to generate the default footer +# that doxygen normally uses. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_FOOTER = + +# The HTML_STYLESHEET tag can be used to specify a user-defined cascading style +# sheet that is used by each HTML page. It can be used to fine-tune the look of +# the HTML output. If left blank doxygen will generate a default style sheet. +# See also section "Doxygen usage" for information on how to generate the style +# sheet that doxygen normally uses. +# Note: It is recommended to use HTML_EXTRA_STYLESHEET instead of this tag, as +# it is more robust and this tag (HTML_STYLESHEET) will in the future become +# obsolete. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_STYLESHEET = + +# The HTML_EXTRA_STYLESHEET tag can be used to specify an additional user- +# defined cascading style sheet that is included after the standard style sheets +# created by doxygen. Using this option one can overrule certain style aspects. +# This is preferred over using HTML_STYLESHEET since it does not replace the +# standard style sheet and is therefor more robust against future updates. +# Doxygen will copy the style sheet file to the output directory. For an example +# see the documentation. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_EXTRA_STYLESHEET = + +# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or +# other source files which should be copied to the HTML output directory. Note +# that these files will be copied to the base HTML output directory. Use the +# $relpath^ marker in the HTML_HEADER and/or HTML_FOOTER files to load these +# files. In the HTML_STYLESHEET file, use the file name only. Also note that the +# files will be copied as-is; there are no commands or markers available. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_EXTRA_FILES = + +# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. Doxygen +# will adjust the colors in the stylesheet and background images according to +# this color. Hue is specified as an angle on a colorwheel, see +# http://en.wikipedia.org/wiki/Hue for more information. For instance the value +# 0 represents red, 60 is yellow, 120 is green, 180 is cyan, 240 is blue, 300 +# purple, and 360 is red again. +# Minimum value: 0, maximum value: 359, default value: 220. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_COLORSTYLE_HUE = 220 + +# The HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of the colors +# in the HTML output. For a value of 0 the output will use grayscales only. A +# value of 255 will produce the most vivid colors. +# Minimum value: 0, maximum value: 255, default value: 100. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_COLORSTYLE_SAT = 100 + +# The HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to the +# luminance component of the colors in the HTML output. Values below 100 +# gradually make the output lighter, whereas values above 100 make the output +# darker. The value divided by 100 is the actual gamma applied, so 80 represents +# a gamma of 0.8, The value 220 represents a gamma of 2.2, and 100 does not +# change the gamma. +# Minimum value: 40, maximum value: 240, default value: 80. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_COLORSTYLE_GAMMA = 80 + +# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML +# page will contain the date and time when the page was generated. Setting this +# to NO can help when comparing the output of multiple runs. +# The default value is: YES. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_TIMESTAMP = NO + +# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML +# documentation will contain sections that can be hidden and shown after the +# page has loaded. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_DYNAMIC_SECTIONS = NO + +# With HTML_INDEX_NUM_ENTRIES one can control the preferred number of entries +# shown in the various tree structured indices initially; the user can expand +# and collapse entries dynamically later on. Doxygen will expand the tree to +# such a level that at most the specified number of entries are visible (unless +# a fully collapsed tree already exceeds this amount). So setting the number of +# entries 1 will produce a full collapsed tree by default. 0 is a special value +# representing an infinite number of entries and will result in a full expanded +# tree by default. +# Minimum value: 0, maximum value: 9999, default value: 100. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_INDEX_NUM_ENTRIES = 100 + +# If the GENERATE_DOCSET tag is set to YES, additional index files will be +# generated that can be used as input for Apple's Xcode 3 integrated development +# environment (see: http://developer.apple.com/tools/xcode/), introduced with +# OSX 10.5 (Leopard). To create a documentation set, doxygen will generate a +# Makefile in the HTML output directory. Running make will produce the docset in +# that directory and running make install will install the docset in +# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find it at +# startup. See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html +# for more information. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +GENERATE_DOCSET = NO + +# This tag determines the name of the docset feed. A documentation feed provides +# an umbrella under which multiple documentation sets from a single provider +# (such as a company or product suite) can be grouped. +# The default value is: Doxygen generated docs. +# This tag requires that the tag GENERATE_DOCSET is set to YES. + +DOCSET_FEEDNAME = "Doxygen generated docs" + +# This tag specifies a string that should uniquely identify the documentation +# set bundle. This should be a reverse domain-name style string, e.g. +# com.mycompany.MyDocSet. Doxygen will append .docset to the name. +# The default value is: org.doxygen.Project. +# This tag requires that the tag GENERATE_DOCSET is set to YES. + +DOCSET_BUNDLE_ID = org.doxygen.Project + +# The DOCSET_PUBLISHER_ID tag specifies a string that should uniquely identify +# the documentation publisher. This should be a reverse domain-name style +# string, e.g. com.mycompany.MyDocSet.documentation. +# The default value is: org.doxygen.Publisher. +# This tag requires that the tag GENERATE_DOCSET is set to YES. + +DOCSET_PUBLISHER_ID = org.doxygen.Publisher + +# The DOCSET_PUBLISHER_NAME tag identifies the documentation publisher. +# The default value is: Publisher. +# This tag requires that the tag GENERATE_DOCSET is set to YES. + +DOCSET_PUBLISHER_NAME = Publisher + +# If the GENERATE_HTMLHELP tag is set to YES then doxygen generates three +# additional HTML index files: index.hhp, index.hhc, and index.hhk. The +# index.hhp is a project file that can be read by Microsoft's HTML Help Workshop +# (see: http://www.microsoft.com/en-us/download/details.aspx?id=21138) on +# Windows. +# +# The HTML Help Workshop contains a compiler that can convert all HTML output +# generated by doxygen into a single compiled HTML file (.chm). Compiled HTML +# files are now used as the Windows 98 help format, and will replace the old +# Windows help format (.hlp) on all Windows platforms in the future. Compressed +# HTML files also contain an index, a table of contents, and you can search for +# words in the documentation. The HTML workshop also contains a viewer for +# compressed HTML files. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +GENERATE_HTMLHELP = NO + +# The CHM_FILE tag can be used to specify the file name of the resulting .chm +# file. You can add a path in front of the file if the result should not be +# written to the html output directory. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +CHM_FILE = + +# The HHC_LOCATION tag can be used to specify the location (absolute path +# including file name) of the HTML help compiler ( hhc.exe). If non-empty +# doxygen will try to run the HTML help compiler on the generated index.hhp. +# The file has to be specified with full path. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +HHC_LOCATION = + +# The GENERATE_CHI flag controls if a separate .chi index file is generated ( +# YES) or that it should be included in the master .chm file ( NO). +# The default value is: NO. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +GENERATE_CHI = NO + +# The CHM_INDEX_ENCODING is used to encode HtmlHelp index ( hhk), content ( hhc) +# and project file content. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +CHM_INDEX_ENCODING = + +# The BINARY_TOC flag controls whether a binary table of contents is generated ( +# YES) or a normal table of contents ( NO) in the .chm file. Furthermore it +# enables the Previous and Next buttons. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +BINARY_TOC = NO + +# The TOC_EXPAND flag can be set to YES to add extra items for group members to +# the table of contents of the HTML help documentation and to the tree view. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +TOC_EXPAND = NO + +# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and +# QHP_VIRTUAL_FOLDER are set, an additional index file will be generated that +# can be used as input for Qt's qhelpgenerator to generate a Qt Compressed Help +# (.qch) of the generated HTML documentation. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +GENERATE_QHP = NO + +# If the QHG_LOCATION tag is specified, the QCH_FILE tag can be used to specify +# the file name of the resulting .qch file. The path specified is relative to +# the HTML output folder. +# This tag requires that the tag GENERATE_QHP is set to YES. + +QCH_FILE = + +# The QHP_NAMESPACE tag specifies the namespace to use when generating Qt Help +# Project output. For more information please see Qt Help Project / Namespace +# (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#namespace). +# The default value is: org.doxygen.Project. +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHP_NAMESPACE = org.doxygen.Project + +# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating Qt +# Help Project output. For more information please see Qt Help Project / Virtual +# Folders (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#virtual- +# folders). +# The default value is: doc. +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHP_VIRTUAL_FOLDER = doc + +# If the QHP_CUST_FILTER_NAME tag is set, it specifies the name of a custom +# filter to add. For more information please see Qt Help Project / Custom +# Filters (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom- +# filters). +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHP_CUST_FILTER_NAME = + +# The QHP_CUST_FILTER_ATTRS tag specifies the list of the attributes of the +# custom filter to add. For more information please see Qt Help Project / Custom +# Filters (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom- +# filters). +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHP_CUST_FILTER_ATTRS = + +# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this +# project's filter section matches. Qt Help Project / Filter Attributes (see: +# http://qt-project.org/doc/qt-4.8/qthelpproject.html#filter-attributes). +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHP_SECT_FILTER_ATTRS = + +# The QHG_LOCATION tag can be used to specify the location of Qt's +# qhelpgenerator. If non-empty doxygen will try to run qhelpgenerator on the +# generated .qhp file. +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHG_LOCATION = + +# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files will be +# generated, together with the HTML files, they form an Eclipse help plugin. To +# install this plugin and make it available under the help contents menu in +# Eclipse, the contents of the directory containing the HTML and XML files needs +# to be copied into the plugins directory of eclipse. The name of the directory +# within the plugins directory should be the same as the ECLIPSE_DOC_ID value. +# After copying Eclipse needs to be restarted before the help appears. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +GENERATE_ECLIPSEHELP = NO + +# A unique identifier for the Eclipse help plugin. When installing the plugin +# the directory name containing the HTML and XML files should also have this +# name. Each documentation set should have its own identifier. +# The default value is: org.doxygen.Project. +# This tag requires that the tag GENERATE_ECLIPSEHELP is set to YES. + +ECLIPSE_DOC_ID = org.doxygen.Project + +# If you want full control over the layout of the generated HTML pages it might +# be necessary to disable the index and replace it with your own. The +# DISABLE_INDEX tag can be used to turn on/off the condensed index (tabs) at top +# of each HTML page. A value of NO enables the index and the value YES disables +# it. Since the tabs in the index contain the same information as the navigation +# tree, you can set this option to YES if you also set GENERATE_TREEVIEW to YES. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +DISABLE_INDEX = YES + +# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index +# structure should be generated to display hierarchical information. If the tag +# value is set to YES, a side panel will be generated containing a tree-like +# index structure (just like the one that is generated for HTML Help). For this +# to work a browser that supports JavaScript, DHTML, CSS and frames is required +# (i.e. any modern browser). Windows users are probably better off using the +# HTML help feature. Via custom stylesheets (see HTML_EXTRA_STYLESHEET) one can +# further fine-tune the look of the index. As an example, the default style +# sheet generated by doxygen has an example that shows how to put an image at +# the root of the tree instead of the PROJECT_NAME. Since the tree basically has +# the same information as the tab index, you could consider setting +# DISABLE_INDEX to YES when enabling this option. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +GENERATE_TREEVIEW = YES + +# The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values that +# doxygen will group on one line in the generated HTML documentation. +# +# Note that a value of 0 will completely suppress the enum values from appearing +# in the overview section. +# Minimum value: 0, maximum value: 20, default value: 4. +# This tag requires that the tag GENERATE_HTML is set to YES. + +ENUM_VALUES_PER_LINE = 0 + +# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be used +# to set the initial width (in pixels) of the frame in which the tree is shown. +# Minimum value: 0, maximum value: 1500, default value: 250. +# This tag requires that the tag GENERATE_HTML is set to YES. + +TREEVIEW_WIDTH = 250 + +# When the EXT_LINKS_IN_WINDOW option is set to YES doxygen will open links to +# external symbols imported via tag files in a separate window. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +EXT_LINKS_IN_WINDOW = NO + +# Use this tag to change the font size of LaTeX formulas included as images in +# the HTML documentation. When you change the font size after a successful +# doxygen run you need to manually remove any form_*.png images from the HTML +# output directory to force them to be regenerated. +# Minimum value: 8, maximum value: 50, default value: 10. +# This tag requires that the tag GENERATE_HTML is set to YES. + +FORMULA_FONTSIZE = 10 + +# Use the FORMULA_TRANPARENT tag to determine whether or not the images +# generated for formulas are transparent PNGs. Transparent PNGs are not +# supported properly for IE 6.0, but are supported on all modern browsers. +# +# Note that when changing this option you need to delete any form_*.png files in +# the HTML output directory before the changes have effect. +# The default value is: YES. +# This tag requires that the tag GENERATE_HTML is set to YES. + +FORMULA_TRANSPARENT = YES + +# Enable the USE_MATHJAX option to render LaTeX formulas using MathJax (see +# http://www.mathjax.org) which uses client side Javascript for the rendering +# instead of using prerendered bitmaps. Use this if you do not have LaTeX +# installed or if you want to formulas look prettier in the HTML output. When +# enabled you may also need to install MathJax separately and configure the path +# to it using the MATHJAX_RELPATH option. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +USE_MATHJAX = NO + +# When MathJax is enabled you can set the default output format to be used for +# the MathJax output. See the MathJax site (see: +# http://docs.mathjax.org/en/latest/output.html) for more details. +# Possible values are: HTML-CSS (which is slower, but has the best +# compatibility), NativeMML (i.e. MathML) and SVG. +# The default value is: HTML-CSS. +# This tag requires that the tag USE_MATHJAX is set to YES. + +MATHJAX_FORMAT = HTML-CSS + +# When MathJax is enabled you need to specify the location relative to the HTML +# output directory using the MATHJAX_RELPATH option. The destination directory +# should contain the MathJax.js script. For instance, if the mathjax directory +# is located at the same level as the HTML output directory, then +# MATHJAX_RELPATH should be ../mathjax. The default value points to the MathJax +# Content Delivery Network so you can quickly see the result without installing +# MathJax. However, it is strongly recommended to install a local copy of +# MathJax from http://www.mathjax.org before deployment. +# The default value is: http://cdn.mathjax.org/mathjax/latest. +# This tag requires that the tag USE_MATHJAX is set to YES. + +MATHJAX_RELPATH = http://cdn.mathjax.org/mathjax/latest + +# The MATHJAX_EXTENSIONS tag can be used to specify one or more MathJax +# extension names that should be enabled during MathJax rendering. For example +# MATHJAX_EXTENSIONS = TeX/AMSmath TeX/AMSsymbols +# This tag requires that the tag USE_MATHJAX is set to YES. + +MATHJAX_EXTENSIONS = + +# The MATHJAX_CODEFILE tag can be used to specify a file with javascript pieces +# of code that will be used on startup of the MathJax code. See the MathJax site +# (see: http://docs.mathjax.org/en/latest/output.html) for more details. For an +# example see the documentation. +# This tag requires that the tag USE_MATHJAX is set to YES. + +MATHJAX_CODEFILE = + +# When the SEARCHENGINE tag is enabled doxygen will generate a search box for +# the HTML output. The underlying search engine uses javascript and DHTML and +# should work on any modern browser. Note that when using HTML help +# (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets (GENERATE_DOCSET) +# there is already a search function so this one should typically be disabled. +# For large projects the javascript based search engine can be slow, then +# enabling SERVER_BASED_SEARCH may provide a better solution. It is possible to +# search using the keyboard; to jump to the search box use + S +# (what the is depends on the OS and browser, but it is typically +# , /