summaryrefslogtreecommitdiffstats
path: root/wifi
diff options
context:
space:
mode:
authorRoshan Pius <rpius@google.com>2016-12-14 08:06:58 -0800
committerRoshan Pius <rpius@google.com>2016-12-16 05:36:35 +0000
commit3f050c1a0f7dbcaf9d9b5814cabc7b886e9d5989 (patch)
treeaeffb82c0654c41cf8eeec389bf222612ebc879b /wifi
parent0dbb9903cd8b414ca16f6b4bb379bfcadecea0a5 (diff)
downloadplatform_hardware_interfaces-3f050c1a0f7dbcaf9d9b5814cabc7b886e9d5989.tar.gz
platform_hardware_interfaces-3f050c1a0f7dbcaf9d9b5814cabc7b886e9d5989.tar.bz2
platform_hardware_interfaces-3f050c1a0f7dbcaf9d9b5814cabc7b886e9d5989.zip
supplicant(interface): Add support for DRIVER commands
These were legacy commands added to wpa_supplicant specifically for android when the vendor HAL did not exist. These string commands are passed as passthough to the driver by wpa_supplicant. Instead of adding a single method to pass through these strings. Add separate methods for each "DRIVER xxx" command that we currently used in Android framework. Bug: 32699292 Test: Compiles Change-Id: I8b62b3250496fa996bb97b4af0ba570a3d345cc3
Diffstat (limited to 'wifi')
-rw-r--r--wifi/supplicant/1.0/ISupplicant.hal16
-rw-r--r--wifi/supplicant/1.0/ISupplicantP2pIface.hal28
-rw-r--r--wifi/supplicant/1.0/ISupplicantStaIface.hal132
3 files changed, 165 insertions, 11 deletions
diff --git a/wifi/supplicant/1.0/ISupplicant.hal b/wifi/supplicant/1.0/ISupplicant.hal
index 32d73da68a..34cea18783 100644
--- a/wifi/supplicant/1.0/ISupplicant.hal
+++ b/wifi/supplicant/1.0/ISupplicant.hal
@@ -44,14 +44,14 @@ interface ISupplicant {
* controlled by the supplicant.
*/
struct IfaceInfo {
- /**
- * Type of the network interface.
- */
- IfaceType type;
- /**
- * Name of the network interface, e.g., wlan0
- */
- string name;
+ /**
+ * Type of the network interface.
+ */
+ IfaceType type;
+ /**
+ * Name of the network interface, e.g., wlan0
+ */
+ string name;
};
/**
diff --git a/wifi/supplicant/1.0/ISupplicantP2pIface.hal b/wifi/supplicant/1.0/ISupplicantP2pIface.hal
index 0cdac2dce2..cd5a7c5c4c 100644
--- a/wifi/supplicant/1.0/ISupplicantP2pIface.hal
+++ b/wifi/supplicant/1.0/ISupplicantP2pIface.hal
@@ -60,6 +60,22 @@ interface ISupplicantP2pIface extends ISupplicantIface {
};
/**
+ * Enum describing the modes of Miracast supported
+ * via driver commands.
+ */
+ enum MiracastMode : uint8_t {
+ DISABLED = 0,
+ /**
+ * Operating as source.
+ */
+ SOURCE = 1,
+ /**
+ * Operating as sink.
+ */
+ SINK = 2
+ };
+
+ /**
* Register for callbacks from this interface.
*
* These callbacks are invoked for events that are specific to this interface.
@@ -511,4 +527,16 @@ interface ISupplicantP2pIface extends ISupplicantIface {
*/
cancelServiceDiscovery(uint64_t identifier)
generates (SupplicantStatus status);
+
+ /**
+ * Send driver command to set Miracast mode.
+ *
+ * @param mode Mode of Miracast.
+ * @return status Status of the operation.
+ * Possible status codes:
+ * |SupplicantStatusCode.SUCCESS|,
+ * |SupplicantStatusCode.FAILURE_UNKNOWN|
+ */
+ setMiracastMode(MiracastMode mode)
+ generates (SupplicantStatus status);
};
diff --git a/wifi/supplicant/1.0/ISupplicantStaIface.hal b/wifi/supplicant/1.0/ISupplicantStaIface.hal
index 31706cd610..2fc4d0fe74 100644
--- a/wifi/supplicant/1.0/ISupplicantStaIface.hal
+++ b/wifi/supplicant/1.0/ISupplicantStaIface.hal
@@ -49,6 +49,25 @@ interface ISupplicantStaIface extends ISupplicantIface {
};
/**
+ * Enum describing the types of RX filter supported
+ * via driver commands.
+ */
+ enum RxFilterType : uint8_t {
+ V4_MULTICAST = 0,
+ V6_MULTICAST = 1
+ };
+
+ /**
+ * Enum describing the modes of BT coexistence supported
+ * via driver commands.
+ */
+ enum BtCoexistenceMode : uint8_t {
+ ENABLED = 0,
+ DISABLED = 1,
+ SENSE = 2
+ };
+
+ /**
* Register for callbacks from this interface.
*
* These callbacks are invoked for events that are specific to this interface.
@@ -120,7 +139,7 @@ interface ISupplicantStaIface extends ISupplicantIface {
setPowerSave(bool enable) generates (SupplicantStatus status);
/**
- * Initiate TDLS discover with the provided peer mac address.
+ * Initiate TDLS discover with the provided peer MAC address.
*
* @param macAddress MAC address of the peer.
* @return status Status of the operation.
@@ -133,7 +152,7 @@ interface ISupplicantStaIface extends ISupplicantIface {
generates (SupplicantStatus status);
/**
- * Initiate TDLS setup with the provided peer mac address.
+ * Initiate TDLS setup with the provided peer MAC address.
*
* @param macAddress MAC address of the peer.
* @return status Status of the operation.
@@ -146,7 +165,7 @@ interface ISupplicantStaIface extends ISupplicantIface {
generates (SupplicantStatus status);
/**
- * Initiate TDLS teardown with the provided peer mac address.
+ * Initiate TDLS teardown with the provided peer MAC address.
*
* @param macAddress MAC address of the peer.
* @return status Status of the operation.
@@ -193,4 +212,111 @@ interface ISupplicantStaIface extends ISupplicantIface {
*/
initiateHs20IconQuery(MacAddress macAddress, string fileName)
generates (SupplicantStatus status);
+
+ /**
+ * Send driver command to get MAC address of the device.
+ *
+ * @return status Status of the operation.
+ * Possible status codes:
+ * |SupplicantStatusCode.SUCCESS|,
+ * |SupplicantStatusCode.FAILURE_UNKNOWN|
+ * @return macAddr MAC address of the device.
+ */
+ getMacAddress()
+ generates (SupplicantStatus status, MacAddress macAddr);
+
+ /**
+ * Send driver command to start RX filter.
+ *
+ * @return status Status of the operation.
+ * Possible status codes:
+ * |SupplicantStatusCode.SUCCESS|,
+ * |SupplicantStatusCode.FAILURE_UNKNOWN|
+ */
+ startRxFilter() generates (SupplicantStatus status);
+
+ /**
+ * Send driver command to stop RX filter.
+ *
+ * @return status Status of the operation.
+ * Possible status codes:
+ * |SupplicantStatusCode.SUCCESS|,
+ * |SupplicantStatusCode.FAILURE_UNKNOWN|
+ */
+ stopRxFilter() generates (SupplicantStatus status);
+
+ /**
+ * Send driver command to add the specified RX filter.
+ *
+ * @param type Type of filter.
+ * @return status Status of the operation.
+ * Possible status codes:
+ * |SupplicantStatusCode.SUCCESS|,
+ * |SupplicantStatusCode.FAILURE_UNKNOWN|
+ */
+ addRxFilter(RxFilterType type)
+ generates (SupplicantStatus status);
+
+ /**
+ * Send driver command to remove the specified RX filter.
+ *
+ * @param type Type of filter.
+ * @return status Status of the operation.
+ * Possible status codes:
+ * |SupplicantStatusCode.SUCCESS|,
+ * |SupplicantStatusCode.FAILURE_UNKNOWN|
+ */
+ removeRxFilter(RxFilterType type)
+ generates (SupplicantStatus status);
+
+ /**
+ * Send driver command to set Bluetooth coexistence mode.
+ *
+ * @param mode Mode of Bluetooth coexistence.
+ * @return status Status of the operation.
+ * Possible status codes:
+ * |SupplicantStatusCode.SUCCESS|,
+ * |SupplicantStatusCode.FAILURE_UNKNOWN|
+ */
+ setBtCoexistenceMode(BtCoexistenceMode mode)
+ generates (SupplicantStatus status);
+
+ /**
+ * Send driver command to set Bluetooth coexistence scan mode.
+ * When this mode is on, some of the low-level scan parameters
+ * used by the driver are changed to reduce interference
+ * with A2DP streaming.
+ *
+ * @param enable true to enable, false to disable.
+ * @return status Status of the operation.
+ * Possible status codes:
+ * |SupplicantStatusCode.SUCCESS|,
+ * |SupplicantStatusCode.FAILURE_UNKNOWN|
+ */
+ setBtCoexistenceScanModeEnabled(bool enable)
+ generates (SupplicantStatus status);
+
+ /**
+ * Send driver command to set suspend optimizations for power save.
+ *
+ * @param enable true to enable, false to disable.
+ * @return status Status of the operation.
+ * Possible status codes:
+ * |SupplicantStatusCode.SUCCESS|,
+ * |SupplicantStatusCode.FAILURE_UNKNOWN|
+ */
+ setSuspendModeEnabled(bool enable)
+ generates (SupplicantStatus status);
+
+ /**
+ * Send driver command to set country code.
+ *
+ * @param code 2 byte country code (as defined in ISO 3166) to set.
+ * @return status Status of the operation.
+ * Possible status codes:
+ * |SupplicantStatusCode.SUCCESS|,
+ * |SupplicantStatusCode.FAILURE_UNKNOWN|
+ */
+ setCountryCode(int8_t[2] code)
+ generates (SupplicantStatus status);
};