diff --git a/res/layout/setup_wifi_required_info.xml b/res/layout/setup_wifi_required_info.xml
deleted file mode 100644
index 574366a..0000000
--- a/res/layout/setup_wifi_required_info.xml
+++ /dev/null
@@ -1,27 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-     Copyright (C) 2015 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.
--->
-
-<TextView xmlns:android="http://schemas.android.com/apk/res/android"
-    android:id="@+id/wifi_required_info"
-    android:layout_width="match_parent"
-    android:layout_height="wrap_content"
-    android:paddingTop="@dimen/setup_wizard_margin_top"
-    android:paddingBottom="6dip"
-    android:paddingStart="@dimen/setup_wizard_margin_sides"
-    android:paddingEnd="@dimen/setup_wizard_margin_sides"
-    android:text="@string/wifi_required_info_text"
-    android:textAppearance="@style/TextAppearance.SetupWizardDescription" />
diff --git a/res/values/strings.xml b/res/values/strings.xml
index ae24dc7..5546cc4 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -1466,8 +1466,6 @@
     <string name="wifi_more">More</string>
     <!-- Wi-Fi settings. wps menu title [CHAR LIMIT=25]-->
     <string name="wifi_setup_wps">Automatic setup (WPS)</string>
-    <!-- Message informing that wifi is required during setup [CHAR LIMIT=NONE] -->
-    <string name="wifi_required_info_text">To complete setup, your tablet needs access to Wi\u2011Fi. After setup, you can switch between cellular data and Wi\u2011Fi.</string>
 
     <!-- Dialog for Access Points --> <skip />
     <!-- Label to show/hide advanced options [CHAR LIMIT=40] -->
diff --git a/src/com/android/settings/wifi/WifiSettingsForSetupWizard.java b/src/com/android/settings/wifi/WifiSettingsForSetupWizard.java
index 9862258..4dfea08 100644
--- a/src/com/android/settings/wifi/WifiSettingsForSetupWizard.java
+++ b/src/com/android/settings/wifi/WifiSettingsForSetupWizard.java
@@ -17,7 +17,6 @@
 package com.android.settings.wifi;
 
 import android.app.Dialog;
-import android.content.Intent;
 import android.net.wifi.WifiConfiguration;
 import android.os.Bundle;
 import android.view.LayoutInflater;
@@ -42,9 +41,6 @@
 
     private static final String TAG = "WifiSettingsForSetupWizard";
 
-    // show a text regarding data charges when wifi connection is required during setup wizard
-    protected static final String EXTRA_SHOW_WIFI_REQUIRED_INFO = "wifi_show_wifi_required_info";
-
     private View mAddOtherNetworkItem;
     private TextView mEmptyFooter;
     private boolean mListLastEmpty = false;
@@ -73,13 +69,6 @@
             }
         });
 
-        final Intent intent = getActivity().getIntent();
-        if (intent.getBooleanExtra(EXTRA_SHOW_WIFI_REQUIRED_INFO, false)) {
-            final View requiredInfo =
-                    inflater.inflate(R.layout.setup_wifi_required_info, list, false);
-            list.addHeaderView(requiredInfo, null, false);
-        }
-
         return view;
     }
 
