summaryrefslogtreecommitdiff
path: root/arch/arm/mach-mx5/early_setup.c
diff options
context:
space:
mode:
authorJason Chen <b02280@freescale.com>2010-05-12 15:36:40 +0800
committerJason Chen <b02280@freescale.com>2010-05-12 15:41:13 +0800
commit88df6529ccac5c16d4e956d513b9ab6c94fc49a7 (patch)
treef456042b649832fe2bd03ca71ef711fc4bef7334 /arch/arm/mach-mx5/early_setup.c
parent556950cbd6a0b4b83b4f1edca538ffff8e2cbfc7 (diff)
ENGR00122780 ipufb: rework display device setting method
Rework the display command line options to not require new option for every new display. Add mxcdi0fb/mxcdi1fb option <fmt> and to tell system what kind of display device is going to use. Use "di1_primary" to make DI1 the primary display (i.e. fb0). The display selection is done using video= parameter. For example on imx51: di di_fmt video_mode DVI: 0 RGB24 mxcdi0fb:800x600M-16@60 etc DVI-HDMI: 0 RGB24 mxcdi0fb:720P60 LVDS: 0 LVDS666 mxcdi0fb:XGA WVGA lcd: 1 RGB565 mxcdi1fb:800x480M-16@55 TVE: 1 YUV444 mxcdi1fb:TV-NTSC mxcdi1fb:TV-PAL mxcdi1fb:720P60 For example on imx53: di di_fmt video_mode DVI: 0 RGB24 mxcdi0fb:800x600M-16@60 etc DVI-HDMI: 0 RGB24 mxcdi0fb:720P60 WVGA lcd: 0 RGB565 mxcdi0fb:800x480M-16@55 TVE: 1 YUV444 mxcdi1fb:TV-NTSC mxcdi1fb:TV-PAL mxcdi1fb:720P60 If you want to set NTSC tv as primary display, and make second display DI0 as DVI 1024x768 resolution, just add "di1_primary video=mxcdi0fb:RGB24,1024x768M-16@60 video=mxcdi1fb:YUV444,TV-NTSC" to cmdline. Signed-off-by: Rob Herring <r.herring@freescale.com> Signed-off-by: Jason Chen <b02280@freescale.com>
Diffstat (limited to 'arch/arm/mach-mx5/early_setup.c')
-rw-r--r--arch/arm/mach-mx5/early_setup.c29
1 files changed, 29 insertions, 0 deletions
diff --git a/arch/arm/mach-mx5/early_setup.c b/arch/arm/mach-mx5/early_setup.c
new file mode 100644
index 000000000000..dd731d7f822e
--- /dev/null
+++ b/arch/arm/mach-mx5/early_setup.c
@@ -0,0 +1,29 @@
+/*
+ * Copyright (C) 2010 Freescale Semiconductor, Inc. All Rights Reserved.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+ */
+
+#include <linux/init.h>
+#include <linux/string.h>
+
+int __initdata primary_di = { 0 };
+static int __init di_setup(char *__unused)
+{
+ primary_di = 1;
+ return 1;
+}
+__setup("di1_primary", di_setup);
+