.hsync_len = 1, .vsync_len = 1, .left_margin = 70, .upper_margin = 13, .right_margin = 1, .lower_margin = 1, .sync = 0, .cmap_greyscale = 0, }; static struct pxafb_mach_info generic_tft_320x240 = { .modes = &generic_tft_320x240_mode, .num_modes = 1, .lccr0 = (LCCR0_PAS), .lccr3 = (LCCR3_PixClkDiv(0x01) | LCCR3_Acb(0xff) | LCCR3_PCP), .cmap_inverse = 0, .cmap_static = 0, .lcd_conn = LCD_COLOR_TFT_18BPP, }; static struct pxafb_mach_info *simcom_display = &generic_tft_640x480;//&generic_crt_800x600; static void __init simcom_init_display(void) { set_pxa_fb_info(simcom_display); } #else static inline void simcom_init_display(void) {}
.vsync_len = 2, .left_margin = 3, .upper_margin = 0, .right_margin = 3, .lower_margin = 0, .sync = (FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT), .cmap_greyscale = 0, }; static struct pxafb_mach_info generic_stn_320x240 = { .modes = &generic_stn_320x240_mode, .num_modes = 1, .lccr0 = 0, .lccr3 = (LCCR3_PixClkDiv(0x03) | LCCR3_Acb(0xff) | LCCR3_PCP), .cmap_inverse = 0, .cmap_static = 0, }; static struct pxafb_mode_info generic_tft_640x480_mode = { .pixclock = 38461, .bpp = 8, .xres = 640, .yres = 480, .hsync_len = 60, .vsync_len = 2, .left_margin = 70, .upper_margin = 10, .right_margin = 70,
.pixclock = 270000, .xres = 640, .yres = 480, .bpp = 16, .hsync_len = 1, .left_margin = 3, .right_margin = 3, .vsync_len = 1, .upper_margin = 0, .lower_margin = 0, .sync = FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT, .cmap_greyscale = 0, .cmap_inverse = 0, .cmap_static = 0, .lccr0 = LCCR0_SDS, .lccr3 = LCCR3_PCP | LCCR3_Acb(255), .pxafb_backlight_power = &idp_backlight_power, .pxafb_lcd_power = &idp_lcd_power }; static int idp_mci_init(struct device *dev, irqreturn_t (*idp_detect_int)(int, void *, struct pt_regs *), void *data) { /* setup GPIO for PXA25x MMC controller */ pxa_gpio_mode(GPIO6_MMCCLK_MD); pxa_gpio_mode(GPIO8_MMCCS0_MD); return 0; } static struct pxamci_platform_data idp_mci_platform_data = { .ocr_mask = MMC_VDD_32_33|MMC_VDD_33_34,
.upper_margin = 0, .right_margin = 46, .lower_margin = 0, .sync = 0, .cmap_greyscale = 0, }, }; static struct pxafb_mach_info asus730_fb_info = { .modes = a730_fb_modes, .num_modes = ARRAY_SIZE(a730_fb_modes), .fixed_modes = 1, //.cmap_inverse = 0, //.cmap_static = 0, .lccr0 = (LCCR0_ENB | LCCR0_Act | LCCR0_Sngl | LCCR0_Color | LCCR0_LDDALT | LCCR0_OUC | LCCR0_CMDIM | LCCR0_RDSTM), .lccr3 = (LCCR3_Acb(0) | LCCR3_OutEnH | LCCR3_PixRsEdg),//0x04700001, //.pxafb_backlight_power = a730_backlight_power, //.pxafb_lcd_power = a730_lcd_power, }; static struct platform_device a730_device = { .name = "a730", .id = 0, }; static struct platform_device a730_power = { .name = "a730-power", }; static struct platform_device a730_buttons = { .name = "a730-buttons",