Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
96 changes: 56 additions & 40 deletions arch/arm/boot/dts/nxp/imx/imx6ul-ts7100.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -416,44 +416,44 @@

fpga_syscon: bus@50004000 {
compatible = "simple-bus";
#address-cells = <0x2>;
#address-cells = <0x1>;
#size-cells = <0x1>;
reg = <0x4000 0x58>;
ranges = <0 0 0x4000 0x58>;
ranges = <0 0x4000 0x100>;

fpga_gpio0: gpio@50004010 {
compatible = "technologic,ts71xxweim-gpio";
reg = <0 0x10 0x08>;
reg = <0x10 0x08>, <0x80 0x10>;
gpio-controller;
#gpio-cells = <2>;

interrupt-parent = <&fpga_intc>;
interrupts = <21 IRQ_TYPE_LEVEL_HIGH>;

interrupt-controller;
#interrupt-cells = <1>;
};

fpga_gpio1: gpio@50004040 {
compatible = "technologic,ts71xxweim-gpio";
reg = <0 0x40 0x08>;
reg = <0x40 0x08>;
gpio-controller;
#gpio-cells = <2>;
interrupt-controller;
#interrupt-cells = <1>;
};

fpga_gpio2: gpio@50004050 {
compatible = "technologic,ts71xxweim-gpio";
reg = <0 0x50 0x08>;
reg = <0x50 0x08>;
gpio-controller;
#gpio-cells = <2>;
interrupt-controller;
#interrupt-cells = <1>;
};

fpga_intc: interrupt-controller@50004024 {
compatible = "technologic,ts71xxweim-intc";

interrupt-controller;
#interrupt-cells = <1>;
reg = <0 0x00 0x50>;
reg = <0x00 0x50>;

interrupt-parent = <&gpio5>;
interrupts = <1 IRQ_TYPE_LEVEL_HIGH>;
Expand All @@ -472,34 +472,7 @@
interrupts = <0>;
};

opencores_spi0: spi@50000100 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "opencores,spi-oc";
reg = <0x100 32>;
interrupt-parent = <&fpga_intc>;
interrupts = <9>;
clocks = <&fpga_clk_weim_bclk>;
clock-names = "spi-oc-clk";
num-cs = <2>;

spifram: eeprom@0 {
compatible = "atmel,at25";
reg = <0>;
spi-max-frequency = <20000000>;
size = <0x800>;
address-width = <16>;
pagesize = <64>;
};

spisplash: flash@1 {
compatible = "jedec,spi-nor";
reg = <1>;
spi-max-frequency = <20000000>;
};
};

opencores_spi1: spi@50000120 {
opencores_spi0: spi@50000120 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "opencores,spi-oc";
Expand All @@ -508,7 +481,7 @@
interrupts = <10>;
clocks = <&fpga_clk_weim_bclk>;
clock-names = "spi-oc-clk";
num-cs = <1>;
num-cs = <3>;

/* Touch screen SPI interface */
touch_spi: touch_spi@0 {
Expand All @@ -528,6 +501,49 @@
ti,pressure-min = /bits/ 16 <300>;
linux,wakeup;
};

spifram: eeprom@1 {
compatible = "atmel,at25";
reg = <1>;
spi-max-frequency = <20000000>;
size = <0x800>;
address-width = <16>;
pagesize = <64>;
};

spisplash: spi@2 {
compatible = "jedec,spi-nor";
reg = <2>;
spi-max-frequency = <20000000>;
};
};
};

fpga_pwm0: pwm@180 {
compatible = "technologic,pwm";
reg = <0x180 8>;
clocks = <&fpga_clk_weim_bclk>;
clock-names = "PWM-INPUT-CLK";
};

fpga_pwm1: pwm@190 {
compatible = "technologic,pwm";
reg = <0x190 8>;
clocks = <&fpga_clk_weim_bclk>;
clock-names = "PWM-INPUT-CLK";
};

fpga_pwm2: pwm@1a0 {
compatible = "technologic,pwm";
reg = <0x1a0 8>;
clocks = <&fpga_clk_weim_bclk>;
clock-names = "PWM-INPUT-CLK";
};

fpga_pwm3: pwm@1b0 {
compatible = "technologic,pwm";
reg = <0x1b0 8>;
clocks = <&fpga_clk_weim_bclk>;
clock-names = "PWM-INPUT-CLK";
};
};
};
41 changes: 33 additions & 8 deletions arch/arm/boot/dts/nxp/imx/imx6ul-ts7250v3.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -428,9 +428,13 @@

fpga_bank0: fpga_gpio@10 {
compatible = "technologic,ts71xxweim-gpio";
reg = <0x10 0x08>;
reg = <0x10 0x08>, <0x80 0x10>;
gpio-controller;
#gpio-cells = <2>;

interrupt-parent = <&fpga_intc>;
interrupts = <21 IRQ_TYPE_LEVEL_HIGH>;

interrupt-controller;
#interrupt-cells = <1>;

Expand All @@ -444,9 +448,13 @@

fpga_bank1: fpga_gpio@40 {
compatible = "technologic,ts71xxweim-gpio";
reg = <0x40 0x08>;
reg = <0x40 0x08>, <0x90 0x10>;
gpio-controller;
#gpio-cells = <2>;

interrupt-parent = <&fpga_intc>;
interrupts = <22 IRQ_TYPE_LEVEL_HIGH>;

interrupt-controller;
#interrupt-cells = <1>;

Expand All @@ -460,9 +468,13 @@

fpga_bank2: fpga_gpio@54 {
compatible = "technologic,ts71xxweim-gpio";
reg = <0x54 0x08>;
reg = <0x54 0x08>, <0xa0 0x10>;
gpio-controller;
#gpio-cells = <2>;

interrupt-parent = <&fpga_intc>;
interrupts = <23 IRQ_TYPE_LEVEL_HIGH>;

interrupt-controller;
#interrupt-cells = <1>;

Expand All @@ -478,9 +490,13 @@

fpga_bank3: fpga_gpio@5c {
compatible = "technologic,ts71xxweim-gpio";
reg = <0x5c 0x08>;
reg = <0x5c 0x08>, <0xb0 0x10>;
gpio-controller;
#gpio-cells = <2>;

interrupt-parent = <&fpga_intc>;
interrupts = <24 IRQ_TYPE_LEVEL_HIGH>;

interrupt-controller;
#interrupt-cells = <1>;

Expand All @@ -494,9 +510,13 @@

fpga_bank4: fpga_gpio@64 {
compatible = "technologic,ts71xxweim-gpio";
reg = <0x64 0x08>;
reg = <0x64 0x08>, <0xc0 0x10>;
gpio-controller;
#gpio-cells = <2>;

interrupt-parent = <&fpga_intc>;
interrupts = <25 IRQ_TYPE_LEVEL_HIGH>;

interrupt-controller;
#interrupt-cells = <1>;

Expand All @@ -512,17 +532,22 @@

fpga_bank5: fpga_gpio@6c {
compatible = "technologic,ts71xxweim-gpio";
reg = <0x6c 0x08>;
reg = <0x6c 0x08>, <0xd0 0x10>;
gpio-controller;
#gpio-cells = <2>;

interrupt-parent = <&fpga_intc>;
interrupts = <26 IRQ_TYPE_LEVEL_HIGH>;

interrupt-controller;
#interrupt-cells = <1>;

gpio-line-names = "ISA_ADD_16", "ISA_ADD_17",
"ISA_ADD_18", "ISA_ADD_19", "ISA_IOR",
"ISA_IOW", "ISA_MEMR", "ISA_MEMW",
"ISA_CN_D01", "ISA_CN_D02", "", "", "",
"", "", "";
"ISA_CN_D01", "ISA_CN_D02", "ISA_IRQ3",
"ISA_IRQ5", "ISA_IRQ6", "ISA_IRQ7",
"ISA_IRQ9", "";
};

pc104bus: fpgaisa@50 {
Expand Down
1 change: 1 addition & 0 deletions drivers/gpio/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -891,6 +891,7 @@ config GPIO_LOONGSON1
config GPIO_TS71XXWEIM
bool "embeddedTS WEIM FPGA GPIO"
depends on IMX_WEIM
select GPIOLIB_IRQCHIP
help
Say yes here to enable the GPIO driver for embeddedTS's FPGA core
connected to the i.MX6UL WEIM bus.
Expand Down
Loading