From 9a9ca74d62121b221925121772673d8ebf9e3c82 Mon Sep 17 00:00:00 2001 From: Andres Salomon Date: Thu, 21 Jul 2011 20:37:55 -0700 Subject: [PATCH] --- yaml --- r: 267585 b: refs/heads/master c: 1b995ac22b53c6176e61a38558c8a8d16be24b69 h: refs/heads/master i: 267583: 9885642ee5ad923cfd0650728152584a6a7be7dd v: v3 --- [refs] | 2 +- trunk/drivers/staging/olpc_dcon/olpc_dcon.c | 31 +++++++-------------- 2 files changed, 11 insertions(+), 22 deletions(-) diff --git a/[refs] b/[refs] index 912ebac7fed5..0231bb472207 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 24e2617050d9ceb2cd8200982249529c81c5f310 +refs/heads/master: 1b995ac22b53c6176e61a38558c8a8d16be24b69 diff --git a/trunk/drivers/staging/olpc_dcon/olpc_dcon.c b/trunk/drivers/staging/olpc_dcon/olpc_dcon.c index cf4b45440f67..ae18cd455fd9 100644 --- a/trunk/drivers/staging/olpc_dcon/olpc_dcon.c +++ b/trunk/drivers/staging/olpc_dcon/olpc_dcon.c @@ -88,29 +88,18 @@ static int dcon_hw_init(struct dcon_priv *dcon, int is_init) } if (ver < 0xdc02) { - /* Initialize the DCON registers */ - - /* Start with work-arounds for DCON ASIC */ - i2c_smbus_write_word_data(client, 0x4b, 0x00cc); - i2c_smbus_write_word_data(client, 0x4b, 0x00cc); - i2c_smbus_write_word_data(client, 0x4b, 0x00cc); - i2c_smbus_write_word_data(client, 0x0b, 0x007a); - i2c_smbus_write_word_data(client, 0x36, 0x025c); - i2c_smbus_write_word_data(client, 0x37, 0x025e); - - /* Initialise SDRAM */ - - i2c_smbus_write_word_data(client, 0x3b, 0x002b); - i2c_smbus_write_word_data(client, 0x41, 0x0101); - i2c_smbus_write_word_data(client, 0x42, 0x0101); - } else { - /* SDRAM setup/hold time */ - i2c_smbus_write_word_data(client, 0x3a, 0xc040); - i2c_smbus_write_word_data(client, 0x41, 0x0000); - i2c_smbus_write_word_data(client, 0x41, 0x0101); - i2c_smbus_write_word_data(client, 0x42, 0x0101); + dev_err(&dcon->client->dev, + "DCON v1 is unsupported, giving up..\n"); + rc = -ENODEV; + goto err; } + /* SDRAM setup/hold time */ + i2c_smbus_write_word_data(client, 0x3a, 0xc040); + i2c_smbus_write_word_data(client, 0x41, 0x0000); + i2c_smbus_write_word_data(client, 0x41, 0x0101); + i2c_smbus_write_word_data(client, 0x42, 0x0101); + /* Colour swizzle, AA, no passthrough, backlight */ if (is_init) { dcon->disp_mode = MODE_PASSTHRU | MODE_BL_ENABLE |