1. 04 Sep, 2014 4 commits
    • Tudor Laurentiu's avatar
      powerpc/fsl_msi: spread msi ints across different MSIRs · c822e737
      Tudor Laurentiu authored
      Allocate msis such that each time a new interrupt is requested,
      the SRS (MSIR register select) to be used is allocated in a
      round-robin fashion.
      The end result is that the msi interrupts will be spread across
      distinct MSIRs with the main benefit that now users can set
      affinity to each msi int through the mpic irq backing up the
      MSIR register.
      This is achieved with the help of a newly introduced msi bitmap
      api that allows specifying the starting point when searching
      for a free msi interrupt.
      Signed-off-by: default avatarLaurentiu Tudor <Laurentiu.Tudor@freescale.com>
      Cc: Scott Wood <scottwood@freescale.com>
      Cc: Mihai Caraman <mihai.caraman@freescale.com>
      Signed-off-by: default avatarScott Wood <scottwood@freescale.com>
      c822e737
    • Tudor Laurentiu's avatar
      powerpc/fsl_msi: show more meaningful names in /proc/interrupts · de99f53d
      Tudor Laurentiu authored
      Rename the irq controller associated with a MSI
      interrupt to fsl-msi-<V>, where <V> is the virq
      of the cascade irq backing up this MSI interrupt.
      This way, one can set the affinity of a MSI
      through the cascade irq associated with said MSI
      interrupt.
      Given this example /proc/interrupts snippet:
      
                 CPU0       CPU1       CPU2       CPU3
       16:          0          0          0          0   OpenPIC    16 Edge      mpic-error-int
       17:          0          4          0          0  fsl-msi-224   0 Edge      eth0-rx-0
       18:          0          5          0          0  fsl-msi-225   1 Edge      eth0-tx-0
       19:          0          2          0          0  fsl-msi-226   2 Edge      eth0
       [...]
      224:          0         11          0          0   OpenPIC   224 Edge      fsl-msi-cascade
      225:          0          0          0          0   OpenPIC   225 Edge      fsl-msi-cascade
      226:          0          0          0          0   OpenPIC   226 Edge      fsl-msi-cascade
       [...]
      
      To change the affinity of MSI interrupt 17
      (having the irq controller named "fsl-msi-224")
      instead of writing /proc/irq/17/smp_affinity, use
      the associated MSI cascade irq, in this case,
      interrupt 224, e.g.:
      
         echo 6 > /proc/irq/224/smp_affinity
      
      Note that a MSI cascade irq covers several MSI
      interrupts, so changing the affinity on the
      cascade will impact all of the associated MSI
      interrupts.
      Signed-off-by: default avatarLaurentiu Tudor <Laurentiu.Tudor@freescale.com>
      Cc: Scott Wood <scottwood@freescale.com>
      Cc: Mihai Caraman <mihai.caraman@freescale.com>
      Signed-off-by: default avatarScott Wood <scottwood@freescale.com>
      de99f53d
    • Tudor Laurentiu's avatar
      powerpc/fsl_msi: change the irq handler from chained to normal · 543c043c
      Tudor Laurentiu authored
      As we do for other fsl-mpic related cascaded irqchips
      (e.g. error ints, mpic timers), use a normal irq handler
      for msi irqs too.
      This brings some advantages such as mask/unmask/ack/eoi
      and irq state taken care behind the scenes, kstats
      updates a.s.o plus access to features provided by mpic,
      such as affinity.
      Signed-off-by: default avatarLaurentiu Tudor <Laurentiu.Tudor@freescale.com>
      Cc: Scott Wood <scottwood@freescale.com>
      Cc: Mihai Caraman <mihai.caraman@freescale.com>
      Signed-off-by: default avatarScott Wood <scottwood@freescale.com>
      543c043c
    • Tudor Laurentiu's avatar
      powerpc/fsl_msi: reorganize structs to improve clarity and flexibility · 83495231
      Tudor Laurentiu authored
      Store cascade_data in an array inside the driver
      data for later use.
      Get rid of the msi_virq array since now we can
      encapsulate the virqs in the cascade_data
      directly and access them through the array
      mentioned earlier.
      Signed-off-by: default avatarLaurentiu Tudor <Laurentiu.Tudor@freescale.com>
      Cc: Scott Wood <scottwood@freescale.com>
      Cc: Mihai Caraman <mihai.caraman@freescale.com>
      Signed-off-by: default avatarScott Wood <scottwood@freescale.com>
      83495231
  2. 03 Sep, 2014 9 commits
  3. 31 Jul, 2014 2 commits
    • Shengzhou Liu's avatar
      powerpc/t2080rdb: Add T2080RDB board support · 78eb9094
      Shengzhou Liu authored
      T2080PCIe-RDB is a Freescale Reference Design Board that hosts T2080 SoC.
      The board feature overview:
      Processor:
       - T2080 SoC integrating four 64-bit dual-threads e6500 cores up to 1.8GHz
      DDR Memory:
       - Single memory controller capable of supporting DDR3 and DDR3-LP devices
       - 72bit 4GB DDR3-LP SODIMM in slot
      Ethernet interfaces:
       - Two 1Gbps RGMII ports on-board
       - Two 10Gbps SFP+ ports on-board
       - Two 10Gbps Base-T ports on-board
      Accelerator:
       - DPAA components consist of FMan, BMan, QMan, PME, DCE and SEC
      IFC/Local Bus
       - NOR:  128MB 16-bit NOR flash
       - NAND: 1GB 8-bit NAND flash
       - CPLD: for system controlling with programable header on-board
      eSPI:
       - 64MB N25Q512 SPI flash
      USB:
       - Two USB2.0 ports with internal PHY (both Type-A)
      PCIe:
       - One PCIe x4 goldfinger(support SR-IOV)
       - One PCIe x4 slot
       - One PCIe x2 end-point device (C293 crypto co-processor)
      SATA:
       - Two SATA 2.0 ports on-board
      SDHC:
       - support a MicroSD/TF card on-board
      I2C:
       - Four I2C controllers.
      UART:
       - Dual 4-pins UART serial ports
      Signed-off-by: default avatarShengzhou Liu <Shengzhou.Liu@freescale.com>
      Signed-off-by: default avatarScott Wood <scottwood@freescale.com>
      78eb9094
    • Priyanka Jain's avatar
      powerpc/85xx: Add binding for CPLD · dd2b04fc
      Priyanka Jain authored
      Some Freescale boards like T1040RDB have an on board CPLD connected on
      the IFC bus. Add binding for cpld in board.txt file
      Signed-off-by: default avatarPriyanka Jain <Priyanka.Jain@freescale.com>
      Signed-off-by: default avatarScott Wood <scottwood@freescale.com>
      dd2b04fc
  4. 30 Jul, 2014 6 commits
  5. 02 Jul, 2014 3 commits
    • Laurentiu TUDOR's avatar
      powerpc/85xx: drop hypervisor specific board compatibles · cd115477
      Laurentiu TUDOR authored
      They're almost a duplicate of the boards array
      and we can build them at run-time.
      Signed-off-by: default avatarLaurentiu Tudor <Laurentiu.Tudor@freescale.com>
      Signed-off-by: default avatarScott Wood <scottwood@freescale.com>
      cd115477
    • Shengzhou Liu's avatar
      powerpc/fsl-booke: Add initial T208x QDS board support · 4c18be2b
      Shengzhou Liu authored
      Add support for Freescale T2080/T2081 QDS Development System Board.
      
      The T2080QDS Development System is a high-performance computing,
      evaluation, and development platform that supports T2080 QorIQ
      Power Architecture processor, with following major features:
      
      T2080QDS feature overview:
      Processor:
       - T2080 SoC integrating four 64-bit dual-threads e6500 cores up to 1.8GHz
      Memory:
       - Single memory controller capable of supporting DDR3 and DDR3-LP
       - Dual DIMM slots up 2133MT/s with ECC
      Ethernet interfaces:
       - Two 1Gbps RGMII on-board ports
       - Four 10Gbps XFI on-board cages
       - 1Gbps/2.5Gbps SGMII Riser card
       - 10Gbps XAUI Riser card
      Accelerator:
       - DPAA components consist of FMan, BMan, QMan, PME, DCE and SEC
      SerDes:
       - 16 lanes up to 10.3125GHz
       - Supports Aurora debug, PEX, SATA, SGMII, sRIO, HiGig, XFI and XAUI
      IFC:
       - 128MB NOR Flash, 512MB NAND Flash, PromJet debug port and FPGA
      eSPI:
       - Three SPI flash (16MB N25Q128A + 8MB EN25S64 + 512KB SST25WF040)
      USB:
       - Two USB2.0 ports with internal PHY (one Type-A + one micro Type-AB)
      PCIE:
       - Four PCI Express controllers (two PCIe 2.0 and two PCIe 3.0, SR-IOV)
      SATA:
       - Two SATA 2.0 ports on-board
      SRIO:
       - Two Serial RapidIO 2.0 ports up to 5 GHz
      eSDHC:
       - Supports SD/MMC/eMMC Card
      DMA:
       - Three 8-channels DMA controllers
      I2C:
       - Four I2C controllers.
      UART:
       - Dual 4-pins UART serial ports
      System Logic:
       - QIXIS-II FPGA system controll
      
      T2081QDS board shares the same PCB with T1040QDS with some differences.
      Signed-off-by: default avatarShengzhou Liu <Shengzhou.Liu@freescale.com>
      Signed-off-by: default avatarScott Wood <scottwood@freescale.com>
      4c18be2b
    • Shengzhou Liu's avatar
      powerpc/fsl-booke: Add support for T2080/T2081 SoC · 1d8de8fc
      Shengzhou Liu authored
      The T2080 QorIQ multicore processor combines four dual-threaded e6500 Power
      Architecture processor cores with high-performance datapath acceleration
      logic and network and peripheral bus interfaces required for networking,
      telecom/datacom, wireless infrastructure, and mil/aerospace applications.
      
      The T2080 SoC includes the following function and features:
      - Four dual-threaded 64-bit Power architecture e6500 cores, up to 1.8GHz
      - 2MB L2 cache and 512KB CoreNet platform cache (CPC)
      - Hierarchical interconnect fabric
      - One 32-/64-bit DDR3/3L SDRAM memory controllers with ECC and interleaving
      - Data Path Acceleration Architecture (DPAA) incorporating acceleration
      - 16 SerDes lanes up to 10.3125 GHz
      - 8 Ethernet interfaces (multiple 1G/2.5G/10G MACs)
      - High-speed peripheral interfaces
        - Four PCI Express controllers (two PCIe 2.0 and two PCIe 3.0)
        - Two Serial RapidIO 2.0 controllers/ports running at up to 5 GHz
      - Additional peripheral interfaces
        - Two serial ATA (SATA 2.0) controllers
        - Two high-speed USB 2.0 controllers with integrated PHY
        - Enhanced secure digital host controller (SD/SDXC/eMMC)
        - Enhanced serial peripheral interface (eSPI)
        - Four I2C controllers
        - Four 2-pin UARTs or two 4-pin UARTs
        - Integrated Flash Controller supporting NAND and NOR flash
      - Three eight-channel DMA engines
      - Support for hardware virtualization and partitioning enforcement
      - QorIQ Platform's Trust Architecture 2.0
      
      T2081 is a reduced personality of T2080 with following difference:
      Feature               T2080 T2081
      1G Ethernet numbers:  8     6
      10G Ethernet numbers: 4     2
      SerDes lanes:         16    8
      Serial RapidIO,RMan:  2     no
      SATA Controller:      2     no
      Aurora:               yes   no
      SoC Package:          896-pins 780-pins
      Signed-off-by: default avatarShengzhou Liu <Shengzhou.Liu@freescale.com>
      [scottwood@freescale.com: added fsl,qoriq-pci-v3.0 for U-Boot compat]
      Signed-off-by: default avatarScott Wood <scottwood@freescale.com>
      1d8de8fc
  6. 25 Jun, 2014 5 commits
  7. 20 Jun, 2014 9 commits
  8. 16 Jun, 2014 2 commits