diff options
Diffstat (limited to 'Documentation/powerpc/booting-without-of.txt')
-rw-r--r-- | Documentation/powerpc/booting-without-of.txt | 490 |
1 files changed, 454 insertions, 36 deletions
diff --git a/Documentation/powerpc/booting-without-of.txt b/Documentation/powerpc/booting-without-of.txt index 76733a3962f0..a96e85397eb7 100644 --- a/Documentation/powerpc/booting-without-of.txt +++ b/Documentation/powerpc/booting-without-of.txt | |||
@@ -50,7 +50,7 @@ Table of Contents | |||
50 | g) Freescale SOC SEC Security Engines | 50 | g) Freescale SOC SEC Security Engines |
51 | h) Board Control and Status (BCSR) | 51 | h) Board Control and Status (BCSR) |
52 | i) Freescale QUICC Engine module (QE) | 52 | i) Freescale QUICC Engine module (QE) |
53 | j) Flash chip nodes | 53 | j) CFI or JEDEC memory-mapped NOR flash |
54 | k) Global Utilities Block | 54 | k) Global Utilities Block |
55 | 55 | ||
56 | VII - Specifying interrupt information for devices | 56 | VII - Specifying interrupt information for devices |
@@ -1510,7 +1510,10 @@ platforms are moved over to use the flattened-device-tree model. | |||
1510 | 1510 | ||
1511 | i) Freescale QUICC Engine module (QE) | 1511 | i) Freescale QUICC Engine module (QE) |
1512 | This represents qe module that is installed on PowerQUICC II Pro. | 1512 | This represents qe module that is installed on PowerQUICC II Pro. |
1513 | Hopefully it will merge backward compatibility with CPM/CPM2. | 1513 | |
1514 | NOTE: This is an interim binding; it should be updated to fit | ||
1515 | in with the CPM binding later in this document. | ||
1516 | |||
1514 | Basically, it is a bus of devices, that could act more or less | 1517 | Basically, it is a bus of devices, that could act more or less |
1515 | as a complete entity (UCC, USB etc ). All of them should be siblings on | 1518 | as a complete entity (UCC, USB etc ). All of them should be siblings on |
1516 | the "root" qe node, using the common properties from there. | 1519 | the "root" qe node, using the common properties from there. |
@@ -1548,7 +1551,7 @@ platforms are moved over to use the flattened-device-tree model. | |||
1548 | Required properties: | 1551 | Required properties: |
1549 | - device_type : should be "spi". | 1552 | - device_type : should be "spi". |
1550 | - compatible : should be "fsl_spi". | 1553 | - compatible : should be "fsl_spi". |
1551 | - mode : the SPI operation mode, it can be "cpu" or "qe". | 1554 | - mode : the SPI operation mode, it can be "cpu" or "cpu-qe". |
1552 | - reg : Offset and length of the register set for the device | 1555 | - reg : Offset and length of the register set for the device |
1553 | - interrupts : <a b> where a is the interrupt number and b is a | 1556 | - interrupts : <a b> where a is the interrupt number and b is a |
1554 | field that represents an encoding of the sense and level | 1557 | field that represents an encoding of the sense and level |
@@ -1757,45 +1760,69 @@ platforms are moved over to use the flattened-device-tree model. | |||
1757 | }; | 1760 | }; |
1758 | }; | 1761 | }; |
1759 | 1762 | ||
1760 | j) Flash chip nodes | 1763 | j) CFI or JEDEC memory-mapped NOR flash |
1761 | 1764 | ||
1762 | Flash chips (Memory Technology Devices) are often used for solid state | 1765 | Flash chips (Memory Technology Devices) are often used for solid state |
1763 | file systems on embedded devices. | 1766 | file systems on embedded devices. |
1764 | 1767 | ||
1765 | Required properties: | 1768 | - compatible : should contain the specific model of flash chip(s) |
1766 | 1769 | used, if known, followed by either "cfi-flash" or "jedec-flash" | |
1767 | - device_type : has to be "rom" | 1770 | - reg : Address range of the flash chip |
1768 | - compatible : Should specify what this flash device is compatible with. | 1771 | - bank-width : Width (in bytes) of the flash bank. Equal to the |
1769 | Currently, this is most likely to be "direct-mapped" (which | 1772 | device width times the number of interleaved chips. |
1770 | corresponds to the MTD physmap mapping driver). | 1773 | - device-width : (optional) Width of a single flash chip. If |
1771 | - reg : Offset and length of the register set (or memory mapping) for | 1774 | omitted, assumed to be equal to 'bank-width'. |
1772 | the device. | 1775 | - #address-cells, #size-cells : Must be present if the flash has |
1773 | - bank-width : Width of the flash data bus in bytes. Required | 1776 | sub-nodes representing partitions (see below). In this case |
1774 | for the NOR flashes (compatible == "direct-mapped" and others) ONLY. | 1777 | both #address-cells and #size-cells must be equal to 1. |
1775 | 1778 | ||
1776 | Recommended properties : | 1779 | For JEDEC compatible devices, the following additional properties |
1777 | 1780 | are defined: | |
1778 | - partitions : Several pairs of 32-bit values where the first value is | 1781 | |
1779 | partition's offset from the start of the device and the second one is | 1782 | - vendor-id : Contains the flash chip's vendor id (1 byte). |
1780 | partition size in bytes with LSB used to signify a read only | 1783 | - device-id : Contains the flash chip's device id (1 byte). |
1781 | partition (so, the partition size should always be an even number). | 1784 | |
1782 | - partition-names : The list of concatenated zero terminated strings | 1785 | In addition to the information on the flash bank itself, the |
1783 | representing the partition names. | 1786 | device tree may optionally contain additional information |
1784 | - probe-type : The type of probe which should be done for the chip | 1787 | describing partitions of the flash address space. This can be |
1785 | (JEDEC vs CFI actually). Valid ONLY for NOR flashes. | 1788 | used on platforms which have strong conventions about which |
1789 | portions of the flash are used for what purposes, but which don't | ||
1790 | use an on-flash partition table such as RedBoot. | ||
1791 | |||
1792 | Each partition is represented as a sub-node of the flash device. | ||
1793 | Each node's name represents the name of the corresponding | ||
1794 | partition of the flash device. | ||
1795 | |||
1796 | Flash partitions | ||
1797 | - reg : The partition's offset and size within the flash bank. | ||
1798 | - label : (optional) The label / name for this flash partition. | ||
1799 | If omitted, the label is taken from the node name (excluding | ||
1800 | the unit address). | ||
1801 | - read-only : (optional) This parameter, if present, is a hint to | ||
1802 | Linux that this flash partition should only be mounted | ||
1803 | read-only. This is usually used for flash partitions | ||
1804 | containing early-boot firmware images or data which should not | ||
1805 | be clobbered. | ||
1786 | 1806 | ||
1787 | Example: | 1807 | Example: |
1788 | 1808 | ||
1789 | flash@ff000000 { | 1809 | flash@ff000000 { |
1790 | device_type = "rom"; | 1810 | compatible = "amd,am29lv128ml", "cfi-flash"; |
1791 | compatible = "direct-mapped"; | 1811 | reg = <ff000000 01000000>; |
1792 | probe-type = "CFI"; | 1812 | bank-width = <4>; |
1793 | reg = <ff000000 01000000>; | 1813 | device-width = <1>; |
1794 | bank-width = <4>; | 1814 | #address-cells = <1>; |
1795 | partitions = <00000000 00f80000 | 1815 | #size-cells = <1>; |
1796 | 00f80000 00080001>; | 1816 | fs@0 { |
1797 | partition-names = "fs\0firmware"; | 1817 | label = "fs"; |
1798 | }; | 1818 | reg = <0 f80000>; |
1819 | }; | ||
1820 | firmware@f80000 { | ||
1821 | label ="firmware"; | ||
1822 | reg = <f80000 80000>; | ||
1823 | read-only; | ||
1824 | }; | ||
1825 | }; | ||
1799 | 1826 | ||
1800 | k) Global Utilities Block | 1827 | k) Global Utilities Block |
1801 | 1828 | ||
@@ -1824,6 +1851,397 @@ platforms are moved over to use the flattened-device-tree model. | |||
1824 | fsl,has-rstcr; | 1851 | fsl,has-rstcr; |
1825 | }; | 1852 | }; |
1826 | 1853 | ||
1854 | l) Freescale Communications Processor Module | ||
1855 | |||
1856 | NOTE: This is an interim binding, and will likely change slightly, | ||
1857 | as more devices are supported. The QE bindings especially are | ||
1858 | incomplete. | ||
1859 | |||
1860 | i) Root CPM node | ||
1861 | |||
1862 | Properties: | ||
1863 | - compatible : "fsl,cpm1", "fsl,cpm2", or "fsl,qe". | ||
1864 | - reg : A 48-byte region beginning with CPCR. | ||
1865 | |||
1866 | Example: | ||
1867 | cpm@119c0 { | ||
1868 | #address-cells = <1>; | ||
1869 | #size-cells = <1>; | ||
1870 | #interrupt-cells = <2>; | ||
1871 | compatible = "fsl,mpc8272-cpm", "fsl,cpm2"; | ||
1872 | reg = <119c0 30>; | ||
1873 | } | ||
1874 | |||
1875 | ii) Properties common to mulitple CPM/QE devices | ||
1876 | |||
1877 | - fsl,cpm-command : This value is ORed with the opcode and command flag | ||
1878 | to specify the device on which a CPM command operates. | ||
1879 | |||
1880 | - fsl,cpm-brg : Indicates which baud rate generator the device | ||
1881 | is associated with. If absent, an unused BRG | ||
1882 | should be dynamically allocated. If zero, the | ||
1883 | device uses an external clock rather than a BRG. | ||
1884 | |||
1885 | - reg : Unless otherwise specified, the first resource represents the | ||
1886 | scc/fcc/ucc registers, and the second represents the device's | ||
1887 | parameter RAM region (if it has one). | ||
1888 | |||
1889 | iii) Serial | ||
1890 | |||
1891 | Currently defined compatibles: | ||
1892 | - fsl,cpm1-smc-uart | ||
1893 | - fsl,cpm2-smc-uart | ||
1894 | - fsl,cpm1-scc-uart | ||
1895 | - fsl,cpm2-scc-uart | ||
1896 | - fsl,qe-uart | ||
1897 | |||
1898 | Example: | ||
1899 | |||
1900 | serial@11a00 { | ||
1901 | device_type = "serial"; | ||
1902 | compatible = "fsl,mpc8272-scc-uart", | ||
1903 | "fsl,cpm2-scc-uart"; | ||
1904 | reg = <11a00 20 8000 100>; | ||
1905 | interrupts = <28 8>; | ||
1906 | interrupt-parent = <&PIC>; | ||
1907 | fsl,cpm-brg = <1>; | ||
1908 | fsl,cpm-command = <00800000>; | ||
1909 | }; | ||
1910 | |||
1911 | iii) Network | ||
1912 | |||
1913 | Currently defined compatibles: | ||
1914 | - fsl,cpm1-scc-enet | ||
1915 | - fsl,cpm2-scc-enet | ||
1916 | - fsl,cpm1-fec-enet | ||
1917 | - fsl,cpm2-fcc-enet (third resource is GFEMR) | ||
1918 | - fsl,qe-enet | ||
1919 | |||
1920 | Example: | ||
1921 | |||
1922 | ethernet@11300 { | ||
1923 | device_type = "network"; | ||
1924 | compatible = "fsl,mpc8272-fcc-enet", | ||
1925 | "fsl,cpm2-fcc-enet"; | ||
1926 | reg = <11300 20 8400 100 11390 1>; | ||
1927 | local-mac-address = [ 00 00 00 00 00 00 ]; | ||
1928 | interrupts = <20 8>; | ||
1929 | interrupt-parent = <&PIC>; | ||
1930 | phy-handle = <&PHY0>; | ||
1931 | linux,network-index = <0>; | ||
1932 | fsl,cpm-command = <12000300>; | ||
1933 | }; | ||
1934 | |||
1935 | iv) MDIO | ||
1936 | |||
1937 | Currently defined compatibles: | ||
1938 | fsl,pq1-fec-mdio (reg is same as first resource of FEC device) | ||
1939 | fsl,cpm2-mdio-bitbang (reg is port C registers) | ||
1940 | |||
1941 | Properties for fsl,cpm2-mdio-bitbang: | ||
1942 | fsl,mdio-pin : pin of port C controlling mdio data | ||
1943 | fsl,mdc-pin : pin of port C controlling mdio clock | ||
1944 | |||
1945 | Example: | ||
1946 | |||
1947 | mdio@10d40 { | ||
1948 | device_type = "mdio"; | ||
1949 | compatible = "fsl,mpc8272ads-mdio-bitbang", | ||
1950 | "fsl,mpc8272-mdio-bitbang", | ||
1951 | "fsl,cpm2-mdio-bitbang"; | ||
1952 | reg = <10d40 14>; | ||
1953 | #address-cells = <1>; | ||
1954 | #size-cells = <0>; | ||
1955 | fsl,mdio-pin = <12>; | ||
1956 | fsl,mdc-pin = <13>; | ||
1957 | }; | ||
1958 | |||
1959 | v) Baud Rate Generators | ||
1960 | |||
1961 | Currently defined compatibles: | ||
1962 | fsl,cpm-brg | ||
1963 | fsl,cpm1-brg | ||
1964 | fsl,cpm2-brg | ||
1965 | |||
1966 | Properties: | ||
1967 | - reg : There may be an arbitrary number of reg resources; BRG | ||
1968 | numbers are assigned to these in order. | ||
1969 | - clock-frequency : Specifies the base frequency driving | ||
1970 | the BRG. | ||
1971 | |||
1972 | Example: | ||
1973 | |||
1974 | brg@119f0 { | ||
1975 | compatible = "fsl,mpc8272-brg", | ||
1976 | "fsl,cpm2-brg", | ||
1977 | "fsl,cpm-brg"; | ||
1978 | reg = <119f0 10 115f0 10>; | ||
1979 | clock-frequency = <d#25000000>; | ||
1980 | }; | ||
1981 | |||
1982 | vi) Interrupt Controllers | ||
1983 | |||
1984 | Currently defined compatibles: | ||
1985 | - fsl,cpm1-pic | ||
1986 | - only one interrupt cell | ||
1987 | - fsl,pq1-pic | ||
1988 | - fsl,cpm2-pic | ||
1989 | - second interrupt cell is level/sense: | ||
1990 | - 2 is falling edge | ||
1991 | - 8 is active low | ||
1992 | |||
1993 | Example: | ||
1994 | |||
1995 | interrupt-controller@10c00 { | ||
1996 | #interrupt-cells = <2>; | ||
1997 | interrupt-controller; | ||
1998 | reg = <10c00 80>; | ||
1999 | compatible = "mpc8272-pic", "fsl,cpm2-pic"; | ||
2000 | }; | ||
2001 | |||
2002 | vii) USB (Universal Serial Bus Controller) | ||
2003 | |||
2004 | Properties: | ||
2005 | - compatible : "fsl,cpm1-usb", "fsl,cpm2-usb", "fsl,qe-usb" | ||
2006 | |||
2007 | Example: | ||
2008 | usb@11bc0 { | ||
2009 | #address-cells = <1>; | ||
2010 | #size-cells = <0>; | ||
2011 | compatible = "fsl,cpm2-usb"; | ||
2012 | reg = <11b60 18 8b00 100>; | ||
2013 | interrupts = <b 8>; | ||
2014 | interrupt-parent = <&PIC>; | ||
2015 | fsl,cpm-command = <2e600000>; | ||
2016 | }; | ||
2017 | |||
2018 | viii) Multi-User RAM (MURAM) | ||
2019 | |||
2020 | The multi-user/dual-ported RAM is expressed as a bus under the CPM node. | ||
2021 | |||
2022 | Ranges must be set up subject to the following restrictions: | ||
2023 | |||
2024 | - Children's reg nodes must be offsets from the start of all muram, even | ||
2025 | if the user-data area does not begin at zero. | ||
2026 | - If multiple range entries are used, the difference between the parent | ||
2027 | address and the child address must be the same in all, so that a single | ||
2028 | mapping can cover them all while maintaining the ability to determine | ||
2029 | CPM-side offsets with pointer subtraction. It is recommended that | ||
2030 | multiple range entries not be used. | ||
2031 | - A child address of zero must be translatable, even if no reg resources | ||
2032 | contain it. | ||
2033 | |||
2034 | A child "data" node must exist, compatible with "fsl,cpm-muram-data", to | ||
2035 | indicate the portion of muram that is usable by the OS for arbitrary | ||
2036 | purposes. The data node may have an arbitrary number of reg resources, | ||
2037 | all of which contribute to the allocatable muram pool. | ||
2038 | |||
2039 | Example, based on mpc8272: | ||
2040 | |||
2041 | muram@0 { | ||
2042 | #address-cells = <1>; | ||
2043 | #size-cells = <1>; | ||
2044 | ranges = <0 0 10000>; | ||
2045 | |||
2046 | data@0 { | ||
2047 | compatible = "fsl,cpm-muram-data"; | ||
2048 | reg = <0 2000 9800 800>; | ||
2049 | }; | ||
2050 | }; | ||
2051 | |||
2052 | m) Chipselect/Local Bus | ||
2053 | |||
2054 | Properties: | ||
2055 | - name : Should be localbus | ||
2056 | - #address-cells : Should be either two or three. The first cell is the | ||
2057 | chipselect number, and the remaining cells are the | ||
2058 | offset into the chipselect. | ||
2059 | - #size-cells : Either one or two, depending on how large each chipselect | ||
2060 | can be. | ||
2061 | - ranges : Each range corresponds to a single chipselect, and cover | ||
2062 | the entire access window as configured. | ||
2063 | |||
2064 | Example: | ||
2065 | localbus@f0010100 { | ||
2066 | compatible = "fsl,mpc8272ads-localbus", | ||
2067 | "fsl,mpc8272-localbus", | ||
2068 | "fsl,pq2-localbus"; | ||
2069 | #address-cells = <2>; | ||
2070 | #size-cells = <1>; | ||
2071 | reg = <f0010100 40>; | ||
2072 | |||
2073 | ranges = <0 0 fe000000 02000000 | ||
2074 | 1 0 f4500000 00008000>; | ||
2075 | |||
2076 | flash@0,0 { | ||
2077 | compatible = "jedec-flash"; | ||
2078 | reg = <0 0 2000000>; | ||
2079 | bank-width = <4>; | ||
2080 | device-width = <1>; | ||
2081 | }; | ||
2082 | |||
2083 | board-control@1,0 { | ||
2084 | reg = <1 0 20>; | ||
2085 | compatible = "fsl,mpc8272ads-bcsr"; | ||
2086 | }; | ||
2087 | }; | ||
2088 | |||
2089 | |||
2090 | n) 4xx/Axon EMAC ethernet nodes | ||
2091 | |||
2092 | The EMAC ethernet controller in IBM and AMCC 4xx chips, and also | ||
2093 | the Axon bridge. To operate this needs to interact with a ths | ||
2094 | special McMAL DMA controller, and sometimes an RGMII or ZMII | ||
2095 | interface. In addition to the nodes and properties described | ||
2096 | below, the node for the OPB bus on which the EMAC sits must have a | ||
2097 | correct clock-frequency property. | ||
2098 | |||
2099 | i) The EMAC node itself | ||
2100 | |||
2101 | Required properties: | ||
2102 | - device_type : "network" | ||
2103 | |||
2104 | - compatible : compatible list, contains 2 entries, first is | ||
2105 | "ibm,emac-CHIP" where CHIP is the host ASIC (440gx, | ||
2106 | 405gp, Axon) and second is either "ibm,emac" or | ||
2107 | "ibm,emac4". For Axon, thus, we have: "ibm,emac-axon", | ||
2108 | "ibm,emac4" | ||
2109 | - interrupts : <interrupt mapping for EMAC IRQ and WOL IRQ> | ||
2110 | - interrupt-parent : optional, if needed for interrupt mapping | ||
2111 | - reg : <registers mapping> | ||
2112 | - local-mac-address : 6 bytes, MAC address | ||
2113 | - mal-device : phandle of the associated McMAL node | ||
2114 | - mal-tx-channel : 1 cell, index of the tx channel on McMAL associated | ||
2115 | with this EMAC | ||
2116 | - mal-rx-channel : 1 cell, index of the rx channel on McMAL associated | ||
2117 | with this EMAC | ||
2118 | - cell-index : 1 cell, hardware index of the EMAC cell on a given | ||
2119 | ASIC (typically 0x0 and 0x1 for EMAC0 and EMAC1 on | ||
2120 | each Axon chip) | ||
2121 | - max-frame-size : 1 cell, maximum frame size supported in bytes | ||
2122 | - rx-fifo-size : 1 cell, Rx fifo size in bytes for 10 and 100 Mb/sec | ||
2123 | operations. | ||
2124 | For Axon, 2048 | ||
2125 | - tx-fifo-size : 1 cell, Tx fifo size in bytes for 10 and 100 Mb/sec | ||
2126 | operations. | ||
2127 | For Axon, 2048. | ||
2128 | - fifo-entry-size : 1 cell, size of a fifo entry (used to calculate | ||
2129 | thresholds). | ||
2130 | For Axon, 0x00000010 | ||
2131 | - mal-burst-size : 1 cell, MAL burst size (used to calculate thresholds) | ||
2132 | in bytes. | ||
2133 | For Axon, 0x00000100 (I think ...) | ||
2134 | - phy-mode : string, mode of operations of the PHY interface. | ||
2135 | Supported values are: "mii", "rmii", "smii", "rgmii", | ||
2136 | "tbi", "gmii", rtbi", "sgmii". | ||
2137 | For Axon on CAB, it is "rgmii" | ||
2138 | - mdio-device : 1 cell, required iff using shared MDIO registers | ||
2139 | (440EP). phandle of the EMAC to use to drive the | ||
2140 | MDIO lines for the PHY used by this EMAC. | ||
2141 | - zmii-device : 1 cell, required iff connected to a ZMII. phandle of | ||
2142 | the ZMII device node | ||
2143 | - zmii-channel : 1 cell, required iff connected to a ZMII. Which ZMII | ||
2144 | channel or 0xffffffff if ZMII is only used for MDIO. | ||
2145 | - rgmii-device : 1 cell, required iff connected to an RGMII. phandle | ||
2146 | of the RGMII device node. | ||
2147 | For Axon: phandle of plb5/plb4/opb/rgmii | ||
2148 | - rgmii-channel : 1 cell, required iff connected to an RGMII. Which | ||
2149 | RGMII channel is used by this EMAC. | ||
2150 | Fox Axon: present, whatever value is appropriate for each | ||
2151 | EMAC, that is the content of the current (bogus) "phy-port" | ||
2152 | property. | ||
2153 | |||
2154 | Recommended properties: | ||
2155 | - linux,network-index : This is the intended "index" of this | ||
2156 | network device. This is used by the bootwrapper to interpret | ||
2157 | MAC addresses passed by the firmware when no information other | ||
2158 | than indices is available to associate an address with a device. | ||
2159 | |||
2160 | Optional properties: | ||
2161 | - phy-address : 1 cell, optional, MDIO address of the PHY. If absent, | ||
2162 | a search is performed. | ||
2163 | - phy-map : 1 cell, optional, bitmap of addresses to probe the PHY | ||
2164 | for, used if phy-address is absent. bit 0x00000001 is | ||
2165 | MDIO address 0. | ||
2166 | For Axon it can be absent, thouugh my current driver | ||
2167 | doesn't handle phy-address yet so for now, keep | ||
2168 | 0x00ffffff in it. | ||
2169 | - rx-fifo-size-gige : 1 cell, Rx fifo size in bytes for 1000 Mb/sec | ||
2170 | operations (if absent the value is the same as | ||
2171 | rx-fifo-size). For Axon, either absent or 2048. | ||
2172 | - tx-fifo-size-gige : 1 cell, Tx fifo size in bytes for 1000 Mb/sec | ||
2173 | operations (if absent the value is the same as | ||
2174 | tx-fifo-size). For Axon, either absent or 2048. | ||
2175 | - tah-device : 1 cell, optional. If connected to a TAH engine for | ||
2176 | offload, phandle of the TAH device node. | ||
2177 | - tah-channel : 1 cell, optional. If appropriate, channel used on the | ||
2178 | TAH engine. | ||
2179 | |||
2180 | Example: | ||
2181 | |||
2182 | EMAC0: ethernet@40000800 { | ||
2183 | linux,network-index = <0>; | ||
2184 | device_type = "network"; | ||
2185 | compatible = "ibm,emac-440gp", "ibm,emac"; | ||
2186 | interrupt-parent = <&UIC1>; | ||
2187 | interrupts = <1c 4 1d 4>; | ||
2188 | reg = <40000800 70>; | ||
2189 | local-mac-address = [00 04 AC E3 1B 1E]; | ||
2190 | mal-device = <&MAL0>; | ||
2191 | mal-tx-channel = <0 1>; | ||
2192 | mal-rx-channel = <0>; | ||
2193 | cell-index = <0>; | ||
2194 | max-frame-size = <5dc>; | ||
2195 | rx-fifo-size = <1000>; | ||
2196 | tx-fifo-size = <800>; | ||
2197 | phy-mode = "rmii"; | ||
2198 | phy-map = <00000001>; | ||
2199 | zmii-device = <&ZMII0>; | ||
2200 | zmii-channel = <0>; | ||
2201 | }; | ||
2202 | |||
2203 | ii) McMAL node | ||
2204 | |||
2205 | Required properties: | ||
2206 | - device_type : "dma-controller" | ||
2207 | - compatible : compatible list, containing 2 entries, first is | ||
2208 | "ibm,mcmal-CHIP" where CHIP is the host ASIC (like | ||
2209 | emac) and the second is either "ibm,mcmal" or | ||
2210 | "ibm,mcmal2". | ||
2211 | For Axon, "ibm,mcmal-axon","ibm,mcmal2" | ||
2212 | - interrupts : <interrupt mapping for the MAL interrupts sources: | ||
2213 | 5 sources: tx_eob, rx_eob, serr, txde, rxde>. | ||
2214 | For Axon: This is _different_ from the current | ||
2215 | firmware. We use the "delayed" interrupts for txeob | ||
2216 | and rxeob. Thus we end up with mapping those 5 MPIC | ||
2217 | interrupts, all level positive sensitive: 10, 11, 32, | ||
2218 | 33, 34 (in decimal) | ||
2219 | - dcr-reg : < DCR registers range > | ||
2220 | - dcr-parent : if needed for dcr-reg | ||
2221 | - num-tx-chans : 1 cell, number of Tx channels | ||
2222 | - num-rx-chans : 1 cell, number of Rx channels | ||
2223 | |||
2224 | iii) ZMII node | ||
2225 | |||
2226 | Required properties: | ||
2227 | - compatible : compatible list, containing 2 entries, first is | ||
2228 | "ibm,zmii-CHIP" where CHIP is the host ASIC (like | ||
2229 | EMAC) and the second is "ibm,zmii". | ||
2230 | For Axon, there is no ZMII node. | ||
2231 | - reg : <registers mapping> | ||
2232 | |||
2233 | iv) RGMII node | ||
2234 | |||
2235 | Required properties: | ||
2236 | - compatible : compatible list, containing 2 entries, first is | ||
2237 | "ibm,rgmii-CHIP" where CHIP is the host ASIC (like | ||
2238 | EMAC) and the second is "ibm,rgmii". | ||
2239 | For Axon, "ibm,rgmii-axon","ibm,rgmii" | ||
2240 | - reg : <registers mapping> | ||
2241 | - revision : as provided by the RGMII new version register if | ||
2242 | available. | ||
2243 | For Axon: 0x0000012a | ||
2244 | |||
1827 | More devices will be defined as this spec matures. | 2245 | More devices will be defined as this spec matures. |
1828 | 2246 | ||
1829 | VII - Specifying interrupt information for devices | 2247 | VII - Specifying interrupt information for devices |