diff --git a/rmnetctl/cli/rmnetcli.c b/rmnetctl/cli/rmnetcli.c
index f59c77b..4e249a0 100644
--- a/rmnetctl/cli/rmnetcli.c
+++ b/rmnetctl/cli/rmnetcli.c
@@ -227,7 +227,8 @@
 	printf(_2TABS" <vnd id>                string - vnd device_name");
 	printf(_2TABS" <packet count>          int - maximum packet count");
 	printf(_2TABS" <byte count>            int - maximum byte count");
-	printf(_2TABS" <time limit>            int - maximum time limit\n\n");
+	printf(_2TABS" <time limit>            int - maximum time limit");
+	printf(_2TABS" <features>              int - aggregation features\n\n");
 	printf("rmnetcli -n flowactivate <real dev>  activate a flow\n");
 	printf(_2TABS" <vnd_name>              string - vnd device name\n\n");
 	printf(_2TABS" <bearer_id>             int - bearer id\n\n");
@@ -410,11 +411,12 @@
 			_RMNETCLI_CHECKNULL(argv[3]);
 			_RMNETCLI_CHECKNULL(argv[4]);
 			_RMNETCLI_CHECKNULL(argv[5]);
+			_RMNETCLI_CHECKNULL(argv[6]);
 
 			return_code = rtrmnet_set_uplink_aggregation_params(
 				handle, argv[1], argv[2], _STRTOUI8(argv[3]),
 				_STRTOUI16(argv[4]), _STRTOUI32(argv[5]),
-				&error_number);
+				_STRTOUI8(argv[6]), &error_number);
 		}
 		else if (!strcmp(*argv, "flowactivate")) {
 			_RMNETCLI_CHECKNULL(argv[1]);
diff --git a/rmnetctl/src/Android.mk b/rmnetctl/src/Android.mk
index 608c6fd..1d0144b 100644
--- a/rmnetctl/src/Android.mk
+++ b/rmnetctl/src/Android.mk
@@ -1,6 +1,6 @@
 TARGET_DISABLE_RMNT := false
 ifeq ($(TARGET_USES_QMAA),true)
-ifneq ($(TARGET_USES_QMAA_OVERRIDE_DATA),true)
+ifneq ($(TARGET_USES_QMAA_OVERRIDE_DATA_NET),true)
 TARGET_DISABLE_RMNT := true
 endif
 endif
