projects
/
platform
/
kernel
/
u-boot.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'master' of git://git.denx.de/u-boot-mmc
[platform/kernel/u-boot.git]
/
drivers
/
i2c
/
fsl_i2c.c
diff --git
a/drivers/i2c/fsl_i2c.c
b/drivers/i2c/fsl_i2c.c
index
407c4a7
..
ff3dc25
100644
(file)
--- a/
drivers/i2c/fsl_i2c.c
+++ b/
drivers/i2c/fsl_i2c.c
@@
-53,6
+53,7
@@
static const struct fsl_i2c_base *i2c_base[4] = {
/* I2C speed map for a DFSR value of 1 */
/* I2C speed map for a DFSR value of 1 */
+#ifdef __M68K__
/*
* Map I2C frequency dividers to FDR and DFSR values
*
/*
* Map I2C frequency dividers to FDR and DFSR values
*
@@
-84,7
+85,6
@@
static const struct {
unsigned short divider;
u8 fdr;
} fsl_i2c_speed_map[] = {
unsigned short divider;
u8 fdr;
} fsl_i2c_speed_map[] = {
-#ifdef __M68K__
{20, 32}, {22, 33}, {24, 34}, {26, 35},
{28, 0}, {28, 36}, {30, 1}, {32, 37},
{34, 2}, {36, 38}, {40, 3}, {40, 39},
{20, 32}, {22, 33}, {24, 34}, {26, 35},
{28, 0}, {28, 36}, {30, 1}, {32, 37},
{34, 2}, {36, 38}, {40, 3}, {40, 39},
@@
-102,8
+102,8
@@
static const struct {
{1536, 61}, {1792, 62}, {1920, 27}, {2048, 63},
{2304, 28}, {2560, 29}, {3072, 30}, {3840, 31},
{-1, 31}
{1536, 61}, {1792, 62}, {1920, 27}, {2048, 63},
{2304, 28}, {2560, 29}, {3072, 30}, {3840, 31},
{-1, 31}
-#endif
};
};
+#endif
/**
* Set the I2C bus speed for a given I2C device
/**
* Set the I2C bus speed for a given I2C device
@@
-284,15
+284,6
@@
static void __i2c_init(const struct fsl_i2c_base *base, int speed, int
break;
}
break;
}
-
-#ifdef CONFIG_SYS_I2C_BOARD_LATE_INIT
- /* Call board specific i2c bus reset routine AFTER the bus has been
- * initialized. Use either this callpoint or i2c_init_board;
- * which is called before i2c_init operations.
- * For details about this problem see doc/I2C_Edge_Conditions.
- */
- i2c_board_late_init();
-#endif
}
static int
}
static int
@@
-585,21
+576,21
@@
static int fsl_i2c_ofdata_to_platdata(struct udevice *bus)
struct fsl_i2c_dev *dev = dev_get_priv(bus);
fdt_addr_t addr;
fdt_size_t size;
struct fsl_i2c_dev *dev = dev_get_priv(bus);
fdt_addr_t addr;
fdt_size_t size;
+ int node = dev_of_offset(bus);
- addr = fdtdec_get_addr_size_auto_noparent(gd->fdt_blob,
bus->of_offset
,
-
"reg", 0, &siz
e);
+ addr = fdtdec_get_addr_size_auto_noparent(gd->fdt_blob,
node, "reg", 0
,
+
&size, fals
e);
dev->base = map_sysmem(CONFIG_SYS_IMMR + addr, size);
if (!dev->base)
return -ENOMEM;
dev->base = map_sysmem(CONFIG_SYS_IMMR + addr, size);
if (!dev->base)
return -ENOMEM;
- dev->index = fdtdec_get_int(gd->fdt_blob, bus->of_offset,
- "cell-index", -1);
- dev->slaveadd = fdtdec_get_int(gd->fdt_blob, bus->of_offset,
+ dev->index = fdtdec_get_int(gd->fdt_blob, node, "cell-index", -1);
+ dev->slaveadd = fdtdec_get_int(gd->fdt_blob, node,
"u-boot,i2c-slave-addr", 0x7f);
"u-boot,i2c-slave-addr", 0x7f);
- dev->speed = fdtdec_get_int(gd->fdt_blob,
bus->of_offset
,
-
"clock-frequency",
400000);
+ dev->speed = fdtdec_get_int(gd->fdt_blob,
node, "clock-frequency"
,
+ 400000);
dev->i2c_clk = dev->index ? gd->arch.i2c2_clk : gd->arch.i2c1_clk;
dev->i2c_clk = dev->index ? gd->arch.i2c2_clk : gd->arch.i2c1_clk;