Revert "Bind an input device via descriptor"

Revert submission 26153841-bind_via_descriptor

Reason for revert: b/335777956
Reverted changes: /q/submissionid:26153841-bind_via_descriptor

Change-Id: I1fd8c73f6700b1992a43e8b2f43d4df4b8f9f05e
diff --git a/libs/input/input_flags.aconfig b/libs/input/input_flags.aconfig
index f421e78..e041c51 100644
--- a/libs/input/input_flags.aconfig
+++ b/libs/input/input_flags.aconfig
@@ -135,11 +135,5 @@
   description: "Enable prediction pruning based on jerk thresholds."
   bug: "266747654"
   is_fixed_read_only: true
-}
 
-flag {
-  name: "device_associations"
-  namespace: "input"
-  description: "Binds InputDevice name and InputDevice description against display unique id."
-  bug: "324075859"
 }
diff --git a/services/inputflinger/include/InputReaderBase.h b/services/inputflinger/include/InputReaderBase.h
index 77e672c..79c8a4b 100644
--- a/services/inputflinger/include/InputReaderBase.h
+++ b/services/inputflinger/include/InputReaderBase.h
@@ -111,13 +111,9 @@
     // Used to determine which DisplayViewport should be tied to which InputDevice.
     std::unordered_map<std::string, uint8_t> portAssociations;
 
-    // The associations between input device ports and display unique ids.
+    // The associations between input device physical port locations and display unique ids.
     // Used to determine which DisplayViewport should be tied to which InputDevice.
-    std::unordered_map<std::string, std::string> uniqueIdAssociationsByPort;
-
-    // The associations between input device descriptor and display unique ids.
-    // Used to determine which DisplayViewport should be tied to which InputDevice.
-    std::unordered_map<std::string, std::string> uniqueIdAssociationsByDescriptor;
+    std::unordered_map<std::string, std::string> uniqueIdAssociations;
 
     // The associations between input device ports device types.
     // This is used to determine which device type and source should be tied to which InputDevice.
diff --git a/services/inputflinger/reader/InputDevice.cpp b/services/inputflinger/reader/InputDevice.cpp
index 933c502..782c84a 100644
--- a/services/inputflinger/reader/InputDevice.cpp
+++ b/services/inputflinger/reader/InputDevice.cpp
@@ -77,11 +77,11 @@
 
         // If a device is associated with a specific display but there is no
         // associated DisplayViewport, don't enable the device.
-        if (enable && (mAssociatedDisplayPort || mAssociatedDisplayUniqueIdByPort) &&
+        if (enable && (mAssociatedDisplayPort || mAssociatedDisplayUniqueId) &&
             !mAssociatedViewport) {
             const std::string desc = mAssociatedDisplayPort
                     ? "port " + std::to_string(*mAssociatedDisplayPort)
-                    : "uniqueId " + *mAssociatedDisplayUniqueIdByPort;
+                    : "uniqueId " + *mAssociatedDisplayUniqueId;
             ALOGW("Cannot enable input device %s because it is associated "
                   "with %s, but the corresponding viewport is not found",
                   getName().c_str(), desc.c_str());
@@ -124,15 +124,9 @@
     } else {
         dump += "<none>\n";
     }
-    dump += StringPrintf(INDENT2 "AssociatedDisplayUniqueIdByPort: ");
-    if (mAssociatedDisplayUniqueIdByPort) {
-        dump += StringPrintf("%s\n", mAssociatedDisplayUniqueIdByPort->c_str());
-    } else {
-        dump += "<none>\n";
-    }
-    dump += StringPrintf(INDENT2 "AssociatedDisplayUniqueIdByDescriptor: ");
-    if (mAssociatedDisplayUniqueIdByDescriptor) {
-        dump += StringPrintf("%s\n", mAssociatedDisplayUniqueIdByDescriptor->c_str());
+    dump += StringPrintf(INDENT2 "AssociatedDisplayUniqueId: ");
+    if (mAssociatedDisplayUniqueId) {
+        dump += StringPrintf("%s\n", mAssociatedDisplayUniqueId->c_str());
     } else {
         dump += "<none>\n";
     }
@@ -275,28 +269,8 @@
 
             // In most situations, no port or name will be specified.
             mAssociatedDisplayPort = std::nullopt;
-            mAssociatedDisplayUniqueIdByPort = std::nullopt;
+            mAssociatedDisplayUniqueId = std::nullopt;
             mAssociatedViewport = std::nullopt;
-            // Find the display port that corresponds to the current input device descriptor
-            const std::string& inputDeviceDescriptor = mIdentifier.descriptor;
-            if (!inputDeviceDescriptor.empty()) {
-                const std::unordered_map<std::string, uint8_t>& ports =
-                        readerConfig.portAssociations;
-                const auto& displayPort = ports.find(inputDeviceDescriptor);
-                if (displayPort != ports.end()) {
-                    mAssociatedDisplayPort = std::make_optional(displayPort->second);
-                } else {
-                    const std::unordered_map<std::string, std::string>&
-                            displayUniqueIdsByDescriptor =
-                                    readerConfig.uniqueIdAssociationsByDescriptor;
-                    const auto& displayUniqueIdByDescriptor =
-                            displayUniqueIdsByDescriptor.find(inputDeviceDescriptor);
-                    if (displayUniqueIdByDescriptor != displayUniqueIdsByDescriptor.end()) {
-                        mAssociatedDisplayUniqueIdByDescriptor =
-                                displayUniqueIdByDescriptor->second;
-                    }
-                }
-            }
             // Find the display port that corresponds to the current input port.
             const std::string& inputPort = mIdentifier.location;
             if (!inputPort.empty()) {
@@ -306,11 +280,11 @@
                 if (displayPort != ports.end()) {
                     mAssociatedDisplayPort = std::make_optional(displayPort->second);
                 } else {
-                    const std::unordered_map<std::string, std::string>& displayUniqueIdsByPort =
-                            readerConfig.uniqueIdAssociationsByPort;
-                    const auto& displayUniqueIdByPort = displayUniqueIdsByPort.find(inputPort);
-                    if (displayUniqueIdByPort != displayUniqueIdsByPort.end()) {
-                        mAssociatedDisplayUniqueIdByPort = displayUniqueIdByPort->second;
+                    const std::unordered_map<std::string, std::string>& displayUniqueIds =
+                            readerConfig.uniqueIdAssociations;
+                    const auto& displayUniqueId = displayUniqueIds.find(inputPort);
+                    if (displayUniqueId != displayUniqueIds.end()) {
+                        mAssociatedDisplayUniqueId = displayUniqueId->second;
                     }
                 }
             }
@@ -325,21 +299,13 @@
                           "but the corresponding viewport is not found.",
                           getName().c_str(), *mAssociatedDisplayPort);
                 }
-            } else if (mAssociatedDisplayUniqueIdByDescriptor != std::nullopt) {
-                mAssociatedViewport = readerConfig.getDisplayViewportByUniqueId(
-                        *mAssociatedDisplayUniqueIdByDescriptor);
+            } else if (mAssociatedDisplayUniqueId != std::nullopt) {
+                mAssociatedViewport =
+                        readerConfig.getDisplayViewportByUniqueId(*mAssociatedDisplayUniqueId);
                 if (!mAssociatedViewport) {
                     ALOGW("Input device %s should be associated with display %s but the "
                           "corresponding viewport cannot be found",
-                          getName().c_str(), mAssociatedDisplayUniqueIdByDescriptor->c_str());
-                }
-            } else if (mAssociatedDisplayUniqueIdByPort != std::nullopt) {
-                mAssociatedViewport = readerConfig.getDisplayViewportByUniqueId(
-                        *mAssociatedDisplayUniqueIdByPort);
-                if (!mAssociatedViewport) {
-                    ALOGW("Input device %s should be associated with display %s but the "
-                          "corresponding viewport cannot be found",
-                          getName().c_str(), mAssociatedDisplayUniqueIdByPort->c_str());
+                          getName().c_str(), mAssociatedDisplayUniqueId->c_str());
                 }
             }
 
diff --git a/services/inputflinger/reader/include/InputDevice.h b/services/inputflinger/reader/include/InputDevice.h
index feb4071..0719b0c 100644
--- a/services/inputflinger/reader/include/InputDevice.h
+++ b/services/inputflinger/reader/include/InputDevice.h
@@ -63,11 +63,8 @@
     inline std::optional<uint8_t> getAssociatedDisplayPort() const {
         return mAssociatedDisplayPort;
     }
-    inline std::optional<std::string> getAssociatedDisplayUniqueIdByPort() const {
-        return mAssociatedDisplayUniqueIdByPort;
-    }
-    inline std::optional<std::string> getAssociatedDisplayUniqueIdByDescriptor() const {
-        return mAssociatedDisplayUniqueIdByDescriptor;
+    inline std::optional<std::string> getAssociatedDisplayUniqueId() const {
+        return mAssociatedDisplayUniqueId;
     }
     inline std::optional<std::string> getDeviceTypeAssociation() const {
         return mAssociatedDeviceType;
@@ -197,8 +194,7 @@
     bool mIsWaking;
     bool mIsExternal;
     std::optional<uint8_t> mAssociatedDisplayPort;
-    std::optional<std::string> mAssociatedDisplayUniqueIdByPort;
-    std::optional<std::string> mAssociatedDisplayUniqueIdByDescriptor;
+    std::optional<std::string> mAssociatedDisplayUniqueId;
     std::optional<std::string> mAssociatedDeviceType;
     std::optional<DisplayViewport> mAssociatedViewport;
     bool mHasMic;
@@ -453,11 +449,8 @@
     inline std::optional<uint8_t> getAssociatedDisplayPort() const {
         return mDevice.getAssociatedDisplayPort();
     }
-    inline std::optional<std::string> getAssociatedDisplayUniqueIdByPort() const {
-        return mDevice.getAssociatedDisplayUniqueIdByPort();
-    }
-    inline std::optional<std::string> getAssociatedDisplayUniqueIdByDescriptor() const {
-        return mDevice.getAssociatedDisplayUniqueIdByDescriptor();
+    inline std::optional<std::string> getAssociatedDisplayUniqueId() const {
+        return mDevice.getAssociatedDisplayUniqueId();
     }
     inline std::optional<std::string> getDeviceTypeAssociation() const {
         return mDevice.getDeviceTypeAssociation();
diff --git a/services/inputflinger/reader/mapper/TouchInputMapper.cpp b/services/inputflinger/reader/mapper/TouchInputMapper.cpp
index 82d816c..7d27d4a 100644
--- a/services/inputflinger/reader/mapper/TouchInputMapper.cpp
+++ b/services/inputflinger/reader/mapper/TouchInputMapper.cpp
@@ -536,15 +536,9 @@
             return getDeviceContext().getAssociatedViewport();
         }
 
-        const std::optional<std::string> associatedDisplayUniqueIdByDescriptor =
-                getDeviceContext().getAssociatedDisplayUniqueIdByDescriptor();
-        if (associatedDisplayUniqueIdByDescriptor) {
-            return getDeviceContext().getAssociatedViewport();
-        }
-
-        const std::optional<std::string> associatedDisplayUniqueIdByPort =
-                getDeviceContext().getAssociatedDisplayUniqueIdByPort();
-        if (associatedDisplayUniqueIdByPort) {
+        const std::optional<std::string> associatedDisplayUniqueId =
+                getDeviceContext().getAssociatedDisplayUniqueId();
+        if (associatedDisplayUniqueId) {
             return getDeviceContext().getAssociatedViewport();
         }
 
diff --git a/services/inputflinger/tests/FakeInputReaderPolicy.cpp b/services/inputflinger/tests/FakeInputReaderPolicy.cpp
index e9118a9..8f593b5 100644
--- a/services/inputflinger/tests/FakeInputReaderPolicy.cpp
+++ b/services/inputflinger/tests/FakeInputReaderPolicy.cpp
@@ -139,7 +139,7 @@
 
 void FakeInputReaderPolicy::addInputUniqueIdAssociation(const std::string& inputUniqueId,
                                                         const std::string& displayUniqueId) {
-    mConfig.uniqueIdAssociationsByPort.insert({inputUniqueId, displayUniqueId});
+    mConfig.uniqueIdAssociations.insert({inputUniqueId, displayUniqueId});
 }
 
 void FakeInputReaderPolicy::addKeyboardLayoutAssociation(const std::string& inputUniqueId,
diff --git a/services/inputflinger/tests/InputReader_test.cpp b/services/inputflinger/tests/InputReader_test.cpp
index 1c20987..1d46c9a 100644
--- a/services/inputflinger/tests/InputReader_test.cpp
+++ b/services/inputflinger/tests/InputReader_test.cpp
@@ -2907,7 +2907,7 @@
     const auto initialGeneration = mDevice->getGeneration();
     unused += mDevice->configure(ARBITRARY_TIME, mFakePolicy->getReaderConfiguration(),
                                  InputReaderConfiguration::Change::DISPLAY_INFO);
-    ASSERT_EQ(DISPLAY_UNIQUE_ID, mDevice->getAssociatedDisplayUniqueIdByPort());
+    ASSERT_EQ(DISPLAY_UNIQUE_ID, mDevice->getAssociatedDisplayUniqueId());
     ASSERT_GT(mDevice->getGeneration(), initialGeneration);
     ASSERT_EQ(mDevice->getDeviceInfo().getAssociatedDisplayId(), SECONDARY_DISPLAY_ID);
 }