~funderscore blog cgit wiki get in touch
aboutsummaryrefslogtreecommitdiff
blob: 882728d541361e8cf7290f29e6a99353f35e4a50 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
Specifying NVMXIP information for devices
======================================

QSPI XIP flash device nodes
---------------------------

Each flash device should have its own node.

Each node must specify the following fields:

1)
		compatible = "nvmxip,qspi";

This allows to bind the flash device with the nvmxip_qspi driver
If a platform has its own driver, please provide your own compatible
string.

2)
		reg = /bits/ 64 <0x08000000 0x00200000>;

The start address and size of the flash device. The values give here are an
example (when the cell size is 2).

When cell size is 1, the reg field looks like this:

		reg = <0x08000000 0x00200000>;

3)

		lba_shift = <9>;

The number of bit shifts used to calculate the size in bytes of one block.
In this example the block size is 1 << 9 = 2 ^ 9 = 512 bytes

4)

		lba = <4096>;

The number of blocks.

Example of multiple flash devices
----------------------------------------------------

	nvmxip-qspi1@08000000 {
		compatible = "nvmxip,qspi";
		reg = /bits/ 64 <0x08000000 0x00200000>;
		lba_shift = <9>;
		lba = <4096>;
	};

	nvmxip-qspi2@08200000 {
		compatible = "nvmxip,qspi";
		reg = /bits/ 64 <0x08200000 0x00100000>;
		lba_shift = <9>;
		lba = <2048>;
	};