Skip to content
Snippets Groups Projects
  1. Jan 12, 2021
  2. Jan 11, 2021
  3. Jan 08, 2021
    • Peter Maydell's avatar
      Merge remote-tracking branch 'remotes/pmaydell/tags/pull-target-arm-20210108' into staging · 7b09f127
      Peter Maydell authored
      
      target-arm queue:
       * intc/arm_gic: Fix gic_irq_signaling_enabled() for vCPUs
       * target/arm: Fix MTE0_ACTIVE
       * target/arm: Implement v8.1M and Cortex-M55 model
       * hw/arm/highbank: Drop dead KVM support code
       * util/qemu-timer: Make timer_free() imply timer_del()
       * various devices: Use ptimer_free() in finalize function
       * docs/system: arm: Add sabrelite board description
       * sabrelite: Minor fixes to allow booting U-Boot
      
      # gpg: Signature made Fri 08 Jan 2021 15:34:25 GMT
      # gpg:                using RSA key E1A5C593CD419DE28E8315CF3C2525ED14360CDE
      # gpg:                issuer "peter.maydell@linaro.org"
      # gpg: Good signature from "Peter Maydell <peter.maydell@linaro.org>" [ultimate]
      # gpg:                 aka "Peter Maydell <pmaydell@gmail.com>" [ultimate]
      # gpg:                 aka "Peter Maydell <pmaydell@chiark.greenend.org.uk>" [ultimate]
      # Primary key fingerprint: E1A5 C593 CD41 9DE2 8E83  15CF 3C25 25ED 1436 0CDE
      
      * remotes/pmaydell/tags/pull-target-arm-20210108: (23 commits)
        docs/system: arm: Add sabrelite board description
        hw/arm: sabrelite: Connect the Ethernet PHY at address 6
        hw/msic: imx6_ccm: Correct register value for silicon type
        hw/misc: imx6_ccm: Update PMU_MISC0 reset value
        exynos4210_mct: Use ptimer_free() in the finalize function to avoid memleaks
        musicpal: Use ptimer_free() in the finalize function to avoid memleaks
        mss-timer: Use ptimer_free() in the finalize function to avoid memleaks
        exynos4210_pwm: Use ptimer_free() in the finalize function to avoid memleaks
        exynos4210_rtc: Use ptimer_free() in the finalize function to avoid memleaks
        allwinner-a10-pit: Use ptimer_free() in the finalize function to avoid memleaks
        digic-timer: Use ptimer_free() in the finalize function to avoid memleaks
        target/arm: Remove timer_del()/timer_deinit() before timer_free()
        Remove superfluous timer_del() calls
        scripts/coccinelle: New script to remove unnecessary timer_del() calls
        util/qemu-timer: Make timer_free() imply timer_del()
        hw/arm/highbank: Drop dead KVM support code
        target/arm: Implement Cortex-M55 model
        target/arm: Implement FPCXT_NS fp system register
        target/arm: Correct store of FPSCR value via FPCXT_S
        hw/intc/armv7m_nvic: Correct handling of CCR.BFHFNMIGN
        ...
      
      Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
      7b09f127
    • Bin Meng's avatar
      docs/system: arm: Add sabrelite board description · c9f8511e
      Bin Meng authored
      
      This adds the target guide for SABRE Lite board, and documents how
      to boot a Linux kernel and U-Boot bootloader.
      
      Signed-off-by: default avatarBin Meng <bin.meng@windriver.com>
      Reviewed-by: default avatarAlex Bennée <alex.bennee@linaro.org>
      Message-id: 20210106063504.10841-5-bmeng.cn@gmail.com
      Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
      c9f8511e
    • Bin Meng's avatar
      hw/arm: sabrelite: Connect the Ethernet PHY at address 6 · 37e33be7
      Bin Meng authored
      
      At present, when booting U-Boot on QEMU sabrelite, we see:
      
        Net:   Board Net Initialization Failed
        No ethernet found.
      
      U-Boot scans PHY at address 4/5/6/7 (see board_eth_init() in the
      U-Boot source: board/boundary/nitrogen6x/nitrogen6x.c). On the real
      board, the Ethernet PHY is at address 6. Adjust this by updating the
      "fec-phy-num" property of the fsl_imx6 SoC object.
      
      With this change, U-Boot sees the PHY but complains MAC address:
      
        Net:   using phy at 6
        FEC [PRIME]
        Error: FEC address not set.
      
      This is due to U-Boot tries to read the MAC address from the fuse,
      which QEMU does not have any valid content filled in. However this
      does not prevent the Ethernet from working in QEMU. We just need to
      set up the MAC address later in the U-Boot command shell, by:
      
        => setenv ethaddr 00:11:22:33:44:55
      
      Signed-off-by: default avatarBin Meng <bin.meng@windriver.com>
      Reviewed-by: default avatarAlex Bennée <alex.bennee@linaro.org>
      Message-id: 20210106063504.10841-4-bmeng.cn@gmail.com
      Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
      37e33be7
    • Bin Meng's avatar
      hw/msic: imx6_ccm: Correct register value for silicon type · 45914971
      Bin Meng authored
      
      Currently when U-Boot boots, it prints "??" for i.MX processor:
      
        CPU:   Freescale i.MX?? rev1.0 at 792 MHz
      
      The register that was used to determine the silicon type is
      undocumented in the latest IMX6DQRM (Rev. 6, 05/2020), but we
      can refer to get_cpu_rev() in arch/arm/mach-imx/mx6/soc.c in
      the U-Boot source codes that USB_ANALOG_DIGPROG is used.
      
      Update its reset value to indicate i.MX6Q.
      
      Signed-off-by: default avatarBin Meng <bin.meng@windriver.com>
      Reviewed-by: default avatarAlex Bennée <alex.bennee@linaro.org>
      Message-id: 20210106063504.10841-3-bmeng.cn@gmail.com
      Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
      45914971
    • Bin Meng's avatar
      hw/misc: imx6_ccm: Update PMU_MISC0 reset value · 56a11a9b
      Bin Meng authored
      
      U-Boot expects PMU_MISC0 register bit 7 is set (see init_bandgap()
      in arch/arm/mach-imx/mx6/soc.c) during boot. This bit indicates the
      bandgap has stabilized.
      
      With this change, the latest upstream U-Boot (v2021.01-rc3) for imx6
      sabrelite board (mx6qsabrelite_defconfig), with a slight change made
      by switching CONFIG_OF_SEPARATE to CONFIG_OF_EMBED, boots to U-Boot
      shell on QEMU with the following command:
      
      $ qemu-system-arm -M sabrelite -smp 4 -m 1G -kernel u-boot \
          -display none -serial null -serial stdio
      
      Boot log below:
      
        U-Boot 2021.01-rc3 (Dec 12 2020 - 17:40:02 +0800)
      
        CPU:   Freescale i.MX?? rev1.0 at 792 MHz
        Reset cause: POR
        Model: Freescale i.MX6 Quad SABRE Lite Board
        Board: SABRE Lite
        I2C:   ready
        DRAM:  1 GiB
        force_idle_bus: sda=0 scl=0 sda.gp=0x5c scl.gp=0x55
        force_idle_bus: failed to clear bus, sda=0 scl=0
        force_idle_bus: sda=0 scl=0 sda.gp=0x6d scl.gp=0x6c
        force_idle_bus: failed to clear bus, sda=0 scl=0
        force_idle_bus: sda=0 scl=0 sda.gp=0xcb scl.gp=0x5
        force_idle_bus: failed to clear bus, sda=0 scl=0
        MMC:   FSL_SDHC: 0, FSL_SDHC: 1
        Loading Environment from MMC... *** Warning - No block device, using default environment
      
        In:    serial
        Out:   serial
        Err:   serial
        Net:   Board Net Initialization Failed
        No ethernet found.
        starting USB...
        Bus usb@2184000: usb dr_mode not found
        USB EHCI 1.00
        Bus usb@2184200: USB EHCI 1.00
        scanning bus usb@2184000 for devices... 1 USB Device(s) found
        scanning bus usb@2184200 for devices... 1 USB Device(s) found
               scanning usb for storage devices... 0 Storage Device(s) found
               scanning usb for ethernet devices... 0 Ethernet Device(s) found
        Hit any key to stop autoboot:  0
        =>
      
      Signed-off-by: default avatarBin Meng <bin.meng@windriver.com>
      Reviewed-by: default avatarAlex Bennée <alex.bennee@linaro.org>
      Message-id: 20210106063504.10841-2-bmeng.cn@gmail.com
      Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
      56a11a9b
    • Gan Qixin's avatar
      exynos4210_mct: Use ptimer_free() in the finalize function to avoid memleaks · d97d9152
      Gan Qixin authored
      
      When running device-introspect-test, a memory leak occurred in the
      exynos4210_mct_init function, so use ptimer_free() in the finalize function to
      avoid it.
      
      ASAN shows memory leak stack:
      
      Indirect leak of 96 byte(s) in 1 object(s) allocated from:
          #0 0xffffab97e1f0 in __interceptor_calloc (/lib64/libasan.so.5+0xee1f0)
          #1 0xffffab256800 in g_malloc0 (/lib64/libglib-2.0.so.0+0x56800)
          #2 0xaaabf555db78 in ptimer_init /qemu/hw/core/ptimer.c:432
          #3 0xaaabf56b01a0 in exynos4210_mct_init /qemu/hw/timer/exynos4210_mct.c:1505
          #4 0xaaabf6339f6c in object_initialize_with_type /qemu/qom/object.c:515
          #5 0xaaabf633a1e0 in object_new_with_type /qemu/qom/object.c:729
          #6 0xaaabf6375e40 in qmp_device_list_properties /qemu/qom/qom-qmp-cmds.c:153
          #7 0xaaabf653d8ec in qmp_marshal_device_list_properties /qemu/qapi/qapi-commands-qdev.c:59
          #8 0xaaabf6587d08 in do_qmp_dispatch_bh /qemu/qapi/qmp-dispatch.c:110
          #9 0xaaabf6552708 in aio_bh_call /qemu/util/async.c:136
          #10 0xaaabf6552708 in aio_bh_poll /qemu/util/async.c:164
          #11 0xaaabf655f19c in aio_dispatch /qemu/util/aio-posix.c:381
          #12 0xaaabf65523f4 in aio_ctx_dispatch /qemu/util/async.c:306
      
      Reported-by: default avatarEuler Robot <euler.robot@huawei.com>
      Signed-off-by: default avatarGan Qixin <ganqixin@huawei.com>
      Reviewed-by: default avatarPeter Maydell <peter.maydell@linaro.org>
      Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
      d97d9152
    • Gan Qixin's avatar
      musicpal: Use ptimer_free() in the finalize function to avoid memleaks · a4bc0334
      Gan Qixin authored
      
      When running device-introspect-test, a memory leak occurred in the
      mv88w8618_pit_init function, so use ptimer_free() in the finalize function to
      avoid it.
      
      ASAN shows memory leak stack:
      
      Indirect leak of 192 byte(s) in 4 object(s) allocated from:
          #0 0xffffab97e1f0 in __interceptor_calloc (/lib64/libasan.so.5+0xee1f0)
          #1 0xffffab256800 in g_malloc0 (/lib64/libglib-2.0.so.0+0x56800)
          #2 0xaaabf555db84 in timer_new_full /qemu/include/qemu/timer.h:523
          #3 0xaaabf555db84 in timer_new /qemu/include/qemu/timer.h:544
          #4 0xaaabf555db84 in timer_new_ns /qemu/include/qemu/timer.h:562
          #5 0xaaabf555db84 in ptimer_init /qemu/hw/core/ptimer.c:433
          #6 0xaaabf5bb2290 in mv88w8618_timer_init /qemu/hw/arm/musicpal.c:862
          #7 0xaaabf5bb2290 in mv88w8618_pit_init /qemu/hw/arm/musicpal.c:954
          #8 0xaaabf6339f6c in object_initialize_with_type /qemu/qom/object.c:515
          #9 0xaaabf633a1e0 in object_new_with_type /qemu/qom/object.c:729
          #10 0xaaabf6375e40 in qmp_device_list_properties /qemu/qom/qom-qmp-cmds.c:153
          #11 0xaaabf5a95540 in qdev_device_help /qemu/softmmu/qdev-monitor.c:283
          #12 0xaaabf5a96940 in qmp_device_add /qemu/softmmu/qdev-monitor.c:801
      
      Reported-by: default avatarEuler Robot <euler.robot@huawei.com>
      Signed-off-by: default avatarGan Qixin <ganqixin@huawei.com>
      Reviewed-by: default avatarPeter Maydell <peter.maydell@linaro.org>
      Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
      a4bc0334
    • Gan Qixin's avatar
      mss-timer: Use ptimer_free() in the finalize function to avoid memleaks · e4940041
      Gan Qixin authored
      
      When running device-introspect-test, a memory leak occurred in the
      mss_timer_init function, so use ptimer_free() in the finalize function to avoid
      it.
      
      ASAN shows memory leak stack:
      
      Indirect leak of 192 byte(s) in 2 object(s) allocated from:
          #0 0xffffab97e1f0 in __interceptor_calloc (/lib64/libasan.so.5+0xee1f0)
          #1 0xffffab256800 in g_malloc0 (/lib64/libglib-2.0.so.0+0x56800)
          #2 0xaaabf555db78 in ptimer_init /qemu/hw/core/ptimer.c:432
          #3 0xaaabf58a0010 in mss_timer_init /qemu/hw/timer/mss-timer.c:235
          #4 0xaaabf6339f6c in object_initialize_with_type /qemu/qom/object.c:515
          #5 0xaaabf633ca04 in object_initialize_child_with_propsv /qemu/qom/object.c:564
          #6 0xaaabf633cc08 in object_initialize_child_with_props /qemu/qom/object.c:547
          #7 0xaaabf5b8316c in m2sxxx_soc_initfn /qemu/hw/arm/msf2-soc.c:70
          #8 0xaaabf6339f6c in object_initialize_with_type /qemu/qom/object.c:515
          #9 0xaaabf633a1e0 in object_new_with_type /qemu/qom/object.c:729
          #10 0xaaabf6375e40 in qmp_device_list_properties /qemu/qom/qom-qmp-cmds.c:153
          #11 0xaaabf653d8ec in qmp_marshal_device_list_properties /qemu/qapi/qapi-commands-qdev.c:59
          #12 0xaaabf6587d08 in do_qmp_dispatch_bh /qemu/qapi/qmp-dispatch.c:110
      
      Reported-by: default avatarEuler Robot <euler.robot@huawei.com>
      Signed-off-by: default avatarGan Qixin <ganqixin@huawei.com>
      Reviewed-by: default avatarPeter Maydell <peter.maydell@linaro.org>
      Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
      e4940041
    • Gan Qixin's avatar
      exynos4210_pwm: Use ptimer_free() in the finalize function to avoid memleaks · c9342c09
      Gan Qixin authored
      
      When running device-introspect-test, a memory leak occurred in the
      exynos4210_pwm_init function, so use ptimer_free() in the finalize function to
      avoid it.
      
      ASAN shows memory leak stack:
      
      Indirect leak of 240 byte(s) in 5 object(s) allocated from:
          #0 0xffffab97e1f0 in __interceptor_calloc (/lib64/libasan.so.5+0xee1f0)
          #1 0xffffab256800 in g_malloc0 (/lib64/libglib-2.0.so.0+0x56800)
          #2 0xaaabf555db84 in timer_new_full /qemu/include/qemu/timer.h:523
          #3 0xaaabf555db84 in timer_new /qemu/include/qemu/timer.h:544
          #4 0xaaabf555db84 in timer_new_ns /qemu/include/qemu/timer.h:562
          #5 0xaaabf555db84 in ptimer_init /qemu/hw/core/ptimer.c:433
          #6 0xaaabf56a36cc in exynos4210_pwm_init /qemu/hw/timer/exynos4210_pwm.c:401
          #7 0xaaabf6339f6c in object_initialize_with_type /qemu/qom/object.c:515
          #8 0xaaabf633a1e0 in object_new_with_type /qemu/qom/object.c:729
          #9 0xaaabf6375e40 in qmp_device_list_properties /qemu/qom/qom-qmp-cmds.c:153
          #10 0xaaabf653d8ec in qmp_marshal_device_list_properties /qemu/qapi/qapi-commands-qdev.c:59
          #11 0xaaabf6587d08 in do_qmp_dispatch_bh /qemu/qapi/qmp-dispatch.c:110
          #12 0xaaabf6552708 in aio_bh_call /qemu/util/async.c:136
      
      Reported-by: default avatarEuler Robot <euler.robot@huawei.com>
      Signed-off-by: default avatarGan Qixin <ganqixin@huawei.com>
      Reviewed-by: default avatarPeter Maydell <peter.maydell@linaro.org>
      Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
      c9342c09
Loading