1. 18 Jan, 2021 2 commits
    • Pali Rohár's avatar
      marvell: uart: a3720: Fix macro name for 6th bit of Status Register · b8e637f4
      Pali Rohár authored
      
      
      This patch does not change code, it only updates comments and macro name
      for 6th bit of Status Register. So TF-A binary stay same.
      
      6th bit of the Status Register is named TX EMPTY and is set to 1 when both
      Transmitter Holding Register (THR) or Transmitter Shift Register (TSR) are
      empty. It is when all characters were already transmitted.
      
      There is also TX FIFO EMPTY bit in the Status Register which is set to 1
      only when THR is empty.
      
      In both console_a3700_core_init() and console_a3700_core_flush() functions
      we should wait until both THR and TSR are empty therefore we should check
      6th bit of the Status Register.
      
      So current code is correct, just had misleading macro names and comments.
      This change fixes this "documentation" issue, fixes macro name for 6th bit
      of the Status Register and also updates comments.
      Signed-off-by: default avatarPali Rohár <pali@kernel.org>
      Change-Id: I19e4e7f53a90bcfb318e6dd1b1249b6cbf81c4d3
      b8e637f4
    • Pali Rohár's avatar
      marvell: uart: a3720: Implement console_a3700_core_getc · 74867756
      Pali Rohár authored
      
      
      Implementation is simple, just check if there is a pending character in
      RX FIFO via RXRDY bit of Status Register and if yes, read it from
      UART_RX_REG register.
      Signed-off-by: default avatarPali Rohár <pali@kernel.org>
      Change-Id: I226b6e336f44f5d0ca8dcb68e49a68e8f2f49708
      74867756
  2. 23 Dec, 2020 1 commit
    • Pali Rohár's avatar
      marvell: uart: a3720: Implement console_a3700_core_flush · e63e4140
      Pali Rohár authored
      
      
      Implementation is simple, just wait for the TX FIFO to be empty.
      
      Without this patch TF-A on A3720 truncate the last line:
      
        NOTICE:  BL31: Built : 16:1
      
      With this patch TF-A on A3720 print correctly also the last line:
      
        NOTICE:  BL31: Built : 19:03:31, Dec 23 2020
      Signed-off-by: default avatarPali Rohár <pali@kernel.org>
      Change-Id: I2f2ea42beab66ba132afdb400ca7898c5419db09
      e63e4140
  3. 09 Oct, 2020 1 commit
    • Jimmy Brisson's avatar
      Don't return error information from console_flush · 831b0e98
      Jimmy Brisson authored
      
      
      And from crash_console_flush.
      
      We ignore the error information return by console_flush in _every_
      place where we call it, and casting the return type to void does not
      work around the MISRA violation that this causes. Instead, we collect
      the error information from the driver (to avoid changing that API), and
      don't return it to the caller.
      
      Change-Id: I1e35afe01764d5c8f0efd04f8949d333ffb688c1
      Signed-off-by: default avatarJimmy Brisson <jimmy.brisson@arm.com>
      831b0e98
  4. 04 Oct, 2020 5 commits
  5. 11 Aug, 2020 1 commit
    • Stefan Chulski's avatar
      plat: marvell: ap807: implement workaround for errata-id 3033912 · 5e4c97d0
      Stefan Chulski authored
      
      
      ERRATA ID: RES-3033912 - Internal Address Space Init state causes
      a hang upon accesses to [0xf070_0000, 0xf07f_ffff]
      Workaround: Boot Firmware (ATF) should configure CCU_RGF_WIN(4) to
      split [0x6e_0000, 0xff_ffff] to values [0x6e_0000, 0x6f_ffff] and
      [0x80_0000, 0xff_ffff] that cause accesses to the segment of
      [0xf070_0000, 0xf07f_ffff] to act as RAZWI. Reuse common
      work-around code for both AP806 and AP807.
      
      Change-Id: Ia91a4802d02917d1682faa0c81571093d1687d97
      Signed-off-by: default avatarStefan Chulski <stefanc@marvell.com>
      5e4c97d0
  6. 10 Jul, 2020 5 commits
  7. 19 Jun, 2020 5 commits
  8. 06 Jun, 2020 8 commits
  9. 03 Jun, 2020 1 commit
  10. 25 Feb, 2020 1 commit
  11. 30 Jan, 2020 1 commit
    • Grzegorz Jaszczyk's avatar
      plat: marvell: armada: add support for loading MG CM3 images · 81646055
      Grzegorz Jaszczyk authored
      
      
      In order to access MG SRAM, the amb bridge needs to be configured which is
      done in bl2 platform init.
      
      For MG CM3, the image is only loaded to its SRAM and the CM3 itself is
      left in reset. It is because the next stage bootloader (e.g. u-boot)
      will trigger action which will take it out of reset when needed. This
      can happen e.g. when appropriate device-tree setup (which has enabled
      802.3 auto-neg) will be chosen. In other cases the MG CM3 should not be
      running.
      
      Change-Id: I816ea14e3a7174eace068ec44e3cc09998d0337e
      Signed-off-by: default avatarGrzegorz Jaszczyk <jaz@semihalf.com>
      81646055
  12. 11 Dec, 2019 2 commits
    • Marek Behún's avatar
      drivers: marvell: comphy-a3700: support SGMII COMPHY power off · 629dd61f
      Marek Behún authored
      
      
      Add support for powering off the SGMII COMPHY (on lanes 0 and 1).
      This is needed sometimes on Turris Mox when using KEXEC.
      
      There is also another benefit of a little energy saving when the given
      network interface is down.
      Signed-off-by: default avatarMarek Behún <marek.behun@nic.cz>
      Change-Id: I55ae0fe3627e7cc0f65c78a00771939d8bf5399f
      629dd61f
    • Marek Behún's avatar
      drivers: marvell: comphy-a3700: fix USB3 powering on when on lane 2 · b662232d
      Marek Behún authored
      
      
      When USB3 is on lane 2 and indirect register access is used, the polling
      at the end of the mvebu_a3700_comphy_usb3_power_on function is
      incorrect.
      
      The LOOPBACK_REG0 register should not be used at all. Instead we have to
      write the LANE_STATUS1 register address (with offset
      USB3PHY_LANE2_REG_BASE_OFFSET) into the indirect address register and
      then we should poll indirect data register.
      
      This fixes problems on Turris Mox, which uses lane 2 for USB3.
      Signed-off-by: default avatarMarek Behún <marek.behun@nic.cz>
      Change-Id: I968b0cccee5ddbe10a2b5614e52e52d87682aacd
      b662232d
  13. 11 Jul, 2019 1 commit
  14. 03 Apr, 2019 1 commit
  15. 04 Jan, 2019 1 commit
    • Antonio Nino Diaz's avatar
      Sanitise includes across codebase · 09d40e0e
      Antonio Nino Diaz authored
      Enforce full include path for includes. Deprecate old paths.
      
      The following folders inside include/lib have been left unchanged:
      
      - include/lib/cpus/${ARCH}
      - include/lib/el3_runtime/${ARCH}
      
      The reason for this change is that having a global namespace for
      includes isn't a good idea. It defeats one of the advantages of having
      folders and it introduces problems that are sometimes subtle (because
      you may not know the header you are actually including if there are two
      of them).
      
      For example, this patch had to be created because two headers were
      called the same way: e0ea0928 ("Fix gpio includes of mt8173 platform
      to avoid collision."). More recently, this patch has had similar
      problems: 46f9b2c3 ("drivers: add tzc380 support").
      
      This problem was introduced in commit 4ecca339
      
       ("Move include and
      source files to logical locations"). At that time, there weren't too
      many headers so it wasn't a real issue. However, time has shown that
      this creates problems.
      
      Platforms that want to preserve the way they include headers may add the
      removed paths to PLAT_INCLUDES, but this is discouraged.
      
      Change-Id: I39dc53ed98f9e297a5966e723d1936d6ccf2fc8f
      Signed-off-by: default avatarAntonio Nino Diaz <antonio.ninodiaz@arm.com>
      09d40e0e
  16. 04 Dec, 2018 3 commits
  17. 15 Nov, 2018 1 commit