blob: f84ac83211ecdf9b843285cd54e11c42e1242523 [file] [log] [blame] [edit]
ASpeed LPC Control
==================
This binding defines the LPC control for ASpeed SoCs. Partitions of
the LPC bus can be access by other processors on the system, address
ranges on the bus can map accesses from another processor to regions
of the ASpeed SoC memory space.
Reserved Memory:
================
The driver provides functionality to map the LPC bus to a region of
ASpeed ram. A phandle to a reserved memory node must be provided so
that the driver can safely use this region.
Flash:
======
The driver provides functionality to unmap the LPC bus from ASpeed
RAM, historically the default mapping has been to the SPI flash
controller on the ASpeed SoC, a phandle to this node should be
supplied.
Device Node:
============
As LPC bus configuration registers are at the start of the LPC bus
memory space, it makes most sense for the device to be within the LPC
host node. See Documentation/devicetree/bindings/mfd/aspeed-lpc.txt
for more information. This does not have to be the case, provided the
reg property can give the full address of the LPC bus.
Required properties:
--------------------
- compatible: "aspeed,ast2400-lpc-ctrl" for ASpeed ast2400 SoCs
"aspeed,ast2500-lpc-ctrl" for ASpeed ast2500 SoCs
- reg: Location and size of the configuration registers
for the LPC bus. Note that if the device node is
within the LPC host node then base is relative to
that.
- memory-region: phandle of the reserved memory region
- flash: phandle of the SPI flash controller
Example:
--------
reserved-memory {
#address-cells = <1>;
#size-cells = <1>;
ranges;
...
flash_memory: region@54000000 {
compatible = "aspeed,ast2400-lpc-ctrl";
no-map;
reg = <0x54000000 0x04000000>; /* 64M */
};
};
host_pnor: spi@1e630000 {
reg = < 0x1e630000 0x18
0x30000000 0x02000000 >;
#address-cells = <1>;
#size-cells = <0>;
compatible = "aspeed,ast2400-smc";
...
};
lpc-ctrl@0 {
compatible = "aspeed,ast2400-lpc-ctrl";
memory-region = <&flash_memory>;
flash = <&host_pnor>;
reg = <0x0 0x80>;
};