sh: enable I2C on the ap325rxa board
This patch enables I2C on the sh7723-based ap325rxa board. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
This commit is contained in:
@@ -15,6 +15,7 @@
|
|||||||
#include <linux/platform_device.h>
|
#include <linux/platform_device.h>
|
||||||
#include <linux/mtd/physmap.h>
|
#include <linux/mtd/physmap.h>
|
||||||
#include <linux/delay.h>
|
#include <linux/delay.h>
|
||||||
|
#include <linux/i2c.h>
|
||||||
#include <asm/io.h>
|
#include <asm/io.h>
|
||||||
|
|
||||||
static struct resource smc9118_resources[] = {
|
static struct resource smc9118_resources[] = {
|
||||||
@@ -83,14 +84,21 @@ static struct platform_device *ap325rxa_devices[] __initdata = {
|
|||||||
&ap325rxa_nor_flash_device
|
&ap325rxa_nor_flash_device
|
||||||
};
|
};
|
||||||
|
|
||||||
|
static struct i2c_board_info __initdata ap325rxa_i2c_devices[] = {
|
||||||
|
};
|
||||||
|
|
||||||
static int __init ap325rxa_devices_setup(void)
|
static int __init ap325rxa_devices_setup(void)
|
||||||
{
|
{
|
||||||
|
i2c_register_board_info(0, ap325rxa_i2c_devices,
|
||||||
|
ARRAY_SIZE(ap325rxa_i2c_devices));
|
||||||
|
|
||||||
return platform_add_devices(ap325rxa_devices,
|
return platform_add_devices(ap325rxa_devices,
|
||||||
ARRAY_SIZE(ap325rxa_devices));
|
ARRAY_SIZE(ap325rxa_devices));
|
||||||
}
|
}
|
||||||
device_initcall(ap325rxa_devices_setup);
|
device_initcall(ap325rxa_devices_setup);
|
||||||
|
|
||||||
#define MSTPCR0 (0xA4150030)
|
#define MSTPCR0 (0xA4150030)
|
||||||
|
#define MSTPCR1 (0xA4150034)
|
||||||
#define MSTPCR2 (0xA4150038)
|
#define MSTPCR2 (0xA4150038)
|
||||||
|
|
||||||
static void __init ap325rxa_setup(char **cmdline_p)
|
static void __init ap325rxa_setup(char **cmdline_p)
|
||||||
@@ -100,6 +108,9 @@ static void __init ap325rxa_setup(char **cmdline_p)
|
|||||||
|
|
||||||
/* enable MERAM */
|
/* enable MERAM */
|
||||||
ctrl_outl(ctrl_inl(MSTPCR0) & ~0x00000001, MSTPCR0); /* bit 0 */
|
ctrl_outl(ctrl_inl(MSTPCR0) & ~0x00000001, MSTPCR0); /* bit 0 */
|
||||||
|
|
||||||
|
/* I2C */
|
||||||
|
ctrl_outl(ctrl_inl(MSTPCR1) & ~0x00000200, MSTPCR1);
|
||||||
}
|
}
|
||||||
|
|
||||||
static struct sh_machine_vector mv_ap325rxa __initmv = {
|
static struct sh_machine_vector mv_ap325rxa __initmv = {
|
||||||
|
Reference in New Issue
Block a user