IF YOU WOULD LIKE TO GET AN ACCOUNT, please write an
email to Administrator. User accounts are meant only to access repo
and report issues and/or generate pull requests.
This is a purpose-specific Git hosting for
BaseALT
projects. Thank you for your understanding!
Только зарегистрированные пользователи имеют доступ к сервису!
Для получения аккаунта, обратитесь к администратору.
Add a node in Armada 37xx DTSI file for the second UART, with a
different compatible due to its extended IP which has some
differences with the first UART already in place.
Make use of this commit to also fully describe the first port and
use the same clear and named interrupt bindings for both ports.
The standard UART (UART0) uses level-interrupts while the extended
UART (UART1) uses edge-triggered interrupts.
Signed-off-by: Miquel Raynal <miquel.raynal@free-electrons.com>
Acked-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
Add the missing clock property to armada-3700 UART node.
This clock will be used to derive the prescaler value to comply with
the requested baudrate.
Signed-off-by: Miquel Raynal <miquel.raynal@free-electrons.com>
Acked-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
Upon upgrading to binutils 2.27, we found that our lz4 and gzip
compressed kernel images were significantly larger, resulting is 10ms
boot time regressions.
As noted by Rahul:
"aarch64 binaries uses RELA relocations, where each relocation entry
includes an addend value. This is similar to x86_64. On x86_64, the
addend values are also stored at the relocation offset for relative
relocations. This is an optimization: in the case where code does not
need to be relocated, the loader can simply skip processing relative
relocations. In binutils-2.25, both bfd and gold linkers did this for
x86_64, but only the gold linker did this for aarch64. The kernel build
here is using the bfd linker, which stored zeroes at the relocation
offsets for relative relocations. Since a set of zeroes compresses
better than a set of non-zero addend values, this behavior was resulting
in much better lz4 compression.
The bfd linker in binutils-2.27 is now storing the actual addend values
at the relocation offsets. The behavior is now consistent with what it
does for x86_64 and what gold linker does for both architectures. The
change happened in this upstream commit:
https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=1f56df9d0d5ad89806c24e71f296576d82344613
Since a bunch of zeroes got replaced by non-zero addend values, we see
the side effect of lz4 compressed image being a bit bigger.
To get the old behavior from the bfd linker, "--no-apply-dynamic-relocs"
flag can be used:
$ LDFLAGS="--no-apply-dynamic-relocs" make
With this flag, the compressed image size is back to what it was with
binutils-2.25.
If the kernel is using ASLR, there aren't additional runtime costs to
--no-apply-dynamic-relocs, as the relocations will need to be applied
again anyway after the kernel is relocated to a random address.
If the kernel is not using ASLR, then presumably the current default
behavior of the linker is better. Since the static linker performed the
dynamic relocs, and the kernel is not moved to a different address at
load time, it can skip applying the relocations all over again."
Some measurements:
$ ld -v
GNU ld (binutils-2.25-f3d35cf6) 2.25.51.20141117
^
$ ls -l vmlinux
-rwxr-x--- 1 ndesaulniers eng 300652760 Oct 26 11:57 vmlinux
$ ls -l Image.lz4-dtb
-rw-r----- 1 ndesaulniers eng 16932627 Oct 26 11:57 Image.lz4-dtb
$ ld -v
GNU ld (binutils-2.27-53dd00a1) 2.27.0.20170315
^
pre patch:
$ ls -l vmlinux
-rwxr-x--- 1 ndesaulniers eng 300376208 Oct 26 11:43 vmlinux
$ ls -l Image.lz4-dtb
-rw-r----- 1 ndesaulniers eng 18159474 Oct 26 11:43 Image.lz4-dtb
post patch:
$ ls -l vmlinux
-rwxr-x--- 1 ndesaulniers eng 300376208 Oct 26 12:06 vmlinux
$ ls -l Image.lz4-dtb
-rw-r----- 1 ndesaulniers eng 16932466 Oct 26 12:06 Image.lz4-dtb
By Siqi's measurement w/ gzip:
binutils 2.27 with this patch (with --no-apply-dynamic-relocs):
Image 41535488
Image.gz 13404067
binutils 2.27 without this patch (without --no-apply-dynamic-relocs):
Image 41535488
Image.gz 14125516
Any compression scheme should be able to get better results from the
longer runs of zeros, not just GZIP and LZ4.
10ms boot time savings isn't anything to get excited about, but users of
arm64+compression+bfd-2.27 should not have to pay a penalty for no
runtime improvement.
Reported-by: Gopinath Elanchezhian <gelanchezhian@google.com>
Reported-by: Sindhuri Pentyala <spentyala@google.com>
Reported-by: Wei Wang <wvw@google.com>
Suggested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Suggested-by: Rahul Chaudhry <rahulchaudhry@google.com>
Suggested-by: Siqi Lin <siqilin@google.com>
Suggested-by: Stephen Hines <srhines@google.com>
Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
[will: added comment to Makefile]
Signed-off-by: Will Deacon <will.deacon@arm.com>
- add support for new GPIO IRQ driver
-----BEGIN PGP SIGNATURE-----
iQIzBAABCAAdFiEEe4dGDhaSf6n1v/EMWTcYmtP7xmUFAln2BpMACgkQWTcYmtP7
xmV5og//YkRwzS21agdQu3ZYCh/VP5i1CUhXZkp520DSLeY60LZfQNnz1lFvFHjN
baSW2Gypy9rBjcRr4efl79Qb8v10JvLytUt7LYLHCFaU/u5AeEPFNLc0E4JzKtIB
n8x99sqoY0NsVBfN4yVLqNmQjUZw87+I0nit/BcOAoHdOTnxtK1GBgcVF3ovRwet
T/opxgKQeR2rp1NS5kjye9NYt/HK9WCE9e3eoO+h0OjLtlVu9b2M2/XYz2yMKlmj
T09SWZx9gmqF47B3mXb0/f5KUaYNnnoxVGx8F55oVQhtWZcTt9G67CvBnAdU26Lm
ftw0uwOF1Rjc4heybJkePm4k5pJTtXtgmCoEQl79/L1v+dvC1d+oPPvExd7Zp5rU
qiT5SKOIeCP7Bclzbn01mszMFefxmtJe2zyrbwjL/Ntvo/1DlifI70Rjde7rY+Mw
pWtgONhRjr8Q5XvFXNKVXqeDlLBM8Qv+YOqZ2weMqdBDsbr1LFIeCZOhRNu3O1qR
bNQ+soVfuHL7ei6lks+cbBApNRDN+J0YIx2Y6alJ/0kjpI2aNWvGPfgdmPq5w4Uw
rOIRgm19Et5loHbdI60A1VfKNlu+WkrSkESj4h6bQ2pwt1tWso7RrlpfCXROcCbm
2JicBHIe1665E+FCRZOCPXdPx73SRBIPCVbNL3T1oomaf3prqrE=
=vVV3
-----END PGP SIGNATURE-----
Merge tag 'amlogic-dt64-2' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-amlogic into next/dt
Pull "Amlogic 64-bit DT updates for v4.15, round 2" from Kevin Hilman:
- add support for new GPIO IRQ driver
* tag 'amlogic-dt64-2' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-amlogic:
ARM64: dts: meson-gx: add external PHY interrupt on some platforms
ARM64: dts: meson-gx: add gpio interrupt controller
ARM64: meson: enable MESON_IRQ_GPIO in Kconfig
ARM64: dts: meson-gxbb-odroidc2: fix usb1 power supply
- Add GICv3 ITS node and PCIe devcies for LS1088A support.
- Enable PCIe support for LS2088A SoC.
- Add OP-TEE support for various Layerscape SoCs, LS1012A, LS1043A,
LS1046A, LS1088A and LS208XA.
- Update DPAA QBMan nodes to use constant defines in the interrupt
description.
- Add DSPI device to support SPI-NOR on LS1012A based boards.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
iQEcBAABAgAGBQJZ7y0kAAoJEFBXWFqHsHzOE70H/iAI1WmTWW1kuc2d7w1pCZrP
m3aBdavPb6N2XT43HUDo5yuAVl84AvmoHWkOXeiAEgSTwuGCMcAT90P3v+MJQG5P
xFCuqEAYfKb4BwMNs3oBbgdWBErxOpqFGd58vvXbEHzGv6DCnJRD6euhVNMosTKv
QI62vZkbD3sR1aUcC/dLG0hCFRb7+fscL+sgtU0vnF5nWKQLXQ/eGCDhhh4mmY/5
sjgeCqhYeIBrhpoOLm8qK9CkRnf7nPZwSiTFhG1o0nHDqbmzTRU5zQrAEDGB9Ukg
pWDtHyIEkrmnzOucIbKVpFue7IldkR7WN2rslpkHhtDaK1gIYnhjO26toU7/f2U=
=T0d9
-----END PGP SIGNATURE-----
Merge tag 'imx-dt64-4.15' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into next/dt
Pull "Freescale arm64 device tree updates for 4.15" from Shawn Guo:
- Add GICv3 ITS node and PCIe devcies for LS1088A support.
- Enable PCIe support for LS2088A SoC.
- Add OP-TEE support for various Layerscape SoCs, LS1012A, LS1043A,
LS1046A, LS1088A and LS208XA.
- Update DPAA QBMan nodes to use constant defines in the interrupt
description.
- Add DSPI device to support SPI-NOR on LS1012A based boards.
* tag 'imx-dt64-4.15' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
arm64: dts: update the DPAA QBMan nodes
arm64: dts: ls1088a: add PCIe controller DT nodes
arm64: dts: ls1088a: add gicv3 ITS DT node
arm64: dts: ls2088a: add pcie support
arm64: dts: ls: Add optee node
dt-bindings: mtd: add sst25wf040b and en25s64 to sip-nor list
dt-bindings: spi: Add fsl,ls1012a-dspi compatible string
arm64: dts: ls1012a: add the DTS node for DSPI support
On Armada 7K/8k:
- Improve network support at SoC and board level
- Enable watchdog
- Add UART muxing
- On 7040 DB: add CD SDIO and NAND support
- On 8040 DB: add PCIE more ports and SPI1
On Armada 37xx:
- Fix UART register size
- Add vmmc regulator for SD on 3720 DB
-----BEGIN PGP SIGNATURE-----
iIEEABECAEEWIQQYqXDMF3cvSLY+g9cLBhiOFHI71QUCWeoPnCMcZ3JlZ29yeS5j
bGVtZW50QGZyZWUtZWxlY3Ryb25zLmNvbQAKCRALBhiOFHI71eWeAJ4yqhFToGh9
bLvyANmN33Lp0kYfEwCeKTJv715mvxAfJMYUMX7CUmgEAOs=
=9sls
-----END PGP SIGNATURE-----
Merge tag 'mvebu-dt64-4.15-1' of git://git.infradead.org/linux-mvebu into next/dt
Pull "mvebu dt64 for 4.15 (part 1)" from Gregory CLEMENT:
On Armada 7K/8k:
- Improve network support at SoC and board level
- Enable watchdog
- Add UART muxing
- On 7040 DB: add CD SDIO and NAND support
- On 8040 DB: add PCIE more ports and SPI1
On Armada 37xx:
- Fix UART register size
- Add vmmc regulator for SD on 3720 DB
* tag 'mvebu-dt64-4.15-1' of git://git.infradead.org/linux-mvebu:
arm64: dts: marvell: 7040-db: Add the carrier detect pin for SD card on CP
arm64: dts: marvell: 7040-db: Document the gpio expander
arm64: dts: marvell: enable additional PCIe ports on Armada 8040 DB
arm64: dts: marvell: add NAND support on the 7040-DB board
arm64: dts: marvell: Enable Armada-8040-DB CPS SPI1
arm64: dts: marvell: 8040-db: enable the SFP ports
arm64: dts: marvell: 7040-db: enable the SFP port
arm64: dts: marvell: 7040-db: add comphy reference to Ethernet port
arm64: dts: marvell: mcbin: add comphy references to Ethernet ports
arm64: dts: marvell: 37xx: remove empty line
arm64: dts: marvell: cp110: add PPv2 port interrupts
arm64: dts: marvell: add comphy nodes on cp110 master and slave
arm64: dts: marvell: extend the cp110 syscon register area length
arm64: dts: marvell: enable AP806 watchdog
arm64: dts: marvell: Fix A37xx UART0 register size
arm64: dts: marvell: armada-3720-db: Add vmmc regulator for SD slot
arm64: dts: marvell: add UART muxing on Armada 7K/8K
* r8a7795 (H3) and r8a7796 (M3-W) SoCs
- Use R-Car Gen 3 fallback compat string for GPIO
Simon Horman says "Use newly added R-Car GPIO Gen 1, 2 and 3 fallback
compat strings in peace of now deprecated non-generation specific R-Car
GPIO fallback compat string in the DT of Renesas ARM and arm64 based
SoCs.
* r8a7795 (H3) and r8a7796 (M3-W) Salvator boards
- Add dr_mode property for USB2.0 channel 0
Shimoda-san says "Since Salvator-X[S] have a USB2.0 dual-role channel
(CN9), this patch
adds dr_mode property for USB2.0 channel 0 (EHCI/OHCI and HS-USB)
as "otg".
Using dual-role channel (or not) is related to the type of USB receptor
on board specification. So, I added the property into the
salvator-common.dtsi."
- Add pfc node for USB3.0 channel 0
Shimoda-san says "Since a R-Car Gen3 bootloader enables the PFC of
USB3.0 channel 0, the USB3.0 host controller works without this setting
on the kernel. But, this setting should have salvator-common.dtsi. So,
this patch adds the pfc node for USB3.0 channel 0."
* r8a7795 (H3) and r8a7796 (M3-W) Salvator and ULCB boards
- Correct audio_clkout
Morimoto-san says ""audio_clkout" is dummy clock of <&rcar_sound 0> to
avoid clock loop which invites probe conflct. Thus <&rcar_sound 0> and
"audio_clkout" should be same value."
* r8a7795 (H3) and r8a7796 (M3-W) Salvator and ULCB, and
r8a77995 (D3) Draak boards
- Drop "avb_phy_int" from avb_pins
Shimoda-san says "Since the Ethernet AVB driver doesn't support
AVB_PHY_INT handling and it will be handled by a phy driver as a gpio
pin, this patch removes the "avb_phy_int" from the avb_pins node."
* r8a77995 (D3) Draak board
- Enable PWM channels
Shimoda-san says "Each channel connects to LTC2644 for brightness
control."
* r8a77970 (V3M) Eagle and ULCB Kingfisher boards
- Add initial device tree support
-----BEGIN PGP SIGNATURE-----
iQIzBAABCAAdFiEE4nzZofWswv9L/nKF189kaWo3T74FAlnpzqwACgkQ189kaWo3
T75X7w//Xf29SJUGRAZ8fYnA5b8r+QHvJX/79eI5Z+Nq12UGdPZXS6yhBsfcptD4
EGY9E6u7O+wJryhZJT50t7Dr19WzGgLDfsqBas9wXxaniAh7sLn4fIvcrwrDf86a
LJT9JWinjEbOqO4Crc4GEx4i2r/kZVIwL0HOA5o64JclW33NwCAzo7D/Z3uDBrXa
H16G8webhjCLa4vhdqPmYJO9OlKwtnLcx6XA855do2uUbRF1O7chekyOXFKccOk+
FvBH96hH7dEBmE9GwrjTiiFOfIDyU7kzDVKwz+UurUC+zrqfc8N12OdttodrN8+i
iOMGVOMxbAE1eYbvTkxCT7OB0r2GYnFqb5JkNT/3PiEstf3YrxGm15drZYf10d/E
mgv6ifKgq02cTVjQF3JF7jAcMaHbB18dde86fe5DspAH32SyFzGnUc8I3LwLWScf
pxIPSycI5rrPwKYbITCPOLbem3nS1PPvOB/r6B+6E/wyrU7OOe0YCr4GsJLhzhrH
IPNNt0DZa+K7crWbqQetv4+s8Jf61nXp2iUjuKP64k+YDKkM5CcPSsF6PnbiRjXn
Rt8k2wpNS72Cvq/D+zs9l8ymX1Z7goe66fmYDfCxpd4SehyYL2QAxL6K2eOCOv1C
MZtbJ18zyUXmsNZvVd/dW4g6W5zOn/l9VpD9oxREo5bFXR7nR/Q=
=BmC8
-----END PGP SIGNATURE-----
Merge tag 'renesas-arm64-dt2-for-v4.15' of https://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/dt
Pull "Second Round of Renesas ARM64 Based SoC DT Updates for v4.15" from Simon Horman:
* r8a7795 (H3) and r8a7796 (M3-W) SoCs
- Use R-Car Gen 3 fallback compat string for GPIO
Simon Horman says "Use newly added R-Car GPIO Gen 1, 2 and 3 fallback
compat strings in peace of now deprecated non-generation specific R-Car
GPIO fallback compat string in the DT of Renesas ARM and arm64 based
SoCs.
* r8a7795 (H3) and r8a7796 (M3-W) Salvator boards
- Add dr_mode property for USB2.0 channel 0
Shimoda-san says "Since Salvator-X[S] have a USB2.0 dual-role channel
(CN9), this patch
adds dr_mode property for USB2.0 channel 0 (EHCI/OHCI and HS-USB)
as "otg".
Using dual-role channel (or not) is related to the type of USB receptor
on board specification. So, I added the property into the
salvator-common.dtsi."
- Add pfc node for USB3.0 channel 0
Shimoda-san says "Since a R-Car Gen3 bootloader enables the PFC of
USB3.0 channel 0, the USB3.0 host controller works without this setting
on the kernel. But, this setting should have salvator-common.dtsi. So,
this patch adds the pfc node for USB3.0 channel 0."
* r8a7795 (H3) and r8a7796 (M3-W) Salvator and ULCB boards
- Correct audio_clkout
Morimoto-san says ""audio_clkout" is dummy clock of <&rcar_sound 0> to
avoid clock loop which invites probe conflct. Thus <&rcar_sound 0> and
"audio_clkout" should be same value."
* r8a7795 (H3) and r8a7796 (M3-W) Salvator and ULCB, and
r8a77995 (D3) Draak boards
- Drop "avb_phy_int" from avb_pins
Shimoda-san says "Since the Ethernet AVB driver doesn't support
AVB_PHY_INT handling and it will be handled by a phy driver as a gpio
pin, this patch removes the "avb_phy_int" from the avb_pins node."
* r8a77995 (D3) Draak board
- Enable PWM channels
Shimoda-san says "Each channel connects to LTC2644 for brightness
control."
* r8a77970 (V3M) Eagle and ULCB Kingfisher boards
- Add initial device tree support
* tag 'renesas-arm64-dt2-for-v4.15' of https://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas: (31 commits)
arm64: dts: renesas: salvator-common: add dr_mode property for USB2.0 channel 0
arm64: dts: r8a7796: Use R-Car GPIO Gen3 fallback compat string
arm64: dts: r8a7795: Use R-Car GPIO Gen3 fallback compat string
arm64: renesas: ulcb: fixup audio_clkout
arm64: renesas: salvator-common: fixup audio_clkout
arm64: dts: renesas: eagle: add EtherAVB support
arm64: dts: r8a77995: Add INTC-EX device node
arm64: dts: r8a77970: Add INTC-EX device node
arm64: dts: r8a7796: Add INTC-EX device node
arm64: dts: ulcb-kf: hog USB3 hub control gpios
arm64: dts: ulcb-kf: enable PCA9548 on I2C4
arm64: dts: ulcb-kf: enable PCA9548 on I2C2
arm64: dts: ulcb-kf: enable TCA9539 on I2C4
arm64: dts: ulcb-kf: enable TCA9539 on I2C2
arm64: dts: ulcb-kf: enable USB3.0 Host
arm64: dts: ulcb-kf: enable PCIE0/1
arm64: dts: ulcb-kf: enable USB2.0 Host channel 0
arm64: dts: ulcb-kf: enable HSUSB
arm64: dts: ulcb-kf: enable CAN0/1
arm64: dts: ulcb-kf: enable SCIF1
...
Most notable changes:
- SPI and DMA support on the a64
- New boards: NanoPi NEO Plus2
-----BEGIN PGP SIGNATURE-----
iQIcBAABAgAGBQJZ6a4VAAoJEBx+YmzsjxAgnL0P/1KkOUnEuo0sW56x9S5BTLob
tc8HjJtismgCAISKIQmtFSrPQ4LhP2QRSce7a1sqOAp5TXOzKazXo8UJ4Peg7zkQ
91aqwOn0Bv3azelzzSnTnfLxJBSOuBBu+DfmoEp7nJsnFcon7xzDeRPSVE+r4bDH
nAygZJq+d9rJogsWA9x20GR+3HsGShPo2GHXWDDP23eCDSA7EzguaJJq2bp58kQV
lp/naY6BUCQ6svXdM1yoVtx6YbHMMzuV+ltZ8ZnryGtT3Dqm2y+tYGuQ2iBHhCz6
IWC9pyaVd62exoOr827M+qErJoszPgO9yxjSgQkrpZzzuIo2zsQNWfNIjkuJ2F18
jVKzCyuYQhLUVnIBpDAcRa33k37SvXJdyZgRdiAin/wGixrRw0LivX3qcpfe1EZB
MgSsiAa7c82/Fy1gzj+49zcfPkk7cqpQnTK3dDSMRyOsZuN34meiaYvT7tmI44/q
EQOJvat49Bm/54ueqBHET0dMCY447TDudG9zJinvEGkbCQzTxx1dMk4EP68qnOZF
/57meyzaNs5Xo9KM/KpSXYC+Z0SKWQBDNVN3rtNLzDg+lQi5GCKVmXss2r5xabYN
m/dMrZeJskVi+/2IIkNgUop7UgCvNDMq+PtEQMEh7c2ezO4eQWKkz/t2Y6MguK0Y
NbBLy+4tfmML2mLHyqBB
=OAav
-----END PGP SIGNATURE-----
Merge tag 'sunxi-dt64-for-4.15' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux into next/dt
Pull "Allwinner arm64 DT changes for 4.15" from Maxime Ripard:
Most notable changes:
- SPI and DMA support on the a64
- New boards: NanoPi NEO Plus2
* tag 'sunxi-dt64-for-4.15' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux:
arm: allwinner: Correct unit name in devicetree binding example
arm64: allwinner: a64: add dma controller references to spi nodes
arm64: allwinner: a64: Add device node for DMA controller
arm64: allwinner: a64: Fix node with unit name and no reg property
arm64: allwinner: a64: Fix simple-bus unit address format error
arm64: allwinner: h5: add NanoPi NEO Plus2 DT support
arm64: allwinner: a64: add SPI nodes
The generic pte_access_permitted() implementation only checks for
pte_present() (together with the write permission where applicable).
However, for both kernel ptes and PROT_NONE mappings pte_present() also
returns true on arm64 even though such mappings are not user accessible.
Additionally, arm64 now supports execute-only user permission
(PROT_EXEC) which is implemented by clearing the PTE_USER bit.
With this patch the arm64 implementation of pte_access_permitted()
checks for the PTE_VALID and PTE_USER bits together with writable access
if applicable.
Cc: <stable@vger.kernel.org>
Reported-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
The most notable changes are:
- Conversion to the last SoC (A10, A20) to the new clock framework
- HDMI and dual pipeline support for the A10, A20 and A31 DRM driver
- Support for the various power supplies on a number of boards
- Fix of DTC warnings on a number of SoCs, but most of them still need
some work
- New boards: A20-OLinuXino-MICRO-eMMC, TBS A711, Banana Pi M2 Berry,
Banana Pi M2 Ultra
-----BEGIN PGP SIGNATURE-----
iQIcBAABAgAGBQJZ6avvAAoJEBx+YmzsjxAgQ9MP/RvW5lGwVg8Y6aIEr8pGBNCO
pNiQkBToR5HQnCPTBzNfspoaR8w/8H344AGS56+tzjFIF1P2cawzOxEn1oUrOcbM
mAuSUzekpBoKbad2vXsL6uwY2qo3fv62+I72edZkQ4tSEGLK6ISA49sKzhIfFP/2
7K92nP9xodKfMu/pn74/jxzSqcOKXDRSsj1Eyht5KL0oiSmwPgZfCFz+ITE5lozt
mzh19qTdxabXZZ4CxVRCBPz/+p6+lmbnIgh8anjcL0YgLN96B1rly3bqAvAmgw7H
Bv6nxRhNlEGwvQasgHiSQM7AaVONfPK6WUdDI5Wrpch7de4aFt/Bpz676zeDWWUt
dH3Nix8z4AAIma1Yw5CM3fJaPY7vKiL8TlWmSzu2Gc+fb1jGIVf/yvDlV9Gu3g6I
JE6YoQmUDC3Sw2q2fvrCokjGTr24u6Er+mBt7u0qGmv7dx70jTBIosXsGwfcwtj2
iKGCjbfRU6rzui+YGEgktCz6m8LIdm5T2BkS93hgfVWJPL7oxmDd+rRon2N196ni
JhM8ieTHrow7Mb365FK66Xa4KK8emhLhH7wubo2l9x5uIfr4iu61gv0rOhAppoCC
Cop3YyHk1H7SlSUP0tbN2pc36x2wMoPDfAy1MsZNzuD3VXVd//wf9z1c07oL22XA
TXkVd4c39WYRx6MZlQ7+
=HjP6
-----END PGP SIGNATURE-----
Merge tag 'sunxi-dt-for-4.15' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux into next/dt
Pull "Allwinner DT changes for 4.15" from Maxime Ripard:
The most notable changes are:
- Conversion to the last SoC (A10, A20) to the new clock framework
- HDMI and dual pipeline support for the A10, A20 and A31 DRM driver
- Support for the various power supplies on a number of boards
- Fix of DTC warnings on a number of SoCs, but most of them still need
some work
- New boards: A20-OLinuXino-MICRO-eMMC, TBS A711, Banana Pi M2 Berry,
Banana Pi M2 Ultra
- New R40 SoC support
* tag 'sunxi-dt-for-4.15' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux: (63 commits)
ARM: sun8i: r40: enable USB host for Banana Pi M2 Ultra
ARM: sun8i: v40: add 5V regulator for Banana Pi M2 Berry
ARM: sun8i: r40: add 5V regulator for Banana Pi M2 Ultra
ARM: sun8i: r40: add USB host port nodes for R40
ARM: dts: sun4i: Enable HDMI support on some A10 devices
ARM: dts: sun7i: Enable HDMI support on some A20 devices
ARM: dts: sun7i: Add device nodes for display pipelines
ARM: dts: sun4i: Add device nodes for display pipelines
ARM: dts: sun8i: r40: add watchdog device node
ARM: dts: sun5i: reference-design-tablet: Enable AXP209 AC and battery
ARM: dts: sun9i: Change node names to remove underscores
ARM: dts: sun9i: Change node names to remove underscores
ARM: dts: sun4i: Remove underscores from nodes names
ARM: dts: sun4i: Provide default muxing for relevant controllers
ARM: dts: sun4i: Change pinctrl nodes to avoid warning
ARM: dts: sun6i: Enable HDMI support on some A31/A31s devices
ARM: dts: sun6i: Add device node for HDMI controller
ARM: dts: sun4i: Change LRADC node names to avoid warnings
ARM: dts: sun4i: Remove skeleton and memory to avoid warnings
ARM: dts: sun4i: Remove gpio-keys warnings
...
For Armada 7K/8K, enable NAND, RTC, comphy and 10G PHY in the
defconfig
-----BEGIN PGP SIGNATURE-----
iIEEABECAEEWIQQYqXDMF3cvSLY+g9cLBhiOFHI71QUCWeoQjSMcZ3JlZ29yeS5j
bGVtZW50QGZyZWUtZWxlY3Ryb25zLmNvbQAKCRALBhiOFHI71SAGAJwN7iJ6Xywi
3DGgmYy/KtEm0/ZxcwCfZ6dFcGrSWo4IsPictpUL+x4TETk=
=Gmg4
-----END PGP SIGNATURE-----
Merge tag 'mvebu-arm64-4.15-1' of git://git.infradead.org/linux-mvebu into next/soc
Pull "mvebu arm64 for 4.15 (part 1)" from Gregory CLEMENT:
For Armada 7K/8K, enable NAND, RTC, comphy and 10G PHY in the
defconfig
* tag 'mvebu-arm64-4.15-1' of git://git.infradead.org/linux-mvebu:
arm64: defconfig: enable RTC on Armada 7K/8K SoCs
arm64: defconfig: enable NAND on Armada 7K/8K SoCs
arm64: defconfig: enable Marvell CP110 comphy
arm64: defconfig: enable the Marvell 10G PHY as a module
This enables the PCI host controller on 64-bit ARM. It is supported and
enabled via device tree on Tegra210 and Tegra186.
-----BEGIN PGP SIGNATURE-----
iQJHBAABCAAxFiEEiOrDCAFJzPfAjcif3SOs138+s6EFAlnp4n4THHRyZWRpbmdA
bnZpZGlhLmNvbQAKCRDdI6zXfz6zoZQSD/9MJu8m9Qhg6kdN7qiHjry7pTMW5GVV
EO6L1jSQQo4VedEZbOh9ot46Aj0HGGDVvi9YuQi7UHoV3y2SeWJ/WmFN3sf0FNm5
PR37c8lOxp3Oj6dGfMGHrpz4P8a0FPiKqqFlI4x/sahKgSta4z7ac1lmGcnYRGEs
X69zZxEHjvDkkataAkScmSexEZvCvVVORKU/odTtrIAGYE56docCkY4uI34EWJF7
igT0ammthwCJZIy3Nhbt+5Bvd03PKtAXdmurMrAsX0/DXVjKtUqzSDuN0CBdVPtl
wzHRO0cKx1m+EEDl4MdxfXfoo92klBRMc0I2Oj0b3+vTZMED1xvieo7vfSeflxRJ
/hs76EOyUQvgTLuwqrd5v6p916aGu7T4FT1YQchViq/d77BRIjPtR2x8leipKtU+
d5Am5qHEUdVF8EapEo/4wEzpRdZCCAQ8ZU3p0hq7YM3U5vWbmmnGGgumxNkzYj4e
7XECrc29BHEBE5Lcn+yUeHbCoED7RjrUXkT/mQ6wzG7dhLb1FQ1VF2lcQKCPVaV0
8Qt4cY3rSHZXEmKDkeJSzpkNd1cr4W7sXVQkeePgXov7aOrVnW1XYlN+4HWBPrk3
Or0LBhR84AaB5R01PG5QAdFX/A5pfSCLZlZiCbyk1rRoN26JxX6tHk6ehCAFbrZ2
eBCNv96QrpCMGw==
=nDdS
-----END PGP SIGNATURE-----
Merge tag 'tegra-for-4.15-arm64-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into next/soc
Pull "arm64: tegra: Default configuration updates for v4.15-rc1" from Thierry Reding:
This enables the PCI host controller on 64-bit ARM. It is supported and
enabled via device tree on Tegra210 and Tegra186.
* tag 'tegra-for-4.15-arm64-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
arm64: defconfig: Enable Tegra PCI controller
Add the external PHY interrupt on the nanopi-k2, odroid-c2, p200, p230
and q200
Signed-off-by: Jerome Brunet <jbrunet@baylibre.com>
Reviewed-by: Neil Armstrong <narmstrong@baylibre.com>
Signed-off-by: Kevin Hilman <khilman@baylibre.com>
select MESON_IRQ_GPIO in Kconfig for Amlogic's meson SoC family
Signed-off-by: Jerome Brunet <jbrunet@baylibre.com>
Reviewed-by: Neil Armstrong <narmstrong@baylibre.com>
Signed-off-by: Kevin Hilman <khilman@baylibre.com>
Looking at the schematics, the USB Power Supply is shared between the
two USB interfaces,
If the usb0 fails to initialize, the second one won't have power.
Fixes: 5a0803bd5ae2 ("ARM64: dts: meson-gxbb-odroidc2: Enable USB Nodes")
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
Signed-off-by: Kevin Hilman <khilman@baylibre.com>
PSTATE.Q only exists for AArch32, which can be referred to using
COMPAT_PSR_Q_BIT. Remove PSR_Q_BIT, since the native bit doesn't exist
in the architecture
Tested-by: Laura Abbott <labbott@redhat.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
We can decode the PSTATE easily enough, so pretty-print it in register
dumps.
Tested-by: Laura Abbott <labbott@redhat.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Printing raw pointer values in backtraces has potential security
implications and are of questionable value anyway.
This patch follows x86's lead and removes the "Exception stack:" dump
from kernel backtraces, as well as converting PC/LR values to symbols
such as "sysrq_handle_crash+0x20/0x30".
Tested-by: Laura Abbott <labbott@redhat.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
When we take a fault we can't handle, we try to dump some relevant
information, but we're not consistent about doing so.
In do_mem_abort(), we log the full ESR, but don't dump a page table
walk. In __do_kernel_fault, we dump an attempted decoding of the ESR
(but not the ESR itself) along with a page table walk.
Let's try to make things more consistent by dumping the full ESR in
mem_abort_decode(), and having do_mem_abort dump a page table walk. The
existing dump of the ESR in do_mem_abort() is rendered redundant, and
removed.
Tested-by: Laura Abbott <labbott@redhat.com>
Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Julien Thierry <julien.thierry@arm.com>
Cc: Kristina Martsenko <kristina.martsenko@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Currently ASM_BUG() and its constituent macros define local
assembler labels 0, 1 and 2 internally, which carries a high risk
of clash with callers' labels and consequent mis-assembly.
This patch gives the labels a big random offset to minimise the
chance of such errors.
Signed-off-by: Dave Martin <Dave.Martin@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Software Step exception is missing after stepping a trapped instruction.
Ensure SPSR.SS gets set to 0 after emulating/skipping a trapped instruction
before doing ERET.
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Julien Thierry <julien.thierry@arm.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
[will: replaced AARCH32_INSN_SIZE with 4]
Signed-off-by: Will Deacon <will.deacon@arm.com>
Literal values are being used to set single stepping in mdscr from assembly
code. There are already existing defines representing those values, use
those instead of the literal values.
Signed-off-by: Julien Thierry <julien.thierry@arm.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Acked-by: Mark Rutland <mark.rutland@arm.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Now that the qrwlock can make use of WFE, remove our homebrewed rwlock
code in favour of the generic queued implementation.
Tested-by: Waiman Long <longman@redhat.com>
Tested-by: Jeremy Linton <jeremy.linton@arm.com>
Tested-by: Adam Wallis <awallis@codeaurora.org>
Tested-by: Jan Glauber <jglauber@cavium.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Acked-by: Peter Zijlstra <peterz@infradead.org>
Cc: Jeremy.Linton@arm.com
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: boqun.feng@gmail.com
Cc: linux-arm-kernel@lists.infradead.org
Cc: paulmck@linux.vnet.ibm.com
Link: http://lkml.kernel.org/r/1507810851-306-5-git-send-email-will.deacon@arm.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
__memcpy_{to,from}io fall back to byte-at-a-time copying if both the
source and destination pointers are not 8-byte aligned. Since one of the
pointers always points at normal memory, this is unnecessary and
detrimental to performance, so only do byte copying until we hit an 8-byte
boundary for the device pointer.
This change was motivated by performance issues in the pstore driver.
On a test platform, measuring probe time for pstore, console buffer
size of 1/4MB and pmsg of 1/2MB, was in the 90-107ms region. Change
managed to reduce it to 10-25ms, an improvement in boot time.
Cc: Kees Cook <keescook@chromium.org>
Cc: Anton Vorontsov <anton@enomsg.org>
Cc: Tony Luck <tony.luck@intel.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Cc: Anton Vorontsov <anton@enomsg.org>
Cc: Robin Murphy <robin.murphy@arm.com>
Signed-off-by: Mark Salyzyn <salyzyn@android.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Merge in ARM PMU and perf updates for 4.15:
- Support for the Statistical Profiling Extension
- Support for Hisilicon's SoC PMU
Signed-off-by: Will Deacon <will.deacon@arm.com>
This adds the definition for eFuse that is found on RK3368 SoCs with the
corresponding data cells.
Signed-off-by: Romain Perier <romain.perier@collabora.com>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Interrupt lines from on-board devices are connected to the GPIO
controller. Add GPIO hogging so that the corresponding GPIO line
is automatically requested.
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Interrupt lines from on-board devices are connected to the GPIO
controller. Handle this correctly.
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
The GPIO controller also acts as an interrupt controller and the
interrupt lines are connected to the AIDET block.
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Fix warnings like follows:
Warning (node_name_chars_strict): Character '_' not recommended in ...
Commit 8654cb8d0371 ("dtc: update warning settings for new bus and
node/property name checks") says these checks are a bit subjective,
but Rob also says to not add new W=2 warnings.
The exising warnings should be fixed in order to catch new ones
easily.
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Add efuse node for UniPhier LD11, LD20, and PXs3.
This efuse node is included in soc-glue.
Signed-off-by: Keiji Hayashibara <hayashibara.keiji@socionext.com>
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
When HYP code runs into branch profiling code, it attempts to jump to
unmapped memory, causing a HYP Panic.
Disable the branch profiling for code designed to run at HYP mode.
Signed-off-by: Julien Thierry <julien.thierry@arm.com>
Acked-by: Marc Zyngier <marc.zyngier@arm.com>
Cc: Christoffer Dall <christoffer.dall@linaro.org>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Cc: Russell King <linux@armlinux.org.uk>
Cc: <stable@vger.kernel.org>
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
When a exception is trapped to EL2, hardware uses ELR_ELx to hold
the current fault instruction address. If KVM wants to inject a
abort to 32 bit guest, it needs to set the LR register for the
guest to emulate this abort happened in the guest. Because ARM32
architecture is pipelined execution, so the LR value has an offset to
the fault instruction address.
The offsets applied to Link value for exceptions as shown below,
which should be added for the ARM32 link register(LR).
Table taken from ARMv8 ARM DDI0487B-B, table G1-10:
Exception Offset, for PE state of:
A32 T32
Undefined Instruction +4 +2
Prefetch Abort +4 +4
Data Abort +8 +8
IRQ or FIQ +4 +4
[ Removed unused variables in inject_abt to avoid compile warnings.
-- Christoffer ]
Cc: <stable@vger.kernel.org>
Signed-off-by: Dongjiu Geng <gengdongjiu@huawei.com>
Tested-by: Haibin Zhang <zhanghaibin7@huawei.com>
Reviewed-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Christoffer Dall <cdall@linaro.org>
Two fixes, one for the A31 DRM binding, and one for a missing regulator on
the pine MMC controller.
-----BEGIN PGP SIGNATURE-----
iQIcBAABAgAGBQJZ6axFAAoJEBx+YmzsjxAgRPQQAL8SNIbznqcV1ncW1SXBH/hg
W1UCfclJfCJ1nrctsfXIgDpIJAGjVR+PEh8kBHgyqknqLJ6bQpJOqfHzSZk+SWF4
1NuosdxLMW9V9wrwzNUUYD6Jh3VoJAgKDcWBPeY9eUvvLq6wnzXmSXPBtTUlXuNp
XcXoT7TCSlUZ0rvJKPe2ON+BH1hjYhNnHs07TN2x2lbYQMbEcLLzqBOyfxESzQ5w
hAb8gpJhGSDAk2pJXtyviSNokx5fqSePnKmfPNG42QHXq+cvt6aCcosqZ9u3OuAx
eNTVTZPlvnQ/GfjEouG4NTjYbv5cXdN8itqaSypMeN+8xpOJ/mFDa8K/vzyzF2Kr
6svpe4SC0YB6z4YtKFLR0Q6a/MlgMNq02WW5l+oq8e44pwyPRYFeTNNP8yD9ZO0k
xlhgNyo+/KIXGx6XBga27x3IyaWopGslLK/UjG4El0jOAPISiuZcbF6GCsFht7dk
YSVEVQ842v2iX817kaDy1zGTOy0b9j9/AOu6ctZlsP9XM9YaMxi7pFrb+UFu6FSJ
yRR8TNZjjrSMsuDc8yrbH0/nWcgkmQtYXa2iQ4/2ILlW63zrm2yM7w8CKygyZ25D
NhuK/yQ+PEsKYDAJ3s3T3hUbirAmQx3KUmv6Jr7UUPaj6V5a62Jl/pt5+oSlGQm7
EBkvmIV+XXwmqng7Y/WF
=Cvge
-----END PGP SIGNATURE-----
Merge tag 'sunxi-fixes-for-4.14' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux into fixes
Pull "Allwinner fixes for 4.14" from Maxime Ripard:
Two fixes, one for the A31 DRM binding, and one for a missing regulator on
the pine MMC controller.
* tag 'sunxi-fixes-for-4.14' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux:
ARM: dts: sun6i: Fix endpoint IDs in second display pipeline
arm64: allwinner: a64: pine64: Use dcdc1 regulator for mmc0
Without the STDMAC clock enabled, the USB 2.0 hosts do not work.
This clock must be explicitly listed in the "clocks" property because
it is independent of the other clocks.
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
The latest kernel tree already can support more MediaTek platforms such as
MT2712 and MT7622, so additional descriptions for those platforms are added
and certain cleanups are also being made here.
Signed-off-by: Sean Wang <sean.wang@mediatek.com>
Signed-off-by: Matthias Brugger <matthias.bgg@gmail.com>
Since Salvator-X[S] have a USB2.0 dual-role channel (CN9), this patch
adds dr_mode property for USB2.0 channel 0 (EHCI/OHCI and HS-USB)
as "otg".
Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>