Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4bd4c5b3 authored by Kuninori Morimoto's avatar Kuninori Morimoto Committed by Simon Horman
Browse files

ARM: shmobile: r8a7779: cleanup registration of VIN



VIN driver which needs platform data at the time of
registration is used from Marzen only.
Now, ARM/shmobile aims to support DT,
and the C code base board support will be removed
if DT support is completed.
Current driver registration method which needs platform data
and which is not shared complicates codes.
This means legacy C code cleanup after DT supporting
will be more complicated
This patch registers it on board code as cleanup C code

Signed-off-by: default avatarKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Acked-by: default avatarMagnus Damm <damm@opensource.se>
Signed-off-by: default avatarSimon Horman <horms+renesas@verge.net.au>
parent 22e247ef
Loading
Loading
Loading
Loading
+22 −2
Original line number Diff line number Diff line
@@ -259,10 +259,30 @@ static struct platform_device leds_device = {
	},
};

/* VIN */
static struct rcar_vin_platform_data vin_platform_data __initdata = {
	.flags	= RCAR_VIN_BT656,
};

#define MARZEN_VIN(idx)						\
static struct resource vin##idx##_resources[] __initdata = {	\
	DEFINE_RES_MEM(0xffc50000 + 0x1000 * (idx), 0x1000),	\
	DEFINE_RES_IRQ(gic_iid(0x5f + (idx))),			\
};								\
								\
static struct platform_device_info vin##idx##_info __initdata = { \
	.parent		= &platform_bus,			\
	.name		= "r8a7779-vin",			\
	.id		= idx,					\
	.res		= vin##idx##_resources,			\
	.num_res	= ARRAY_SIZE(vin##idx##_resources),	\
	.dma_mask	= DMA_BIT_MASK(32),			\
	.data		= &vin_platform_data,			\
	.size_data	= sizeof(vin_platform_data),		\
}
MARZEN_VIN(1);
MARZEN_VIN(3);

#define MARZEN_CAMERA(idx)					\
static struct i2c_board_info camera##idx##_info = {		\
	I2C_BOARD_INFO("adv7180", 0x20 + (idx)),		\
@@ -367,8 +387,8 @@ static void __init marzen_init(void)
	r8a7779_init_irq_extpin(1); /* IRQ1 as individual interrupt */

	r8a7779_add_standard_devices();
	r8a7779_add_vin_device(1, &vin_platform_data);
	r8a7779_add_vin_device(3, &vin_platform_data);
	platform_device_register_full(&vin1_info);
	platform_device_register_full(&vin3_info);
	platform_add_devices(marzen_devices, ARRAY_SIZE(marzen_devices));
	marzen_add_du_device();
}
+0 −2
Original line number Diff line number Diff line
@@ -41,8 +41,6 @@ extern void r8a7779_add_early_devices(void);
extern void r8a7779_add_standard_devices(void);
extern void r8a7779_add_standard_devices_dt(void);
extern void r8a7779_add_ether_device(struct sh_eth_plat_data *pdata);
extern void r8a7779_add_vin_device(int idx,
				   struct rcar_vin_platform_data *pdata);
extern void r8a7779_init_late(void);
extern void r8a7779_clock_init(void);
extern void r8a7779_pinmux_init(void);
+0 −37
Original line number Diff line number Diff line
@@ -610,33 +610,6 @@ static struct resource ether_resources[] __initdata = {
	},
};

#define R8A7779_VIN(idx) \
static struct resource vin##idx##_resources[] __initdata = {		\
	DEFINE_RES_MEM(0xffc50000 + 0x1000 * (idx), 0x1000),		\
	DEFINE_RES_IRQ(gic_iid(0x5f + (idx))),				\
};									\
									\
static struct platform_device_info vin##idx##_info __initdata = {	\
	.parent		= &platform_bus,				\
	.name		= "r8a7779-vin",				\
	.id		= idx,						\
	.res		= vin##idx##_resources,				\
	.num_res	= ARRAY_SIZE(vin##idx##_resources),		\
	.dma_mask	= DMA_BIT_MASK(32),				\
}

R8A7779_VIN(0);
R8A7779_VIN(1);
R8A7779_VIN(2);
R8A7779_VIN(3);

static struct platform_device_info *vin_info_table[] __initdata = {
	&vin0_info,
	&vin1_info,
	&vin2_info,
	&vin3_info,
};

/* HPB-DMA */

/* Asynchronous mode register bits */
@@ -833,16 +806,6 @@ void __init r8a7779_add_ether_device(struct sh_eth_plat_data *pdata)
					  pdata, sizeof(*pdata));
}

void __init r8a7779_add_vin_device(int id, struct rcar_vin_platform_data *pdata)
{
	BUG_ON(id < 0 || id > 3);

	vin_info_table[id]->data = pdata;
	vin_info_table[id]->size_data = sizeof(*pdata);

	platform_device_register_full(vin_info_table[id]);
}

/* do nothing for !CONFIG_SMP or !CONFIG_HAVE_TWD */
void __init __weak r8a7779_register_twd(void) { }