public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
* [U-Boot] [PATCH v3 0/7] dcache support for Raspberry Pi 1
@ 2015-07-22 18:23 Alexander Stein
  2015-07-22 18:23 ` [U-Boot] [PATCH v3 1/7] arm1136: Remove dead code Alexander Stein
                   ` (6 more replies)
  0 siblings, 7 replies; 12+ messages in thread
From: Alexander Stein @ 2015-07-22 18:23 UTC (permalink / raw)
  To: u-boot

This patchset enables dcache support for Raspberry Pi 1.
First the cache support code for arm1136 and 1176 was merged.
CONFIG_SYS_CACHELINE_SIZE is defined as 32 bytes which is used as alignment
for mailbox buffer allocations.
Then rpi mailbox code has now dcache flush for writing the mailbox request and
a dcache invalidation for receiving the mailbox answer.
Finally the CONFIG_SYS_DCACHE_OFF switch got removed from rpi1 config. It is
still set for rpi2 config.

dcache supprt increases the MMC read performance on RPI 1 from 5,4 MiB/s to
12.3 MiB/s. TFTP download over USB Ethernet increases from 2,3 MiB/s to
2,6 to 3,3 MiB/s (seems to vary a lot).

This was tested by the following commands:
> fatload mmc 0:1 ${kernel_addr_r} zImage
and
> tftp u-boot.bin

Changes in v3:
* dwc2 dcache support
* Use ALLOC_CACHE_ALIGN_BUFFER for mailbox buffer allocation
* Use ARCH_DMA_MINALIGN for size to roundup

Changes in v2:
* Merge arm1136/1176 cache code
* Use cacheline size as mailbox buffer alignment
* Flush/invalidate mailbox buffer up to cacheline size


Alexander Stein (7):
  arm1136: Remove dead code
  arm1136/arm1176: Merge cache handling code
  ARM: bcm283x: Define CONFIG_SYS_CACHELINE_SIZE
  ARM: bcm283x: Allocate all mailbox buffers cacheline aligned
  arm/mach-bcm283x/mbox: Flush and invalidate dcache when using fw
    mailbox
  dwc2: Add dcache support
  arm/rpi: Enable dcache

 arch/arm/cpu/arm11/Makefile               |   8 ++
 arch/arm/cpu/arm11/cpu.c                  | 150 ++++++++++++++++++++++++++++
 arch/arm/cpu/arm1136/Makefile             |   1 -
 arch/arm/cpu/arm1136/cpu.c                | 160 ------------------------------
 arch/arm/cpu/arm1176/Makefile             |   4 +-
 arch/arm/cpu/arm1176/cpu.c                |  51 ----------
 arch/arm/mach-bcm283x/include/mach/mbox.h |   3 +
 arch/arm/mach-bcm283x/mbox.c              |   9 ++
 board/raspberrypi/rpi/rpi.c               |  10 +-
 drivers/usb/host/dwc2.c                   |  16 ++-
 drivers/video/bcm2835.c                   |   4 +-
 include/configs/rpi-common.h              |   2 +-
 include/configs/rpi_2.h                   |   1 +
 13 files changed, 195 insertions(+), 224 deletions(-)
 create mode 100644 arch/arm/cpu/arm11/Makefile
 create mode 100644 arch/arm/cpu/arm11/cpu.c
 delete mode 100644 arch/arm/cpu/arm1136/cpu.c
 delete mode 100644 arch/arm/cpu/arm1176/cpu.c

-- 
2.4.6

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2015-07-24  5:00 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-07-22 18:23 [U-Boot] [PATCH v3 0/7] dcache support for Raspberry Pi 1 Alexander Stein
2015-07-22 18:23 ` [U-Boot] [PATCH v3 1/7] arm1136: Remove dead code Alexander Stein
2015-07-22 18:23 ` [U-Boot] [PATCH v3 2/7] arm1136/arm1176: Merge cache handling code Alexander Stein
2015-07-24  4:52   ` Stephen Warren
2015-07-22 18:23 ` [U-Boot] [PATCH v3 3/7] ARM: bcm283x: Define CONFIG_SYS_CACHELINE_SIZE Alexander Stein
2015-07-24  4:54   ` Stephen Warren
2015-07-22 18:23 ` [U-Boot] [PATCH v3 4/7] ARM: bcm283x: Allocate all mailbox buffers cacheline aligned Alexander Stein
2015-07-22 18:23 ` [U-Boot] [PATCH v3 5/7] arm/mach-bcm283x/mbox: Flush and invalidate dcache when using fw mailbox Alexander Stein
2015-07-22 18:23 ` [U-Boot] [PATCH v3 6/7] dwc2: Add dcache support Alexander Stein
2015-07-24  4:59   ` Stephen Warren
2015-07-22 18:23 ` [U-Boot] [PATCH v3 7/7] arm/rpi: Enable dcache Alexander Stein
2015-07-24  5:00   ` Stephen Warren

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox