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

Commit 83390d76 authored by Android Build Coastguard Worker's avatar Android Build Coastguard Worker
Browse files

Snap for 7978492 from da43f370 to tm-release

Change-Id: Iac1469de7003c42eb65ac0a207dd00b622dd8ff6
parents c7860236 da43f370
Loading
Loading
Loading
Loading
+49 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2021 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.
 */
///////////////////////////////////////////////////////////////////////////////
// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE.                          //
///////////////////////////////////////////////////////////////////////////////

// This file is a snapshot of an AIDL file. Do not edit it manually. There are
// two cases:
// 1). this is a frozen version file - do not edit this in any case.
// 2). this is a 'current' file. If you make a backwards compatible change to
//     the interface (from the latest frozen version), the build system will
//     prompt you to update this file with `m <name>-update-api`.
//
// You must not make a backward incompatible change to any AIDL file built
// with the aidl_interface module type with versions property set. The module
// type is used to build AIDL files in a way that they can be used across
// independently updatable components of the system. If a device is shipped
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.

package android.hardware.gnss;
@VintfStability
interface IAGnss {
  void setCallback(in android.hardware.gnss.IAGnssCallback callback);
  void dataConnClosed();
  void dataConnFailed();
  void setServer(in android.hardware.gnss.IAGnssCallback.AGnssType type, in String hostname, in int port);
  void dataConnOpen(in long networkHandle, in String apn, in android.hardware.gnss.IAGnss.ApnIpType apnIpType);
  @Backing(type="int") @VintfStability
  enum ApnIpType {
    INVALID = 0,
    IPV4 = 1,
    IPV6 = 2,
    IPV4V6 = 3,
  }
}
+53 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2021 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.
 */
///////////////////////////////////////////////////////////////////////////////
// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE.                          //
///////////////////////////////////////////////////////////////////////////////

// This file is a snapshot of an AIDL file. Do not edit it manually. There are
// two cases:
// 1). this is a frozen version file - do not edit this in any case.
// 2). this is a 'current' file. If you make a backwards compatible change to
//     the interface (from the latest frozen version), the build system will
//     prompt you to update this file with `m <name>-update-api`.
//
// You must not make a backward incompatible change to any AIDL file built
// with the aidl_interface module type with versions property set. The module
// type is used to build AIDL files in a way that they can be used across
// independently updatable components of the system. If a device is shipped
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.

package android.hardware.gnss;
@VintfStability
interface IAGnssCallback {
  void agnssStatusCb(in android.hardware.gnss.IAGnssCallback.AGnssType type, in android.hardware.gnss.IAGnssCallback.AGnssStatusValue status);
  @Backing(type="int") @VintfStability
  enum AGnssType {
    SUPL = 1,
    C2K = 2,
    SUPL_EIMS = 3,
    SUPL_IMS = 4,
  }
  @Backing(type="int") @VintfStability
  enum AGnssStatusValue {
    REQUEST_AGNSS_DATA_CONN = 1,
    RELEASE_AGNSS_DATA_CONN = 2,
    AGNSS_DATA_CONNECTED = 3,
    AGNSS_DATA_CONN_DONE = 4,
    AGNSS_DATA_CONN_FAILED = 5,
  }
}
+1 −0
Original line number Diff line number Diff line
@@ -43,6 +43,7 @@ interface IGnss {
  @nullable android.hardware.gnss.IGnssBatching getExtensionGnssBatching();
  @nullable android.hardware.gnss.IGnssGeofence getExtensionGnssGeofence();
  @nullable android.hardware.gnss.IGnssNavigationMessageInterface getExtensionGnssNavigationMessage();
  android.hardware.gnss.IAGnss getExtensionAGnss();
  const int ERROR_INVALID_ARGUMENT = 1;
  const int ERROR_ALREADY_INIT = 2;
  const int ERROR_GENERIC = 3;
+79 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2021 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.gnss;

import android.hardware.gnss.IAGnssCallback;
import android.hardware.gnss.IAGnssCallback.AGnssType;

/** Extended interface for Assisted GNSS support. */
@VintfStability
interface IAGnss {
    /** Access point name IP type */
    @VintfStability
    @Backing(type="int")
    enum ApnIpType {
        INVALID = 0,
        IPV4 = 1,
        IPV6 = 2,
        IPV4V6 = 3,
    }

    /**
     * Opens the AGNSS interface and provides the callback routines to the
     * implementation of this interface.
     *
     * If setCallback is not called, this interface will not respond to any
     * other method calls.
     *
     * @param callback Handle to the AGNSS status callback interface.
     */
    void setCallback(in IAGnssCallback callback);

    /**
     * Notifies that the AGNSS data connection has been closed.
     */
    void dataConnClosed();

    /**
     * Notifies that a data connection is not available for AGNSS.
     */
    void dataConnFailed();

    /**
     * Sets the hostname and port for the AGNSS server.
     *
     * @param type Specifies if SUPL or C2K.
     * @param hostname Hostname of the AGNSS server.
     * @param port Port number associated with the server.
     */
    void setServer(in AGnssType type, in String hostname, in int port);

    /**
     * Notifies GNSS that a data connection is available and sets the network handle,
     * name of the APN, and its IP type to be used for SUPL connections.
     *
     * The HAL implementation must use the network handle to set the network for the
     * SUPL connection sockets using the android_setsocknetwork function. This will ensure
     * that there is a network path to the SUPL server. The network handle can also be used
     * to get the IP address of SUPL FQDN using the android_getaddrinfofornetwork() function.
     *
     * @param networkHandle Handle representing the network for use with the NDK API.
     * @param apn Access Point Name (follows regular APN naming convention).
     * @param apnIpType Specifies IP type of APN.
     */
    void dataConnOpen(in long networkHandle, in String apn, in ApnIpType apnIpType);
}
+63 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2021 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.gnss;

/** Callback structure for the AGNSS interface. */
@VintfStability
interface IAGnssCallback {
    /** AGNSS service type */
    @VintfStability
    @Backing(type="int")
    enum AGnssType {
        SUPL = 1,
        C2K = 2,
        SUPL_EIMS = 3,
        SUPL_IMS = 4,
    }

    /** AGNSS status value */
    @VintfStability
    @Backing(type="int")
    enum AGnssStatusValue {
        /** GNSS requests data connection for AGNSS. */
        REQUEST_AGNSS_DATA_CONN = 1,

        /** GNSS releases the AGNSS data connection. */
        RELEASE_AGNSS_DATA_CONN = 2,

        /** AGNSS data connection initiated */
        AGNSS_DATA_CONNECTED = 3,

        /** AGNSS data connection completed */
        AGNSS_DATA_CONN_DONE = 4,

        /** AGNSS data connection failed */
        AGNSS_DATA_CONN_FAILED = 5,
    }

    /**
     * Callback with AGNSS status information.
     *
     * The GNSS HAL implementation must use this method to request the framework to setup
     * network connection for the specified AGNSS service and to update the connection
     * status so that the framework can release the resources.
     *
     * @param type Type of AGNSS service.
     * @parama status Status of the data connection.
     */
    void agnssStatusCb(in AGnssType type, in AGnssStatusValue status);
}
Loading