mirror of
https://github.com/torvalds/linux.git
synced 2024-12-30 23:02:08 +00:00
9217e566bd
It's common practice to store MAC addresses for network interfaces into nvmem devices. However the code to actually do this in the kernel lacks, so this patch adds of_get_nvmem_mac_address() for drivers to obtain the address from an nvmem cell provider. This is particulary useful on devices where the ethernet interface cannot be configured by the bootloader, for example because it's in an FPGA. Signed-off-by: Mike Looijmans <mike.looijmans@topic.nl> Reviewed-by: Florian Fainelli <f.fainelli@gmail.com> Reviewed-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: David S. Miller <davem@davemloft.net>
67 lines
3.0 KiB
Plaintext
67 lines
3.0 KiB
Plaintext
The following properties are common to the Ethernet controllers:
|
|
|
|
NOTE: All 'phy*' properties documented below are Ethernet specific. For the
|
|
generic PHY 'phys' property, see
|
|
Documentation/devicetree/bindings/phy/phy-bindings.txt.
|
|
|
|
- local-mac-address: array of 6 bytes, specifies the MAC address that was
|
|
assigned to the network device;
|
|
- mac-address: array of 6 bytes, specifies the MAC address that was last used by
|
|
the boot program; should be used in cases where the MAC address assigned to
|
|
the device by the boot program is different from the "local-mac-address"
|
|
property;
|
|
- nvmem-cells: phandle, reference to an nvmem node for the MAC address;
|
|
- nvmem-cell-names: string, should be "mac-address" if nvmem is to be used;
|
|
- max-speed: number, specifies maximum speed in Mbit/s supported by the device;
|
|
- max-frame-size: number, maximum transfer unit (IEEE defined MTU), rather than
|
|
the maximum frame size (there's contradiction in the Devicetree
|
|
Specification).
|
|
- phy-mode: string, operation mode of the PHY interface. This is now a de-facto
|
|
standard property; supported values are:
|
|
* "internal"
|
|
* "mii"
|
|
* "gmii"
|
|
* "sgmii"
|
|
* "qsgmii"
|
|
* "tbi"
|
|
* "rev-mii"
|
|
* "rmii"
|
|
* "rgmii" (RX and TX delays are added by the MAC when required)
|
|
* "rgmii-id" (RGMII with internal RX and TX delays provided by the PHY, the
|
|
MAC should not add the RX or TX delays in this case)
|
|
* "rgmii-rxid" (RGMII with internal RX delay provided by the PHY, the MAC
|
|
should not add an RX delay in this case)
|
|
* "rgmii-txid" (RGMII with internal TX delay provided by the PHY, the MAC
|
|
should not add an TX delay in this case)
|
|
* "rtbi"
|
|
* "smii"
|
|
* "xgmii"
|
|
* "trgmii"
|
|
* "2000base-x",
|
|
* "2500base-x",
|
|
* "rxaui"
|
|
* "xaui"
|
|
* "10gbase-kr" (10GBASE-KR, XFI, SFI)
|
|
- phy-connection-type: the same as "phy-mode" property but described in the
|
|
Devicetree Specification;
|
|
- phy-handle: phandle, specifies a reference to a node representing a PHY
|
|
device; this property is described in the Devicetree Specification and so
|
|
preferred;
|
|
- phy: the same as "phy-handle" property, not recommended for new bindings.
|
|
- phy-device: the same as "phy-handle" property, not recommended for new
|
|
bindings.
|
|
- rx-fifo-depth: the size of the controller's receive fifo in bytes. This
|
|
is used for components that can have configurable receive fifo sizes,
|
|
and is useful for determining certain configuration settings such as
|
|
flow control thresholds.
|
|
- tx-fifo-depth: the size of the controller's transmit fifo in bytes. This
|
|
is used for components that can have configurable fifo sizes.
|
|
- managed: string, specifies the PHY management type. Supported values are:
|
|
"auto", "in-band-status". "auto" is the default, it usess MDIO for
|
|
management if fixed-link is not specified.
|
|
|
|
Child nodes of the Ethernet controller are typically the individual PHY devices
|
|
connected via the MDIO bus (sometimes the MDIO bus controller is separate).
|
|
They are described in the phy.txt file in this same directory.
|
|
For non-MDIO PHY management see fixed-link.txt.
|