Index: django/contrib/admin/validation.py
===================================================================
--- django/contrib/admin/validation.py	(revision 8290)
+++ django/contrib/admin/validation.py	(working copy)
@@ -93,10 +93,9 @@
                 continue
             _check_field_existsw('ordering[%d]' % idx, field)
 
-    # list_select_related = False
     # save_as = False
     # save_on_top = False
-    for attr in ('list_select_related', 'save_as', 'save_on_top'):
+    for attr in ('save_as', 'save_on_top'):
         if not isinstance(getattr(cls, attr), bool):
             raise ImproperlyConfigured("`%s.%s` should be a boolean."
                     % (cls.__name__, attr))
Index: django/contrib/admin/views/main.py
===================================================================
--- django/contrib/admin/views/main.py	(revision 8290)
+++ django/contrib/admin/views/main.py	(working copy)
@@ -185,7 +185,11 @@
         # Use select_related() if one of the list_display options is a field
         # with a relationship.
         if self.list_select_related:
-            qs = qs.select_related()
+            if isinstance(self.list_select_related, (list, tuple)):
+                related_tables = self.list_select_related
+            else:
+                related_tables = []
+            qs = qs.select_related(*related_tables)
         else:
             for field_name in self.list_display:
                 try:
