diff --git modules/field/field.api.php modules/field/field.api.php
index 3136abe..113cc11 100644
--- modules/field/field.api.php
+++ modules/field/field.api.php
@@ -1672,6 +1672,7 @@ function hook_field_storage_pre_update($entity_type, $entity, &$skip_fields) {
  *   - entity_type: The entity type; e.g. 'node' or 'user'.
  *   - field: The field being rendered.
  *   - instance: The instance being rendered.
+ *   - entity: The entity being rendered.
  *   - view_mode: The view mode, e.g. 'full', 'teaser'...
  *
  * @see hook_field_display_ENTITY_TYPE_alter()
@@ -1706,6 +1707,7 @@ function hook_field_display_alter(&$display, $context) {
  *   - entity_type: The entity type; e.g. 'node' or 'user'.
  *   - field: The field being rendered.
  *   - instance: The instance being rendered.
+ *   - entity: The entity being rendered.
  *   - view_mode: The view mode, e.g. 'full', 'teaser'...
  *
  * @see hook_field_display_alter()
diff --git modules/field/field.default.inc modules/field/field.default.inc
index 549ac20..3c46ec3 100644
--- modules/field/field.default.inc
+++ modules/field/field.default.inc
@@ -121,7 +121,7 @@ function field_default_prepare_view($entity_type, $entities, $field, $instances,
   foreach ($instances as $id => $instance) {
     if (is_string($display)) {
       $view_mode = $display;
-      $display = field_get_display($instance, $view_mode);
+      $display = field_get_display($instance, $view_mode, $entities[$id]);
     }
     if ($display['type'] !== 'hidden') {
       $module = $display['module'];
@@ -173,7 +173,7 @@ function field_default_view($entity_type, $entity, $field, $instance, $langcode,
   // Prepare incoming display specifications.
   if (is_string($display)) {
     $view_mode = $display;
-    $display = field_get_display($instance, $view_mode);
+    $display = field_get_display($instance, $view_mode, $entity);
   }
   else {
     $view_mode = '_custom_display';
diff --git modules/field/field.module modules/field/field.module
index a8a0673..62fa1b3 100644
--- modules/field/field.module
+++ modules/field/field.module
@@ -559,11 +559,13 @@ function field_extra_fields($entity_type, $bundle, $context) {
  *   The field instance being displayed.
  * @param $view_mode
  *   The view mode.
+ * @param $entity
+ *   The entity being displayed.
  *
  * @return
  *   The display settings to be used when displaying the field values.
  */
-function field_get_display($instance, $view_mode) {
+function field_get_display($instance, $view_mode, $entity) {
   // Check whether the view mode uses custom display settings or the 'default'
   // mode.
   $view_mode_settings = field_view_mode_settings($instance['entity_type'], $instance['bundle']);
@@ -575,6 +577,7 @@ function field_get_display($instance, $view_mode) {
     'entity_type' => $instance['entity_type'],
     'field' => field_info_field($instance['field_name']),
     'instance' => $instance,
+    'entity' => $entity,
     'view_mode' => $view_mode,
   );
   drupal_alter(array('field_display', 'field_display_' . $instance['entity_type']), $display, $context);
