* [PATCH v3 0/2] added initial support for TPO TD043MTEA1 LCD display on Aspenite
@ 2010-08-26 3:51 Mark F. Brown
2010-08-26 3:51 ` [PATCH v3 1/2] pxa168: added framebuffer support code Mark F. Brown
` (2 more replies)
0 siblings, 3 replies; 6+ messages in thread
From: Mark F. Brown @ 2010-08-26 3:51 UTC (permalink / raw)
To: linux-arm-kernel
Mark F. Brown (2):
pxa168: added framebuffer support code.
pxa168: added initial support for TPO TD043MTEA1 LCD display on
Aspenite
arch/arm/mach-mmp/aspenite.c | 60 +++++++++++++++++++++++++++++++
arch/arm/mach-mmp/include/mach/pxa168.h | 8 ++++
arch/arm/mach-mmp/pxa168.c | 3 ++
3 files changed, 71 insertions(+), 0 deletions(-)
^ permalink raw reply [flat|nested] 6+ messages in thread* [PATCH v3 1/2] pxa168: added framebuffer support code. 2010-08-26 3:51 [PATCH v3 0/2] added initial support for TPO TD043MTEA1 LCD display on Aspenite Mark F. Brown @ 2010-08-26 3:51 ` Mark F. Brown 2010-08-26 9:34 ` Eric Miao 2010-08-26 3:51 ` [PATCH v3 2/2] pxa168: added initial support for TPO TD043MTEA1 LCD display on Aspenite Mark F. Brown 2010-08-26 4:51 ` [PATCH v3 0/2] " Marek Vasut 2 siblings, 1 reply; 6+ messages in thread From: Mark F. Brown @ 2010-08-26 3:51 UTC (permalink / raw) To: linux-arm-kernel Signed-off-by: Mark F. Brown <mark.brown314@gmail.com> --- arch/arm/mach-mmp/include/mach/pxa168.h | 8 ++++++++ arch/arm/mach-mmp/pxa168.c | 3 +++ 2 files changed, 11 insertions(+), 0 deletions(-) diff --git a/arch/arm/mach-mmp/include/mach/pxa168.h b/arch/arm/mach-mmp/include/mach/pxa168.h index 27e1bc7..220738f 100644 --- a/arch/arm/mach-mmp/include/mach/pxa168.h +++ b/arch/arm/mach-mmp/include/mach/pxa168.h @@ -10,6 +10,7 @@ extern void __init pxa168_init_irq(void); #include <mach/devices.h> #include <plat/i2c.h> #include <plat/pxa3xx_nand.h> +#include <video/pxa168fb.h> extern struct pxa_device_desc pxa168_device_uart1; extern struct pxa_device_desc pxa168_device_uart2; @@ -25,6 +26,7 @@ extern struct pxa_device_desc pxa168_device_ssp3; extern struct pxa_device_desc pxa168_device_ssp4; extern struct pxa_device_desc pxa168_device_ssp5; extern struct pxa_device_desc pxa168_device_nand; +extern struct pxa_device_desc pxa168_device_fb; static inline int pxa168_add_uart(int id) { @@ -97,4 +99,10 @@ static inline int pxa168_add_nand(struct pxa3xx_nand_platform_data *info) { return pxa_register_device(&pxa168_device_nand, info, sizeof(*info)); } + +static inline int pxa168_add_fb(struct pxa168fb_mach_info *mi) +{ + return pxa_register_device(&pxa168_device_fb, mi, sizeof(*mi)); +} + #endif /* __ASM_MACH_PXA168_H */ diff --git a/arch/arm/mach-mmp/pxa168.c b/arch/arm/mach-mmp/pxa168.c index 652ae66..eaebf66 100644 --- a/arch/arm/mach-mmp/pxa168.c +++ b/arch/arm/mach-mmp/pxa168.c @@ -79,6 +79,7 @@ static APBC_CLK(ssp4, PXA168_SSP4, 4, 0); static APBC_CLK(ssp5, PXA168_SSP5, 4, 0); static APMU_CLK(nand, NAND, 0x01db, 208000000); +static APMU_CLK(lcd, LCD, 0x7f, 312000000); /* device and clock bindings */ static struct clk_lookup pxa168_clkregs[] = { @@ -96,6 +97,7 @@ static struct clk_lookup pxa168_clkregs[] = { INIT_CLKREG(&clk_ssp4, "pxa168-ssp.3", NULL), INIT_CLKREG(&clk_ssp5, "pxa168-ssp.4", NULL), INIT_CLKREG(&clk_nand, "pxa3xx-nand", NULL), + INIT_CLKREG(&clk_lcd, "pxa168-fb", NULL), }; static int __init pxa168_init(void) @@ -147,3 +149,4 @@ PXA168_DEVICE(ssp2, "pxa168-ssp", 1, SSP2, 0xd401c000, 0x40, 54, 55); PXA168_DEVICE(ssp3, "pxa168-ssp", 2, SSP3, 0xd401f000, 0x40, 56, 57); PXA168_DEVICE(ssp4, "pxa168-ssp", 3, SSP4, 0xd4020000, 0x40, 58, 59); PXA168_DEVICE(ssp5, "pxa168-ssp", 4, SSP5, 0xd4021000, 0x40, 60, 61); +PXA168_DEVICE(fb, "pxa168-fb", -1, LCD, 0xd420b000, 0x1c8); -- 1.7.0.4 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH v3 1/2] pxa168: added framebuffer support code. 2010-08-26 3:51 ` [PATCH v3 1/2] pxa168: added framebuffer support code Mark F. Brown @ 2010-08-26 9:34 ` Eric Miao 0 siblings, 0 replies; 6+ messages in thread From: Eric Miao @ 2010-08-26 9:34 UTC (permalink / raw) To: linux-arm-kernel On Thu, Aug 26, 2010 at 11:51 AM, Mark F. Brown <mark.brown314@gmail.com> wrote: > Signed-off-by: Mark F. Brown <mark.brown314@gmail.com> Applied to 'devel'. > --- > ?arch/arm/mach-mmp/include/mach/pxa168.h | ? ?8 ++++++++ > ?arch/arm/mach-mmp/pxa168.c ? ? ? ? ? ? ?| ? ?3 +++ > ?2 files changed, 11 insertions(+), 0 deletions(-) > > diff --git a/arch/arm/mach-mmp/include/mach/pxa168.h b/arch/arm/mach-mmp/include/mach/pxa168.h > index 27e1bc7..220738f 100644 > --- a/arch/arm/mach-mmp/include/mach/pxa168.h > +++ b/arch/arm/mach-mmp/include/mach/pxa168.h > @@ -10,6 +10,7 @@ extern void __init pxa168_init_irq(void); > ?#include <mach/devices.h> > ?#include <plat/i2c.h> > ?#include <plat/pxa3xx_nand.h> > +#include <video/pxa168fb.h> > > ?extern struct pxa_device_desc pxa168_device_uart1; > ?extern struct pxa_device_desc pxa168_device_uart2; > @@ -25,6 +26,7 @@ extern struct pxa_device_desc pxa168_device_ssp3; > ?extern struct pxa_device_desc pxa168_device_ssp4; > ?extern struct pxa_device_desc pxa168_device_ssp5; > ?extern struct pxa_device_desc pxa168_device_nand; > +extern struct pxa_device_desc pxa168_device_fb; > > ?static inline int pxa168_add_uart(int id) > ?{ > @@ -97,4 +99,10 @@ static inline int pxa168_add_nand(struct pxa3xx_nand_platform_data *info) > ?{ > ? ? ? ?return pxa_register_device(&pxa168_device_nand, info, sizeof(*info)); > ?} > + > +static inline int pxa168_add_fb(struct pxa168fb_mach_info *mi) > +{ > + ? ? ? return pxa_register_device(&pxa168_device_fb, mi, sizeof(*mi)); > +} > + > ?#endif /* __ASM_MACH_PXA168_H */ > diff --git a/arch/arm/mach-mmp/pxa168.c b/arch/arm/mach-mmp/pxa168.c > index 652ae66..eaebf66 100644 > --- a/arch/arm/mach-mmp/pxa168.c > +++ b/arch/arm/mach-mmp/pxa168.c > @@ -79,6 +79,7 @@ static APBC_CLK(ssp4, PXA168_SSP4, 4, 0); > ?static APBC_CLK(ssp5, PXA168_SSP5, 4, 0); > > ?static APMU_CLK(nand, NAND, 0x01db, 208000000); > +static APMU_CLK(lcd, LCD, 0x7f, 312000000); > > ?/* device and clock bindings */ > ?static struct clk_lookup pxa168_clkregs[] = { > @@ -96,6 +97,7 @@ static struct clk_lookup pxa168_clkregs[] = { > ? ? ? ?INIT_CLKREG(&clk_ssp4, "pxa168-ssp.3", NULL), > ? ? ? ?INIT_CLKREG(&clk_ssp5, "pxa168-ssp.4", NULL), > ? ? ? ?INIT_CLKREG(&clk_nand, "pxa3xx-nand", NULL), > + ? ? ? INIT_CLKREG(&clk_lcd, "pxa168-fb", NULL), > ?}; > > ?static int __init pxa168_init(void) > @@ -147,3 +149,4 @@ PXA168_DEVICE(ssp2, "pxa168-ssp", 1, SSP2, 0xd401c000, 0x40, 54, 55); > ?PXA168_DEVICE(ssp3, "pxa168-ssp", 2, SSP3, 0xd401f000, 0x40, 56, 57); > ?PXA168_DEVICE(ssp4, "pxa168-ssp", 3, SSP4, 0xd4020000, 0x40, 58, 59); > ?PXA168_DEVICE(ssp5, "pxa168-ssp", 4, SSP5, 0xd4021000, 0x40, 60, 61); > +PXA168_DEVICE(fb, "pxa168-fb", -1, LCD, 0xd420b000, 0x1c8); > -- > 1.7.0.4 > > ^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH v3 2/2] pxa168: added initial support for TPO TD043MTEA1 LCD display on Aspenite 2010-08-26 3:51 [PATCH v3 0/2] added initial support for TPO TD043MTEA1 LCD display on Aspenite Mark F. Brown 2010-08-26 3:51 ` [PATCH v3 1/2] pxa168: added framebuffer support code Mark F. Brown @ 2010-08-26 3:51 ` Mark F. Brown 2010-08-26 9:29 ` Eric Miao 2010-08-26 4:51 ` [PATCH v3 0/2] " Marek Vasut 2 siblings, 1 reply; 6+ messages in thread From: Mark F. Brown @ 2010-08-26 3:51 UTC (permalink / raw) To: linux-arm-kernel Signed-off-by: Mark F. Brown <mark.brown314@gmail.com> --- arch/arm/mach-mmp/aspenite.c | 60 ++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 60 insertions(+), 0 deletions(-) diff --git a/arch/arm/mach-mmp/aspenite.c b/arch/arm/mach-mmp/aspenite.c index 0629394..9e1bd6b 100644 --- a/arch/arm/mach-mmp/aspenite.c +++ b/arch/arm/mach-mmp/aspenite.c @@ -23,6 +23,7 @@ #include <mach/mfp-pxa168.h> #include <mach/pxa168.h> #include <mach/gpio.h> +#include <video/pxa168fb.h> #include "common.h" @@ -66,6 +67,36 @@ static unsigned long common_pin_config[] __initdata = { GPIO115_I2S_BCLK, GPIO116_I2S_RXD, GPIO117_I2S_TXD, + + /* LCD */ + GPIO56_LCD_FCLK_RD, + GPIO57_LCD_LCLK_A0, + GPIO58_LCD_PCLK_WR, + GPIO59_LCD_DENA_BIAS, + GPIO60_LCD_DD0, + GPIO61_LCD_DD1, + GPIO62_LCD_DD2, + GPIO63_LCD_DD3, + GPIO64_LCD_DD4, + GPIO65_LCD_DD5, + GPIO66_LCD_DD6, + GPIO67_LCD_DD7, + GPIO68_LCD_DD8, + GPIO69_LCD_DD9, + GPIO70_LCD_DD10, + GPIO71_LCD_DD11, + GPIO72_LCD_DD12, + GPIO73_LCD_DD13, + GPIO74_LCD_DD14, + GPIO75_LCD_DD15, + GPIO76_LCD_DD16, + GPIO77_LCD_DD17, + GPIO78_LCD_DD18, + GPIO79_LCD_DD19, + GPIO80_LCD_DD20, + GPIO81_LCD_DD21, + GPIO82_LCD_DD22, + GPIO83_LCD_DD23, }; static struct smc91x_platdata smc91x_info = { @@ -134,6 +165,34 @@ static struct i2c_board_info aspenite_i2c_info[] __initdata = { { I2C_BOARD_INFO("wm8753", 0x1b), }, }; +static struct fb_videomode video_modes[] = { + [0] = { + .pixclock = 30120, + .refresh = 60, + .xres = 800, + .yres = 480, + .hsync_len = 1, + .left_margin = 215, + .right_margin = 40, + .vsync_len = 1, + .upper_margin = 34, + .lower_margin = 10, + .sync = FB_SYNC_VERT_HIGH_ACT | FB_SYNC_HOR_HIGH_ACT, + }, +}; + +struct pxa168fb_mach_info aspenite_lcd_info = { + .id = "Graphic Frame", + .modes = video_modes, + .num_modes = ARRAY_SIZE(video_modes), + .pix_fmt = PIX_FMT_RGB565, + .io_pin_allocation_mode = PIN_MODE_DUMB_24, + .dumb_mode = DUMB_MODE_RGB888, + .active = 1, + .panel_rbswap = 0, + .invert_pixclock = 0, +}; + static void __init common_init(void) { mfp_config(ARRAY_AND_SIZE(common_pin_config)); @@ -143,6 +202,7 @@ static void __init common_init(void) pxa168_add_twsi(1, NULL, ARRAY_AND_SIZE(aspenite_i2c_info)); pxa168_add_ssp(1); pxa168_add_nand(&aspenite_nand_info); + pxa168_add_fb(&aspenite_lcd_info); /* off-chip devices */ platform_device_register(&smc91x_device); -- 1.7.0.4 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH v3 2/2] pxa168: added initial support for TPO TD043MTEA1 LCD display on Aspenite 2010-08-26 3:51 ` [PATCH v3 2/2] pxa168: added initial support for TPO TD043MTEA1 LCD display on Aspenite Mark F. Brown @ 2010-08-26 9:29 ` Eric Miao 0 siblings, 0 replies; 6+ messages in thread From: Eric Miao @ 2010-08-26 9:29 UTC (permalink / raw) To: linux-arm-kernel On Thu, Aug 26, 2010 at 11:51 AM, Mark F. Brown <mark.brown314@gmail.com> wrote: > Signed-off-by: Mark F. Brown <mark.brown314@gmail.com> Applied to 'devel'. > --- > ?arch/arm/mach-mmp/aspenite.c | ? 60 ++++++++++++++++++++++++++++++++++++++++++ > ?1 files changed, 60 insertions(+), 0 deletions(-) > > diff --git a/arch/arm/mach-mmp/aspenite.c b/arch/arm/mach-mmp/aspenite.c > index 0629394..9e1bd6b 100644 > --- a/arch/arm/mach-mmp/aspenite.c > +++ b/arch/arm/mach-mmp/aspenite.c > @@ -23,6 +23,7 @@ > ?#include <mach/mfp-pxa168.h> > ?#include <mach/pxa168.h> > ?#include <mach/gpio.h> > +#include <video/pxa168fb.h> > > ?#include "common.h" > > @@ -66,6 +67,36 @@ static unsigned long common_pin_config[] __initdata = { > ? ? ? ?GPIO115_I2S_BCLK, > ? ? ? ?GPIO116_I2S_RXD, > ? ? ? ?GPIO117_I2S_TXD, > + > + ? ? ? /* LCD */ > + ? ? ? GPIO56_LCD_FCLK_RD, > + ? ? ? GPIO57_LCD_LCLK_A0, > + ? ? ? GPIO58_LCD_PCLK_WR, > + ? ? ? GPIO59_LCD_DENA_BIAS, > + ? ? ? GPIO60_LCD_DD0, > + ? ? ? GPIO61_LCD_DD1, > + ? ? ? GPIO62_LCD_DD2, > + ? ? ? GPIO63_LCD_DD3, > + ? ? ? GPIO64_LCD_DD4, > + ? ? ? GPIO65_LCD_DD5, > + ? ? ? GPIO66_LCD_DD6, > + ? ? ? GPIO67_LCD_DD7, > + ? ? ? GPIO68_LCD_DD8, > + ? ? ? GPIO69_LCD_DD9, > + ? ? ? GPIO70_LCD_DD10, > + ? ? ? GPIO71_LCD_DD11, > + ? ? ? GPIO72_LCD_DD12, > + ? ? ? GPIO73_LCD_DD13, > + ? ? ? GPIO74_LCD_DD14, > + ? ? ? GPIO75_LCD_DD15, > + ? ? ? GPIO76_LCD_DD16, > + ? ? ? GPIO77_LCD_DD17, > + ? ? ? GPIO78_LCD_DD18, > + ? ? ? GPIO79_LCD_DD19, > + ? ? ? GPIO80_LCD_DD20, > + ? ? ? GPIO81_LCD_DD21, > + ? ? ? GPIO82_LCD_DD22, > + ? ? ? GPIO83_LCD_DD23, > ?}; > > ?static struct smc91x_platdata smc91x_info = { > @@ -134,6 +165,34 @@ static struct i2c_board_info aspenite_i2c_info[] __initdata = { > ? ? ? ?{ I2C_BOARD_INFO("wm8753", 0x1b), }, > ?}; > > +static struct fb_videomode video_modes[] = { > + ? ? ? [0] = { > + ? ? ? ? ? ? ? .pixclock ? ? ? = 30120, > + ? ? ? ? ? ? ? .refresh ? ? ? ?= 60, > + ? ? ? ? ? ? ? .xres ? ? ? ? ? = 800, > + ? ? ? ? ? ? ? .yres ? ? ? ? ? = 480, > + ? ? ? ? ? ? ? .hsync_len ? ? ?= 1, > + ? ? ? ? ? ? ? .left_margin ? ?= 215, > + ? ? ? ? ? ? ? .right_margin ? = 40, > + ? ? ? ? ? ? ? .vsync_len ? ? ?= 1, > + ? ? ? ? ? ? ? .upper_margin ? = 34, > + ? ? ? ? ? ? ? .lower_margin ? = 10, > + ? ? ? ? ? ? ? .sync ? ? ? ? ? = FB_SYNC_VERT_HIGH_ACT | FB_SYNC_HOR_HIGH_ACT, > + ? ? ? }, > +}; > + > +struct pxa168fb_mach_info aspenite_lcd_info = { > + ? ? ? .id ? ? ? ? ? ? ? ? ? ? = "Graphic Frame", > + ? ? ? .modes ? ? ? ? ? ? ? ? ?= video_modes, > + ? ? ? .num_modes ? ? ? ? ? ? ?= ARRAY_SIZE(video_modes), > + ? ? ? .pix_fmt ? ? ? ? ? ? ? ?= PIX_FMT_RGB565, > + ? ? ? .io_pin_allocation_mode = PIN_MODE_DUMB_24, > + ? ? ? .dumb_mode ? ? ? ? ? ? ?= DUMB_MODE_RGB888, > + ? ? ? .active ? ? ? ? ? ? ? ? = 1, > + ? ? ? .panel_rbswap ? ? ? ? ? = 0, > + ? ? ? .invert_pixclock ? ? ? ?= 0, > +}; > + > ?static void __init common_init(void) > ?{ > ? ? ? ?mfp_config(ARRAY_AND_SIZE(common_pin_config)); > @@ -143,6 +202,7 @@ static void __init common_init(void) > ? ? ? ?pxa168_add_twsi(1, NULL, ARRAY_AND_SIZE(aspenite_i2c_info)); > ? ? ? ?pxa168_add_ssp(1); > ? ? ? ?pxa168_add_nand(&aspenite_nand_info); > + ? ? ? pxa168_add_fb(&aspenite_lcd_info); > > ? ? ? ?/* off-chip devices */ > ? ? ? ?platform_device_register(&smc91x_device); > -- > 1.7.0.4 > > ^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH v3 0/2] added initial support for TPO TD043MTEA1 LCD display on Aspenite 2010-08-26 3:51 [PATCH v3 0/2] added initial support for TPO TD043MTEA1 LCD display on Aspenite Mark F. Brown 2010-08-26 3:51 ` [PATCH v3 1/2] pxa168: added framebuffer support code Mark F. Brown 2010-08-26 3:51 ` [PATCH v3 2/2] pxa168: added initial support for TPO TD043MTEA1 LCD display on Aspenite Mark F. Brown @ 2010-08-26 4:51 ` Marek Vasut 2 siblings, 0 replies; 6+ messages in thread From: Marek Vasut @ 2010-08-26 4:51 UTC (permalink / raw) To: linux-arm-kernel Dne ?t 26. srpna 2010 05:51:53 Mark F. Brown napsal(a): > Mark F. Brown (2): > pxa168: added framebuffer support code. > pxa168: added initial support for TPO TD043MTEA1 LCD display on > Aspenite > > arch/arm/mach-mmp/aspenite.c | 60 > +++++++++++++++++++++++++++++++ arch/arm/mach-mmp/include/mach/pxa168.h | > 8 ++++ > arch/arm/mach-mmp/pxa168.c | 3 ++ > 3 files changed, 71 insertions(+), 0 deletions(-) It looks good to me, but the hardware specific goo is up to Haojian/Eric to check. Cheers ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2010-08-26 9:34 UTC | newest] Thread overview: 6+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2010-08-26 3:51 [PATCH v3 0/2] added initial support for TPO TD043MTEA1 LCD display on Aspenite Mark F. Brown 2010-08-26 3:51 ` [PATCH v3 1/2] pxa168: added framebuffer support code Mark F. Brown 2010-08-26 9:34 ` Eric Miao 2010-08-26 3:51 ` [PATCH v3 2/2] pxa168: added initial support for TPO TD043MTEA1 LCD display on Aspenite Mark F. Brown 2010-08-26 9:29 ` Eric Miao 2010-08-26 4:51 ` [PATCH v3 0/2] " Marek Vasut
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).