[PATCH v3 0/3] arm64: Add Renesas R8A7796 SoC support

Simon Horman horms+renesas at verge.net.au
Mon May 23 18:54:37 PDT 2016


Hi,

this short series aims to add basic support for the
Gen 3 R-Car M3-W (r8a7796) SoC.

It has few bells and whistles but is sufficient to bring up
an r8a7795/salvator-x. I have provided a boot-log at the bottom
of this email in case it is of interest.


Dependency:

"[PATCH 0/4] clk: renesas: cpg-mssr: Add support for R-Car M3-W"


Availability:

In order to aid review this series, its dependency (above)
and the related patch "serial: sh-sci: Document SoC specific bindings for
r8a7796", which has been posted separately, are available at:

git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas.git topic/r8a7796-v3

To be entirely clear, at the time of writing I have _not_ queued up this
series for mainline.


Changes between v2 and v3:
* Drop 0x from unit address of gic
* Use arm,psci-0.2
* Accumulate Reviewed-by tag

Changes between v1 and v2:
* Move L2_CA57 node under cpus node and include reg property
* Omit status = "disabled" from scif_clk node
* Accumulate Ack and Reviewed-by tags


Simon Horman (1):
  arm64: dts: r8a7796: Add Renesas R8A7796 SoC support

Takeshi Kihara (2):
  arm64: dts: salvator-x: add Salvator-X board on R8A7796 SoC
  arm64: defconfig: enable Renesas R8A7796 SoC

 Documentation/devicetree/bindings/arm/shmobile.txt |   4 +
 arch/arm64/Kconfig.platforms                       |   6 ++
 arch/arm64/boot/dts/renesas/Makefile               |   1 +
 arch/arm64/boot/dts/renesas/r8a7796-salvator-x.dts |  45 ++++++++
 arch/arm64/boot/dts/renesas/r8a7796.dtsi           | 120 +++++++++++++++++++++
 arch/arm64/configs/defconfig                       |   1 +
 6 files changed, 177 insertions(+)
 create mode 100644 arch/arm64/boot/dts/renesas/r8a7796-salvator-x.dts
 create mode 100644 arch/arm64/boot/dts/renesas/r8a7796.dtsi


Boot Log:

The following boot log was generated by booting this patch set,
in its form in the topic/r8a7796 branch. It was compiled using
the ARM64 defconfig with initrd enabled to provide a working userspace.


[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 4.6.0-rc1+ (horms at ayumi.isobedori.kobe.vergenet.net) (gcc version 4.8.5 (Linaro GCC 4.8-2015.06) ) #98 SMP PREEMPT Tue May 24 10:47:31 JST 2016
[    0.000000] Boot CPU: AArch64 Processor [411fd073]
[    0.000000] debug: ignoring loglevel setting.
[    0.000000] efi: Getting EFI parameters from FDT:
[    0.000000] efi: UEFI not found.
[    0.000000] cma: Reserved 16 MiB at 0x00000000bf000000
[    0.000000] On node 0 totalpages: 1015808
[    0.000000]   DMA zone: 7680 pages used for memmap
[    0.000000]   DMA zone: 0 pages reserved
[    0.000000]   DMA zone: 491520 pages, LIFO batch:31
[    0.000000]   Normal zone: 8192 pages used for memmap
[    0.000000]   Normal zone: 524288 pages, LIFO batch:31
[    0.000000] psci: probing for conduit method from DT.
[    0.000000] psci: PSCIv1.0 detected in firmware.
[    0.000000] psci: Using standard PSCI v0.2 function IDs
[    0.000000] psci: Trusted OS migration not required
[    0.000000] percpu: Embedded 20 pages/cpu @ffffffc63ffad000 s43008 r8192 d30720 u81920
[    0.000000] pcpu-alloc: s43008 r8192 d30720 u81920 alloc=20*4096
[    0.000000] pcpu-alloc: [0] 0 
[    0.000000] Detected PIPT I-cache on CPU0
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 999936
[    0.000000] Kernel command line: ignore_loglevel rw root=/dev/nfs ip=dhcp nfsroot=10.3.3.135:/srv/nfs/salvator-x-arm64
[    0.000000] PID hash table entries: 4096 (order: 3, 32768 bytes)
[    0.000000] Dentry cache hash table entries: 524288 (order: 10, 4194304 bytes)
[    0.000000] Inode-cache hash table entries: 262144 (order: 9, 2097152 bytes)
[    0.000000] software IO TLB [mem 0xbafff000-0xbefff000] (64MB) mapped at [ffffffc07afff000-ffffffc07effefff]
[    0.000000] Memory: 3896020K/4063232K available (6796K kernel code, 619K rwdata, 2880K rodata, 2256K init, 241K bss, 150828K reserved, 16384K cma-reserved)
[    0.000000] Virtual kernel memory layout:
[    0.000000]     modules : 0xffffff8000000000 - 0xffffff8008000000   (   128 MB)
[    0.000000]     vmalloc : 0xffffff8008000000 - 0xffffffbdbfff0000   (   246 GB)
[    0.000000]       .text : 0xffffff8008080000 - 0xffffff8008721000   (  6788 KB)
[    0.000000]     .rodata : 0xffffff8008721000 - 0xffffff80089f5000   (  2896 KB)
[    0.000000]       .init : 0xffffff80089f5000 - 0xffffff8008c29000   (  2256 KB)
[    0.000000]       .data : 0xffffff8008c29000 - 0xffffff8008cc3e00   (   620 KB)
[    0.000000]     vmemmap : 0xffffffbdc0000000 - 0xffffffbfc0000000   (     8 GB maximum)
[    0.000000]               0xffffffbdc0200000 - 0xffffffbdd9000000   (   398 MB actual)
[    0.000000]     fixed   : 0xffffffbffe7fd000 - 0xffffffbffec00000   (  4108 KB)
[    0.000000]     PCI I/O : 0xffffffbffee00000 - 0xffffffbfffe00000   (    16 MB)
[    0.000000]     memory  : 0xffffffc008000000 - 0xffffffc640000000   ( 25472 MB)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.000000] Preemptible hierarchical RCU implementation.
[    0.000000]  Build-time adjustment of leaf fanout to 64.
[    0.000000]  RCU restricting CPUs from NR_CPUS=64 to nr_cpu_ids=1.
[    0.000000] RCU: Adjusting geometry for rcu_fanout_leaf=64, nr_cpu_ids=1
[    0.000000] NR_IRQS:64 nr_irqs:64 0
[    0.000000] Architected cp15 timer(s) running at 8.33MHz (virt).
[    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x1ec02923e, max_idle_ns: 440795202125 ns
[    0.000003] sched_clock: 56 bits at 8MHz, resolution 120ns, wraps every 2199023255496ns
[    0.000078] Console: colour dummy device 80x25
[    0.000382] console [tty0] enabled
[    0.000402] Calibrating delay loop (skipped), value calculated using timer frequency.. 16.66 BogoMIPS (lpj=33333)
[    0.000419] pid_max: default: 32768 minimum: 301
[    0.000463] Security Framework initialized
[    0.000495] Mount-cache hash table entries: 8192 (order: 4, 65536 bytes)
[    0.000505] Mountpoint-cache hash table entries: 8192 (order: 4, 65536 bytes)
[    0.001204] ASID allocator initialised with 65536 entries
[    0.001721] EFI services will not be available.
[    0.001826] Brought up 1 CPUs
[    0.001836] SMP: Total of 1 processors activated.
[    0.001850] CPU: All CPU(s) started at EL1
[    0.002615] devtmpfs: initialized
[    0.003177] DMI not present or invalid.
[    0.003369] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
[    0.003738] pinctrl core: initialized pinctrl subsystem
[    0.004515] NET: Registered protocol family 16
[    0.016065] cpuidle: using governor menu
[    0.016218] vdso: 2 pages (1 code @ ffffff8008727000, 1 data @ ffffff8008c30000)
[    0.016254] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers.
[    0.016750] DMA: preallocated 256 KiB pool for atomic allocations
[    0.016906] Serial: AMBA PL011 UART driver
[    0.040435] HugeTLB registered 2 MB page size, pre-allocated 0 pages
[    0.052844] vgaarb: loaded
[    0.053040] SCSI subsystem initialized
[    0.056288] libata version 3.00 loaded.
[    0.056470] usbcore: registered new interface driver usbfs
[    0.056509] usbcore: registered new interface driver hub
[    0.056541] usbcore: registered new device driver usb
[    0.056625] pps_core: LinuxPPS API ver. 1 registered
[    0.056634] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti at linux.it>
[    0.056660] PTP clock support registered
[    0.056737] dmi: Firmware registration failed.
[    0.057028] Advanced Linux Sound Architecture Driver Initialized.
[    0.057989] clocksource: Switched to clocksource arch_sys_counter
[    0.058133] VFS: Disk quotas dquot_6.6.0
[    0.058179] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
[    0.068090] NET: Registered protocol family 2
[    0.068508] TCP established hash table entries: 32768 (order: 6, 262144 bytes)
[    0.068625] TCP bind hash table entries: 32768 (order: 7, 524288 bytes)
[    0.069071] TCP: Hash tables configured (established 32768 bind 32768)
[    0.069176] UDP hash table entries: 2048 (order: 4, 65536 bytes)
[    0.069209] UDP-Lite hash table entries: 2048 (order: 4, 65536 bytes)
[    0.069373] NET: Registered protocol family 1
[    0.069706] RPC: Registered named UNIX socket transport module.
[    0.069725] RPC: Registered udp transport module.
[    0.069732] RPC: Registered tcp transport module.
[    0.069739] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    0.069765] PCI: CLS 0 bytes, default 128
[    0.116499] kvm [1]: HYP mode not available
[    0.118272] futex hash table entries: 256 (order: 3, 32768 bytes)
[    0.118353] audit: initializing netlink subsys (disabled)
[    0.118398] audit: type=2000 audit(0.115:1): initialized
[    0.119105] workingset: timestamp_bits=44 max_order=20 bucket_order=0
[    0.128905] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.129921] NFS: Registering the id_resolver key type
[    0.129976] Key type id_resolver registered
[    0.129984] Key type id_legacy registered
[    0.130194] fuse init (API version 7.24)
[    0.130623] 9p: Installing v9fs 9p2000 file system support
[    0.132356] io scheduler noop registered
[    0.132526] io scheduler cfq registered (default)
[    0.135682] xenfs: not registering filesystem on non-xen platform
[    0.140609] Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
[    0.142028] SuperH (H)SCI(F) driver initialized
[    0.142217] e6e88000.serial: ttySC0 at MMIO 0xe6e88000 (irq = 6, base_baud = 0) is a scif
[    0.812036] console [ttySC0] enabled
[    0.815989] msm_serial: driver initialized
[    0.848254] loop: module loaded
[    0.852907] tun: Universal TUN/TAP device driver, 1.6
[    0.858608] tun: (C) 1999-2004 Max Krasnyansky <maxk at qualcomm.com>
[    0.865182] e1000e: Intel(R) PRO/1000 Network Driver - 3.2.6-k
[    0.871284] e1000e: Copyright(c) 1999 - 2015 Intel Corporation.
[    0.877303] igb: Intel(R) Gigabit Ethernet Network Driver - version 5.3.0-k
[    0.884340] igb: Copyright (c) 2007-2014 Intel Corporation.
[    0.889981] igbvf: Intel(R) Gigabit Virtual Function Network Driver - version 2.0.2-k
[    0.897843] igbvf: Copyright (c) 2009 - 2012 Intel Corporation.
[    0.903823] sky2: driver version 1.30
[    0.907854] VFIO - User Level meta-driver version: 0.3
[    0.915399] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    0.922168] ehci-pci: EHCI PCI platform driver
[    0.926767] ehci-platform: EHCI generic platform driver
[    0.932151] ehci-msm: Qualcomm On-Chip EHCI Host Controller
[    0.937808] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[    0.944041] ohci-pci: OHCI PCI platform driver
[    0.948553] ohci-platform: OHCI generic platform driver
[    0.954029] usbcore: registered new interface driver usb-storage
[    0.960813] mousedev: PS/2 mouse device common for all mice
[    0.967093] i2c /dev entries driver
[    0.971519] sdhci: Secure Digital Host Controller Interface driver
[    0.978118] sdhci: Copyright(c) Pierre Ossman
[    0.982619] Synopsys Designware Multimedia Card Interface Driver
[    0.988896] sdhci-pltfm: SDHCI platform and OF driver helper
[    0.994818] ledtrig-cpu: registered to indicate activity on CPUs
[    1.001589] usbcore: registered new interface driver usbhid
[    1.007437] usbhid: USB HID core driver
[    1.012433] NET: Registered protocol family 17
[    1.017379] 9pnet: Installing 9P2000 support
[    1.021779] Key type dns_resolver registered
[    1.026695] registered taskstats version 1
[    1.031222] hctosys: unable to open rtc device (rtc0)
[   13.081547] ALSA device list:
[   13.084527]   No soundcards found.
[   13.089430] Freeing unused kernel memory: 2256K (ffffff80089f5000 - ffffff8008c29000)


boot (Linux 4.6.0-rc1+, BusyBox v1.16.0.git, kexec-tools 2.0.1-git)
/ # cat /proc/interrupts 
           CPU0       
  3:        253     GIC-0  27 Edge      arch_timer
  6:         79     GIC-0 196 Level     e6e88000.serial:mux
IPI0:         0       Rescheduling interrupts
IPI1:         0       Function call interrupts
IPI2:         0       CPU stop interrupts
IPI3:         0       Timer broadcast interrupts
IPI4:         0       IRQ work interrupts
IPI5:         0       CPU wake-up interrupts
Err: 



More information about the linux-arm-kernel mailing list