On Sun, Jul 05, 2009 at 09:51:55AM -0300, Mauro Carvalho Chehab wrote:
> Hmm... I'm not seeing Russel ack on the arch/arm patch. Russel, could you
> please review the enclosed patch? Would this be ok for 2.6.31?
I'm not sure who this Russel is!
> @@ -207,6 +220,40 @@ static struct at24_platform_data eeprom_info = {
> .context = (void *)0x7f00,
> };
>
> +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 int set_vpif_clock(int mux_mode, int hd)
> +{
> + int val = 0;
> + int err = 0;
> + unsigned int value;
> + void __iomem *base = IO_ADDRESS(DAVINCI_SYSTEM_MODULE_BASE);
> +
> + /* disable the clock */
> + value = __raw_readl(base + VSCLKDIS_OFFSET);
> + value |= (VIDCH3CLK | VIDCH2CLK);
> + __raw_writel(value, base + VSCLKDIS_OFFSET);
> +
> + val = i2c_smbus_read_byte(cpld_client);
> + if (val < 0)
> + return val;
> +
> + if (mux_mode == 1)
> + val &= ~0x40;
> + else
> + val |= 0x40;
> +
> + err = i2c_smbus_write_byte(cpld_client, val);
> + if (err)
> + return err;
So what prevents this 'cpld_client' being removed mid-operation? What if
'cpld_client' isn't found for whatever reason?
> +static struct platform_device vpif_display_dev = {
> + .name = "vpif_display",
> + .id = -1,
> + .dev = {
> + .dma_mask = &vpif_dma_mask,
> + .coherent_dma_mask = DMA_32BIT_MASK,
Shouldn't this be DMA_BIT_MASK(32) ?
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html