[meta-ti] [PATCH] linux-ti-staging: include pru-uio device tree files for am571x and k2g
Denys Dmytriyenko
denys at ti.com
Tue Sep 26 10:01:09 PDT 2017
Hongmei,
Both of these patches have been merged on September 5 and rebased on top of
every RC tag since then:
https://lists.yoctoproject.org/pipermail/meta-ti/2017-September/010365.html
--
Denys
On Mon, Sep 25, 2017 at 05:52:50PM +0000, Gou, Hongmei wrote:
> Ping...
>
> > -----Original Message-----
> > From: Gou, Hongmei
> > Sent: Tuesday, September 05, 2017 6:13 PM
> > To: meta-ti at yoctoproject.org
> > Cc: Gou, Hongmei
> > Subject: [meta-ti] [PATCH] linux-ti-staging: include pru-uio device tree files
> > for am571x and k2g
> >
> > * The pru-uio device tree file for am572x is also updated to support
> > icss-emac-lld in Linux userspace.
> >
> > * The new dtbs are added only if ENABLE_TI_UIO_DEVICES is enabled.
> >
> > Signed-off-by: Hongmei Gou <a0271529 at ti.com>
> > ---
> > .../linux/files/dra7xx/am571x-pru-uio.dtsi | 284 +++++++++++++++
> > .../linux/files/dra7xx/am572x-pru-uio.dtsi | 263 ++++++++------
> > .../linux/files/k2g/keystone-k2g-pru-uio.dtsi | 391
> > +++++++++++++++++++++
> > recipes-kernel/linux/ti-uio.inc | 26 +-
> > 4 files changed, 859 insertions(+), 105 deletions(-) create mode 100644
> > recipes-kernel/linux/files/dra7xx/am571x-pru-uio.dtsi
> > create mode 100644 recipes-kernel/linux/files/k2g/keystone-k2g-pru-
> > uio.dtsi
> >
> > diff --git a/recipes-kernel/linux/files/dra7xx/am571x-pru-uio.dtsi b/recipes-
> > kernel/linux/files/dra7xx/am571x-pru-uio.dtsi
> > new file mode 100644
> > index 0000000..71e0516
> > --- /dev/null
> > +++ b/recipes-kernel/linux/files/dra7xx/am571x-pru-uio.dtsi
> > @@ -0,0 +1,284 @@
> > +&pruss_soc_bus1 {
> > + uio_pruss1_mdio {
> > + status = "okay";
> > +
> > + compatible = "ti,davinci_mdio";
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > + clocks = <&dpll_gmac_h13x2_ck>;
> > + clock-names = "fck";
> > + bus_freq = <1000000>;
> > + reg = <0x4b232400 0x90>;
> > +
> > + reset-gpios = <&gpio5 8 GPIO_ACTIVE_LOW>;
> > + reset-delay-us = <2>; /* PHY datasheet states 1uS min */
> > + uio_pruss1_eth0_phy: uio_ethernet-phy at 0 {
> > + reg = <0>;
> > + };
> > +
> > + uio_pruss1_eth1_phy: uio_ethernet-phy at 1 {
> > + reg = <1>;
> > + };
> > + };
> > +
> > + uio_pruss1_mem: uio_pruss1_mem {
> > + compatible = "ti,uio-module-drv";
> > + mem = <0x4b200000 0x2000>,
> > + <0x4b202000 0x2000>,
> > + <0x4b210000 0x8000>,
> > + <0x4b220000 0x5404>,
> > + <0x4b226000 0x474>,
> > + <0x4b22e000 0xc04>,
> > + <0x4b232000 0x154>;
> > + mem-names = "dram0", "dram1", "shrdram2", "intc",
> > "cfg",
> > + "iep", "mii_rt";
> > + status = "okay";
> > + };
> > + uio_pruss1_mem2: uio_pruss1_mem2 {
> > + compatible = "ti,uio-module-drv";
> > + mem = <0x4b228000 0xd4>,
> > + <0x4b230000 0x174>,
> > + <0x4b232400 0x234>,
> > + <0x40300000 0x40000>;
> > + mem-names = "uart", "ecap", "mdio", "ocmc";
> > + status = "okay";
> > + };
> > + uio_pruss1_evt0: uio_pruss1_evt0 {
> > + compatible = "ti,uio-module-drv";
> > + interrupts = <GIC_SPI 186 IRQ_TYPE_LEVEL_HIGH>;
> > + interrupt-mode = <1>;
> > + status = "okay";
> > + };
> > + uio_pruss1_evt1: uio_pruss1_evt1 {
> > + compatible = "ti,uio-module-drv";
> > + interrupts = <GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH>;
> > + interrupt-mode = <1>;
> > + status = "okay";
> > + };
> > + uio_pruss1_evt2: uio_pruss1_evt2 {
> > + compatible = "ti,uio-module-drv";
> > + interrupts = <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>;
> > + interrupt-mode = <1>;
> > + status = "okay";
> > + };
> > + uio_pruss1_evt3: uio_pruss1_evt3 {
> > + compatible = "ti,uio-module-drv";
> > + interrupts = <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>;
> > + interrupt-mode = <1>;
> > + status = "okay";
> > + };
> > + uio_pruss1_evt4: uio_pruss1_evt4 {
> > + compatible = "ti,uio-module-drv";
> > + interrupts = <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>;
> > + interrupt-mode = <1>;
> > + status = "okay";
> > + };
> > + uio_pruss1_evt5: uio_pruss1_evt5 {
> > + compatible = "ti,uio-module-drv";
> > + interrupts = <GIC_SPI 191 IRQ_TYPE_LEVEL_HIGH>;
> > + interrupt-mode = <1>;
> > + status = "okay";
> > + };
> > + uio_pruss1_evt6: uio_pruss1_evt6 {
> > + compatible = "ti,uio-module-drv";
> > + interrupts = <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>;
> > + interrupt-mode = <1>;
> > + status = "okay";
> > + };
> > + uio_pruss1_evt7: uio_pruss1_evt7 {
> > + compatible = "ti,uio-module-drv";
> > + interrupts = <GIC_SPI 193 IRQ_TYPE_LEVEL_HIGH>;
> > + interrupt-mode = <1>;
> > + status = "okay";
> > + };
> > +
> > + uio_pruss1_0_mem: uio_pruss1_0_mem {
> > + compatible = "ti,uio-module-drv";
> > + mem = <0x4b234000 0x3000>,
> > + <0x4b222000 0xb4>,
> > + <0x4b222400 0x3f4>;
> > + mem-names = "iram", "control", "debug";
> > + status = "okay";
> > + };
> > +
> > + uio_pruss1_1_mem: uio_pruss1_1_mem {
> > + compatible = "ti,uio-module-drv";
> > + mem = <0x4b238000 0x3000>,
> > + <0x4b224000 0xb4>,
> > + <0x4b224400 0x3f4>;
> > + mem-names = "iram", "control", "debug";
> > + status = "okay";
> > + };
> > +};
> > +
> > +&pruss_soc_bus2 {
> > + uio_pruss2_mdio {
> > + compatible = "ti,davinci_mdio";
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > + clocks = <&dpll_gmac_h13x2_ck>;
> > + clock-names = "fck";
> > + bus_freq = <1000000>;
> > + reg = <0x4b2b2400 0x90>;
> > + status = "okay";
> > +
> > + reset-gpios = <&gpio5 9 GPIO_ACTIVE_LOW>;
> > + reset-delay-us = <2>; /* PHY datasheet states 1uS min */
> > +
> > + uio_pruss2_eth0_phy: ethernet-phy at 0 {
> > + reg = <0>;
> > + };
> > +
> > + uio_pruss2_eth1_phy: ethernet-phy at 1 {
> > + reg = <1>;
> > + };
> > + };
> > +
> > + uio_pruss2_mem: uio_pruss2_mem {
> > + compatible = "ti,uio-module-drv";
> > + mem = <0x4b280000 0x2000>,
> > + <0x4b282000 0x2000>,
> > + <0x4b290000 0x8000>,
> > + <0x4b2a0000 0x5404>,
> > + <0x4b2a6000 0x474>,
> > + <0x4b2ae000 0xc04>,
> > + <0x4b2b2000 0x154>;
> > + mem-names = "dram0", "dram1", "shrdram2", "intc",
> > "cfg",
> > + "iep", "mii_rt";
> > + status = "okay";
> > + };
> > + uio_pruss2_mem2: uio_pruss2_mem2 {
> > + compatible = "ti,uio-module-drv";
> > + mem = <0x4b2a8000 0xd4>,
> > + <0x4b2b0000 0x174>,
> > + <0x4b2b2400 0x234>,
> > + <0x40340000 0x40000>;
> > + mem-names = "uart", "ecap", "mdio", "ocmc";
> > + status = "okay";
> > + };
> > + uio_pruss2_evt0: uio_pruss2_evt0 {
> > + compatible = "ti,uio-module-drv";
> > + interrupts = <GIC_SPI 196 IRQ_TYPE_LEVEL_HIGH>;
> > + interrupt-mode = <1>;
> > + status = "okay";
> > + };
> > + uio_pruss2_evt1: uio_pruss2_evt1 {
> > + compatible = "ti,uio-module-drv";
> > + interrupts = <GIC_SPI 197 IRQ_TYPE_LEVEL_HIGH>;
> > + interrupt-mode = <1>;
> > + status = "okay";
> > + };
> > + uio_pruss2_evt2: uio_pruss2_evt2 {
> > + compatible = "ti,uio-module-drv";
> > + interrupts = <GIC_SPI 198 IRQ_TYPE_LEVEL_HIGH>;
> > + interrupt-mode = <1>;
> > + status = "okay";
> > + };
> > + uio_pruss2_evt3: uio_pruss2_evt3 {
> > + compatible = "ti,uio-module-drv";
> > + interrupts = <GIC_SPI 199 IRQ_TYPE_LEVEL_HIGH>;
> > + interrupt-mode = <1>;
> > + status = "okay";
> > + };
> > + uio_pruss2_evt4: uio_pruss2_evt4 {
> > + compatible = "ti,uio-module-drv";
> > + interrupts = <GIC_SPI 200 IRQ_TYPE_LEVEL_HIGH>;
> > + interrupt-mode = <1>;
> > + status = "okay";
> > + };
> > + uio_pruss2_evt5: uio_pruss2_evt5 {
> > + compatible = "ti,uio-module-drv";
> > + interrupts = <GIC_SPI 201 IRQ_TYPE_LEVEL_HIGH>;
> > + interrupt-mode = <1>;
> > + status = "okay";
> > + };
> > + uio_pruss2_evt6: uio_pruss2_evt6 {
> > + compatible = "ti,uio-module-drv";
> > + interrupts = <GIC_SPI 202 IRQ_TYPE_LEVEL_HIGH>;
> > + interrupt-mode = <1>;
> > + status = "okay";
> > + };
> > + uio_pruss2_evt7: uio_pruss2_evt7 {
> > + compatible = "ti,uio-module-drv";
> > + interrupts = <GIC_SPI 203 IRQ_TYPE_LEVEL_HIGH>;
> > + interrupt-mode = <1>;
> > + status = "okay";
> > + };
> > +
> > + uio_pruss2_0_mem: uio_pruss2_0_mem {
> > + compatible = "ti,uio-module-drv";
> > + mem = <0x4b2b4000 0x3000>,
> > + <0x4b2a2000 0xb4>,
> > + <0x4b2a2400 0x3f4>;
> > + mem-names = "iram", "control", "debug";
> > + status = "okay";
> > + };
> > + uio_pruss2_1_mem: uio_pruss2_1_mem {
> > + compatible = "ti,uio-module-drv";
> > + mem = <0x4b2b8000 0x3000>,
> > + <0x4b2a4000 0xb4>,
> > + <0x4b2a4400 0x3f4>;
> > + mem-names = "iram", "control", "debug";
> > + status = "okay";
> > + };
> > + };
> > +
> > +&pruss1_eth {
> > + status = "disabled";
> > +};
> > +
> > +&pruss1_emac0 {
> > + status = "disabled";
> > +};
> > +
> > +&pruss1_emac1 {
> > + status = "disabled";
> > +};
> > +
> > +&pruss2_emac0 {
> > + status = "disabled";
> > +};
> > +
> > +&pruss2_emac1 {
> > + status = "disabled";
> > +};
> > +
> > +&pruss1 {
> > + status = "disabled";
> > +};
> > +
> > +&pru1_0 {
> > + status = "disabled";
> > +};
> > +
> > +&pru1_1 {
> > + status = "disabled";
> > +};
> > +
> > +&pruss1_intc {
> > + status = "disabled";
> > +};
> > +
> > +&pruss1_mdio {
> > + status = "disabled";
> > +};
> > +
> > +&pruss2 {
> > + status = "disabled";
> > +};
> > +
> > +&pru2_0 {
> > + status = "disabled";
> > +};
> > +
> > +&pru2_1 {
> > + status = "disabled";
> > +};
> > +
> > +&pruss2_intc {
> > + status = "disabled";
> > +};
> > +
> > +&pruss2_mdio {
> > + status = "disabled";
> > +};
> > diff --git a/recipes-kernel/linux/files/dra7xx/am572x-pru-uio.dtsi b/recipes-
> > kernel/linux/files/dra7xx/am572x-pru-uio.dtsi
> > index 828a0ce..f149cf1 100644
> > --- a/recipes-kernel/linux/files/dra7xx/am572x-pru-uio.dtsi
> > +++ b/recipes-kernel/linux/files/dra7xx/am572x-pru-uio.dtsi
> > @@ -1,92 +1,124 @@
> > -/ {
> > - ocp {
> > - pruss2_eth {
> > - status = "disabled";
> > - };
> > - uio_pruss1_mem: uio_pruss1_mem {
> > - compatible = "ti,uio-module-drv";
> > - ti,hwmods = "pruss1";
> > - mem = <0x4b200000 0x2000>,
> > - <0x4b202000 0x2000>,
> > - <0x4b210000 0x8000>,
> > - <0x4b220000 0x2000>,
> > - <0x4b226000 0x2000>,
> > - <0x4b22e000 0x31c>,
> > - <0x4b232000 0x58>;
> > - mem-names = "dram0", "dram1", "shrdram2", "intc",
> > "cfg",
> > - "iep", "mii_rt";
> > - status = "okay";
> > - };
> > - uio_pruss1_mem2: uio_pruss1_mem2 {
> > - compatible = "ti,uio-module-drv";
> > - mem = <0x4b228000 0x38>,
> > - <0x4b230000 0x60>,
> > - <0x4b232400 0x90>;
> > - mem-names = "uart", "ecap", "mdio";
> > - status = "okay";
> > - };
> > - uio_pruss1_evt0: uio_pruss1_evt0 {
> > - compatible = "ti,uio-module-drv";
> > - interrupts = <GIC_SPI 186 IRQ_TYPE_EDGE_RISING>;
> > - status = "okay";
> > - };
> > - uio_pruss1_evt1: uio_pruss1_evt1 {
> > - compatible = "ti,uio-module-drv";
> > - interrupts = <GIC_SPI 187 IRQ_TYPE_EDGE_RISING>;
> > - status = "okay";
> > - };
> > - uio_pruss1_evt2: uio_pruss1_evt2 {
> > - compatible = "ti,uio-module-drv";
> > - interrupts = <GIC_SPI 188 IRQ_TYPE_EDGE_RISING>;
> > - status = "okay";
> > - };
> > - uio_pruss1_evt3: uio_pruss1_evt3 {
> > - compatible = "ti,uio-module-drv";
> > - interrupts = <GIC_SPI 189 IRQ_TYPE_EDGE_RISING>;
> > - status = "okay";
> > - };
> > - uio_pruss1_evt4: uio_pruss1_evt4 {
> > - compatible = "ti,uio-module-drv";
> > - interrupts = <GIC_SPI 190 IRQ_TYPE_EDGE_RISING>;
> > - status = "okay";
> > - };
> > - uio_pruss1_evt5: uio_pruss1_evt5 {
> > - compatible = "ti,uio-module-drv";
> > - interrupts = <GIC_SPI 191 IRQ_TYPE_EDGE_RISING>;
> > - status = "okay";
> > - };
> > - uio_pruss1_evt6: uio_pruss1_evt6 {
> > - compatible = "ti,uio-module-drv";
> > - interrupts = <GIC_SPI 192 IRQ_TYPE_EDGE_RISING>;
> > - status = "okay";
> > - };
> > - uio_pruss1_evt7: uio_pruss1_evt7 {
> > - compatible = "ti,uio-module-drv";
> > - interrupts = <GIC_SPI 193 IRQ_TYPE_EDGE_RISING>;
> > - status = "okay";
> > - };
> > +&pruss_soc_bus1 {
> > + uio_pruss1_mem: uio_pruss1_mem {
> > + compatible = "ti,uio-module-drv";
> > + mem = <0x4b200000 0x2000>,
> > + <0x4b202000 0x2000>,
> > + <0x4b210000 0x8000>,
> > + <0x4b220000 0x2000>,
> > + <0x4b226000 0x2000>,
> > + <0x4b22e000 0x31c>,
> > + <0x4b232000 0x58>;
> > + mem-names = "dram0", "dram1", "shrdram2", "intc", "cfg",
> > + "iep", "mii_rt";
> > + status = "okay";
> > + };
> > + uio_pruss1_mem2: uio_pruss1_mem2 {
> > + compatible = "ti,uio-module-drv";
> > + mem = <0x4b228000 0x38>,
> > + <0x4b230000 0x60>,
> > + <0x4b232400 0x90>,
> > + <0x40340000 0x40000>;
> > + mem-names = "uart", "ecap", "mdio", "ocmc";
> > + status = "okay";
> > + };
> > + uio_pruss1_evt0: uio_pruss1_evt0 {
> > + compatible = "ti,uio-module-drv";
> > + interrupts = <GIC_SPI 186 IRQ_TYPE_LEVEL_HIGH>;
> > + interrupt-mode = <1>;
> > + status = "okay";
> > + };
> > + uio_pruss1_evt1: uio_pruss1_evt1 {
> > + compatible = "ti,uio-module-drv";
> > + interrupts = <GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH>;
> > + interrupt-mode = <1>;
> > + status = "okay";
> > + };
> > + uio_pruss1_evt2: uio_pruss1_evt2 {
> > + compatible = "ti,uio-module-drv";
> > + interrupts = <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>;
> > + interrupt-mode = <1>;
> > + status = "okay";
> > + };
> > + uio_pruss1_evt3: uio_pruss1_evt3 {
> > + compatible = "ti,uio-module-drv";
> > + interrupts = <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>;
> > + interrupt-mode = <1>;
> > + status = "okay";
> > + };
> > + uio_pruss1_evt4: uio_pruss1_evt4 {
> > + compatible = "ti,uio-module-drv";
> > + interrupts = <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>;
> > + interrupt-mode = <1>;
> > + status = "okay";
> > + };
> > + uio_pruss1_evt5: uio_pruss1_evt5 {
> > + compatible = "ti,uio-module-drv";
> > + interrupts = <GIC_SPI 191 IRQ_TYPE_LEVEL_HIGH>;
> > + interrupt-mode = <1>;
> > + status = "okay";
> > + };
> > + uio_pruss1_evt6: uio_pruss1_evt6 {
> > + compatible = "ti,uio-module-drv";
> > + interrupts = <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>;
> > + interrupt-mode = <1>;
> > + status = "okay";
> > + };
> > + uio_pruss1_evt7: uio_pruss1_evt7 {
> > + compatible = "ti,uio-module-drv";
> > + interrupts = <GIC_SPI 193 IRQ_TYPE_LEVEL_HIGH>;
> > + interrupt-mode = <1>;
> > + status = "okay";
> > + };
> >
> > - uio_pruss1_0_mem: uio_pruss1_0_mem {
> > - compatible = "ti,uio-module-drv";
> > - mem = <0x4b234000 0x3000>,
> > - <0x4b222000 0x400>,
> > - <0x4b222400 0x100>;
> > - mem-names = "iram", "control", "debug";
> > - status = "okay";
> > - };
> > + uio_pruss1_0_mem: uio_pruss1_0_mem {
> > + compatible = "ti,uio-module-drv";
> > + mem = <0x4b234000 0x3000>,
> > + <0x4b222000 0x400>,
> > + <0x4b222400 0x100>;
> > + mem-names = "iram", "control", "debug";
> > + status = "okay";
> > + };
> >
> > - uio_pruss1_1_mem: uio_pruss1_1_mem {
> > - compatible = "ti,uio-module-drv";
> > - mem = <0x4b238000 0x3000>,
> > - <0x4b224000 0x400>,
> > - <0x4b224400 0x100>;
> > - mem-names = "iram", "control", "debug";
> > - status = "okay";
> > - };
> > + uio_pruss1_1_mem: uio_pruss1_1_mem {
> > + compatible = "ti,uio-module-drv";
> > + mem = <0x4b238000 0x3000>,
> > + <0x4b224000 0x400>,
> > + <0x4b224400 0x100>;
> > + mem-names = "iram", "control", "debug";
> > + status = "okay";
> > + };
> > +};
> > +
> > +&pruss1 {
> > + status = "disabled";
> > +};
> > +
> > +&pru1_0 {
> > + status = "disabled";
> > +};
> > +
> > +&pru1_1 {
> > + status = "disabled";
> > +};
> > +
> > +&pruss1_intc {
> > + status = "disabled";
> > +};
> > +
> > +&pruss_soc_bus2 {
> > + uio_pruss2_mdio: uio_pruss2_mdio {
> > + compatible = "ti,davinci_mdio";
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > + clocks = <&dpll_gmac_h13x2_ck>;
> > + clock-names = "fck";
> > + bus_freq = <1000000>;
> > + reg = <0x4b2b2400 0x90>;
> > + status = "disabled";
> > + };
> >
> > uio_pruss2_mem: uio_pruss2_mem {
> > compatible = "ti,uio-module-drv";
> > - ti,hwmods = "pruss2";
> > mem = <0x4b280000 0x2000>,
> > <0x4b282000 0x2000>,
> > <0x4b290000 0x8000>,
> > @@ -102,48 +134,57 @@
> > compatible = "ti,uio-module-drv";
> > mem = <0x4b2a8000 0x38>,
> > <0x4b2b0000 0x60>,
> > - <0x4b2b2400 0x90>;
> > - mem-names = "uart", "ecap", "mdio";
> > + <0x4b2b2400 0x90>,
> > + <0x40300000 0x40000>;
> > + mem-names = "uart", "ecap", "mdio", "ocmc";
> > status = "okay";
> > };
> > uio_pruss2_evt0: uio_pruss2_evt0 {
> > compatible = "ti,uio-module-drv";
> > - interrupts = <GIC_SPI 196 IRQ_TYPE_EDGE_RISING>;
> > + interrupts = <GIC_SPI 196 IRQ_TYPE_LEVEL_HIGH>;
> > + interrupt-mode = <1>;
> > status = "okay";
> > };
> > uio_pruss2_evt1: uio_pruss2_evt1 {
> > compatible = "ti,uio-module-drv";
> > - interrupts = <GIC_SPI 197 IRQ_TYPE_EDGE_RISING>;
> > + interrupts = <GIC_SPI 197 IRQ_TYPE_LEVEL_HIGH>;
> > + interrupt-mode = <1>;
> > status = "okay";
> > };
> > uio_pruss2_evt2: uio_pruss2_evt2 {
> > compatible = "ti,uio-module-drv";
> > - interrupts = <GIC_SPI 198 IRQ_TYPE_EDGE_RISING>;
> > + interrupts = <GIC_SPI 198 IRQ_TYPE_LEVEL_HIGH>;
> > + interrupt-mode = <1>;
> > status = "okay";
> > };
> > uio_pruss2_evt3: uio_pruss2_evt3 {
> > compatible = "ti,uio-module-drv";
> > - interrupts = <GIC_SPI 199 IRQ_TYPE_EDGE_RISING>;
> > + interrupts = <GIC_SPI 199 IRQ_TYPE_LEVEL_HIGH>;
> > + interrupt-mode = <1>;
> > status = "okay";
> > };
> > uio_pruss2_evt4: uio_pruss2_evt4 {
> > compatible = "ti,uio-module-drv";
> > - interrupts = <GIC_SPI 200 IRQ_TYPE_EDGE_RISING>;
> > + interrupts = <GIC_SPI 200 IRQ_TYPE_LEVEL_HIGH>;
> > + interrupt-mode = <1>;
> > status = "okay";
> > };
> > uio_pruss2_evt5: uio_pruss2_evt5 {
> > compatible = "ti,uio-module-drv";
> > - interrupts = <GIC_SPI 201 IRQ_TYPE_EDGE_RISING>;
> > + interrupts = <GIC_SPI 201 IRQ_TYPE_LEVEL_HIGH>;
> > + interrupt-mode = <1>;
> > status = "okay";
> > };
> > uio_pruss2_evt6: uio_pruss2_evt6 {
> > compatible = "ti,uio-module-drv";
> > - interrupts = <GIC_SPI 202 IRQ_TYPE_EDGE_RISING>;
> > + interrupts = <GIC_SPI 202 IRQ_TYPE_LEVEL_HIGH>;
> > + interrupt-mode = <1>;
> > status = "okay";
> > };
> > uio_pruss2_evt7: uio_pruss2_evt7 {
> > compatible = "ti,uio-module-drv";
> > - interrupts = <GIC_SPI 203 IRQ_TYPE_EDGE_RISING>;
> > + interrupts = <GIC_SPI 203 IRQ_TYPE_LEVEL_HIGH>;
> > + interrupt-mode = <1>;
> > status = "okay";
> > };
> >
> > @@ -163,23 +204,35 @@
> > mem-names = "iram", "control", "debug";
> > status = "okay";
> > };
> > - };
> > };
> >
> > -&pruss1 {
> > - status = "disabled";
> > +&uio_pruss2_mdio {
> > + reset-gpios = <&gpio5 8 GPIO_ACTIVE_LOW>,
> > + <&gpio5 9 GPIO_ACTIVE_LOW>;
> > + reset-delay-us = <2>; /* PHY datasheet states 1uS min */
> > };
> >
> > -&pru1_0 {
> > - status = "disabled";
> > +&uio_pruss2_mdio {
> > + status = "okay";
> > + uio_pruss2_eth0_phy: uio_pruss2_eth0_phy at 0 {
> > + reg = <0>;
> > + };
> > +
> > + uio_pruss2_eth1_phy: uio_pruss2_eth1_phy at 1 {
> > + reg = <1>;
> > + };
> > };
> >
> > -&pru1_1 {
> > - status = "disabled";
> > +&pruss2_emac0 {
> > + status = "disabled";
> > +};
> > +
> > +&pruss2_emac1 {
> > + status = "disabled";
> > };
> >
> > &pruss2 {
> > - status = "disabled";
> > + status = "disabled";
> > };
> >
> > &pru2_0 {
> > @@ -190,6 +243,10 @@
> > status = "disabled";
> > };
> >
> > +&pruss2_intc {
> > + status = "disabled";
> > +};
> > +
> > &pruss2_mdio {
> > - status = "disabled";
> > + status = "disabled";
> > };
> > diff --git a/recipes-kernel/linux/files/k2g/keystone-k2g-pru-uio.dtsi
> > b/recipes-kernel/linux/files/k2g/keystone-k2g-pru-uio.dtsi
> > new file mode 100644
> > index 0000000..69955a4
> > --- /dev/null
> > +++ b/recipes-kernel/linux/files/k2g/keystone-k2g-pru-uio.dtsi
> > @@ -0,0 +1,391 @@
> > +&pruss_soc_bus0 {
> > + uio_pruss1_mdio: uio_mdio at 20ab2400 {
> > + compatible = "ti,davinci_mdio";
> > + reg = <0x20ab2400 0x90>;
> > + clocks = <&k2g_clks K2G_DEV_ICSS0
> > K2G_DEV_ICSS_CORE_CLK>;
> > + clock-names = "fck";
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > + bus_freq = <2500000>;
> > + status = "disabled";
> > + };
> > +
> > + uio_pruss1_mem: uio_pruss1_mem {
> > + compatible = "ti,uio-module-drv";
> > + mem = <0x20a80000 0x2000>,
> > + <0x20a82000 0x2000>,
> > + <0x20a90000 0x10000>,
> > + <0x20aa0000 0x2000>,
> > + <0x20aa6000 0x2000>,
> > + <0x20aae000 0x31c>,
> > + <0x20ab2000 0x70>;
> > + mem-names = "dram0", "dram1", "shrdram2", "intc",
> > "cfg",
> > + "iep", "mii_rt";
> > + status = "okay";
> > + };
> > + uio_pruss1_mem2: uio_pruss1_mem2 {
> > + compatible = "ti,uio-module-drv";
> > + mem = <0x20aa8000 0x38>,
> > + <0x20ab0000 0x60>,
> > + <0x20ab2400 0x90>,
> > + <0x0c080000 0xe000>;
> > + mem-names = "uart", "ecap", "mdio", "ocmc";
> > + status = "okay";
> > + };
> > + uio_pruss1_evt0: uio_pruss1_evt0 {
> > + compatible = "ti,uio-module-drv";
> > + interrupts = <GIC_SPI 224 0xf01>;
> > + interrupt-mode = <0>;
> > + status = "okay";
> > + };
> > + uio_pruss1_evt1: uio_pruss1_evt1 {
> > + compatible = "ti,uio-module-drv";
> > + interrupts = <GIC_SPI 225 0xf01>;
> > + interrupt-mode = <0>;
> > + status = "okay";
> > + };
> > + uio_pruss1_evt2: uio_pruss1_evt2 {
> > + compatible = "ti,uio-module-drv";
> > + interrupts = <GIC_SPI 226 0xf01>;
> > + interrupt-mode = <0>;
> > + status = "okay";
> > + };
> > + uio_pruss1_evt3: uio_pruss1_evt3 {
> > + compatible = "ti,uio-module-drv";
> > + interrupts = <GIC_SPI 227 0xf01>;
> > + interrupt-mode = <0>;
> > + status = "okay";
> > + };
> > + uio_pruss1_evt4: uio_pruss1_evt4 {
> > + compatible = "ti,uio-module-drv";
> > + interrupts = <GIC_SPI 228 0xf01>;
> > + interrupt-mode = <0>;
> > + status = "okay";
> > + };
> > + uio_pruss1_evt6: uio_pruss1_evt6 {
> > + compatible = "ti,uio-module-drv";
> > + interrupts = <GIC_SPI 230 0xf01>;
> > + interrupt-mode = <0>;
> > + status = "okay";
> > + };
> > + uio_pruss1_evt7: uio_pruss1_evt7 {
> > + compatible = "ti,uio-module-drv";
> > + interrupts = <GIC_SPI 231 0xf01>;
> > + interrupt-mode = <0>;
> > + status = "okay";
> > + };
> > +
> > + uio_pruss1_0_mem: uio_pruss1_0_mem {
> > + compatible = "ti,uio-module-drv";
> > + mem = <0x20ab4000 0x3000>,
> > + <0x20aa2000 0x400>,
> > + <0x20aa2400 0x100>;
> > + mem-names = "iram", "control", "debug";
> > + status = "okay";
> > + };
> > +
> > + uio_pruss1_1_mem: uio_pruss1_1_mem {
> > + compatible = "ti,uio-module-drv";
> > + mem = <0x20ab8000 0x3000>,
> > + <0x20aa4000 0x400>,
> > + <0x20aa4400 0x100>;
> > + mem-names = "iram", "control", "debug";
> > + status = "okay";
> > + };
> > +};
> > +
> > +&pruss_soc_bus1 {
> > + uio_pruss2_mdio: uio_mdio at 20af2400 {
> > + compatible = "ti,davinci_mdio";
> > + reg = <0x20af2400 0x90>;
> > + clocks = <&k2g_clks K2G_DEV_ICSS1
> > K2G_DEV_ICSS_CORE_CLK>;
> > + clock-names = "fck";
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > + bus_freq = <2500000>;
> > + status = "disabled";
> > + };
> > +
> > + uio_pruss2_mem: uio_pruss2_mem {
> > + compatible = "ti,uio-module-drv";
> > + mem = <0x20ac0000 0x2000>,
> > + <0x20ac2000 0x2000>,
> > + <0x20ad0000 0x10000>,
> > + <0x20ae0000 0x2000>,
> > + <0x20ae6000 0x2000>,
> > + <0x20aee000 0x31c>,
> > + <0x20af2000 0x70>;
> > + mem-names = "dram0", "dram1", "shrdram2", "intc",
> > "cfg",
> > + "iep", "mii_rt";
> > + status = "okay";
> > + };
> > + uio_pruss2_mem2: uio_pruss2_mem2 {
> > + compatible = "ti,uio-module-drv";
> > + mem = <0x20ae8000 0x38>,
> > + <0x20af0000 0x60>,
> > + <0x20af2400 0x90>,
> > + <0x0c08e000 0xe000>;
> > + mem-names = "uart", "ecap", "mdio", "ocmc";
> > + status = "okay";
> > + };
> > + uio_pruss2_evt0: uio_pruss2_evt0 {
> > + compatible = "ti,uio-module-drv";
> > + interrupts = <GIC_SPI 232 0xf01>;
> > + interrupt-mode = <0>;
> > + status = "okay";
> > + };
> > + uio_pruss2_evt1: uio_pruss2_evt1 {
> > + compatible = "ti,uio-module-drv";
> > + interrupts = <GIC_SPI 233 0xf01>;
> > + interrupt-mode = <0>;
> > + status = "okay";
> > + };
> > + uio_pruss2_evt2: uio_pruss2_evt2 {
> > + compatible = "ti,uio-module-drv";
> > + interrupts = <GIC_SPI 234 0xf01>;
> > + interrupt-mode = <0>;
> > + status = "okay";
> > + };
> > + uio_pruss2_evt3: uio_pruss2_evt3 {
> > + compatible = "ti,uio-module-drv";
> > + interrupts = <GIC_SPI 235 0xf01>;
> > + interrupt-mode = <0>;
> > + status = "okay";
> > + };
> > + uio_pruss2_evt4: uio_pruss2_evt4 {
> > + compatible = "ti,uio-module-drv";
> > + interrupts = <GIC_SPI 236 0xf01>;
> > + interrupt-mode = <0>;
> > + status = "okay";
> > + };
> > + uio_pruss2_evt6: uio_pruss2_evt6 {
> > + compatible = "ti,uio-module-drv";
> > + interrupts = <GIC_SPI 238 0xf01>;
> > + interrupt-mode = <0>;
> > + status = "okay";
> > + };
> > + uio_pruss2_evt7: uio_pruss2_evt7 {
> > + compatible = "ti,uio-module-drv";
> > + interrupts = <GIC_SPI 239 0xf01>;
> > + interrupt-mode = <0>;
> > + status = "okay";
> > + };
> > +
> > + uio_pruss2_0_mem: uio_pruss2_0_mem {
> > + compatible = "ti,uio-module-drv";
> > + mem = <0x20af4000 0x3000>,
> > + <0x20ae2000 0x400>,
> > + <0x20ae2400 0x100>;
> > + mem-names = "iram", "control", "debug";
> > + status = "okay";
> > + };
> > + uio_pruss2_1_mem: uio_pruss2_1_mem {
> > + compatible = "ti,uio-module-drv";
> > + mem = <0x20af8000 0x3000>,
> > + <0x20ae4000 0x400>,
> > + <0x20ae4400 0x100>;
> > + mem-names = "iram", "control", "debug";
> > + status = "okay";
> > + };
> > +};
> > +
> > +&k2g_pinctrl {
> > + uio_pruss1_mdio_eth_default: uio_pruss1_mdio_eth_default {
> > + pinctrl-single,pins = <
> > + K2G_CORE_IOPAD(0x12cc) (BUFFER_CLASS_B | PULL_DISABLE
> > | MUX_MODE0) /* pr0_mdio_data.pr0_mdio_data */
> > + K2G_CORE_IOPAD(0x12d0) (BUFFER_CLASS_B |
> > PIN_PULLDOWN | MUX_MODE0) /* pr0_mdio_mdclk.pr0_mdio_mdclk */
> > + K2G_CORE_IOPAD(0x105c) (BUFFER_CLASS_B | PULL_DISABLE
> > | MUX_MODE3) /* gpmc_wait1.gpio0_23 (pr0_mii0_resetn) */
> > + K2G_CORE_IOPAD(0x1070) (BUFFER_CLASS_B | PIN_PULLUP |
> > MUX_MODE3) /* gpmc_csn2.gpio0_28 (pr0_mii0_intn) */
> > + K2G_CORE_IOPAD(0x1054) (BUFFER_CLASS_B | PULL_DISABLE
> > | MUX_MODE3) /* gpmc_be1n.gpio0_21 (pr0_mii1_resetn) */
> > + K2G_CORE_IOPAD(0x1074) (BUFFER_CLASS_B | PIN_PULLUP |
> > MUX_MODE3) /* gpmc_csn3.gpio0_29 (pr0_mii1_intn) */
> > +
> > + /* PRUSS0 External Mux routing */
> > + K2G_CORE_IOPAD(0x11d4) (BUFFER_CLASS_B | MUX_MODE3)
> > /* uart0_ctsn.gpio0_106 */
> > + K2G_CORE_IOPAD(0x11d8) (BUFFER_CLASS_B | MUX_MODE3)
> > /* uart0_rtsn.gpio0_107 */
> > + K2G_CORE_IOPAD(0x11fc) (BUFFER_CLASS_B | MUX_MODE3)
> > /* dcan0_rx.gpio1_57 */
> > + K2G_CORE_IOPAD(0x1200) (BUFFER_CLASS_B | MUX_MODE3)
> > /* dcan0_tx.gpio1_56 */
> > + K2G_CORE_IOPAD(0x1224) (BUFFER_CLASS_B | MUX_MODE3)
> > /* qspi_csn2.gpio1_66 */
> > + K2G_CORE_IOPAD(0x1228) (BUFFER_CLASS_B | MUX_MODE3)
> > /* qspi_csn3.gpio1_67 */
> > +
> > + /* PRUSS0 PRU0 Ethernet */
> > + K2G_CORE_IOPAD(0x122c) (BUFFER_CLASS_B | PULL_DISABLE
> > | MUX_MODE1) /* pr0_pru0_gpo0.pr0_pru0_gpi0 (pr0_mii0_rxd0) */
> > + K2G_CORE_IOPAD(0x1230) (BUFFER_CLASS_B | PULL_DISABLE
> > | MUX_MODE1) /* pr0_pru0_gpo1.pr0_pru0_gpi1 (pr0_mii0_rxd1) */
> > + K2G_CORE_IOPAD(0x1234) (BUFFER_CLASS_B | PULL_DISABLE
> > | MUX_MODE1) /* pr0_pru0_gpo2.pr0_pru0_gpi2 (pr0_mii0_rxd2) */
> > + K2G_CORE_IOPAD(0x1238) (BUFFER_CLASS_B | PULL_DISABLE
> > | MUX_MODE1) /* pr0_pru0_gpo3.pr0_pru0_gpi3 (pr0_mii0_rxd3) */
> > + K2G_CORE_IOPAD(0x123c) (BUFFER_CLASS_B | PULL_DISABLE
> > | MUX_MODE1) /* pr0_pru0_gpo4.pr0_pru0_gpi4 (pr0_mii0_rxdv) */
> > + K2G_CORE_IOPAD(0x1240) (BUFFER_CLASS_B | PULL_DISABLE
> > | MUX_MODE1) /* pr0_pru0_gpo5.pr0_pru0_gpi5 (pr0_mii0_rxer) */
> > + K2G_CORE_IOPAD(0x1244) (BUFFER_CLASS_B | MUX_MODE1)
> > /* pr0_pru0_gpo6.pr0_pru0_gpi6 (pr0_mii_mr0_clk) */
> > +
> > + K2G_CORE_IOPAD(0x124c) (BUFFER_CLASS_B | MUX_MODE1)
> > /* pr0_pru0_gpo8.pr0_pru0_gpi8 (pr0_mii0_rxlink) */
> > + K2G_CORE_IOPAD(0x1250) (BUFFER_CLASS_B | PULL_DISABLE
> > | MUX_MODE1) /* pr0_pru0_gpo9.pr0_pru0_gpi9 (pr0_mii0_col) */
> > + K2G_CORE_IOPAD(0x1254) (BUFFER_CLASS_B | PULL_DISABLE
> > | MUX_MODE1) /* pr0_pru0_gpo10.pr0_pru0_gpi10 (pr0_mii0_crs) */
> > +
> > + K2G_CORE_IOPAD(0x12a8) (BUFFER_CLASS_B | MUX_MODE0)
> > /* pr0_pru1_gpo11.pr0_pru1_gpo11 (pr0_mii0_txd0) */
> > + K2G_CORE_IOPAD(0x12ac) (BUFFER_CLASS_B | MUX_MODE0)
> > /* pr0_pru1_gpo12.pr0_pru1_gpo12 (pr0_mii0_txd1) */
> > + K2G_CORE_IOPAD(0x12b0) (BUFFER_CLASS_B | MUX_MODE0)
> > /* pr0_pru1_gpo13.pr0_pru1_gpo13 (pr0_mii0_txd2) */
> > + K2G_CORE_IOPAD(0x12b4) (BUFFER_CLASS_B | MUX_MODE0)
> > /* pr0_pru1_gpo14.pr0_pru1_gpo14 (pr0_mii0_txd3) */
> > + K2G_CORE_IOPAD(0x12b8) (BUFFER_CLASS_B | MUX_MODE0)
> > /* pr0_pru1_gpo15.pr0_pru1_gpo15 (pr0_mii0_txen) */
> > + K2G_CORE_IOPAD(0x12bc) (BUFFER_CLASS_B | MUX_MODE1)
> > /* pr0_pru1_gpo16.pr0_pru1_gpo16 (pr0_mii_mt0_clk) */
> > +
> > + /* PRUSS0 PRU1 Ethernet */
> > + K2G_CORE_IOPAD(0x127c) (BUFFER_CLASS_B | PULL_DISABLE
> > | MUX_MODE1) /* pr0_pru1_gpo0.pr0_pru1_gpi0 (pr0_mii1_rxd0) */
> > + K2G_CORE_IOPAD(0x1280) (BUFFER_CLASS_B | PULL_DISABLE
> > | MUX_MODE1) /* pr0_pru1_gpo1.pr0_pru1_gpi1 (pr0_mii1_rxd1) */
> > + K2G_CORE_IOPAD(0x1284) (BUFFER_CLASS_B | PULL_DISABLE
> > | MUX_MODE1) /* pr0_pru1_gpo2.pr0_pru1_gpi2 (pr0_mii1_rxd2) */
> > + K2G_CORE_IOPAD(0x1288) (BUFFER_CLASS_B | PULL_DISABLE
> > | MUX_MODE1) /* pr0_pru1_gpo3.pr0_pru1_gpi3 (pr0_mii1_rxd3) */
> > + K2G_CORE_IOPAD(0x128c) (BUFFER_CLASS_B | PULL_DISABLE
> > | MUX_MODE1) /* pr0_pru1_gpo4.pr0_pru1_gpi4 (pr0_mii1_rxdv) */
> > + K2G_CORE_IOPAD(0x1290) (BUFFER_CLASS_B | PULL_DISABLE
> > | MUX_MODE1) /* pr0_pru1_gpo5.pr0_pru1_gpi5 (pr0_mii1_rxer) */
> > + K2G_CORE_IOPAD(0x1294) (BUFFER_CLASS_B | MUX_MODE1)
> > /* pr0_pru1_gpo6.pr0_pru1_gpi6 (pr0_mii_mr1_clk) */
> > +
> > + K2G_CORE_IOPAD(0x129c) (BUFFER_CLASS_B | MUX_MODE1)
> > /* pr0_pru1_gpo8.pr0_pru1_gpi8 (pr0_mii1_rxlink) */
> > + K2G_CORE_IOPAD(0x12a0) (BUFFER_CLASS_B | PULL_DISABLE
> > | MUX_MODE1) /* pr0_pru1_gpo9.pr0_pru1_gpi9 (pr0_mii1_col) */
> > + K2G_CORE_IOPAD(0x12a4) (BUFFER_CLASS_B | PULL_DISABLE
> > | MUX_MODE1) /* pr0_pru1_gpo10.pr0_pru1_gpi10 (pr0_mii1_crs) */
> > +
> > + K2G_CORE_IOPAD(0x1258) (BUFFER_CLASS_B | MUX_MODE0)
> > /* pr0_pru0_gpo11.pr0_pru0_gpo11 (pr0_mii1_txd0) */
> > + K2G_CORE_IOPAD(0x125c) (BUFFER_CLASS_B | MUX_MODE0)
> > /* pr0_pru0_gpo12.pr0_pru0_gpo12 (pr0_mii1_txd1) */
> > + K2G_CORE_IOPAD(0x1260) (BUFFER_CLASS_B | MUX_MODE0)
> > /* pr0_pru0_gpo13.pr0_pru0_gpo13 (pr0_mii1_txd2) */
> > + K2G_CORE_IOPAD(0x1264) (BUFFER_CLASS_B | MUX_MODE0)
> > /* pr0_pru0_gpo14.pr0_pru0_gpo14 (pr0_mii1_txd3) */
> > + K2G_CORE_IOPAD(0x1268) (BUFFER_CLASS_B | MUX_MODE0)
> > /* pr0_pru0_gpo15.pr0_pru0_gpo15 (pr0_mii1_txen) */
> > + K2G_CORE_IOPAD(0x126c) (BUFFER_CLASS_B | MUX_MODE1)
> > /* pr0_pru0_gpo16.pr0_pru0_gpo16 (pr0_mii_mt1_clk) */
> > + >;
> > + };
> > +
> > + uio_pruss2_mdio_eth_default: uio_pruss2_mdio_eth_default {
> > + pinctrl-single,pins = <
> > + K2G_CORE_IOPAD(0x1374) (BUFFER_CLASS_B | PULL_DISABLE
> > | MUX_MODE0) /* pr1_mdio_data.pr1_mdio_data */
> > + K2G_CORE_IOPAD(0x1378) (BUFFER_CLASS_B |
> > PIN_PULLDOWN | MUX_MODE0) /* pr1_mdio_mdclk.pr1_mdio_mdclk */
> > + K2G_CORE_IOPAD(0x1050) (BUFFER_CLASS_B | PULL_DISABLE
> > | MUX_MODE3) /* gpmc_be0ncle.gpio0_20 (pr1_mii0_resetn) */
> > + K2G_CORE_IOPAD(0x1044) (BUFFER_CLASS_B | PIN_PULLUP |
> > MUX_MODE3) /* gpmc_advnale.gpio0_17 (pr1_mii0_intn) */
> > + K2G_CORE_IOPAD(0x1060) (BUFFER_CLASS_B | PULL_DISABLE
> > | MUX_MODE3) /* gpmc_wpn.gpio0_24 (pr1_mii1_resetn) */
> > + K2G_CORE_IOPAD(0x1088) (BUFFER_CLASS_B | PIN_PULLUP |
> > MUX_MODE3) /* gpmc_wait0.gpio0_22 (pr1_mii1_intn) */
> > +
> > + /* PRUSS1 PRU0 Ethernet */
> > + K2G_CORE_IOPAD(0x12d4) (BUFFER_CLASS_B | PULL_DISABLE
> > | MUX_MODE1) /* pr1_pru0_gpo0.pr1_pru0_gpi0 (pr1_mii0_rxd0) */
> > + K2G_CORE_IOPAD(0x12d8) (BUFFER_CLASS_B | PULL_DISABLE
> > | MUX_MODE1) /* pr1_pru0_gpo1.pr1_pru0_gpi1 (pr1_mii0_rxd1) */
> > + K2G_CORE_IOPAD(0x12dc) (BUFFER_CLASS_B | PULL_DISABLE
> > | MUX_MODE1) /* pr1_pru0_gpo2.pr1_pru0_gpi2 (pr1_mii0_rxd2) */
> > + K2G_CORE_IOPAD(0x12e0) (BUFFER_CLASS_B | PULL_DISABLE
> > | MUX_MODE1) /* pr1_pru0_gpo3.pr1_pru0_gpi3 (pr1_mii0_rxd3) */
> > + K2G_CORE_IOPAD(0x12e4) (BUFFER_CLASS_B | PULL_DISABLE
> > | MUX_MODE1) /* pr1_pru0_gpo4.pr1_pru0_gpi4 (pr1_mii0_rxdv) */
> > + K2G_CORE_IOPAD(0x12e8) (BUFFER_CLASS_B | PULL_DISABLE
> > | MUX_MODE1) /* pr1_pru0_gpo5.pr1_pru0_gpi5 (pr1_mii0_rxer) */
> > + K2G_CORE_IOPAD(0x12ec) (BUFFER_CLASS_B | MUX_MODE1)
> > /* pr1_pru0_gpo6.pr1_pru0_gpi6 (pr1_mii_mr0_clk) */
> > +
> > + K2G_CORE_IOPAD(0x12f4) (BUFFER_CLASS_B | MUX_MODE1)
> > /* pr1_pru0_gpo8.pr1_pru0_gpi8 (pr1_mii0_rxlink) */
> > + K2G_CORE_IOPAD(0x12f8) (BUFFER_CLASS_B | PULL_DISABLE
> > | MUX_MODE1) /* pr1_pru0_gpo9.pr1_pru0_gpi9 (pr1_mii0_col) */
> > + K2G_CORE_IOPAD(0x12fc) (BUFFER_CLASS_B | PULL_DISABLE |
> > MUX_MODE1) /* pr1_pru0_gpo10.pr1_pru0_gpi10 (pr1_mii0_crs) */
> > +
> > + K2G_CORE_IOPAD(0x1350) (BUFFER_CLASS_B | MUX_MODE0)
> > /* pr1_pru1_gpo11.pr1_pru1_gpo11 (pr1_mii0_txd0) */
> > + K2G_CORE_IOPAD(0x1354) (BUFFER_CLASS_B | MUX_MODE0)
> > /* pr1_pru1_gpo12.pr1_pru1_gpo12 (pr1_mii0_txd1) */
> > + K2G_CORE_IOPAD(0x1358) (BUFFER_CLASS_B | MUX_MODE0)
> > /* pr1_pru1_gpo13.pr1_pru1_gpo13 (pr1_mii0_txd2) */
> > + K2G_CORE_IOPAD(0x135c) (BUFFER_CLASS_B | MUX_MODE0)
> > /* pr1_pru1_gpo14.pr1_pru1_gpo14 (pr1_mii0_txd3) */
> > + K2G_CORE_IOPAD(0x1360) (BUFFER_CLASS_B | MUX_MODE0)
> > /* pr1_pru1_gpo15.pr1_pru1_gpo15 (pr1_mii0_txen) */
> > + K2G_CORE_IOPAD(0x1364) (BUFFER_CLASS_B | MUX_MODE1)
> > /* pr1_pru1_gpo16.pr1_pru1_gpo16 (pr1_mii_mt0_clk) */
> > +
> > + /* PRUSS1 PRU1 Ethernet */
> > + K2G_CORE_IOPAD(0x1324) (BUFFER_CLASS_B | PULL_DISABLE
> > | MUX_MODE1) /* pr1_pru1_gpo0.pr1_pru1_gpi0 (pr1_mii1_rxd0) */
> > + K2G_CORE_IOPAD(0x132c) (BUFFER_CLASS_B | PULL_DISABLE
> > | MUX_MODE1) /* pr1_pru1_gpo2.pr1_pru1_gpi2 (pr1_mii1_rxd2) */
> > + K2G_CORE_IOPAD(0x1330) (BUFFER_CLASS_B | PULL_DISABLE
> > | MUX_MODE1) /* pr1_pru1_gpo3.pr1_pru1_gpi3 (pr1_mii1_rxd3) */
> > + K2G_CORE_IOPAD(0x1334) (BUFFER_CLASS_B | PULL_DISABLE
> > | MUX_MODE1) /* pr1_pru1_gpo4.pr1_pru1_gpi4 (pr1_mii1_rxdv) */
> > + K2G_CORE_IOPAD(0x1338) (BUFFER_CLASS_B | PULL_DISABLE
> > | MUX_MODE1) /* pr1_pru1_gpo5.pr1_pru1_gpi5 (pr1_mii1_rxer) */
> > + K2G_CORE_IOPAD(0x133c) (BUFFER_CLASS_B | MUX_MODE1)
> > /* pr1_pru1_gpo6.pr1_pru1_gpi6 (pr1_mii_mr1_clk) */
> > +
> > + K2G_CORE_IOPAD(0x1344) (BUFFER_CLASS_B | MUX_MODE1)
> > /* pr1_pru1_gpo8.pr1_pru1_gpi8 (pr1_mii1_rxlink) */
> > + K2G_CORE_IOPAD(0x1348) (BUFFER_CLASS_B | PULL_DISABLE
> > | MUX_MODE1) /* pr1_pru1_gpo9.pr1_pru1_gpi9 (pr1_mii1_col) */
> > + K2G_CORE_IOPAD(0x134c) (BUFFER_CLASS_B | PULL_DISABLE
> > | MUX_MODE1) /* pr1_pru1_gpo10.pr1_pru1_gpi10 (pr1_mii1_crs) */
> > +
> > + K2G_CORE_IOPAD(0x1300) (BUFFER_CLASS_B | MUX_MODE0)
> > /* pr1_pru0_gpo11.pr1_pru0_gpo11 (pr1_mii1_txd0) */
> > + K2G_CORE_IOPAD(0x1304) (BUFFER_CLASS_B | MUX_MODE0)
> > /* pr1_pru0_gpo12.pr1_pru0_gpo12 (pr1_mii1_txd1) */
> > + K2G_CORE_IOPAD(0x1308) (BUFFER_CLASS_B | MUX_MODE0)
> > /* pr1_pru0_gpo13.pr1_pru0_gpo13 (pr1_mii1_txd2) */
> > + K2G_CORE_IOPAD(0x130c) (BUFFER_CLASS_B | MUX_MODE0)
> > /* pr1_pru0_gpo14.pr1_pru0_gpo14 (pr1_mii1_txd3) */
> > + K2G_CORE_IOPAD(0x1310) (BUFFER_CLASS_B | MUX_MODE0)
> > /* pr1_pru0_gpo15.pr1_pru0_gpo15 (pr1_mii1_txen) */
> > + K2G_CORE_IOPAD(0x1314) (BUFFER_CLASS_B | MUX_MODE1)
> > /* pr1_pru0_gpo16.pr1_pru0_gpo16 (pr1_mii_mt1_clk) */
> > + >;
> > + };
> > +};
> > +
> > +&uio_pruss1_mdio {
> > + status = "okay";
> > + pinctrl-0 = <&uio_pruss1_mdio_eth_default>;
> > + pinctrl-names = "default";
> > + reset-gpios = <&gpio0 23 GPIO_ACTIVE_LOW>,
> > + <&gpio0 21 GPIO_ACTIVE_LOW>;
> > + reset-delay-us = <20>;
> > +
> > + uio_pruss1_eth0_phy: uio-ethernet-phy at 0 {
> > + reg = <0>;
> > + };
> > +
> > + uio_pruss1_eth1_phy: uio-ethernet-phy at 1 {
> > + reg = <1>;
> > + };
> > +};
> > +
> > +&uio_pruss2_mdio {
> > + status = "okay";
> > + pinctrl-0 = <&uio_pruss2_mdio_eth_default>;
> > + pinctrl-names = "default";
> > + reset-gpios = <&gpio0 20 GPIO_ACTIVE_LOW>,
> > + <&gpio0 24 GPIO_ACTIVE_LOW>;
> > + reset-delay-us = <20>;
> > +
> > + uio_pruss2_eth0_phy: uio-ethernet-phy at 2 {
> > + reg = <2>;
> > + };
> > +
> > + uio_pruss2_eth1_phy: uio-ethernet-phy at 3 {
> > + reg = <3>;
> > + };
> > +};
> > +
> > +&pruss0 {
> > + status = "disabled";
> > +};
> > +
> > +&pru0_0 {
> > + status = "disabled";
> > +};
> > +
> > +&pru0_1 {
> > + status = "disabled";
> > +};
> > +
> > +&pruss0_intc {
> > + status = "disabled";
> > +};
> > +
> > +&pruss0_mdio {
> > + status = "disabled";
> > +};
> > +
> > +&pruss1 {
> > + status = "disabled";
> > +};
> > +
> > +&pru1_0 {
> > + status = "disabled";
> > +};
> > +
> > +&pru1_1 {
> > + status = "disabled";
> > +};
> > +
> > +&pruss1_intc {
> > + status = "disabled";
> > +};
> > +
> > +&pruss1_mdio {
> > + status = "disabled";
> > +};
> > +
> > +&pruss0_emac0 {
> > + status = "disabled";
> > +};
> > +
> > +&pruss0_emac1 {
> > + status = "disabled";
> > +};
> > +
> > +&pruss1_emac0 {
> > + status = "disabled";
> > +};
> > +
> > +&pruss1_emac1 {
> > + status = "disabled";
> > +};
> > diff --git a/recipes-kernel/linux/ti-uio.inc b/recipes-kernel/linux/ti-uio.inc
> > index 5c43637..13cf53e 100644
> > --- a/recipes-kernel/linux/ti-uio.inc
> > +++ b/recipes-kernel/linux/ti-uio.inc
> > @@ -2,7 +2,10 @@ SRC_URI_append_keystone = " file://keystone-uio.dtsi"
> > SRC_URI_append_k2hk = " file://k2hk-uio.dtsi"
> > SRC_URI_append_k2l-evm = " file://k2l-uio.dtsi"
> > SRC_URI_append_k2e = " file://k2e-uio.dtsi"
> > -SRC_URI_append_am57xx-evm = " file://am572x-pru-uio.dtsi"
> > +SRC_URI_append_k2g = " file://keystone-k2g-pru-uio.dtsi"
> > +SRC_URI_append_am57xx-evm = " file://am572x-pru-uio.dtsi \
> > + file://am571x-pru-uio.dtsi \ "
> > SRC_URI_append_ti33x = " file://am335x-pru-uio.dtsi"
> > SRC_URI_append_ti43x = " file://am437x-pru-uio.dtsi"
> >
> > @@ -12,9 +15,10 @@ DTSI_LIST_append_k2hk = " k2hk-uio.dtsi"
> > DTSI_LIST_append_k2l-evm = " k2l-uio.dtsi"
> > DTSI_LIST_append_k2e = " k2e-uio.dtsi"
> >
> > -KERNEL_DEVICETREE_append_am57xx-evm =
> > "${@base_conditional("ENABLE_TI_UIO_DEVICES", "1", " am572x-idk-pru-
> > excl-uio.dtb", "", d)}"
> > +KERNEL_DEVICETREE_append_am57xx-evm =
> > "${@base_conditional("ENABLE_TI_UIO_DEVICES", "1", " am572x-idk-pru-
> > excl-uio.dtb am571x-idk-pru-excl-uio.dtb", "", d)}"
> > KERNEL_DEVICETREE_append_ti33x =
> > "${@base_conditional("ENABLE_TI_UIO_DEVICES", "1", " am335x-icev2-pru-
> > excl-uio.dtb", "", d)}"
> > KERNEL_DEVICETREE_append_ti43x =
> > "${@base_conditional("ENABLE_TI_UIO_DEVICES", "1", " am437x-idk-pru-
> > excl-uio.dtb", "", d)}"
> > +KERNEL_DEVICETREE_append_k2g =
> > "${@base_conditional("ENABLE_TI_UIO_DEVICES", "1", " keystone-k2g-ice-
> > pru-excl-uio.dtb", "", d)}"
> >
> > do_setup_uio() {
> > if [ "${ENABLE_TI_UIO_DEVICES}" == "1" ] @@ -40,6 +44,12 @@
> > do_setup_uio_append_am57xx-evm() {
> > cp ${S}/arch/arm/boot/dts/am572x-idk.dts ${S}/arch/arm/boot/dts/$dts
> > cp ${WORKDIR}/${dtsi} ${S}/arch/arm/boot/dts/
> > echo "#include \"${dtsi}\"" >> ${S}/arch/arm/boot/dts/$dts
> > +
> > + dts="am571x-idk-pru-excl-uio.dts"
> > + dtsi="am571x-pru-uio.dtsi"
> > + cp ${S}/arch/arm/boot/dts/am571x-idk.dts
> > ${S}/arch/arm/boot/dts/$dts
> > + cp ${WORKDIR}/${dtsi} ${S}/arch/arm/boot/dts/
> > + echo "#include \"${dtsi}\"" >> ${S}/arch/arm/boot/dts/$dts
> > fi
> > }
> >
> > @@ -67,4 +77,16 @@ do_setup_uio_append_ti43x() {
> > fi
> > }
> >
> > +do_setup_uio_append_k2g() {
> > +
> > + if [ "${ENABLE_TI_UIO_DEVICES}" == "1" ]
> > + then
> > + dts="keystone-k2g-ice-pru-excl-uio.dts"
> > + dtsi="keystone-k2g-pru-uio.dtsi"
> > + cp ${S}/arch/arm/boot/dts/keystone-k2g-ice.dts
> > ${S}/arch/arm/boot/dts/$dts
> > + cp ${WORKDIR}/${dtsi} ${S}/arch/arm/boot/dts/
> > + echo "#include \"${dtsi}\"" >> ${S}/arch/arm/boot/dts/$dts
> > + fi
> > +}
> > +
> > do_patch[postfuncs] += "do_setup_uio"
> > --
> > 1.9.1
>
> --
> _______________________________________________
> meta-ti mailing list
> meta-ti at yoctoproject.org
> https://lists.yoctoproject.org/listinfo/meta-ti
More information about the meta-ti
mailing list