1*2e36db14SWarner Losh 2*2e36db14SWarner LoshMarvell Device bus (localbus) configuration. 3*2e36db14SWarner Losh============================================ 4*2e36db14SWarner Losh 5*2e36db14SWarner Losh1. Properties for localbus nodes 6*2e36db14SWarner Losh 7*2e36db14SWarner Losh1.1 ranges 8*2e36db14SWarner Losh 9*2e36db14SWarner LoshProperty: ranges 10*2e36db14SWarner Losh 11*2e36db14SWarner LoshValue type: <prop-encoded-array> encoded as arbitrary number of localbus 12*2e36db14SWarner Losh nodes specifiers. 13*2e36db14SWarner Losh 14*2e36db14SWarner LoshDescription: ranges property defines values used for mapping devices 15*2e36db14SWarner Losh connected to localbus, in Marvell devices it is used also for 16*2e36db14SWarner Losh setting decoding windows. 17*2e36db14SWarner Losh 18*2e36db14SWarner Losh a) child node address-cells: 19*2e36db14SWarner Losh - first cell: number of bank (chip select) 20*2e36db14SWarner Losh - second cell: (Marvell devices) Target ID for decoding 21*2e36db14SWarner Losh windows setup 22*2e36db14SWarner Losh 23*2e36db14SWarner Losh b) parent node address cells: 24*2e36db14SWarner Losh - address offset: used with parent's node base address to 25*2e36db14SWarner Losh specify base address of mapped device 26*2e36db14SWarner Losh 27*2e36db14SWarner Losh c) child node size-cells: 28*2e36db14SWarner Losh - size: defines amount of memory that should be reserved for 29*2e36db14SWarner Losh device 30*2e36db14SWarner Losh 31*2e36db14SWarner Losh1.2 bank-count 32*2e36db14SWarner Losh 33*2e36db14SWarner LoshProperty: bank-count 34*2e36db14SWarner Losh 35*2e36db14SWarner LoshValue type: <u32> 36*2e36db14SWarner Losh 37*2e36db14SWarner LoshDescription: The bank_count property defines maximum number of banks on 38*2e36db14SWarner Losh localbus node. Bank is most often interpreted as device chip 39*2e36db14SWarner Losh select, but may also describe another device (e.g. SPI flash). 40*2e36db14SWarner Losh 41*2e36db14SWarner Losh1.3 Example 42*2e36db14SWarner Losh 43*2e36db14SWarner Losh localbus@0 { 44*2e36db14SWarner Losh #address-cells = <2>; 45*2e36db14SWarner Losh #size-cells = <1>; 46*2e36db14SWarner Losh compatible = "mrvl,lbc"; 47*2e36db14SWarner Losh bank-count = <5>; 48*2e36db14SWarner Losh 49*2e36db14SWarner Losh /* This reflects CPU decode windows setup. */ 50*2e36db14SWarner Losh ranges = <0x0 0x2f 0xb2200000 0x00100000 51*2e36db14SWarner Losh 0x1 0x3e 0xb2100000 0x00100000 52*2e36db14SWarner Losh 0x2 0x3d 0xb0000000 0x02000000 53*2e36db14SWarner Losh 0x3 0x3b 0xb2000000 0x00100000>; 54*2e36db14SWarner Losh }; 55*2e36db14SWarner Losh 56*2e36db14SWarner Losh2. Properties for localbus consumer nodes: 57*2e36db14SWarner Losh 58*2e36db14SWarner Losh2.1 reg 59*2e36db14SWarner Losh 60*2e36db14SWarner LoshProperty: reg 61*2e36db14SWarner Losh 62*2e36db14SWarner LoshValue type: <prop-encoded-array> 63*2e36db14SWarner Losh 64*2e36db14SWarner LoshDescription: A standard property required for localbus child nodes. Defines 65*2e36db14SWarner Losh the device memory region. 66*2e36db14SWarner Losh 67*2e36db14SWarner Losh a) first cell: number of bank (chip select) 68*2e36db14SWarner Losh 69*2e36db14SWarner Losh b) address offset: used with address offset from parent's ranges 70*2e36db14SWarner Losh for corresponding bank to specify base address of 71*2e36db14SWarner Losh the device 72*2e36db14SWarner Losh 73*2e36db14SWarner Losh c) size: defines size of the device memory region 74*2e36db14SWarner Losh 75*2e36db14SWarner Losh2.2 Example 76*2e36db14SWarner Losh 77*2e36db14SWarner Losh nor@0,0 { 78*2e36db14SWarner Losh #address-cells = <1>; 79*2e36db14SWarner Losh #size-cells = <1>; 80*2e36db14SWarner Losh compatible = "cfi-flash"; 81*2e36db14SWarner Losh reg = <0x0 0x0 0x00100000>; 82*2e36db14SWarner Losh }; 83