void
 ath5k_debug_init_device(struct ath5k_softc *sc)
 {
-       sc->debug.level = ath5k_debug;
+       struct dentry *phydir;
 
-       sc->debug.debugfs_phydir = debugfs_create_dir("ath5k",
-                               sc->hw->wiphy->debugfsdir);
+       sc->debug.level = ath5k_debug;
 
-       sc->debug.debugfs_debug = debugfs_create_file("debug",
-                               S_IWUSR | S_IRUSR,
-                               sc->debug.debugfs_phydir, sc, &fops_debug);
+       phydir = debugfs_create_dir("ath5k", sc->hw->wiphy->debugfsdir);
+       if (!phydir)
+           return;
 
-       sc->debug.debugfs_registers = debugfs_create_file("registers", S_IRUSR,
-                               sc->debug.debugfs_phydir, sc, &fops_registers);
+       debugfs_create_file("debug", S_IWUSR | S_IRUSR, phydir, sc,
+                           &fops_debug);
 
-       sc->debug.debugfs_beacon = debugfs_create_file("beacon",
-                               S_IWUSR | S_IRUSR,
-                               sc->debug.debugfs_phydir, sc, &fops_beacon);
+       debugfs_create_file("registers", S_IRUSR, phydir, sc, &fops_registers);
 
-       sc->debug.debugfs_reset = debugfs_create_file("reset", S_IWUSR,
-                               sc->debug.debugfs_phydir, sc, &fops_reset);
+       debugfs_create_file("beacon", S_IWUSR | S_IRUSR, phydir, sc,
+                           &fops_beacon);
 
-       sc->debug.debugfs_antenna = debugfs_create_file("antenna",
-                               S_IWUSR | S_IRUSR,
-                               sc->debug.debugfs_phydir, sc, &fops_antenna);
+       debugfs_create_file("reset", S_IWUSR, phydir, sc, &fops_reset);
 
-       sc->debug.debugfs_misc = debugfs_create_file("misc",
-                               S_IRUSR,
-                               sc->debug.debugfs_phydir, sc, &fops_misc);
+       debugfs_create_file("antenna", S_IWUSR | S_IRUSR, phydir, sc,
+                           &fops_antenna);
 
-       sc->debug.debugfs_frameerrors = debugfs_create_file("frameerrors",
-                               S_IWUSR | S_IRUSR,
-                               sc->debug.debugfs_phydir, sc,
-                               &fops_frameerrors);
+       debugfs_create_file("misc", S_IRUSR, phydir, sc, &fops_misc);
 
-       sc->debug.debugfs_ani = debugfs_create_file("ani",
-                               S_IWUSR | S_IRUSR,
-                               sc->debug.debugfs_phydir, sc,
-                               &fops_ani);
+       debugfs_create_file("frameerrors", S_IWUSR | S_IRUSR, phydir, sc,
+                           &fops_frameerrors);
 
-       sc->debug.debugfs_queue = debugfs_create_file("queue",
-                               S_IWUSR | S_IRUSR,
-                               sc->debug.debugfs_phydir, sc,
-                               &fops_queue);
-}
+       debugfs_create_file("ani", S_IWUSR | S_IRUSR, phydir, sc, &fops_ani);
 
-void
-ath5k_debug_finish_device(struct ath5k_softc *sc)
-{
-       debugfs_remove(sc->debug.debugfs_debug);
-       debugfs_remove(sc->debug.debugfs_registers);
-       debugfs_remove(sc->debug.debugfs_beacon);
-       debugfs_remove(sc->debug.debugfs_reset);
-       debugfs_remove(sc->debug.debugfs_antenna);
-       debugfs_remove(sc->debug.debugfs_misc);
-       debugfs_remove(sc->debug.debugfs_frameerrors);
-       debugfs_remove(sc->debug.debugfs_ani);
-       debugfs_remove(sc->debug.debugfs_queue);
-       debugfs_remove(sc->debug.debugfs_phydir);
+       debugfs_create_file("queue", S_IWUSR | S_IRUSR, phydir, sc,
+                           &fops_queue);
 }
 
-
 /* functions used in other places */
 
 void
 
 
 struct ath5k_dbg_info {
        unsigned int            level;          /* debug level */
-       /* debugfs entries */
-       struct dentry           *debugfs_phydir;
-       struct dentry           *debugfs_debug;
-       struct dentry           *debugfs_registers;
-       struct dentry           *debugfs_beacon;
-       struct dentry           *debugfs_reset;
-       struct dentry           *debugfs_antenna;
-       struct dentry           *debugfs_misc;
-       struct dentry           *debugfs_frameerrors;
-       struct dentry           *debugfs_ani;
-       struct dentry           *debugfs_queue;
 };
 
 /**
 void
 ath5k_debug_init_device(struct ath5k_softc *sc);
 
-void
-ath5k_debug_finish_device(struct ath5k_softc *sc);
-
 void
 ath5k_debug_printrxbuffs(struct ath5k_softc *sc, struct ath5k_hw *ah);
 
 static inline void
 ath5k_debug_init_device(struct ath5k_softc *sc) {}
 
-static inline void
-ath5k_debug_finish_device(struct ath5k_softc *sc) {}
-
 static inline void
 ath5k_debug_printrxbuffs(struct ath5k_softc *sc, struct ath5k_hw *ah) {}