Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a6dabb56 authored by Pankaj Kanwar's avatar Pankaj Kanwar Committed by android-build-merger
Browse files

Merge "RIL changes to allow the modem to query the framework for the key." am: 9af33642

am: 88c489b6

Change-Id: I12943d9a627babc2f82a461863e12c93ca8be247
parents 3debb9de 88c489b6
Loading
Loading
Loading
Loading

radio/1.1/Android.bp

0 → 100644
+76 −0
Original line number Diff line number Diff line
// This file is autogenerated by hidl-gen. Do not edit manually.

filegroup {
    name: "android.hardware.radio@1.1_hal",
    srcs: [
        "IRadio.hal",
        "IRadioIndication.hal",
        "IRadioResponse.hal",
    ],
}

genrule {
    name: "android.hardware.radio@1.1_genc++",
    tools: ["hidl-gen"],
    cmd: "$(location hidl-gen) -o $(genDir) -Lc++ -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.radio@1.1",
    srcs: [
        ":android.hardware.radio@1.1_hal",
    ],
    out: [
        "android/hardware/radio/1.1/RadioAll.cpp",
        "android/hardware/radio/1.1/RadioIndicationAll.cpp",
        "android/hardware/radio/1.1/RadioResponseAll.cpp",
    ],
}

genrule {
    name: "android.hardware.radio@1.1_genc++_headers",
    tools: ["hidl-gen"],
    cmd: "$(location hidl-gen) -o $(genDir) -Lc++ -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.radio@1.1",
    srcs: [
        ":android.hardware.radio@1.1_hal",
    ],
    out: [
        "android/hardware/radio/1.1/IRadio.h",
        "android/hardware/radio/1.1/IHwRadio.h",
        "android/hardware/radio/1.1/BnHwRadio.h",
        "android/hardware/radio/1.1/BpHwRadio.h",
        "android/hardware/radio/1.1/BsRadio.h",
        "android/hardware/radio/1.1/IRadioIndication.h",
        "android/hardware/radio/1.1/IHwRadioIndication.h",
        "android/hardware/radio/1.1/BnHwRadioIndication.h",
        "android/hardware/radio/1.1/BpHwRadioIndication.h",
        "android/hardware/radio/1.1/BsRadioIndication.h",
        "android/hardware/radio/1.1/IRadioResponse.h",
        "android/hardware/radio/1.1/IHwRadioResponse.h",
        "android/hardware/radio/1.1/BnHwRadioResponse.h",
        "android/hardware/radio/1.1/BpHwRadioResponse.h",
        "android/hardware/radio/1.1/BsRadioResponse.h",
    ],
}

cc_library_shared {
    name: "android.hardware.radio@1.1",
    generated_sources: ["android.hardware.radio@1.1_genc++"],
    generated_headers: ["android.hardware.radio@1.1_genc++_headers"],
    export_generated_headers: ["android.hardware.radio@1.1_genc++_headers"],
    vendor_available: true,
    shared_libs: [
        "libhidlbase",
        "libhidltransport",
        "libhwbinder",
        "liblog",
        "libutils",
        "libcutils",
        "android.hardware.radio@1.0",
        "android.hidl.base@1.0",
    ],
    export_shared_lib_headers: [
        "libhidlbase",
        "libhidltransport",
        "libhwbinder",
        "libutils",
        "android.hardware.radio@1.0",
        "android.hidl.base@1.0",
    ],
}

radio/1.1/Android.mk

0 → 100644
+154 −0
Original line number Diff line number Diff line
# This file is autogenerated by hidl-gen. Do not edit manually.

LOCAL_PATH := $(call my-dir)

################################################################################

include $(CLEAR_VARS)
LOCAL_MODULE := android.hardware.radio-V1.1-java
LOCAL_MODULE_CLASS := JAVA_LIBRARIES

intermediates := $(call local-generated-sources-dir, COMMON)

HIDL := $(HOST_OUT_EXECUTABLES)/hidl-gen$(HOST_EXECUTABLE_SUFFIX)

LOCAL_JAVA_LIBRARIES := \
    android.hardware.radio-V1.0-java \
    android.hidl.base-V1.0-java \


#
# Build IRadio.hal
#
GEN := $(intermediates)/android/hardware/radio/V1_1/IRadio.java
$(GEN): $(HIDL)
$(GEN): PRIVATE_HIDL := $(HIDL)
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IRadio.hal
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
$(GEN): PRIVATE_CUSTOM_TOOL = \
        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
        -Ljava \
        -randroid.hardware:hardware/interfaces \
        -randroid.hidl:system/libhidl/transport \
        android.hardware.radio@1.1::IRadio

$(GEN): $(LOCAL_PATH)/IRadio.hal
	$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)

#
# Build IRadioIndication.hal
#
GEN := $(intermediates)/android/hardware/radio/V1_1/IRadioIndication.java
$(GEN): $(HIDL)
$(GEN): PRIVATE_HIDL := $(HIDL)
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IRadioIndication.hal
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
$(GEN): PRIVATE_CUSTOM_TOOL = \
        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
        -Ljava \
        -randroid.hardware:hardware/interfaces \
        -randroid.hidl:system/libhidl/transport \
        android.hardware.radio@1.1::IRadioIndication

$(GEN): $(LOCAL_PATH)/IRadioIndication.hal
	$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)

#
# Build IRadioResponse.hal
#
GEN := $(intermediates)/android/hardware/radio/V1_1/IRadioResponse.java
$(GEN): $(HIDL)
$(GEN): PRIVATE_HIDL := $(HIDL)
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IRadioResponse.hal
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
$(GEN): PRIVATE_CUSTOM_TOOL = \
        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
        -Ljava \
        -randroid.hardware:hardware/interfaces \
        -randroid.hidl:system/libhidl/transport \
        android.hardware.radio@1.1::IRadioResponse

$(GEN): $(LOCAL_PATH)/IRadioResponse.hal
	$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
include $(BUILD_JAVA_LIBRARY)


################################################################################

include $(CLEAR_VARS)
LOCAL_MODULE := android.hardware.radio-V1.1-java-static
LOCAL_MODULE_CLASS := JAVA_LIBRARIES

intermediates := $(call local-generated-sources-dir, COMMON)

HIDL := $(HOST_OUT_EXECUTABLES)/hidl-gen$(HOST_EXECUTABLE_SUFFIX)

LOCAL_STATIC_JAVA_LIBRARIES := \
    android.hardware.radio-V1.0-java-static \
    android.hidl.base-V1.0-java-static \


#
# Build IRadio.hal
#
GEN := $(intermediates)/android/hardware/radio/V1_1/IRadio.java
$(GEN): $(HIDL)
$(GEN): PRIVATE_HIDL := $(HIDL)
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IRadio.hal
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
$(GEN): PRIVATE_CUSTOM_TOOL = \
        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
        -Ljava \
        -randroid.hardware:hardware/interfaces \
        -randroid.hidl:system/libhidl/transport \
        android.hardware.radio@1.1::IRadio

$(GEN): $(LOCAL_PATH)/IRadio.hal
	$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)

#
# Build IRadioIndication.hal
#
GEN := $(intermediates)/android/hardware/radio/V1_1/IRadioIndication.java
$(GEN): $(HIDL)
$(GEN): PRIVATE_HIDL := $(HIDL)
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IRadioIndication.hal
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
$(GEN): PRIVATE_CUSTOM_TOOL = \
        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
        -Ljava \
        -randroid.hardware:hardware/interfaces \
        -randroid.hidl:system/libhidl/transport \
        android.hardware.radio@1.1::IRadioIndication

$(GEN): $(LOCAL_PATH)/IRadioIndication.hal
	$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)

#
# Build IRadioResponse.hal
#
GEN := $(intermediates)/android/hardware/radio/V1_1/IRadioResponse.java
$(GEN): $(HIDL)
$(GEN): PRIVATE_HIDL := $(HIDL)
$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IRadioResponse.hal
$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
$(GEN): PRIVATE_CUSTOM_TOOL = \
        $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
        -Ljava \
        -randroid.hardware:hardware/interfaces \
        -randroid.hidl:system/libhidl/transport \
        android.hardware.radio@1.1::IRadioResponse

$(GEN): $(LOCAL_PATH)/IRadioResponse.hal
	$(transform-generated-source)
LOCAL_GENERATED_SOURCES += $(GEN)
include $(BUILD_STATIC_JAVA_LIBRARY)



include $(call all-makefiles-under,$(LOCAL_PATH))

radio/1.1/IRadio.hal

0 → 100644
+54 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2016 The Android Open Source Project
 *
 * 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.
 */

package android.hardware.radio@1.1;

import IRadioResponse;
import @1.0::IRadio;

/**
 * This interface is used by telephony and telecom to talk to cellular radio.
 * All the functions have minimum one parameter:
 * serial: which corresponds to serial no. of request. Serial numbers must only be memorized for the
 * duration of a method call. If clients provide colliding serials (including passing the same
 * serial to different methods), multiple responses (one for each method call) must still be served.
 * setResponseFunctions must work with @1.1::IRadioResponse and @1.1::IRadioIndication.
 */
interface IRadio extends @1.0::IRadio {
    /**
     * Provide Carrier specific information to the modem that must be used to
     * encrypt the IMSI and IMPI. Sent by the framework during boot, carrier
     * switch and everytime the framework receives a new certificate.
     *
     * @param serial Serial number of request.
     * @param carrierKey Carrier specific key to be used for encryption. It must
     *        be opaque to the framework. This is the byte-stream representation
     *        of the key. This is an external encoded form for the key used when
     *        a standard representation of the key is needed outside the Java
     *        Virtual Machine, as when transmitting the key to some other party.
     *        The key is encoded according to a standard format
     *        (such as X.509 SubjectPublicKeyInfo or PKCS#8), and is returned using
     *        the getEncoded method.
     * @param keyIdentifier This is an opaque value we're given by the carrier
     *        and is returned to the carrier. This is used by the server to
     *        help it locate the private key to decrypt the permanent identity.
     *
     * Response callback is
     * IRadioResponse.setCarrierInfoForImsiEncryptionResponse()
     */
     oneway setCarrierInfoForImsiEncryption(int32_t serial, vec<uint8_t> carrierKey,
             string keyIdentifier);
};
+34 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2016 The Android Open Source Project
 *
 * 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.
 */

package android.hardware.radio@1.1;

import @1.0::IRadioIndication;
import @1.0::types;

/**
 * Interface declaring unsolicited radio indications.
 */
interface IRadioIndication extends @1.0::IRadioIndication{
   /*
    * Indicates that the modem requires the Carrier info for IMSI/IMPI encryption.
    * This might happen when the modem restarts or for some reason it's cache
    * has been invalidated.
    *
    * @param type Type of radio indication
    */
   oneway carrierInfoForImsiEncryption(RadioIndicationType info);
};
+37 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2016 The Android Open Source Project
 *
 * 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.
 */

package android.hardware.radio@1.1;

import @1.0::IRadioResponse;

/**
 * Interface declaring response functions to solicited radio requests.
 */
interface IRadioResponse extends @1.0::IRadioResponse {
    /**
     * @param info Response info struct containing response type, serial no. and error
     *
     * Valid errors returned:
     *   RadioError:RIL_E_SUCCESS
     *   RadioError:RIL_E_RADIO_NOT_AVAILABLE
     *   RadioError:SIM_ABSENT
     *   RadioError:RIL_E_REQUEST_NOT_SUPPORTED
     *   RadioError:INVALID_ARGUMENTS
     *   RadioError:MODEM_INTERNAL_FAILURE
     */
    oneway setCarrierInfoForImsiEncryptionResponse(RadioResponseInfo info);
};
Loading