backlight: s6e63m0: report ->gamma_table_count correctly
Subsystems (3)
PATCH 1/1 backlight: s6e63m0: report ->gamma_table_count correctly
gamma_table has 3 arrays which each hold MAX_GAMMA_LEVEL pointers to int.
The current code sets ->gamma_table_count to 6 on 64bit arches and to 3 on 32 bit arches. It should be 3 on everything.
---
This is from reading the code. We use ->gamma_table_count in sysfs file but other than that I'm not sure what it's for. I am not very familiar with this code.
drivers/video/backlight/s6e63m0.c +1 -0
@@ -766,7 +766,7 @@ static int s6e63m0_probe(struct spi_device *spi)* know that. */ lcd->gamma_table_count -sizeof (gamma_table) / (MAX_GAMMA_LEVEL *sizeof (int )); +sizeof (gamma_table) / (MAX_GAMMA_LEVEL *sizeof (int *)); ret =device_create_file (&(spi->dev), &dev_attr_gamma_mode);if (ret <0 )
On Thursday, January 24, 2013 10:45 PM, Dan Carpenter wrote
CC'ed Andrew Morton, Inki Dae.
Quoted 6 lines
gamma_tablehas 3 arrays which each holdMAX_GAMMA_LEVELpointers to int.The current code sets ->gamma_table_count to 6 on 64bit arches and to 3 on 32 bit arches. It should be 3 on everything.
Actually, I don't know it is right.
However, it is certain that this panel is currently used on 32 bit arches such as ARM SoCs.
Quoted 23 lines
Signed-off-by Dan Carpenter <[email protected]>---
This is from reading the code. We use ->gamma_table_count in sysfs file but other than that I'm not sure what it's for. I am not very familiar with this code.drivers/video/backlight/s6e63m0.c +1
-1@@ -766,7 +766,7 @@ static int s6e63m0_probe(struct spi_device *spi)* know that. */ lcd->gamma_table_count > -sizeof (gamma_table) / (MAX_GAMMA_LEVEL *sizeof (int )); +sizeof (gamma_table) / (MAX_GAMMA_LEVEL *sizeof (int *)); ret =device_create_file (&(spi->dev), &dev_attr_gamma_mode);if (ret <0 ) --To unsubscribe from this list: send the line "unsubscribe linux-fbdev" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Quoted 8 lines · On Fri, 25 Jan 2013 11:22:06 +0900 Jingoo Han <[email protected]> wrote:
On Thursday, January 24, 2013 10:45 PM, Dan Carpenter wrote
CC'ed Andrew Morton, Inki Dae.
Quoted 4 lines
gamma_tablehas 3 arrays which each holdMAX_GAMMA_LEVELpointers to int.
Quoted 6 lines
Quoted 2 lines
The current code sets ->gamma_table_count to 6 on 64bit arches and to 3 on 32 bit arches. It should be 3 on everything.
Actually, I don't know it is right.
However, it is certain that this panel is currently used on 32 bit arches such as ARM SoCs.
I don't know what gamma_table_count is supposed to do. The only place it is used is in s6e63m0_sysfs_show_gamma_table(). That function doesn't actually show the table - it just prints out gamme_table_count. Why is that useful?
Ho hum, the patch is clearly correct - the array stores int*'s and the sysfs file should display "3" for all architectures. However I suspect we could just remove the whole sysfs file and nobody would care...