All of lore.kernel.org
 help / color / mirror / Atom feed
From: Pavel Machek <pavel@ucw.cz>
To: Tony Lindgren <tony@atomide.com>
Cc: Aaro Koskinen <aaro.koskinen@iki.fi>,
	pali.rohar@gmail.com, kernel list <linux-kernel@vger.kernel.org>,
	linux-arm-kernel <linux-arm-kernel@lists.infradead.org>,
	linux-omap@vger.kernel.org
Subject: N900 device tree conversion: next steps
Date: Thu, 27 Jun 2013 14:12:14 +0200	[thread overview]
Message-ID: <20130627121213.GA17782@amd.pavel.ucw.cz> (raw)
In-Reply-To: <20130617111031.GQ20992@atomide.com>

Hi!

> > Anyway... here's my current version, and thanks for all the help. I
> > guess I'll need to figure out clocks next, because I'd really like to
> > have video going on device.
> 
> Well DSS is still using pdata based init because of the DT bindings
> are not ready yet.

Yes, I know. But as nokia already initializes DSS "by hand", that
should not be a problem.

I have something working at this point: remaining issue was that to
get display working, tsc2005 binding has to be present. (That is true
both before and after devicetree conversion).

What would be procedure for merging the patch? Would you be able to
take it in one piece, or does it need to be split somehow?

Thanks,
								Pavel

diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index 9c62558..7b1a075 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -119,6 +119,7 @@ dtb-$(CONFIG_ARCH_OMAP2PLUS) += omap2420-h4.dtb \
 	omap3-beagle-xm.dtb \
 	omap3-evm.dtb \
 	omap3-tobi.dtb \
+	omap3-n900.dtb \
 	omap4-panda.dtb \
 	omap4-panda-a4.dtb \
 	omap4-panda-es.dtb \
diff --git a/arch/arm/boot/dts/omap3-n900.dts b/arch/arm/boot/dts/omap3-n900.dts
new file mode 100644
index 0000000..c5538a6
--- /dev/null
+++ b/arch/arm/boot/dts/omap3-n900.dts
@@ -0,0 +1,94 @@
+/*
+ * Copyright (C) 2013 Pavel Machek <pavel@ucw.cz>
+ * Copyright 2013 Aaro Koskinen <aaro.koskinen@iki.fi>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 (or later) as
+ * published by the Free Software Foundation.
+ */
+
+/dts-v1/;
+
+/include/ "omap34xx.dtsi"
+
+/ {
+	model = "Nokia N900";
+	compatible = "nokia,omap3-n900", "ti,omap3";
+
+	cpus {
+		cpu@0 {
+//			cpu0-supply = <&vcc>;
+		};
+	};
+
+	memory {
+		device_type = "memory";
+		reg = <0x80000000 0x10000000>; /* 256 MB */
+	};
+
+};
+
+&i2c1 {
+	clock-frequency = <2200000>;
+
+	twl: twl@48 {
+		reg = <0x48>;
+		interrupts = <7>; /* SYS_NIRQ cascaded to intc */
+		interrupt-parent = <&intc>;
+	};
+};
+
+/include/ "twl4030.dtsi"
+
+&twl_gpio {
+	ti,pullups	= <0x0>;
+	ti,pulldowns	= <0x03ff3f>; /* BIT(0..5) | BIT(8..17) */
+};
+
+&i2c2 {
+	clock-frequency = <400000>;
+};
+
+&i2c3 {
+	clock-frequency = <100000>;
+};
+
+&mmc1 {
+	status = "disabled";
+};
+
+&mmc2 {
+	status = "disabled";
+};
+
+&mmc3 {
+	status = "disabled";
+};
+
+&mcspi1 {
+	// For some reason, touchscreen is neccessary for screen to work at 
+	// all on real hw. It works well without it on emulator.
+	//
+	// Also... order in the device tree actually matters here.
+	tsc2005@0 {
+		compatible = "tsc2005";
+		spi-max-frequency = <6000000>;
+		reg = <0>;
+	};
+	mipid@2 {
+		compatible = "acx565akm";
+		spi-max-frequency = <6000000>;
+		reg = <2>;
+		// turbo_mode = 0,
+		// cs_per_word = 0
+	};
+};
+
+/*
+&usb_otg_hs {
+	interface-type = <0>;
+	usb-phy = <&usb2_phy>;
+	mode = <2>;
+	power = <50>;
+};
+*/
diff --git a/arch/arm/boot/dts/omap34xx.dtsi b/arch/arm/boot/dts/omap34xx.dtsi
new file mode 100644
index 0000000..75ed4ae
--- /dev/null
+++ b/arch/arm/boot/dts/omap34xx.dtsi
@@ -0,0 +1,28 @@
+/*
+ * Device Tree Source for OMAP34xx/OMAP35xx SoC
+ *
+ * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com/
+ *
+ * This file is licensed under the terms of the GNU General Public License
+ * version 2.  This program is licensed "as is" without any warranty of any
+ * kind, whether express or implied.
+ */
+
+/include/ "omap3.dtsi"
+
+/ {
+	cpus {
+		cpu@0 {
+			/* OMAP343x/OMAP35xx variants OPP1-5 */
+			operating-points = <
+				/* kHz    uV */
+				125000   975000
+				250000  1075000
+				500000  1200000
+				550000  1270000
+				600000  1350000
+			>;
+			clock-latency = <300000>; /* From legacy driver */
+		};
+	};
+};
diff --git a/arch/arm/mach-omap2/board-rx51-compat.c b/arch/arm/mach-omap2/board-rx51-compat.c
index 0ffa909..f4223ff 100644
--- a/arch/arm/mach-omap2/board-rx51-compat.c
+++ b/arch/arm/mach-omap2/board-rx51-compat.c
@@ -131,6 +131,7 @@ static long twl4030_madc_ioctl(struct file *filp, unsigned int cmd,
 
 	switch (cmd) {
 	case TWL4030_MADC_IOCX_ADC_RAW_READ: {
+#if 0
 		struct twl4030_madc_request req;
 		if (par.channel >= TWL4030_MADC_MAX_CHANNELS)
 			return -EINVAL;
@@ -151,6 +152,9 @@ static long twl4030_madc_ioctl(struct file *filp, unsigned int cmd,
 		} else {
 			par.status = val;
 		}
+#else
+		panic("no raw readings from adc"); 
+#endif
 		break;
 	}
 	default:
diff --git a/arch/arm/mach-omap2/board-rx51-video.c b/arch/arm/mach-omap2/board-rx51-video.c
index eb66726..4c834c1 100644
--- a/arch/arm/mach-omap2/board-rx51-video.c
+++ b/arch/arm/mach-omap2/board-rx51-video.c
@@ -68,7 +68,7 @@ static struct omap_dss_board_info rx51_dss_board_info = {
 
 static int __init rx51_video_init(void)
 {
-	if (!machine_is_nokia_rx51())
+	if (!machine_is_nokia_rx51() && !of_machine_is_compatible("nokia,omap3-n900"))
 		return 0;
 
 	if (omap_mux_init_gpio(RX51_LCD_RESET_GPIO, OMAP_PIN_OUTPUT)) {
diff --git a/arch/arm/mach-omap2/board-rx51.c b/arch/arm/mach-omap2/board-rx51.c
index 74f83a5..81f7b9f 100644
--- a/arch/arm/mach-omap2/board-rx51.c
+++ b/arch/arm/mach-omap2/board-rx51.c
@@ -33,9 +33,12 @@
 #include "pm.h"
 #include "sdram-nokia.h"
 #include "board-rx51-secure.h"
+#include "soc.h"
 
 #define RX51_GPIO_SLEEP_IND 162
 
+/* This lights up left part of keyboard */
+
 static struct gpio_led gpio_leds[] = {
 	{
 		.name	= "sleep_ind",
@@ -107,9 +110,11 @@ static void __init rx51_init(void)
 	rx51_camera_init();
 
 #ifdef CONFIG_ARM_ERRATA_430973
-	printk(KERN_INFO "RX-51: Enabling ARM errata 430973 workaround.\n");
-	/* set IBE to 1 */
-	rx51_secure_update_aux_cr(1 << 6, 0);
+	if (omap_type() == OMAP2_DEVICE_TYPE_SEC) {
+		printk(KERN_INFO "RX-51: Enabling ARM errata 430973 workaround.\n");
+		/* set IBE to 1 */
+		rx51_secure_update_aux_cr(1 << 6, 0);
+	}
 #endif
 
 	/* Ensure SDRC pins are mux'd for self-refresh */
@@ -124,6 +129,7 @@ static void __init rx51_reserve(void)
 	omap_reserve();
 }
 
+#if 0
 MACHINE_START(NOKIA_RX51, "Nokia RX-51 board")
 	/* Maintainer: Lauri Leukkunen <lauri.leukkunen@nokia.com> */
 	.atag_offset	= 0x100,
@@ -137,3 +143,4 @@ MACHINE_START(NOKIA_RX51, "Nokia RX-51 board")
 	.init_time	= omap3_sync32k_timer_init,
 	.restart	= omap3xxx_restart,
 MACHINE_END
+#endif
--- a/sound/soc/omap/rx51.c
+++ b/sound/soc/omap/rx51.c
@@ -396,7 +396,7 @@ static int rx51_soc_probe(struct platform_device *pdev)
 	struct snd_soc_card *card = &rx51_sound_card;
 	int err;
 
-	if (!machine_is_nokia_rx51())
+	if (!machine_is_nokia_rx51() && !of_machine_is_compatible("nokia,omap3-n900"))
 		return -ENODEV;
 
 	err = gpio_request_one(RX51_TVOUT_SEL_GPIO,


-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

  reply	other threads:[~2013-06-27 12:12 UTC|newest]

Thread overview: 99+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-06-09  1:59 N900 device tree conversion: how to do first step Pavel Machek
2013-06-09  1:59 ` Pavel Machek
2013-06-09  9:24 ` Pali Rohár
2013-06-09  9:24   ` Pali Rohár
2013-06-09 16:47   ` Pavel Machek
2013-06-09 16:47     ` Pavel Machek
2013-06-09 17:03     ` Pali Rohár
2013-06-09 17:03       ` Pali Rohár
2013-06-09 17:03       ` Pali Rohár
2013-06-09 17:30 ` Pavel Machek
2013-06-09 17:30   ` Pavel Machek
2013-06-09 20:11 ` Aaro Koskinen
2013-06-09 20:11   ` Aaro Koskinen
2013-06-13 13:26   ` Pavel Machek
2013-06-13 13:26     ` Pavel Machek
2013-06-13 14:10     ` Tony Lindgren
2013-06-13 14:10       ` Tony Lindgren
2013-06-13 14:28       ` Pavel Machek
2013-06-13 14:28         ` Pavel Machek
2013-06-13 14:57         ` Tony Lindgren
2013-06-13 14:57           ` Tony Lindgren
2013-06-13 15:52           ` Pavel Machek
2013-06-13 15:52             ` Pavel Machek
2013-06-13 16:14             ` Tony Lindgren
2013-06-13 16:14               ` Tony Lindgren
2013-06-13 23:08               ` Pavel Machek
2013-06-13 23:08                 ` Pavel Machek
2013-06-14  5:56                 ` Tony Lindgren
2013-06-14  5:56                   ` Tony Lindgren
2013-06-14 21:28                   ` Pavel Machek
2013-06-14 21:28                     ` Pavel Machek
2013-06-17 11:10                     ` Tony Lindgren
2013-06-17 11:10                       ` Tony Lindgren
2013-06-27 12:12                       ` Pavel Machek [this message]
2013-07-01 14:03                       ` [PATCH] N900: fix operation on emulator Pavel Machek
2013-07-01 14:03                         ` Pavel Machek
2013-07-01 18:22                         ` Sergei Shtylyov
2013-07-01 18:22                           ` Sergei Shtylyov
2013-07-01 18:22                           ` Sergei Shtylyov
2013-07-01 19:51                           ` Pavel Machek
2013-07-01 19:51                             ` Pavel Machek
2013-07-01 20:00                             ` Sergei Shtylyov
2013-07-01 20:00                               ` Sergei Shtylyov
2013-07-01 20:53                           ` Pavel Machek
2013-07-01 20:53                             ` Pavel Machek
2013-07-01 21:15                       ` [PATCH] N900: enable N900-specific drivers even if device tree is enabled Pavel Machek
2013-07-01 21:15                         ` Pavel Machek
2013-07-04 11:47                         ` Tony Lindgren
2013-07-04 11:47                           ` Tony Lindgren
2013-07-01 21:17                       ` [PATCH] N900: add device tree Pavel Machek
2013-07-01 21:17                         ` Pavel Machek
2013-07-04 17:19                         ` Aaro Koskinen
2013-07-04 17:19                           ` Aaro Koskinen
2013-07-04 20:21                           ` Pavel Machek
2013-07-04 20:21                             ` Pavel Machek
2013-07-04 20:32                             ` Aaro Koskinen
2013-07-04 20:32                               ` Aaro Koskinen
2013-07-13 12:17                               ` [PATCH v2] " Pavel Machek
2013-07-13 12:17                                 ` Pavel Machek
2013-07-14 22:28                                 ` Aaro Koskinen
2013-07-14 22:28                                   ` Aaro Koskinen
2013-07-28 13:44                                   ` Pavel Machek
2013-07-28 13:44                                     ` Pavel Machek
2013-08-01 23:43                                     ` Pavel Machek
2013-08-01 23:43                                       ` Pavel Machek
2013-08-10 11:09                                       ` Pavel Machek
2013-08-10 11:09                                         ` Pavel Machek
2013-08-10 11:09                                         ` Pavel Machek
2013-08-10 11:27                                         ` [PATCH] ARM: dts: omap3 / n900 support, Benoit please take me (was Re: [PATCH v2] N900: add device tree) Pavel Machek
2013-08-10 11:27                                           ` Pavel Machek
2013-08-10 11:46                                         ` [PATCH v2] N900: add device tree Belisko Marek
2013-08-10 11:46                                           ` Belisko Marek
2013-08-10 20:29                                           ` Jiri Kosina
2013-08-10 20:29                                             ` Jiri Kosina
2013-08-11  0:55                                             ` OMAP device tree maintainance (was Re: [PATCH v2] N900: add device tree) Pavel Machek
2013-08-11  0:55                                               ` Pavel Machek
2013-08-11 11:50                                             ` [PATCH v2] N900: add device tree Javier Martinez Canillas
2013-08-11 11:50                                               ` Javier Martinez Canillas
2013-08-11 13:47                                               ` Pavel Machek
2013-08-11 13:47                                                 ` Pavel Machek
2013-08-11 13:47                                                 ` Pavel Machek
2013-08-12  7:37                                                 ` Tony Lindgren
2013-08-12  7:37                                                   ` Tony Lindgren
2013-08-12  7:36                                             ` Tony Lindgren
2013-08-12  7:36                                               ` Tony Lindgren
2013-08-11 15:02                                 ` Javier Martinez Canillas
2013-08-11 15:02                                   ` Javier Martinez Canillas
2013-08-13 10:50                                   ` Benoit Cousson
2013-08-13 10:50                                     ` Benoit Cousson
2013-08-13 13:36                                     ` [PATCH v3] " Pavel Machek
2013-08-13 13:36                                       ` Pavel Machek
2013-08-13 14:06                                       ` Benoit Cousson
2013-08-13 14:06                                         ` Benoit Cousson
2013-06-26 15:14       ` N900 device tree conversion: first step Pavel Machek
2013-07-19 18:14 ` N900 device tree conversion: how to do " Sebastian Reichel
2013-07-19 18:14   ` Sebastian Reichel
2013-07-19 18:14   ` Sebastian Reichel
2013-07-28 13:37   ` Pavel Machek
2013-07-28 13:37     ` Pavel Machek

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20130627121213.GA17782@amd.pavel.ucw.cz \
    --to=pavel@ucw.cz \
    --cc=aaro.koskinen@iki.fi \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=pali.rohar@gmail.com \
    --cc=tony@atomide.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.