diff mbox

[2/2] ARM: EXYNOS: Set HDMI platform data in Origen board

Message ID 1333614296-13256-3-git-send-email-tushar.behera@linaro.org
State Accepted
Headers show

Commit Message

Tushar Behera April 5, 2012, 8:24 a.m. UTC
Signed-off-by: Tushar Behera <tushar.behera@linaro.org>
---
 arch/arm/mach-exynos/mach-origen.c |    7 +++++++
 1 files changed, 7 insertions(+), 0 deletions(-)

Comments

Tomasz Stanislawski April 5, 2012, 9:37 a.m. UTC | #1
Hi Tushar Behera,

On 04/05/2012 10:24 AM, Tushar Behera wrote:
> Signed-off-by: Tushar Behera <tushar.behera@linaro.org>
> ---
>  arch/arm/mach-exynos/mach-origen.c |    7 +++++++
>  1 files changed, 7 insertions(+), 0 deletions(-)
> 
> diff --git a/arch/arm/mach-exynos/mach-origen.c b/arch/arm/mach-exynos/mach-origen.c
> index 878d4c9..ac6f78f 100644
> --- a/arch/arm/mach-exynos/mach-origen.c
> +++ b/arch/arm/mach-exynos/mach-origen.c
> @@ -41,6 +41,7 @@
>  #include <plat/pd.h>
>  #include <plat/fb.h>
>  #include <plat/mfc.h>
> +#include <plat/hdmi.h>
>  
>  #include <mach/ohci.h>
>  #include <mach/map.h>
> @@ -671,6 +672,11 @@ static void __init origen_bt_setup(void)
>  	s3c_gpio_setpull(EXYNOS4_GPX2(2), S3C_GPIO_PULL_NONE);
>  }
>  
> +/* I2C module and id for HDMIPHY */
> +static struct i2c_board_info hdmiphy_info = {
> +	I2C_BOARD_INFO("hdmiphy", 0x38),

I warn you :) that the s5p-hdmiphy driver is going to use driver variant
to handle per-platform setup arrays for HDMIPHY. Refer to patch

http://thread.gmane.org/gmane.linux.drivers.video-input-infrastructure/45756/focus=45757

If the mentioned patch gets merged into the mainline then the support
for HDMI will be broken on your machine.

Regards,
Tomasz Stanislawski

> +};
> +
>  static void s5p_tv_setup(void)
>  {
>  	/* Direct HPD to HDMI chip */
> @@ -718,6 +724,7 @@ static void __init origen_machine_init(void)
>  
>  	s5p_tv_setup();
>  	s5p_i2c_hdmiphy_set_platdata(NULL);
> +	s5p_hdmi_set_platdata(&hdmiphy_info, NULL, 0);
>  
>  	s5p_fimd0_set_platdata(&origen_lcd_pdata);
>
Tushar Behera April 5, 2012, 1:11 p.m. UTC | #2
On 04/05/2012 03:07 PM, Tomasz Stanislawski wrote:
> Hi Tushar Behera,
> 
> On 04/05/2012 10:24 AM, Tushar Behera wrote:
>> Signed-off-by: Tushar Behera <tushar.behera@linaro.org>
>> ---
>>  arch/arm/mach-exynos/mach-origen.c |    7 +++++++
>>  1 files changed, 7 insertions(+), 0 deletions(-)
>>
>> diff --git a/arch/arm/mach-exynos/mach-origen.c b/arch/arm/mach-exynos/mach-origen.c
>> index 878d4c9..ac6f78f 100644
>> --- a/arch/arm/mach-exynos/mach-origen.c
>> +++ b/arch/arm/mach-exynos/mach-origen.c
>> @@ -41,6 +41,7 @@
>>  #include <plat/pd.h>
>>  #include <plat/fb.h>
>>  #include <plat/mfc.h>
>> +#include <plat/hdmi.h>
>>  
>>  #include <mach/ohci.h>
>>  #include <mach/map.h>
>> @@ -671,6 +672,11 @@ static void __init origen_bt_setup(void)
>>  	s3c_gpio_setpull(EXYNOS4_GPX2(2), S3C_GPIO_PULL_NONE);
>>  }
>>  
>> +/* I2C module and id for HDMIPHY */
>> +static struct i2c_board_info hdmiphy_info = {
>> +	I2C_BOARD_INFO("hdmiphy", 0x38),
> 
> I warn you :) that the s5p-hdmiphy driver is going to use driver variant
> to handle per-platform setup arrays for HDMIPHY. Refer to patch
> 
> http://thread.gmane.org/gmane.linux.drivers.video-input-infrastructure/45756/focus=45757
> 
> If the mentioned patch gets merged into the mainline then the support
> for HDMI will be broken on your machine.
> 

Please correct me if I am wrong.

Above patch doesn't remove the usage of platform data, it is still
mandatory to pass platform data from board file. Hence I need to pass a
valid platform data structure to the driver.

With your current patch, won't it just ignore the hdmiphy_info passed
through the platform data and use driver variant to handle per-platform
setup arrays for HDMIPHY.

The reason I am worried is that the support for s5p-tv as such is broken
now because of mandatory usage of platform data. Had it not been the
case, the need for my patch won't have arised. :(

Nevertheless, what do you think is the best solution right now?
diff mbox

Patch

diff --git a/arch/arm/mach-exynos/mach-origen.c b/arch/arm/mach-exynos/mach-origen.c
index 878d4c9..ac6f78f 100644
--- a/arch/arm/mach-exynos/mach-origen.c
+++ b/arch/arm/mach-exynos/mach-origen.c
@@ -41,6 +41,7 @@ 
 #include <plat/pd.h>
 #include <plat/fb.h>
 #include <plat/mfc.h>
+#include <plat/hdmi.h>
 
 #include <mach/ohci.h>
 #include <mach/map.h>
@@ -671,6 +672,11 @@  static void __init origen_bt_setup(void)
 	s3c_gpio_setpull(EXYNOS4_GPX2(2), S3C_GPIO_PULL_NONE);
 }
 
+/* I2C module and id for HDMIPHY */
+static struct i2c_board_info hdmiphy_info = {
+	I2C_BOARD_INFO("hdmiphy", 0x38),
+};
+
 static void s5p_tv_setup(void)
 {
 	/* Direct HPD to HDMI chip */
@@ -718,6 +724,7 @@  static void __init origen_machine_init(void)
 
 	s5p_tv_setup();
 	s5p_i2c_hdmiphy_set_platdata(NULL);
+	s5p_hdmi_set_platdata(&hdmiphy_info, NULL, 0);
 
 	s5p_fimd0_set_platdata(&origen_lcd_pdata);