diff --git a/threadnetwork/aidl/default/Android.bp b/threadnetwork/aidl/default/Android.bp index 82a76e0669..51e5c25eec 100644 --- a/threadnetwork/aidl/default/Android.bp +++ b/threadnetwork/aidl/default/Android.bp @@ -90,10 +90,20 @@ prebuilt_etc { installable: false, } +filegroup { + name: "com.android.hardware.threadnetwork_manifest", + srcs: ["manifest.json"], +} + +filegroup { + name: "com.android.hardware.threadnetwork_file_contexts", + srcs: ["file_contexts"], +} + apex { name: "com.android.hardware.threadnetwork", - manifest: "manifest.json", - file_contexts: "file_contexts", + manifest: ":com.android.hardware.threadnetwork_manifest", + file_contexts: ":com.android.hardware.threadnetwork_file_contexts", key: "com.android.hardware.key", certificate: ":com.android.hardware.certificate", updatable: false, @@ -110,3 +120,21 @@ apex { "android.hardware.thread_network.prebuilt.xml", // permission ], } + +prebuilt_etc { + name: "threadnetwork-service-simulation-rcp.rc", + src: "threadnetwork-service-simulation-rcp.rc", + installable: false, +} + +// Thread HAL service which uses a simulation RCP (i.e. ot-rcp), +// typically used in emulator devices. +override_apex { + name: "com.android.hardware.threadnetwork-simulation-rcp", + base: "com.android.hardware.threadnetwork", + prebuilts: [ + "threadnetwork-service-simulation-rcp.rc", + "threadnetwork-default.xml", + "android.hardware.thread_network.prebuilt.xml", + ], +} diff --git a/threadnetwork/aidl/default/threadnetwork-service-simulation-rcp.rc b/threadnetwork/aidl/default/threadnetwork-service-simulation-rcp.rc new file mode 100644 index 0000000000..3b889eb23a --- /dev/null +++ b/threadnetwork/aidl/default/threadnetwork-service-simulation-rcp.rc @@ -0,0 +1,3 @@ +service vendor.threadnetwork_hal /apex/com.android.hardware.threadnetwork/bin/hw/android.hardware.threadnetwork-service spinel+hdlc+forkpty:///apex/com.android.hardware.threadnetwork/bin/ot-rcp?forkpty-arg=1 + class hal + user thread_network