]> asedeno.scripts.mit.edu Git - linux.git/blobdiff - drivers/edac/i5100_edac.c
Merge tag 'arm-soc/for-5.5/devicetree-part2' of https://github.com/Broadcom/stblinux...
[linux.git] / drivers / edac / i5100_edac.c
index 251f2b692785d8729d2c48e35a663dacffdadf4e..0ddc41e47a96f515f41c90d6a398caacecff000c 100644 (file)
@@ -713,7 +713,6 @@ static int i5100_read_spd_byte(const struct mem_ctl_info *mci,
 {
        struct i5100_priv *priv = mci->pvt_info;
        u16 w;
-       unsigned long et;
 
        pci_read_config_word(priv->mc, I5100_SPDDATA, &w);
        if (i5100_spddata_busy(w))
@@ -724,7 +723,6 @@ static int i5100_read_spd_byte(const struct mem_ctl_info *mci,
                                                   0, 0));
 
        /* wait up to 100ms */
-       et = jiffies + HZ / 10;
        udelay(100);
        while (1) {
                pci_read_config_word(priv->mc, I5100_SPDDATA, &w);
@@ -848,21 +846,17 @@ static void i5100_init_interleaving(struct pci_dev *pdev,
 
 static void i5100_init_csrows(struct mem_ctl_info *mci)
 {
-       int i;
        struct i5100_priv *priv = mci->pvt_info;
+       struct dimm_info *dimm;
 
-       for (i = 0; i < mci->tot_dimms; i++) {
-               struct dimm_info *dimm;
-               const unsigned long npages = i5100_npages(mci, i);
-               const unsigned int chan = i5100_csrow_to_chan(mci, i);
-               const unsigned int rank = i5100_csrow_to_rank(mci, i);
+       mci_for_each_dimm(mci, dimm) {
+               const unsigned long npages = i5100_npages(mci, dimm->idx);
+               const unsigned int chan = i5100_csrow_to_chan(mci, dimm->idx);
+               const unsigned int rank = i5100_csrow_to_rank(mci, dimm->idx);
 
                if (!npages)
                        continue;
 
-               dimm = EDAC_DIMM_PTR(mci->layers, mci->dimms, mci->n_layers,
-                              chan, rank, 0);
-
                dimm->nr_pages = npages;
                dimm->grain = 32;
                dimm->dtype = (priv->mtr[chan][rank].width == 4) ?