Hi Mauro,
Today's linux-next merge of the v4l-dvb tree got a conflict in
arch/arm/mach-davinci/board-dm646x-evm.c between commits
e94c101ce3ef11bc00f8ea5db4b65c4b01874cf8 ("davinci: ASoC: Add the
platform devices for ASP") and 4d6c5c3ec7c9b6d0d055da77c406049f7a663a0c
("davinci: dm646x-evm: Add support for IDE") from the davinci tree and
commit be45110fa4525939a32c0509229a1781c5c3da78 ("arch/arm/mach-davinci:
Platform and board specific setup for DM646x EVM") from the v4l-dvb tree.
I think that these are just overlapping additions (though they my
actually be implementing similar things). I fixed it up (see below) and
can carry the fixes as necessary.
--
Cheers,
Stephen Rothwell [email protected]
diff --cc arch/arm/mach-davinci/board-dm646x-evm.c
index b1bf18c,eb4bd01..0000000
--- a/arch/arm/mach-davinci/board-dm646x-evm.c
+++ b/arch/arm/mach-davinci/board-dm646x-evm.c
@@@ -259,35 -220,40 +272,69 @@@ static struct at24_platform_data eeprom
.context = (void *)0x7f00,
};
+static u8 dm646x_iis_serializer_direction[] = {
+ TX_MODE, RX_MODE, INACTIVE_MODE, INACTIVE_MODE,
+};
+
+static u8 dm646x_dit_serializer_direction[] = {
+ TX_MODE,
+};
+
+static struct snd_platform_data dm646x_evm_snd_data[] = {
+ {
+ .tx_dma_offset = 0x400,
+ .rx_dma_offset = 0x400,
+ .op_mode = DAVINCI_MCASP_IIS_MODE,
+ .num_serializer = ARRAY_SIZE(dm646x_iis_serializer_direction),
+ .tdm_slots = 2,
+ .serial_dir = dm646x_iis_serializer_direction,
+ .eventq_no = EVENTQ_0,
+ },
+ {
+ .tx_dma_offset = 0x400,
+ .rx_dma_offset = 0,
+ .op_mode = DAVINCI_MCASP_DIT_MODE,
+ .num_serializer = ARRAY_SIZE(dm646x_dit_serializer_direction),
+ .tdm_slots = 32,
+ .serial_dir = dm646x_dit_serializer_direction,
+ .eventq_no = EVENTQ_0,
+ },
+};
+
+ static struct i2c_client *cpld_client;
+
+ static int cpld_video_probe(struct i2c_client *client,
+ const struct i2c_device_id *id)
+ {
+ cpld_client = client;
+ return 0;
+ }
+
+ static int __devexit cpld_video_remove(struct i2c_client *client)
+ {
+ cpld_client = NULL;
+ return 0;
+ }
+
+ static const struct i2c_device_id cpld_video_id[] = {
+ { "cpld_video", 0 },
+ { }
+ };
+
+ static struct i2c_driver cpld_video_driver = {
+ .driver = {
+ .name = "cpld_video",
+ },
+ .probe = cpld_video_probe,
+ .remove = cpld_video_remove,
+ .id_table = cpld_video_id,
+ };
+
+ static void evm_init_cpld(void)
+ {
+ i2c_add_driver(&cpld_video_driver);
+ }
+
static struct i2c_board_info __initdata i2c_info[] = {
{
I2C_BOARD_INFO("24c256", 0x50),
@@@ -298,8 -264,8 +345,11 @@@
.platform_data = &pcf_data,
},
{
+ I2C_BOARD_INFO("cpld_reg0", 0x3a),
+ },
++ {
+ I2C_BOARD_INFO("cpld_video", 0x3B),
+ },
};
static struct davinci_i2c_platform_data i2c_pdata = {
@@@ -310,8 -346,8 +430,9 @@@ static struct vpif_config dm646x_vpif_c
static void __init evm_init_i2c(void)
{
davinci_init_i2c(&i2c_pdata);
+ i2c_add_driver(&dm6467evm_cpld_driver);
i2c_register_board_info(1, i2c_info, ARRAY_SIZE(i2c_info));
+ evm_init_cpld();
}
static void __init davinci_map_io(void)
Stephen Rothwell <[email protected]> writes:
> Hi Mauro,
>
> Today's linux-next merge of the v4l-dvb tree got a conflict in
> arch/arm/mach-davinci/board-dm646x-evm.c between commits
> e94c101ce3ef11bc00f8ea5db4b65c4b01874cf8 ("davinci: ASoC: Add the
> platform devices for ASP") and 4d6c5c3ec7c9b6d0d055da77c406049f7a663a0c
> ("davinci: dm646x-evm: Add support for IDE") from the davinci tree and
> commit be45110fa4525939a32c0509229a1781c5c3da78 ("arch/arm/mach-davinci:
> Platform and board specific setup for DM646x EVM") from the v4l-dvb tree.
>
> I think that these are just overlapping additions (though they my
> actually be implementing similar things). I fixed it up (see below) and
> can carry the fixes as necessary.
I can confirm that these are just overlapping additions.
Kevin
(davinci platform maintainer)
> --
> Cheers,
> Stephen Rothwell [email protected]
>
> diff --cc arch/arm/mach-davinci/board-dm646x-evm.c
> index b1bf18c,eb4bd01..0000000
> --- a/arch/arm/mach-davinci/board-dm646x-evm.c
> +++ b/arch/arm/mach-davinci/board-dm646x-evm.c
> @@@ -259,35 -220,40 +272,69 @@@ static struct at24_platform_data eeprom
> .context = (void *)0x7f00,
> };
>
> +static u8 dm646x_iis_serializer_direction[] = {
> + TX_MODE, RX_MODE, INACTIVE_MODE, INACTIVE_MODE,
> +};
> +
> +static u8 dm646x_dit_serializer_direction[] = {
> + TX_MODE,
> +};
> +
> +static struct snd_platform_data dm646x_evm_snd_data[] = {
> + {
> + .tx_dma_offset = 0x400,
> + .rx_dma_offset = 0x400,
> + .op_mode = DAVINCI_MCASP_IIS_MODE,
> + .num_serializer = ARRAY_SIZE(dm646x_iis_serializer_direction),
> + .tdm_slots = 2,
> + .serial_dir = dm646x_iis_serializer_direction,
> + .eventq_no = EVENTQ_0,
> + },
> + {
> + .tx_dma_offset = 0x400,
> + .rx_dma_offset = 0,
> + .op_mode = DAVINCI_MCASP_DIT_MODE,
> + .num_serializer = ARRAY_SIZE(dm646x_dit_serializer_direction),
> + .tdm_slots = 32,
> + .serial_dir = dm646x_dit_serializer_direction,
> + .eventq_no = EVENTQ_0,
> + },
> +};
> +
> + static struct i2c_client *cpld_client;
> +
> + static int cpld_video_probe(struct i2c_client *client,
> + const struct i2c_device_id *id)
> + {
> + cpld_client = client;
> + return 0;
> + }
> +
> + static int __devexit cpld_video_remove(struct i2c_client *client)
> + {
> + cpld_client = NULL;
> + return 0;
> + }
> +
> + static const struct i2c_device_id cpld_video_id[] = {
> + { "cpld_video", 0 },
> + { }
> + };
> +
> + static struct i2c_driver cpld_video_driver = {
> + .driver = {
> + .name = "cpld_video",
> + },
> + .probe = cpld_video_probe,
> + .remove = cpld_video_remove,
> + .id_table = cpld_video_id,
> + };
> +
> + static void evm_init_cpld(void)
> + {
> + i2c_add_driver(&cpld_video_driver);
> + }
> +
> static struct i2c_board_info __initdata i2c_info[] = {
> {
> I2C_BOARD_INFO("24c256", 0x50),
> @@@ -298,8 -264,8 +345,11 @@@
> .platform_data = &pcf_data,
> },
> {
> + I2C_BOARD_INFO("cpld_reg0", 0x3a),
> + },
> ++ {
> + I2C_BOARD_INFO("cpld_video", 0x3B),
> + },
> };
>
> static struct davinci_i2c_platform_data i2c_pdata = {
> @@@ -310,8 -346,8 +430,9 @@@ static struct vpif_config dm646x_vpif_c
> static void __init evm_init_i2c(void)
> {
> davinci_init_i2c(&i2c_pdata);
> + i2c_add_driver(&dm6467evm_cpld_driver);
> i2c_register_board_info(1, i2c_info, ARRAY_SIZE(i2c_info));
> + evm_init_cpld();
> }
>
> static void __init davinci_map_io(void)
Hi Kevin,
On Thu, 23 Jul 2009 15:11:01 -0700 Kevin Hilman <[email protected]> wrote:
>
> I can confirm that these are just overlapping additions.
Thanks.
--
Cheers,
Stephen Rothwell [email protected]
http://www.canb.auug.org.au/~sfr/