nios2.txt 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. * Nios II Processor Binding
  2. This binding specifies what properties available in the device tree
  3. representation of a Nios II Processor Core.
  4. Users can use sopc2dts tool for generating device tree sources (dts) from a
  5. Qsys system. See more detail in: http://www.alterawiki.com/wiki/Sopc2dts
  6. Required properties:
  7. - compatible: Compatible property value should be "altr,nios2-1.0".
  8. - reg: Contains CPU index.
  9. - interrupt-controller: Specifies that the node is an interrupt controller
  10. - #interrupt-cells: Specifies the number of cells needed to encode an
  11. interrupt source, should be 1.
  12. - clock-frequency: Contains the clock frequency for CPU, in Hz.
  13. - dcache-line-size: Contains data cache line size.
  14. - icache-line-size: Contains instruction line size.
  15. - dcache-size: Contains data cache size.
  16. - icache-size: Contains instruction cache size.
  17. - altr,pid-num-bits: Specifies the number of bits to use to represent the process
  18. identifier (PID).
  19. - altr,tlb-num-ways: Specifies the number of set-associativity ways in the TLB.
  20. - altr,tlb-num-entries: Specifies the number of entries in the TLB.
  21. - altr,tlb-ptr-sz: Specifies size of TLB pointer.
  22. - altr,has-mul: Specifies CPU hardware multipy support, should be 1.
  23. - altr,has-mmu: Specifies CPU support MMU support, should be 1.
  24. - altr,has-initda: Specifies CPU support initda instruction, should be 1.
  25. - altr,reset-addr: Specifies CPU reset address
  26. - altr,fast-tlb-miss-addr: Specifies CPU fast TLB miss exception address
  27. - altr,exception-addr: Specifies CPU exception address
  28. Optional properties:
  29. - altr,has-div: Specifies CPU hardware divide support
  30. - altr,implementation: Nios II core implementation, this should be "fast";
  31. Example:
  32. cpu@0x0 {
  33. device_type = "cpu";
  34. compatible = "altr,nios2-1.0";
  35. reg = <0>;
  36. interrupt-controller;
  37. #interrupt-cells = <1>;
  38. clock-frequency = <125000000>;
  39. dcache-line-size = <32>;
  40. icache-line-size = <32>;
  41. dcache-size = <32768>;
  42. icache-size = <32768>;
  43. altr,implementation = "fast";
  44. altr,pid-num-bits = <8>;
  45. altr,tlb-num-ways = <16>;
  46. altr,tlb-num-entries = <128>;
  47. altr,tlb-ptr-sz = <7>;
  48. altr,has-div = <1>;
  49. altr,has-mul = <1>;
  50. altr,reset-addr = <0xc2800000>;
  51. altr,fast-tlb-miss-addr = <0xc7fff400>;
  52. altr,exception-addr = <0xd0000020>;
  53. altr,has-initda = <1>;
  54. altr,has-mmu = <1>;
  55. };