Skip to content

Commit

Permalink
Merge tag 'mips_5.14' of git://git.kernel.org/pub/scm/linux/kernel/gi…
Browse files Browse the repository at this point in the history
…t/mips/linux

Pull MIPS updates from Thomas Bogendoerfer:

 - add support for OpeneEmbed SOM9331 board

 - Ingenic fixes/improvments

 - other fixes and cleanups

* tag 'mips_5.14' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux: (39 commits)
  MIPS: Fix PKMAP with 32-bit MIPS huge page support
  MIPS: CI20: Add second percpu timer for SMP.
  MIPS: CI20: Reduce clocksource to 750 kHz.
  MIPS: Ingenic: Add MAC syscon nodes for Ingenic SoCs.
  dt-bindings: clock: Add documentation for MAC PHY control bindings.
  MIPS: X1830: Respect cell count of common properties.
  MIPS: set mips32r5 for virt extensions
  MIPS: loongsoon64: Reserve memory below starting pfn to prevent Oops
  MIPS: MT extensions are not available on MIPS32r1
  mips/kvm: Use BUG_ON instead of if condition followed by BUG
  MIPS: OCTEON: octeon-usb: Use devm_platform_get_and_ioremap_resource()
  MIPS: add PMD table accounting into MIPS'pmd_alloc_one
  MIPS: Loongson64: fix spelling of SPDX tag
  MIPS: ingenic: rs90: Add dedicated VRAM memory region
  MIPS: ingenic: gcw0: Set codec to cap-less mode for FM radio
  MIPS: ingenic: jz4780: Fix I2C nodes to match DT doc
  MIPS: ingenic: Select CPU_SUPPORTS_CPUFREQ && MIPS_EXTERNAL_TIMER
  MIPS: Kconfig: ingenic: Ensure MACH_INGENIC_GENERIC selects all SoCs
  MIPS: cpu-probe: Fix FPU detection on Ingenic JZ4760(B)
  MIPS: boot: Support specifying UART port on Ingenic SoCs
  ...
  • Loading branch information
torvalds committed Jul 2, 2021
2 parents a32b344 + cf02ce7 commit 19b4385
Show file tree
Hide file tree
Showing 39 changed files with 254 additions and 115 deletions.
2 changes: 2 additions & 0 deletions Documentation/devicetree/bindings/clock/ingenic,cgu.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -97,6 +97,8 @@ required:
patternProperties:
"^usb-phy@[a-f0-9]+$":
allOf: [ $ref: "../phy/ingenic,phy-usb.yaml#" ]
"^mac-phy-ctrl@[a-f0-9]+$":
allOf: [ $ref: "../net/ingenic,mac.yaml#" ]

additionalProperties: false

Expand Down
2 changes: 2 additions & 0 deletions Documentation/devicetree/bindings/vendor-prefixes.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -830,6 +830,8 @@ patternProperties:
description: Opal Kelly Incorporated
"^opencores,.*":
description: OpenCores.org
"^openembed,.*":
description: OpenEmbed
"^openrisc,.*":
description: OpenRISC.io
"^option,.*":
Expand Down
7 changes: 3 additions & 4 deletions arch/mips/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -112,6 +112,7 @@ config MACH_INGENIC
select SYS_SUPPORTS_LITTLE_ENDIAN
select SYS_SUPPORTS_ZBOOT
select DMA_NONCOHERENT
select ARCH_HAS_SYNC_DMA_FOR_CPU
select IRQ_MIPS_CPU
select PINCTRL
select GPIOLIB
Expand Down Expand Up @@ -427,6 +428,8 @@ config MACH_INGENIC_SOC
select MIPS_GENERIC
select MACH_INGENIC
select SYS_SUPPORTS_ZBOOT_UART16550
select CPU_SUPPORTS_CPUFREQ
select MIPS_EXTERNAL_TIMER

config LANTIQ
bool "Lantiq based platforms"
Expand Down Expand Up @@ -994,7 +997,6 @@ config CAVIUM_OCTEON_SOC
select HAVE_PLAT_FW_INIT_CMDLINE
select HAVE_PLAT_MEMCPY
select ZONE_DMA32
select HOLES_IN_ZONE
select GPIOLIB
select USE_OF
select ARCH_SPARSEMEM_ENABLE
Expand Down Expand Up @@ -1231,9 +1233,6 @@ config HAVE_PLAT_MEMCPY
config ISA_DMA_API
bool

config HOLES_IN_ZONE
bool

config SYS_SUPPORTS_RELOCATABLE
bool
help
Expand Down
8 changes: 8 additions & 0 deletions arch/mips/Kconfig.debug
Original file line number Diff line number Diff line change
Expand Up @@ -102,6 +102,14 @@ config DEBUG_ZBOOT
to reduce the kernel image size and speed up the booting procedure a
little.

config ZBOOT_INGENIC_UART
int "UART to use for compressed kernel debugging"
depends on DEBUG_ZBOOT && MACH_INGENIC_SOC
default 0
range 0 4
help
Specify the UART that should be used for compressed kernel debugging.

config SPINLOCK_TEST
bool "Enable spinlock timing tests in debugfs"
depends on DEBUG_FS
Expand Down
4 changes: 2 additions & 2 deletions arch/mips/boot/compressed/uart-16550.c
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@
#endif

#ifdef CONFIG_MACH_INGENIC
#define INGENIC_UART0_BASE_ADDR 0x10030000
#define PORT(offset) (CKSEG1ADDR(INGENIC_UART0_BASE_ADDR) + (4 * offset))
#define INGENIC_UART_BASE_ADDR (0x10030000 + 0x1000 * CONFIG_ZBOOT_INGENIC_UART)
#define PORT(offset) (CKSEG1ADDR(INGENIC_UART_BASE_ADDR) + (4 * offset))
#endif

#ifdef CONFIG_CPU_XLR
Expand Down
24 changes: 14 additions & 10 deletions arch/mips/boot/dts/ingenic/ci20.dts
Original file line number Diff line number Diff line change
Expand Up @@ -118,6 +118,20 @@
assigned-clock-rates = <48000000>;
};

&tcu {
/*
* 750 kHz for the system timers and clocksource,
* use channel #0 and #1 for the per cpu system timers,
* and use channel #2 for the clocksource.
*
* 3000 kHz for the OST timer to provide a higher
* precision clocksource.
*/
assigned-clocks = <&tcu TCU_CLK_TIMER0>, <&tcu TCU_CLK_TIMER1>,
<&tcu TCU_CLK_TIMER2>, <&tcu TCU_CLK_OST>;
assigned-clock-rates = <750000>, <750000>, <750000>, <3000000>;
};

&mmc0 {
status = "okay";

Expand Down Expand Up @@ -522,13 +536,3 @@
bias-disable;
};
};

&tcu {
/*
* 750 kHz for the system timer and 3 MHz for the clocksource,
* use channel #0 for the system timer, #1 for the clocksource.
*/
assigned-clocks = <&tcu TCU_CLK_TIMER0>, <&tcu TCU_CLK_TIMER1>,
<&tcu TCU_CLK_OST>;
assigned-clock-rates = <750000>, <3000000>, <3000000>;
};
5 changes: 2 additions & 3 deletions arch/mips/boot/dts/ingenic/gcw0.dts
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,6 @@
simple-audio-card,widgets =
"Speaker", "Speaker",
"Headphone", "Headphones",
"Line", "FM Radio",
"Microphone", "Built-in Mic";
simple-audio-card,routing =
"Headphones Amp INL", "LHPOUT",
Expand All @@ -85,8 +84,8 @@
"Speaker Amp INR", "ROUT",
"Speaker", "Speaker Amp OUTL",
"Speaker", "Speaker Amp OUTR",
"LLINEIN", "FM Radio",
"RLINEIN", "FM Radio",
"LLINEIN", "Cap-less",
"RLINEIN", "Cap-less",
"Built-in Mic", "MICBIAS",
"MIC1P", "Built-in Mic",
"MIC1N", "Built-in Mic";
Expand Down
10 changes: 5 additions & 5 deletions arch/mips/boot/dts/ingenic/jz4780.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -339,7 +339,7 @@
};

i2c0: i2c@10050000 {
compatible = "ingenic,jz4780-i2c";
compatible = "ingenic,jz4780-i2c", "ingenic,jz4770-i2c";
#address-cells = <1>;
#size-cells = <0>;

Expand All @@ -357,7 +357,7 @@
};

i2c1: i2c@10051000 {
compatible = "ingenic,jz4780-i2c";
compatible = "ingenic,jz4780-i2c", "ingenic,jz4770-i2c";
#address-cells = <1>;
#size-cells = <0>;
reg = <0x10051000 0x1000>;
Expand All @@ -374,7 +374,7 @@
};

i2c2: i2c@10052000 {
compatible = "ingenic,jz4780-i2c";
compatible = "ingenic,jz4780-i2c", "ingenic,jz4770-i2c";
#address-cells = <1>;
#size-cells = <0>;
reg = <0x10052000 0x1000>;
Expand All @@ -391,7 +391,7 @@
};

i2c3: i2c@10053000 {
compatible = "ingenic,jz4780-i2c";
compatible = "ingenic,jz4780-i2c", "ingenic,jz4770-i2c";
#address-cells = <1>;
#size-cells = <0>;
reg = <0x10053000 0x1000>;
Expand All @@ -408,7 +408,7 @@
};

i2c4: i2c@10054000 {
compatible = "ingenic,jz4780-i2c";
compatible = "ingenic,jz4780-i2c", "ingenic,jz4770-i2c";
#address-cells = <1>;
#size-cells = <0>;
reg = <0x10054000 0x1000>;
Expand Down
14 changes: 14 additions & 0 deletions arch/mips/boot/dts/ingenic/rs90.dts
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,18 @@
reg = <0x0 0x2000000>;
};

reserved-memory {
#address-cells = <1>;
#size-cells = <1>;
ranges;

vmem: video-memory@1f00000 {
compatible = "shared-dma-pool";
reg = <0x1f00000 0x100000>;
reusable;
};
};

vcc: regulator {
compatible = "regulator-fixed";

Expand Down Expand Up @@ -300,6 +312,8 @@
};

&lcd {
memory-region = <&vmem>;

pinctrl-names = "default";
pinctrl-0 = <&pins_lcd>;
};
Expand Down
7 changes: 7 additions & 0 deletions arch/mips/boot/dts/ingenic/x1000.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,11 @@

status = "disabled";
};

mac_phy_ctrl: mac-phy-ctrl@e8 {
compatible = "syscon";
reg = <0xe8 0x4>;
};
};

ost: timer@12000000 {
Expand Down Expand Up @@ -347,6 +352,8 @@
clocks = <&cgu X1000_CLK_MAC>;
clock-names = "stmmaceth";

mode-reg = <&mac_phy_ctrl>;

status = "disabled";

mdio: mdio {
Expand Down
16 changes: 11 additions & 5 deletions arch/mips/boot/dts/ingenic/x1830.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,11 @@

status = "disabled";
};

mac_phy_ctrl: mac-phy-ctrl@e8 {
compatible = "syscon";
reg = <0xe8 0x4>;
};
};

ost: timer@12000000 {
Expand All @@ -97,9 +102,9 @@

#clock-cells = <1>;

clocks = <&cgu X1830_CLK_RTCLK
&cgu X1830_CLK_EXCLK
&cgu X1830_CLK_PCLK>;
clocks = <&cgu X1830_CLK_RTCLK>,
<&cgu X1830_CLK_EXCLK>,
<&cgu X1830_CLK_PCLK>;
clock-names = "rtc", "ext", "pclk";

interrupt-controller;
Expand Down Expand Up @@ -274,8 +279,7 @@

pdma: dma-controller@13420000 {
compatible = "ingenic,x1830-dma";
reg = <0x13420000 0x400
0x13421000 0x40>;
reg = <0x13420000 0x400>, <0x13421000 0x40>;
#dma-cells = <2>;

interrupt-parent = <&intc>;
Expand Down Expand Up @@ -337,6 +341,8 @@
clocks = <&cgu X1830_CLK_MAC>;
clock-names = "stmmaceth";

mode-reg = <&mac_phy_ctrl>;

status = "disabled";

mdio: mdio {
Expand Down
2 changes: 1 addition & 1 deletion arch/mips/boot/dts/loongson/Makefile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# SPDX_License_Identifier: GPL_2.0
# SPDX-License-Identifier: GPL-2.0
dtb-$(CONFIG_MACH_LOONGSON64) += loongson64_2core_2k1000.dtb
dtb-$(CONFIG_MACH_LOONGSON64) += loongson64c_4core_ls7a.dtb
dtb-$(CONFIG_MACH_LOONGSON64) += loongson64c_4core_rs780e.dtb
Expand Down
18 changes: 9 additions & 9 deletions arch/mips/boot/dts/loongson/loongson64-2k1000.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@
};
};

memory {
memory@200000 {
compatible = "memory";
device_type = "memory";
reg = <0x00000000 0x00200000 0x00000000 0x0ee00000>, /* 238 MB at 2 MB */
Expand Down Expand Up @@ -209,8 +209,8 @@
};

pci_bridge@a,0 {
compatible = "pci0014,7a19.0",
"pci0014,7a19",
compatible = "pci0014,7a09.0",
"pci0014,7a09",
"pciclass060400",
"pciclass0604";

Expand All @@ -224,8 +224,8 @@
};

pci_bridge@b,0 {
compatible = "pci0014,7a19.0",
"pci0014,7a19",
compatible = "pci0014,7a09.0",
"pci0014,7a09",
"pciclass060400",
"pciclass0604";

Expand All @@ -239,8 +239,8 @@
};

pci_bridge@c,0 {
compatible = "pci0014,7a19.0",
"pci0014,7a19",
compatible = "pci0014,7a09.0",
"pci0014,7a09",
"pciclass060400",
"pciclass0604";

Expand Down Expand Up @@ -269,8 +269,8 @@
};

pci_bridge@e,0 {
compatible = "pci0014,7a19.0",
"pci0014,7a19",
compatible = "pci0014,7a09.0",
"pci0014,7a09",
"pciclass060400",
"pciclass0604";

Expand Down
4 changes: 2 additions & 2 deletions arch/mips/boot/dts/loongson/loongson64g-package.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@

};

cpu_uart0: serial@1fe001e0 {
cpu_uart0: serial@1fe00100 {
compatible = "ns16550a";
reg = <0 0x1fe00100 0x10>;
clock-frequency = <100000000>;
Expand All @@ -48,7 +48,7 @@
no-loopback-test;
};

cpu_uart1: serial@1fe001e8 {
cpu_uart1: serial@1fe00110 {
status = "disabled";
compatible = "ns16550a";
reg = <0 0x1fe00110 0x10>;
Expand Down
2 changes: 1 addition & 1 deletion arch/mips/boot/dts/loongson/loongson64v_4core_virtio.dts
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@
interrupt-map-mask = <0x1800 0x0 0x0 0x7>;
};

isa {
isa@18000000 {
compatible = "isa";
#address-cells = <2>;
#size-cells = <1>;
Expand Down
2 changes: 1 addition & 1 deletion arch/mips/boot/dts/loongson/ls7a-pch.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -409,7 +409,7 @@
};
};

isa {
isa@18000000 {
compatible = "isa";
#address-cells = <2>;
#size-cells = <1>;
Expand Down
2 changes: 1 addition & 1 deletion arch/mips/boot/dts/loongson/rs780e-pch.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
<0x02000000 0 0x40000000 0 0x40000000 0 0x40000000>;
};

isa {
isa@18000000 {
compatible = "isa";
#address-cells = <2>;
#size-cells = <1>;
Expand Down
2 changes: 1 addition & 1 deletion arch/mips/boot/dts/mti/sead3.dts
Original file line number Diff line number Diff line change
Expand Up @@ -244,7 +244,7 @@
no-loopback-test;
};

eth@1f010000 {
ethernet@1f010000 {
compatible = "smsc,lan9115";
reg = <0x1f010000 0x10000>;
reg-io-width = <4>;
Expand Down
1 change: 1 addition & 0 deletions arch/mips/boot/dts/qca/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,5 @@ dtb-$(CONFIG_ATH79) += ar9132_tl_wr1043nd_v1.dtb
dtb-$(CONFIG_ATH79) += ar9331_dpt_module.dtb
dtb-$(CONFIG_ATH79) += ar9331_dragino_ms14.dtb
dtb-$(CONFIG_ATH79) += ar9331_omega.dtb
dtb-$(CONFIG_ATH79) += ar9331_openembed_som9331_board.dtb
dtb-$(CONFIG_ATH79) += ar9331_tl_mr3020.dtb
Loading

0 comments on commit 19b4385

Please sign in to comment.