This should never happen in the real world.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
                }
        }
 
+       /*
+        * This should never happen; we return above if we fail to
+        * allocate and we should never be in this code if there are
+        * no registers at all.
+        */
+       if (list_empty(&map->debugfs_off_cache)) {
+               WARN_ON(list_empty(&map->debugfs_off_cache));
+               return base;
+       }
+
        /* Find the relevant block */
        list_for_each_entry(c, &map->debugfs_off_cache, list) {
                if (from >= c->min && from <= c->max) {