memory: mvebu-devbus: add Orion5x support
This commit adds support for the Orion5x family of Marvell processors into the mvebu-devbus driver. It differs from the already supported Armada 370/XP by: * Having a single register (instead of two) for doing all the timing configuration. * Having a few less timing configuration parameters. For this reason, a separate compatible string "marvell,orion-devbus" is introduced. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com> Tested-by: Ezequiel Garcia <ezequiel.garcia@free-electrons.com> Link: https://lkml.kernel.org/r/1398202002-28530-9-git-send-email-thomas.petazzoni@free-electrons.com Signed-off-by: Jason Cooper <jason@lakedaemon.net>
This commit is contained in:

committed by
Jason Cooper

parent
30bd30b603
commit
c4ec7430c3
@@ -6,10 +6,11 @@ The actual devices are instantiated from the child nodes of a Device Bus node.
|
||||
|
||||
Required properties:
|
||||
|
||||
- compatible: Currently only Armada 370/XP SoC are supported,
|
||||
with this compatible string:
|
||||
- compatible: Armada 370/XP SoC are supported using the
|
||||
"marvell,mvebu-devbus" compatible string.
|
||||
|
||||
marvell,mvebu-devbus
|
||||
Orion5x SoC are supported using the
|
||||
"marvell,orion-devbus" compatible string.
|
||||
|
||||
- reg: A resource specifier for the register space.
|
||||
This is the base address of a chip select within
|
||||
@@ -22,7 +23,7 @@ Required properties:
|
||||
integer values for each chip-select line in use:
|
||||
0 <physical address of mapping> <size>
|
||||
|
||||
Mandatory timing properties for child nodes:
|
||||
Timing properties for child nodes:
|
||||
|
||||
Read parameters:
|
||||
|
||||
@@ -30,21 +31,26 @@ Read parameters:
|
||||
drive the AD bus after the completion of a device read.
|
||||
This prevents contentions on the Device Bus after a read
|
||||
cycle from a slow device.
|
||||
Mandatory.
|
||||
|
||||
- devbus,bus-width: Defines the bus width (e.g. <16>)
|
||||
- devbus,bus-width: Defines the bus width, in bits (e.g. <16>).
|
||||
Mandatory.
|
||||
|
||||
- devbus,badr-skew-ps: Defines the time delay from from A[2:0] toggle,
|
||||
to read data sample. This parameter is useful for
|
||||
synchronous pipelined devices, where the address
|
||||
precedes the read data by one or two cycles.
|
||||
Mandatory.
|
||||
|
||||
- devbus,acc-first-ps: Defines the time delay from the negation of
|
||||
ALE[0] to the cycle that the first read data is sampled
|
||||
by the controller.
|
||||
Mandatory.
|
||||
|
||||
- devbus,acc-next-ps: Defines the time delay between the cycle that
|
||||
samples data N and the cycle that samples data N+1
|
||||
(in burst accesses).
|
||||
Mandatory.
|
||||
|
||||
- devbus,rd-setup-ps: Defines the time delay between DEV_CSn assertion to
|
||||
DEV_OEn assertion. If set to 0 (default),
|
||||
@@ -52,6 +58,8 @@ Read parameters:
|
||||
This parameter has no affect on <acc-first-ps> parameter
|
||||
(no affect on first data sample). Set <rd-setup-ps>
|
||||
to a value smaller than <acc-first-ps>.
|
||||
Mandatory for "marvell,mvebu-devbus"
|
||||
compatible string, ignored otherwise.
|
||||
|
||||
- devbus,rd-hold-ps: Defines the time between the last data sample to the
|
||||
de-assertion of DEV_CSn. If set to 0 (default),
|
||||
@@ -62,16 +70,20 @@ Read parameters:
|
||||
last data sampled. Also this parameter has no
|
||||
affect on <turn-off-ps> parameter.
|
||||
Set <rd-hold-ps> to a value smaller than <turn-off-ps>.
|
||||
Mandatory for "marvell,mvebu-devbus"
|
||||
compatible string, ignored otherwise.
|
||||
|
||||
Write parameters:
|
||||
|
||||
- devbus,ale-wr-ps: Defines the time delay from the ALE[0] negation cycle
|
||||
to the DEV_WEn assertion.
|
||||
Mandatory.
|
||||
|
||||
- devbus,wr-low-ps: Defines the time during which DEV_WEn is active.
|
||||
A[2:0] and Data are kept valid as long as DEV_WEn
|
||||
is active. This parameter defines the setup time of
|
||||
address and data to DEV_WEn rise.
|
||||
Mandatory.
|
||||
|
||||
- devbus,wr-high-ps: Defines the time during which DEV_WEn is kept
|
||||
inactive (high) between data beats of a burst write.
|
||||
@@ -79,10 +91,13 @@ Write parameters:
|
||||
<wr-high-ps> - <tick> ps.
|
||||
This parameter defines the hold time of address and
|
||||
data after DEV_WEn rise.
|
||||
Mandatory.
|
||||
|
||||
- devbus,sync-enable: Synchronous device enable.
|
||||
1: True
|
||||
0: False
|
||||
Mandatory for "marvell,mvebu-devbus" compatible
|
||||
string, ignored otherwise.
|
||||
|
||||
An example for an Armada XP GP board, with a 16 MiB NOR device as child
|
||||
is showed below. Note that the Device Bus driver is in charge of allocating
|
||||
|
Reference in New Issue
Block a user