diff --git a/Android.bp b/Android.bp
index 5a1224c..cc2c2ae 100644
--- a/Android.bp
+++ b/Android.bp
@@ -82,6 +82,7 @@
 
         // Settings dependencies
         "FingerprintManagerInteractor",
+        "MediaDrmSettingsFlagsLib",
         "Settings-change-ids",
         "SettingsLib",
         "SettingsLibActivityEmbedding",
diff --git a/aconfig/Android.bp b/aconfig/Android.bp
index eb9a6b4..37b03ba 100644
--- a/aconfig/Android.bp
+++ b/aconfig/Android.bp
@@ -25,3 +25,14 @@
     name: "factory_reset_flags_lib",
     aconfig_declarations: "factory_reset_flags",
 }
+
+aconfig_declarations {
+    name: "media_drm_flags",
+    package: "com.android.settings.media_drm",
+    srcs: ["media_drm/*.aconfig"],
+}
+
+java_aconfig_library {
+    name: "MediaDrmSettingsFlagsLib",
+    aconfig_declarations: "media_drm_flags",
+}
\ No newline at end of file
diff --git a/aconfig/media_drm/settings_mediadrm_flag_declarations.aconfig b/aconfig/media_drm/settings_mediadrm_flag_declarations.aconfig
new file mode 100644
index 0000000..06d75f1
--- /dev/null
+++ b/aconfig/media_drm/settings_mediadrm_flag_declarations.aconfig
@@ -0,0 +1,8 @@
+package: "com.android.settings.media_drm"
+
+flag {
+    name: "force_l3_enabled"
+    namespace: "media_drm"
+    description: "Feature flag of forcing L3"
+    bug: "301669353"
+}
\ No newline at end of file
diff --git a/src/com/android/settings/development/widevine/ForceL3FallbackPreferenceController.java b/src/com/android/settings/development/widevine/ForceL3FallbackPreferenceController.java
index 05f2dc1..78468c1 100644
--- a/src/com/android/settings/development/widevine/ForceL3FallbackPreferenceController.java
+++ b/src/com/android/settings/development/widevine/ForceL3FallbackPreferenceController.java
@@ -18,17 +18,22 @@
 
 import android.content.Context;
 import android.sysprop.WidevineProperties;
+import android.util.Log;
+
+import androidx.preference.Preference;
 
 import com.android.internal.annotations.VisibleForTesting;
 import com.android.settings.R;
 import com.android.settings.core.TogglePreferenceController;
 import com.android.settingslib.development.DevelopmentSettingsEnabler;
+import com.android.settings.media_drm.Flags;
 
 /**
  * The controller (in the Media Widevine settings) enforces L3 security level
 * of Widevine CDM.
 */
 public class ForceL3FallbackPreferenceController extends TogglePreferenceController {
+    private static final String TAG = "ForceL3FallbackPreferenceController";
 
     public ForceL3FallbackPreferenceController(Context context, String preferenceKey) {
         super(context, preferenceKey);
@@ -46,6 +51,20 @@
     }
 
     @Override
+    public void updateState(Preference preference) {
+        if (Flags.forceL3Enabled()) {
+            preference.setEnabled(true);
+            Log.i(TAG, "forceL3Enabled is on");
+        } else {
+            preference.setEnabled(false);
+            // In case of flag rollback, the controller should be unchecked.
+            WidevineProperties.forcel3_enabled(false);
+            Log.i(TAG, "forceL3Enabled is off");
+        }
+        super.updateState(preference);
+    }
+
+    @Override
     public int getAvailabilityStatus() {
         if (DevelopmentSettingsEnabler.isDevelopmentSettingsEnabled(mContext)) {
             return AVAILABLE;
