]> git.sur5r.net Git - u-boot/blobdiff - board/freescale/c29xpcie/ddr.c
Merge branch 'master' of git://git.denx.de/u-boot-mpc85xx
[u-boot] / board / freescale / c29xpcie / ddr.c
index 968655c1b3474454e5f5b78eb9b9b6abbd6287e8..7c915b036f35303ad2b2e0b49c3dc7f842c86691 100644 (file)
@@ -5,6 +5,7 @@
  */
 
 #include <common.h>
+#include <i2c.h>
 #include <asm/fsl_law.h>
 #include <fsl_ddr_sdram.h>
 #include <fsl_ddr_dimm_params.h>
@@ -92,3 +93,15 @@ void fsl_ddr_board_options(memctl_options_t *popts,
                popts->cs_local_opts[i].odt_wr_cfg = FSL_DDR_ODT_CS;
        }
 }
+
+void get_spd(generic_spd_eeprom_t *spd, u8 i2c_address)
+{
+       int ret = i2c_read(i2c_address, 0, 2, (uint8_t *)spd,
+                               sizeof(generic_spd_eeprom_t));
+
+       if (ret) {
+               printf("DDR: failed to read SPD from address %u\n",
+                               i2c_address);
+               memset(spd, 0, sizeof(generic_spd_eeprom_t));
+       }
+}