Hello Peter,
Le 28/01/2016 15:57, Peter Maydell a écrit :
On 26 January 2016 at 21:44, Jean-Christophe Dubois <j...@tribudubois.net>
wrote:
This patch series adds support for the Freescale i.MX6 processor.
For now we only support the following devices:
* up to 4 Cortex A9 cores
* A9 MPCORE (SCU, GIC, TWD)
* 5 i.MX UARTs
* 2 EPIT timers
* 1 GPT timer
* 7 GPIO controllers
* 6 SDHC controllers
* 1 CCM device
* 1 SRC device
* various ROM/RAM areas.
This also adds the sabrelite board as a an actual platform for i.MX6.
This series was tested by booting a 4.4 linux kernel (using the
imx_v6_v7_defconfig file as kernel configuration).
Note: In order for Linux to work I had to customize a bit the
arch/arm/boot/dts/imx6qdl-sabrelite.dtsi device tree file.
What changes did you have to make to the dt, and why?
Please find attached the diff file for the linux imx6qdl-sabrelite.dtsi
file.
Basically, it boils down to the following:
* Sabrelite uses uart2 for console but on qemu, this is uart1 that is
wired to the default stdout. Consequently, I changed stdout-path in
"chosen" to uart1.
* For now i.MX6 SOC code does not emulate SPI controller. During the
boot Linux was getting stuck trying to access a SPI device that is
supposed to be there. Therefore I disabled the SPI controller in the
device tree.
* The sabrelite is supposed to have a bunch of push buttons (home,
power, back, vol up, vol down) wired to various GPIOs. I guess these
buttons might have pull up or pull down resistors on the real
hardware but obviously on qemu we have no such things. As a results
the GPIOs were triggering a lot of interrupts for nothing. So I
commented out the GPIO sections were the buttons were defined.
Regards
JC
thanks
-- PMM
diff --git a/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi b/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi
index 1a69a34..760020e 100644
--- a/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi
+++ b/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi
@@ -44,7 +44,8 @@
/ {
chosen {
- stdout-path = &uart2;
+ bootargs = "console=ttymxc0,115200";
+ stdout-path = &uart1;
};
memory {
@@ -96,6 +97,7 @@
};
};
+/*
gpio-keys {
compatible = "gpio-keys";
pinctrl-names = "default";
@@ -138,6 +140,7 @@
linux,code = <KEY_VOLUMEDOWN>;
};
};
+*/
sound {
compatible = "fsl,imx6q-sabrelite-sgtl5000",
@@ -245,7 +248,7 @@
cs-gpios = <&gpio3 19 0>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_ecspi1>;
- status = "okay";
+ /* status = "okay"; */
flash: m25p80@0 {
compatible = "sst,sst25vf016b", "jedec,spi-nor";