extern const struct amd_nb_bus_dev_range amd_nb_bus_dev_ranges[];
 struct bootnode;
 
-extern int early_is_amd_nb(u32 value);
+extern bool early_is_amd_nb(u32 value);
 extern int amd_cache_northbridges(void);
 extern void amd_flush_garts(void);
 extern int amd_numa_init(unsigned long start_pfn, unsigned long end_pfn);
 };
 extern struct amd_northbridge_info amd_northbridges;
 
-#define AMD_NB_GART                    0x1
-#define AMD_NB_L3_INDEX_DISABLE                0x2
-#define AMD_NB_L3_PARTITIONING         0x4
+#define AMD_NB_GART                    BIT(0)
+#define AMD_NB_L3_INDEX_DISABLE                BIT(1)
+#define AMD_NB_L3_PARTITIONING         BIT(2)
 
 #ifdef CONFIG_AMD_NB
 
-static inline int amd_nb_num(void)
+static inline u16 amd_nb_num(void)
 {
        return amd_northbridges.num;
 }
 
-static inline int amd_nb_has_feature(int feature)
+static inline bool amd_nb_has_feature(unsigned feature)
 {
        return ((amd_northbridges.flags & feature) == feature);
 }
 
 
 int amd_cache_northbridges(void)
 {
-       int i = 0;
+       u16 i = 0;
        struct amd_northbridge *nb;
        struct pci_dev *misc, *link;
 
 }
 EXPORT_SYMBOL_GPL(amd_cache_northbridges);
 
-/* Ignores subdevice/subvendor but as far as I can figure out
-   they're useless anyways */
-int __init early_is_amd_nb(u32 device)
+/*
+ * Ignores subdevice/subvendor but as far as I can figure out
+ * they're useless anyways
+ */
+bool __init early_is_amd_nb(u32 device)
 {
        const struct pci_device_id *id;
        u32 vendor = device & 0xffff;
        device >>= 16;
        for (id = amd_nb_misc_ids; id->vendor; id++)
                if (vendor == id->vendor && device == id->device)
-                       return 1;
-       return 0;
+                       return true;
+       return false;
 }
 
 int amd_get_subcaches(int cpu)
        return 0;
 }
 
-int amd_cache_gart(void)
+static int amd_cache_gart(void)
 {
-       int i;
+       u16 i;
 
        if (!amd_nb_has_feature(AMD_NB_GART))
                return 0;