162306a36Sopenharmony_ci* Nios II Processor Binding
262306a36Sopenharmony_ci
362306a36Sopenharmony_ciThis binding specifies what properties available in the device tree
462306a36Sopenharmony_cirepresentation of a Nios II Processor Core.
562306a36Sopenharmony_ci
662306a36Sopenharmony_ciUsers can use sopc2dts tool for generating device tree sources (dts) from a
762306a36Sopenharmony_ciQsys system. See more detail in: http://www.alterawiki.com/wiki/Sopc2dts
862306a36Sopenharmony_ci
962306a36Sopenharmony_ciRequired properties:
1062306a36Sopenharmony_ci
1162306a36Sopenharmony_ci- compatible: Compatible property value should be "altr,nios2-1.0".
1262306a36Sopenharmony_ci- reg: Contains CPU index.
1362306a36Sopenharmony_ci- interrupt-controller: Specifies that the node is an interrupt controller
1462306a36Sopenharmony_ci- #interrupt-cells: Specifies the number of cells needed to encode an
1562306a36Sopenharmony_ci		interrupt source, should be 1.
1662306a36Sopenharmony_ci- clock-frequency: Contains the clock frequency for CPU, in Hz.
1762306a36Sopenharmony_ci- dcache-line-size: Contains data cache line size.
1862306a36Sopenharmony_ci- icache-line-size: Contains instruction line size.
1962306a36Sopenharmony_ci- dcache-size: Contains data cache size.
2062306a36Sopenharmony_ci- icache-size: Contains instruction cache size.
2162306a36Sopenharmony_ci- altr,pid-num-bits: Specifies the number of bits to use to represent the process
2262306a36Sopenharmony_ci		identifier (PID).
2362306a36Sopenharmony_ci- altr,tlb-num-ways: Specifies the number of set-associativity ways in the TLB.
2462306a36Sopenharmony_ci- altr,tlb-num-entries: Specifies the number of entries in the TLB.
2562306a36Sopenharmony_ci- altr,tlb-ptr-sz: Specifies size of TLB pointer.
2662306a36Sopenharmony_ci- altr,has-mul: Specifies CPU hardware multiply support, should be 1.
2762306a36Sopenharmony_ci- altr,has-mmu: Specifies CPU support MMU support, should be 1.
2862306a36Sopenharmony_ci- altr,has-initda: Specifies CPU support initda instruction, should be 1.
2962306a36Sopenharmony_ci- altr,reset-addr: Specifies CPU reset address
3062306a36Sopenharmony_ci- altr,fast-tlb-miss-addr: Specifies CPU fast TLB miss exception address
3162306a36Sopenharmony_ci- altr,exception-addr: Specifies CPU exception address
3262306a36Sopenharmony_ci
3362306a36Sopenharmony_ciOptional properties:
3462306a36Sopenharmony_ci- altr,has-div: Specifies CPU hardware divide support
3562306a36Sopenharmony_ci- altr,implementation: Nios II core implementation, this should be "fast";
3662306a36Sopenharmony_ci
3762306a36Sopenharmony_ciExample:
3862306a36Sopenharmony_ci
3962306a36Sopenharmony_cicpu@0 {
4062306a36Sopenharmony_ci	device_type = "cpu";
4162306a36Sopenharmony_ci	compatible = "altr,nios2-1.0";
4262306a36Sopenharmony_ci	reg = <0>;
4362306a36Sopenharmony_ci	interrupt-controller;
4462306a36Sopenharmony_ci	#interrupt-cells = <1>;
4562306a36Sopenharmony_ci	clock-frequency = <125000000>;
4662306a36Sopenharmony_ci	dcache-line-size = <32>;
4762306a36Sopenharmony_ci	icache-line-size = <32>;
4862306a36Sopenharmony_ci	dcache-size = <32768>;
4962306a36Sopenharmony_ci	icache-size = <32768>;
5062306a36Sopenharmony_ci	altr,implementation = "fast";
5162306a36Sopenharmony_ci	altr,pid-num-bits = <8>;
5262306a36Sopenharmony_ci	altr,tlb-num-ways = <16>;
5362306a36Sopenharmony_ci	altr,tlb-num-entries = <128>;
5462306a36Sopenharmony_ci	altr,tlb-ptr-sz = <7>;
5562306a36Sopenharmony_ci	altr,has-div = <1>;
5662306a36Sopenharmony_ci	altr,has-mul = <1>;
5762306a36Sopenharmony_ci	altr,reset-addr = <0xc2800000>;
5862306a36Sopenharmony_ci	altr,fast-tlb-miss-addr = <0xc7fff400>;
5962306a36Sopenharmony_ci	altr,exception-addr = <0xd0000020>;
6062306a36Sopenharmony_ci	altr,has-initda = <1>;
6162306a36Sopenharmony_ci	altr,has-mmu = <1>;
6262306a36Sopenharmony_ci};
63