mirror of https://gitee.com/openkylin/linux.git
48 lines
1.5 KiB
Plaintext
48 lines
1.5 KiB
Plaintext
* Marvell Armada 380/XP Buffer Manager driver (BM)
|
|
|
|
Required properties:
|
|
|
|
- compatible: should be "marvell,armada-380-neta-bm".
|
|
- reg: address and length of the register set for the device.
|
|
- clocks: a pointer to the reference clock for this device.
|
|
- internal-mem: a phandle to BM internal SRAM definition.
|
|
|
|
Optional properties (port):
|
|
|
|
- pool<0 : 3>,capacity: size of external buffer pointers' ring maintained
|
|
in DRAM. Can be set for each pool (id 0 : 3) separately. The value has
|
|
to be chosen between 128 and 16352 and it also has to be aligned to 32.
|
|
Otherwise the driver would adjust a given number or choose default if
|
|
not set.
|
|
- pool<0 : 3>,pkt-size: maximum size of a packet accepted by a given buffer
|
|
pointers' pool (id 0 : 3). It will be taken into consideration only when pool
|
|
type is 'short'. For 'long' ones it would be overridden by port's MTU.
|
|
If not set a driver will choose a default value.
|
|
|
|
In order to see how to hook the BM to a given ethernet port, please
|
|
refer to Documentation/devicetree/bindings/net/marvell-armada-370-neta.txt.
|
|
|
|
Example:
|
|
|
|
- main node:
|
|
|
|
bm: bm@c8000 {
|
|
compatible = "marvell,armada-380-neta-bm";
|
|
reg = <0xc8000 0xac>;
|
|
clocks = <&gateclk 13>;
|
|
internal-mem = <&bm_bppi>;
|
|
pool2,capacity = <4096>;
|
|
pool1,pkt-size = <512>;
|
|
};
|
|
|
|
- internal SRAM node:
|
|
|
|
bm_bppi: bm-bppi {
|
|
compatible = "mmio-sram";
|
|
reg = <MBUS_ID(0x0c, 0x04) 0 0x100000>;
|
|
ranges = <0 MBUS_ID(0x0c, 0x04) 0 0x100000>;
|
|
#address-cells = <1>;
|
|
#size-cells = <1>;
|
|
clocks = <&gateclk 13>;
|
|
};
|