int vchiq_arm_log_level = VCHIQ_LOG_DEFAULT;
 int vchiq_susp_log_level = VCHIQ_LOG_ERROR;
 
-#define SUSPEND_TIMER_TIMEOUT_MS 100
-#define SUSPEND_RETRY_TIMER_TIMEOUT_MS 1000
-
 #define VC_SUSPEND_NUM_OFFSET 3 /* number of values before idle which are -ve */
 static const char *const suspend_state_names[] = {
        "VC_SUSPEND_FORCE_CANCELED",
  * requested */
 #define FORCE_SUSPEND_TIMEOUT_MS 200
 
-static void suspend_timer_callback(struct timer_list *t);
-
 struct user_service {
        struct vchiq_service *service;
        void *userdata;
                 * completion while videocore is suspended. */
                set_resume_state(arm_state, VC_RESUME_RESUMED);
 
-               arm_state->suspend_timer_timeout = SUSPEND_TIMER_TIMEOUT_MS;
-               arm_state->suspend_timer_running = 0;
                arm_state->state = state;
-               timer_setup(&arm_state->suspend_timer, suspend_timer_callback,
-                           0);
-
                arm_state->first_connect = 0;
 
        }
        }
 }
 
-/* should be called with the write lock held */
-inline void
-start_suspend_timer(struct vchiq_arm_state *arm_state)
-{
-       del_timer(&arm_state->suspend_timer);
-       arm_state->suspend_timer.expires = jiffies +
-               msecs_to_jiffies(arm_state->suspend_timer_timeout);
-       add_timer(&arm_state->suspend_timer);
-       arm_state->suspend_timer_running = 1;
-}
-
-/* should be called with the write lock held */
-static inline void
-stop_suspend_timer(struct vchiq_arm_state *arm_state)
-{
-       if (arm_state->suspend_timer_running) {
-               del_timer(&arm_state->suspend_timer);
-               arm_state->suspend_timer_running = 0;
-       }
-}
-
 static inline int
 need_resume(struct vchiq_state *state)
 {
        return;
 }
 
-void
-vchiq_check_suspend(struct vchiq_state *state)
-{
-       struct vchiq_arm_state *arm_state = vchiq_platform_get_arm_state(state);
-
-       if (!arm_state)
-               goto out;
-
-       vchiq_log_trace(vchiq_susp_log_level, "%s", __func__);
-
-       write_lock_bh(&arm_state->susp_res_lock);
-       if (arm_state->vc_suspend_state != VC_SUSPEND_SUSPENDED &&
-                       arm_state->first_connect &&
-                       !vchiq_videocore_wanted(state)) {
-               vchiq_arm_vcsuspend(state);
-       }
-       write_unlock_bh(&arm_state->susp_res_lock);
-
-out:
-       vchiq_log_trace(vchiq_susp_log_level, "%s exit", __func__);
-}
-
 /* This function should be called with the write lock held */
 int
 vchiq_check_resume(struct vchiq_state *state)
        }
 
        write_lock_bh(&arm_state->susp_res_lock);
-
-       stop_suspend_timer(arm_state);
-
        local_uc = ++arm_state->videocore_use_count;
        local_entity_uc = ++(*entity_uc);
 
        --(*entity_uc);
 
        if (!vchiq_videocore_wanted(state)) {
-               if (vchiq_platform_use_suspend_timer()) {
-                       start_suspend_timer(arm_state);
-               } else {
-                       vchiq_log_info(vchiq_susp_log_level,
-                               "%s %s count %d, state count %d - suspending",
-                               __func__, entity, *entity_uc,
-                               arm_state->videocore_use_count);
-                       vchiq_arm_vcsuspend(state);
-               }
+               vchiq_log_info(vchiq_susp_log_level,
+                       "%s %s count %d, state count %d - suspending",
+                       __func__, entity, *entity_uc,
+                       arm_state->videocore_use_count);
+               vchiq_arm_vcsuspend(state);
        } else
                vchiq_log_trace(vchiq_susp_log_level,
                        "%s %s count %d, state count %d",
        instance->trace = (trace != 0);
 }
 
-static void suspend_timer_callback(struct timer_list *t)
-{
-       struct vchiq_arm_state *arm_state =
-                                       from_timer(arm_state, t, suspend_timer);
-       struct vchiq_state *state = arm_state->state;
-
-       vchiq_log_info(vchiq_susp_log_level,
-               "%s - suspend timer expired - check suspend", __func__);
-       vchiq_check_suspend(state);
-}
-
 enum vchiq_status
 vchiq_use_service(unsigned int handle)
 {
                "--- Overall vchiq instance use count %d", vc_use_count);
 
        kfree(service_data);
-
-       vchiq_dump_platform_use_state(state);
 }
 
 enum vchiq_status