This reverts commit 
308cf8e13f42f476dfd6552aeff58fdc0788e566.  This
patch had trouble with transparent bridges, among other things.  A more
readable and correct version should land in 2.6.33.
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
                r = bus->resource[i];
                if (r == &ioport_resource || r == &iomem_resource)
                        continue;
-               if (r && (r->flags & type_mask) == type) {
-                       if (!r->parent)
-                               return r;
-                       /*
-                        * if there is no child under that, we should release
-                        * and use it. don't need to reset it, pbus_size_* will
-                        * set it again
-                        */
-                       if (!r->child && !release_resource(r))
-                               return r;
-               }
+               if (r && (r->flags & type_mask) == type && !r->parent)
+                       return r;
        }
        return NULL;
 }