mirror of
https://github.com/torvalds/linux.git
synced 2024-11-21 11:31:31 +00:00
just cleanups and fixes
-----BEGIN PGP SIGNATURE----- iQJOBAABCAA4FiEEbt46xwy6kEcDOXoUeZbBVTGwZHAFAmc7AfAaHHRzYm9nZW5k QGFscGhhLmZyYW5rZW4uZGUACgkQeZbBVTGwZHA2RRAAgrMEluD/U3LCxaX8WCQT zUa2CHOlgVeN0nPMOJQ84CwPIJTPC8smjKw/mxXhRBZZqB8X3aX4qEpGK40BlGmW o30WFLbUzKZXf/Dn1XZdjGkgVse3blnhcKnakyzu7SzEeQ+sDFFZ+vs1w1473F2o lscHuQJVMlSUkDtjArqa2oJYLBKt1+t01OeA7vunf7YehnCTYWwD4ZfGorljNpEP twHZGGf0vtUCcGattJBYYI+sfemXhVPTh0r/X5IYlYPDSiPa6ZtwZYR7j/qD9Yui jnKhOmECKy2SWg7BDII01lo8LY1ITe7pTfE7PdAi+e9XrYrUvxSrJv89wckkiKox 1dA2yHX8Qgkcb/ZfmOlASXKSd3AcC9F2cg8Pk0m2f/WLWPZzWYraYv24XkbGyOny VeqEFk2MdUfIS/caorvblbnQLkN3AaRGP7Qzu43SnIdrbO7L23F7iuWdODCgAVOk JfXC2okPKZAInIonqYISSbf1NJqVQp1aDAH+U9YGsF++P8GFlhkzpOK7RmQg5OGG FcB7KBvgyJDIyNM3kPXO565dnWiEPPAAaOIv9mnxYk9FZxOq9l84GtN2ITYEqnaz TnZJ+Kcs0L59uViUB2nRrgsZlPQjiiZfRlmMWZ1UP0tliZA21Uj6xrCxkXlYXprq aQwL/w8HceFui81ZdXwlVkg= =XJTr -----END PGP SIGNATURE----- Merge tag 'mips_6.13' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux Pull MIPS updates from Thomas Bogendoerfer: "Just cleanups and fixes" * tag 'mips_6.13' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux: mips: dts: realtek: Add I2C controllers mips: dts: realtek: Add syscon-reboot node MIPS: loongson3_defconfig: Enable blk_dev_nvme by default MIPS: loongson3_defconfig: Update configs dependencies MAINTAINERS: Remove linux-mips.org references MAINTAINERS: Retire Ralf Baechle TC: Fix the wrong format specifier MIPS: kernel: proc: Use str_yes_no() helper function MIPS: mobileye: eyeq6h-epm6: Use eyeq6h in the board device tree mips: bmips: bcm6358/6368: define required brcm,bmips-cbr-reg MIPS: Allow using more than 32-bit addresses for reset vectors when possible mips: asm: fix warning when disabling MIPS_FP_SUPPORT mips: sgi-ip22: Replace "s[n]?printf" with sysfs_emit in sysfs callbacks
This commit is contained in:
commit
ae4336e20b
@ -3,3 +3,4 @@ Alan Cox <root@hraefn.swansea.linux.org.uk>
|
||||
Christoph Hellwig <hch@lst.de>
|
||||
Jeff Kirsher <jeffrey.t.kirsher@intel.com>
|
||||
Marc Gonzalez <marc.w.gonzalez@free.fr>
|
||||
Ralf Baechle <ralf@linux-mips.org>
|
||||
|
5
CREDITS
5
CREDITS
@ -185,6 +185,11 @@ P: 1024/AF7B30C1 CF 97 C2 CC 6D AE A7 FE C8 BA 9C FC 88 DE 32 C3
|
||||
D: Linux/MIPS port
|
||||
D: Linux/68k hacker
|
||||
D: AX25 maintainer
|
||||
D: EDAC-CAVIUM OCTEON maintainer
|
||||
D: IOC3 ETHERNET DRIVER maintainer
|
||||
D: NETROM NETWORK LAYER maintainer
|
||||
D: ROSE NETWORK LAYER maintainer
|
||||
D: TURBOCHANNEL SUBSYSTEM maintainer
|
||||
S: Hauptstrasse 19
|
||||
S: 79837 St. Blasien
|
||||
S: Germany
|
||||
|
17
MAINTAINERS
17
MAINTAINERS
@ -6301,7 +6301,6 @@ DECSTATION PLATFORM SUPPORT
|
||||
M: "Maciej W. Rozycki" <macro@orcam.me.uk>
|
||||
L: linux-mips@vger.kernel.org
|
||||
S: Maintained
|
||||
W: http://www.linux-mips.org/wiki/DECstation
|
||||
F: arch/mips/dec/
|
||||
F: arch/mips/include/asm/dec/
|
||||
F: arch/mips/include/asm/mach-dec/
|
||||
@ -8061,10 +8060,10 @@ S: Maintained
|
||||
F: drivers/edac/highbank*
|
||||
|
||||
EDAC-CAVIUM OCTEON
|
||||
M: Ralf Baechle <ralf@linux-mips.org>
|
||||
M: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
|
||||
L: linux-edac@vger.kernel.org
|
||||
L: linux-mips@vger.kernel.org
|
||||
S: Supported
|
||||
S: Maintained
|
||||
F: drivers/edac/octeon_edac*
|
||||
|
||||
EDAC-CAVIUM THUNDERX
|
||||
@ -11886,7 +11885,7 @@ F: Documentation/devicetree/bindings/iio/gyroscope/invensense,mpu3050.yaml
|
||||
F: drivers/iio/gyro/mpu3050*
|
||||
|
||||
IOC3 ETHERNET DRIVER
|
||||
M: Ralf Baechle <ralf@linux-mips.org>
|
||||
M: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
|
||||
L: linux-mips@vger.kernel.org
|
||||
S: Maintained
|
||||
F: drivers/net/ethernet/sgi/ioc3-eth.c
|
||||
@ -15481,7 +15480,6 @@ MIPS
|
||||
M: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
|
||||
L: linux-mips@vger.kernel.org
|
||||
S: Maintained
|
||||
W: http://www.linux-mips.org/
|
||||
Q: https://patchwork.kernel.org/project/linux-mips/list/
|
||||
T: git git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux.git
|
||||
F: Documentation/devicetree/bindings/mips/
|
||||
@ -15994,9 +15992,8 @@ F: net/netfilter/
|
||||
F: tools/testing/selftests/net/netfilter/
|
||||
|
||||
NETROM NETWORK LAYER
|
||||
M: Ralf Baechle <ralf@linux-mips.org>
|
||||
L: linux-hams@vger.kernel.org
|
||||
S: Maintained
|
||||
S: Orphan
|
||||
W: https://linux-ax25.in-berlin.de
|
||||
F: include/net/netrom.h
|
||||
F: include/uapi/linux/netrom.h
|
||||
@ -20066,9 +20063,8 @@ F: include/linux/mfd/rohm-generic.h
|
||||
F: include/linux/mfd/rohm-shared.h
|
||||
|
||||
ROSE NETWORK LAYER
|
||||
M: Ralf Baechle <ralf@linux-mips.org>
|
||||
L: linux-hams@vger.kernel.org
|
||||
S: Maintained
|
||||
S: Orphan
|
||||
W: https://linux-ax25.in-berlin.de
|
||||
F: include/net/rose.h
|
||||
F: include/uapi/linux/rose.h
|
||||
@ -23611,10 +23607,9 @@ F: drivers/net/tun.c
|
||||
|
||||
TURBOCHANNEL SUBSYSTEM
|
||||
M: "Maciej W. Rozycki" <macro@orcam.me.uk>
|
||||
M: Ralf Baechle <ralf@linux-mips.org>
|
||||
L: linux-mips@vger.kernel.org
|
||||
S: Maintained
|
||||
Q: http://patchwork.linux-mips.org/project/linux-mips/list/
|
||||
Q: https://patchwork.kernel.org/project/linux-mips/list/
|
||||
F: drivers/tc/
|
||||
F: include/linux/tc.h
|
||||
|
||||
|
@ -13,6 +13,7 @@
|
||||
#size-cells = <0>;
|
||||
|
||||
mips-hpt-frequency = <150000000>;
|
||||
brcm,bmips-cbr-reg = <0xff400000>;
|
||||
|
||||
cpu@0 {
|
||||
compatible = "brcm,bmips4350";
|
||||
|
@ -13,6 +13,7 @@
|
||||
#size-cells = <0>;
|
||||
|
||||
mips-hpt-frequency = <200000000>;
|
||||
brcm,bmips-cbr-reg = <0xff400000>;
|
||||
|
||||
cpu@0 {
|
||||
compatible = "brcm,bmips4350";
|
||||
|
@ -8,7 +8,7 @@
|
||||
#include "eyeq6h.dtsi"
|
||||
|
||||
/ {
|
||||
compatible = "mobileye,eyeq6-epm6", "mobileye,eyeq6";
|
||||
compatible = "mobileye,eyeq6h-epm6", "mobileye,eyeq6h";
|
||||
model = "Mobile EyeQ6H MP6 Evaluation board";
|
||||
|
||||
chosen {
|
||||
|
@ -1,7 +1,7 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
/dts-v1/;
|
||||
|
||||
#include "rtl930x.dtsi"
|
||||
#include "rtl9302c.dtsi"
|
||||
|
||||
#include <dt-bindings/input/input.h>
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
|
15
arch/mips/boot/dts/realtek/rtl9302c.dtsi
Normal file
15
arch/mips/boot/dts/realtek/rtl9302c.dtsi
Normal file
@ -0,0 +1,15 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR BSD-2-Clause
|
||||
|
||||
#include "rtl930x.dtsi"
|
||||
|
||||
&switch0 {
|
||||
compatible = "realtek,rtl9302c-switch", "syscon", "simple-mfd";
|
||||
};
|
||||
|
||||
&i2c0 {
|
||||
compatible = "realtek,rtl9302c-i2c", "realtek,rtl9301-i2c";
|
||||
};
|
||||
|
||||
&i2c1 {
|
||||
compatible = "realtek,rtl9302c-i2c", "realtek,rtl9301-i2c";
|
||||
};
|
@ -29,6 +29,35 @@
|
||||
#clock-cells = <0>;
|
||||
clock-frequency = <175000000>;
|
||||
};
|
||||
|
||||
switch0: switch@1b000000 {
|
||||
compatible = "realtek,rtl9301-switch", "syscon", "simple-mfd";
|
||||
reg = <0x1b000000 0x10000>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
reboot@c {
|
||||
compatible = "syscon-reboot";
|
||||
reg = <0x0c 0x4>;
|
||||
value = <0x01>;
|
||||
};
|
||||
|
||||
i2c0: i2c@36c {
|
||||
compatible = "realtek,rtl9301-i2c";
|
||||
reg = <0x36c 0x14>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
i2c1: i2c@388 {
|
||||
compatible = "realtek,rtl9301-i2c";
|
||||
reg = <0x388 0x14>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
status = "disabled";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&soc {
|
||||
|
@ -5,6 +5,8 @@ CONFIG_POSIX_MQUEUE=y
|
||||
CONFIG_AUDIT=y
|
||||
CONFIG_NO_HZ=y
|
||||
CONFIG_HIGH_RES_TIMERS=y
|
||||
CONFIG_BPF_SYSCALL=y
|
||||
CONFIG_BPF_JIT=y
|
||||
CONFIG_PREEMPT=y
|
||||
CONFIG_BSD_PROCESS_ACCT=y
|
||||
CONFIG_BSD_PROCESS_ACCT_V3=y
|
||||
@ -22,18 +24,16 @@ CONFIG_CGROUP_CPUACCT=y
|
||||
CONFIG_NAMESPACES=y
|
||||
CONFIG_USER_NS=y
|
||||
CONFIG_SCHED_AUTOGROUP=y
|
||||
CONFIG_SYSFS_DEPRECATED=y
|
||||
CONFIG_RELAY=y
|
||||
CONFIG_BLK_DEV_INITRD=y
|
||||
CONFIG_BPF_SYSCALL=y
|
||||
CONFIG_EXPERT=y
|
||||
CONFIG_PERF_EVENTS=y
|
||||
CONFIG_KEXEC=y
|
||||
CONFIG_MACH_LOONGSON64=y
|
||||
CONFIG_CPU_HAS_MSA=y
|
||||
CONFIG_NUMA=y
|
||||
CONFIG_NR_CPUS=16
|
||||
CONFIG_HZ_256=y
|
||||
CONFIG_KEXEC=y
|
||||
CONFIG_MIPS32_O32=y
|
||||
CONFIG_MIPS32_N32=y
|
||||
CONFIG_VIRTUALIZATION=y
|
||||
@ -47,15 +47,12 @@ CONFIG_MODVERSIONS=y
|
||||
CONFIG_PARTITION_ADVANCED=y
|
||||
CONFIG_MQ_IOSCHED_DEADLINE=m
|
||||
CONFIG_IOSCHED_BFQ=y
|
||||
CONFIG_BFQ_GROUP_IOSCHED=y
|
||||
CONFIG_BINFMT_MISC=m
|
||||
CONFIG_KSM=y
|
||||
CONFIG_NET=y
|
||||
CONFIG_PACKET=y
|
||||
CONFIG_UNIX=y
|
||||
CONFIG_XFRM_USER=y
|
||||
CONFIG_NET_KEY=y
|
||||
CONFIG_INET=y
|
||||
CONFIG_IP_MULTICAST=y
|
||||
CONFIG_IP_ADVANCED_ROUTER=y
|
||||
CONFIG_IP_MULTIPLE_TABLES=y
|
||||
@ -106,7 +103,6 @@ CONFIG_IP_NF_TARGET_ECN=m
|
||||
CONFIG_IP_NF_TARGET_TTL=m
|
||||
CONFIG_IP_NF_RAW=m
|
||||
CONFIG_IP_NF_SECURITY=m
|
||||
CONFIG_IP_NF_ARPTABLES=m
|
||||
CONFIG_IP_NF_ARPFILTER=m
|
||||
CONFIG_IP_NF_ARP_MANGLE=m
|
||||
CONFIG_NF_TABLES_IPV6=y
|
||||
@ -128,7 +124,6 @@ CONFIG_L2TP=m
|
||||
CONFIG_BRIDGE=m
|
||||
CONFIG_VSOCKETS=m
|
||||
CONFIG_VIRTIO_VSOCKETS=m
|
||||
CONFIG_BPF_JIT=y
|
||||
CONFIG_CFG80211=m
|
||||
CONFIG_CFG80211_WEXT=y
|
||||
CONFIG_MAC80211=m
|
||||
@ -146,6 +141,7 @@ CONFIG_BLK_DEV_LOOP=y
|
||||
CONFIG_BLK_DEV_RAM=y
|
||||
CONFIG_BLK_DEV_RAM_SIZE=8192
|
||||
CONFIG_VIRTIO_BLK=y
|
||||
CONFIG_BLK_DEV_NVME=m
|
||||
CONFIG_RAID_ATTRS=m
|
||||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_BLK_DEV_SR=y
|
||||
@ -167,12 +163,10 @@ CONFIG_SATA_AHCI=y
|
||||
CONFIG_PATA_ATIIXP=y
|
||||
CONFIG_MD=y
|
||||
CONFIG_BLK_DEV_MD=m
|
||||
CONFIG_MD_LINEAR=m
|
||||
CONFIG_MD_RAID0=m
|
||||
CONFIG_MD_RAID1=m
|
||||
CONFIG_MD_RAID10=m
|
||||
CONFIG_MD_RAID456=m
|
||||
CONFIG_MD_MULTIPATH=m
|
||||
CONFIG_BLK_DEV_DM=m
|
||||
CONFIG_DM_CRYPT=m
|
||||
CONFIG_DM_SNAPSHOT=m
|
||||
@ -196,7 +190,6 @@ CONFIG_VIRTIO_NET=m
|
||||
# CONFIG_NET_VENDOR_ARC is not set
|
||||
# CONFIG_NET_VENDOR_ATHEROS is not set
|
||||
# CONFIG_NET_VENDOR_BROADCOM is not set
|
||||
# CONFIG_NET_VENDOR_BROCADE is not set
|
||||
# CONFIG_NET_VENDOR_CHELSIO is not set
|
||||
# CONFIG_NET_VENDOR_CIRRUS is not set
|
||||
# CONFIG_NET_VENDOR_CISCO is not set
|
||||
@ -216,6 +209,7 @@ CONFIG_IXGBE=y
|
||||
# CONFIG_NET_VENDOR_NVIDIA is not set
|
||||
# CONFIG_NET_VENDOR_OKI is not set
|
||||
# CONFIG_NET_VENDOR_QLOGIC is not set
|
||||
# CONFIG_NET_VENDOR_BROCADE is not set
|
||||
# CONFIG_NET_VENDOR_RDC is not set
|
||||
CONFIG_8139CP=m
|
||||
CONFIG_8139TOO=m
|
||||
@ -242,7 +236,6 @@ CONFIG_PPPOL2TP=m
|
||||
CONFIG_PPP_ASYNC=m
|
||||
CONFIG_PPP_SYNC_TTY=m
|
||||
CONFIG_ATH9K=m
|
||||
CONFIG_HOSTAP=m
|
||||
CONFIG_INPUT_SPARSEKMAP=y
|
||||
CONFIG_INPUT_MOUSEDEV=y
|
||||
CONFIG_INPUT_MOUSEDEV_PSAUX=y
|
||||
@ -276,23 +269,20 @@ CONFIG_MEDIA_SUPPORT=m
|
||||
CONFIG_MEDIA_USB_SUPPORT=y
|
||||
CONFIG_USB_VIDEO_CLASS=m
|
||||
CONFIG_DRM=y
|
||||
CONFIG_DRM_RADEON=m
|
||||
CONFIG_DRM_AMDGPU=m
|
||||
CONFIG_DRM_AMDGPU_SI=y
|
||||
CONFIG_DRM_AMDGPU_CIK=y
|
||||
CONFIG_DRM_AMDGPU_USERPTR=y
|
||||
CONFIG_DRM_AMD_ACP=y
|
||||
CONFIG_DRM_AMD_DC=y
|
||||
CONFIG_DRM_AMD_DC_SI=y
|
||||
CONFIG_DRM_AST=m
|
||||
CONFIG_DRM_RADEON=m
|
||||
CONFIG_DRM_QXL=y
|
||||
CONFIG_DRM_VIRTIO_GPU=y
|
||||
CONFIG_FB=y
|
||||
CONFIG_FB_RADEON=y
|
||||
CONFIG_LCD_CLASS_DEVICE=y
|
||||
CONFIG_LCD_PLATFORM=m
|
||||
# CONFIG_VGA_CONSOLE is not set
|
||||
CONFIG_FRAMEBUFFER_CONSOLE=y
|
||||
CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y
|
||||
CONFIG_LOGO=y
|
||||
CONFIG_SOUND=y
|
||||
@ -350,13 +340,11 @@ CONFIG_EXT3_FS_SECURITY=y
|
||||
CONFIG_XFS_FS=y
|
||||
CONFIG_XFS_POSIX_ACL=y
|
||||
CONFIG_QUOTA=y
|
||||
# CONFIG_PRINT_QUOTA_WARNING is not set
|
||||
CONFIG_QFMT_V1=m
|
||||
CONFIG_QFMT_V2=m
|
||||
CONFIG_AUTOFS_FS=y
|
||||
CONFIG_FUSE_FS=m
|
||||
CONFIG_VIRTIO_FS=m
|
||||
CONFIG_NETFS_SUPPORT=m
|
||||
CONFIG_FSCACHE=y
|
||||
CONFIG_ISO9660_FS=m
|
||||
CONFIG_JOLIET=y
|
||||
@ -391,23 +379,21 @@ CONFIG_SECURITY_NETWORK=y
|
||||
CONFIG_SECURITY_PATH=y
|
||||
CONFIG_SECURITY_SELINUX=y
|
||||
CONFIG_SECURITY_SELINUX_BOOTPARAM=y
|
||||
CONFIG_SECURITY_SELINUX_DISABLE=y
|
||||
CONFIG_DEFAULT_SECURITY_DAC=y
|
||||
CONFIG_CRYPTO_HMAC=y
|
||||
CONFIG_CRYPTO_MD5=y
|
||||
CONFIG_CRYPTO_WP512=m
|
||||
CONFIG_CRYPTO_BLOWFISH=m
|
||||
CONFIG_CRYPTO_CAST5=m
|
||||
CONFIG_CRYPTO_CAST6=m
|
||||
CONFIG_CRYPTO_SERPENT=m
|
||||
CONFIG_CRYPTO_TWOFISH=m
|
||||
CONFIG_CRYPTO_HMAC=y
|
||||
CONFIG_CRYPTO_MD5=y
|
||||
CONFIG_CRYPTO_WP512=m
|
||||
CONFIG_CRYPTO_DEFLATE=m
|
||||
CONFIG_PRINTK_TIME=y
|
||||
CONFIG_STRIP_ASM_SYMS=y
|
||||
CONFIG_MAGIC_SYSRQ=y
|
||||
CONFIG_DEBUG_FS=y
|
||||
# CONFIG_SCHED_DEBUG is not set
|
||||
# CONFIG_DEBUG_PREEMPT is not set
|
||||
CONFIG_FUNCTION_TRACER=y
|
||||
CONFIG_FTRACE_SYSCALLS=y
|
||||
CONFIG_CMDLINE_BOOL=y
|
||||
|
@ -326,7 +326,9 @@ GCR_CX_ACCESSOR_RW(32, 0x018, other)
|
||||
|
||||
/* GCR_Cx_RESET_BASE - Configure where powered up cores will fetch from */
|
||||
GCR_CX_ACCESSOR_RW(32, 0x020, reset_base)
|
||||
GCR_CX_ACCESSOR_RW(64, 0x020, reset64_base)
|
||||
#define CM_GCR_Cx_RESET_BASE_BEVEXCBASE GENMASK(31, 12)
|
||||
#define CM_GCR_Cx_RESET64_BASE_BEVEXCBASE GENMASK_ULL(47, 12)
|
||||
#define CM_GCR_Cx_RESET_BASE_MODE BIT(1)
|
||||
|
||||
/* GCR_Cx_ID - Identify the current core */
|
||||
|
@ -97,7 +97,7 @@ do { \
|
||||
} \
|
||||
} while (0)
|
||||
#else
|
||||
# define __sanitize_fcr31(next)
|
||||
# define __sanitize_fcr31(next) do { (void) (next); } while (0)
|
||||
#endif
|
||||
|
||||
/*
|
||||
|
@ -66,24 +66,23 @@ static int show_cpuinfo(struct seq_file *m, void *v)
|
||||
seq_printf(m, "BogoMIPS\t\t: %u.%02u\n",
|
||||
cpu_data[n].udelay_val / (500000/HZ),
|
||||
(cpu_data[n].udelay_val / (5000/HZ)) % 100);
|
||||
seq_printf(m, "wait instruction\t: %s\n", cpu_wait ? "yes" : "no");
|
||||
seq_printf(m, "wait instruction\t: %s\n", str_yes_no(cpu_wait));
|
||||
seq_printf(m, "microsecond timers\t: %s\n",
|
||||
cpu_has_counter ? "yes" : "no");
|
||||
str_yes_no(cpu_has_counter));
|
||||
seq_printf(m, "tlb_entries\t\t: %d\n", cpu_data[n].tlbsize);
|
||||
seq_printf(m, "extra interrupt vector\t: %s\n",
|
||||
cpu_has_divec ? "yes" : "no");
|
||||
seq_printf(m, "hardware watchpoint\t: %s",
|
||||
cpu_has_watch ? "yes, " : "no\n");
|
||||
str_yes_no(cpu_has_divec));
|
||||
seq_printf(m, "hardware watchpoint\t: %s", str_yes_no(cpu_has_watch));
|
||||
if (cpu_has_watch) {
|
||||
seq_printf(m, "count: %d, address/irw mask: [",
|
||||
seq_printf(m, ", count: %d, address/irw mask: [",
|
||||
cpu_data[n].watch_reg_count);
|
||||
for (i = 0; i < cpu_data[n].watch_reg_count; i++)
|
||||
seq_printf(m, "%s0x%04x", i ? ", " : "",
|
||||
cpu_data[n].watch_reg_masks[i]);
|
||||
seq_puts(m, "]\n");
|
||||
seq_puts(m, "]");
|
||||
}
|
||||
|
||||
seq_puts(m, "isa\t\t\t:");
|
||||
seq_puts(m, "\nisa\t\t\t:");
|
||||
if (cpu_has_mips_1)
|
||||
seq_puts(m, " mips1");
|
||||
if (cpu_has_mips_2)
|
||||
@ -155,7 +154,7 @@ static int show_cpuinfo(struct seq_file *m, void *v)
|
||||
|
||||
if (cpu_has_mmips) {
|
||||
seq_printf(m, "micromips kernel\t: %s\n",
|
||||
(read_c0_config3() & MIPS_CONF3_ISA_OE) ? "yes" : "no");
|
||||
str_yes_no(read_c0_config3() & MIPS_CONF3_ISA_OE));
|
||||
}
|
||||
|
||||
seq_puts(m, "Options implemented\t:");
|
||||
|
@ -37,7 +37,7 @@ enum label_id {
|
||||
UASM_L_LA(_not_nmi)
|
||||
|
||||
static DECLARE_BITMAP(core_power, NR_CPUS);
|
||||
static uint32_t core_entry_reg;
|
||||
static u64 core_entry_reg;
|
||||
static phys_addr_t cps_vec_pa;
|
||||
|
||||
struct core_boot_config *mips_cps_core_bootcfg;
|
||||
@ -94,6 +94,20 @@ static void __init *mips_cps_build_core_entry(void *addr)
|
||||
return p;
|
||||
}
|
||||
|
||||
static bool __init check_64bit_reset(void)
|
||||
{
|
||||
bool cx_64bit_reset = false;
|
||||
|
||||
mips_cm_lock_other(0, 0, 0, CM_GCR_Cx_OTHER_BLOCK_LOCAL);
|
||||
write_gcr_co_reset64_base(CM_GCR_Cx_RESET64_BASE_BEVEXCBASE);
|
||||
if ((read_gcr_co_reset64_base() & CM_GCR_Cx_RESET64_BASE_BEVEXCBASE) ==
|
||||
CM_GCR_Cx_RESET64_BASE_BEVEXCBASE)
|
||||
cx_64bit_reset = true;
|
||||
mips_cm_unlock_other();
|
||||
|
||||
return cx_64bit_reset;
|
||||
}
|
||||
|
||||
static int __init allocate_cps_vecs(void)
|
||||
{
|
||||
/* Try to allocate in KSEG1 first */
|
||||
@ -105,11 +119,23 @@ static int __init allocate_cps_vecs(void)
|
||||
CM_GCR_Cx_RESET_BASE_BEVEXCBASE;
|
||||
|
||||
if (!cps_vec_pa && mips_cm_is64) {
|
||||
cps_vec_pa = memblock_phys_alloc_range(BEV_VEC_SIZE, BEV_VEC_ALIGN,
|
||||
0x0, SZ_4G - 1);
|
||||
if (cps_vec_pa)
|
||||
core_entry_reg = (cps_vec_pa & CM_GCR_Cx_RESET_BASE_BEVEXCBASE) |
|
||||
phys_addr_t end;
|
||||
|
||||
if (check_64bit_reset()) {
|
||||
pr_info("VP Local Reset Exception Base support 47 bits address\n");
|
||||
end = MEMBLOCK_ALLOC_ANYWHERE;
|
||||
} else {
|
||||
end = SZ_4G - 1;
|
||||
}
|
||||
cps_vec_pa = memblock_phys_alloc_range(BEV_VEC_SIZE, BEV_VEC_ALIGN, 0, end);
|
||||
if (cps_vec_pa) {
|
||||
if (check_64bit_reset())
|
||||
core_entry_reg = (cps_vec_pa & CM_GCR_Cx_RESET64_BASE_BEVEXCBASE) |
|
||||
CM_GCR_Cx_RESET_BASE_MODE;
|
||||
else
|
||||
core_entry_reg = (cps_vec_pa & CM_GCR_Cx_RESET_BASE_BEVEXCBASE) |
|
||||
CM_GCR_Cx_RESET_BASE_MODE;
|
||||
}
|
||||
}
|
||||
|
||||
if (!cps_vec_pa)
|
||||
@ -308,7 +334,10 @@ static void boot_core(unsigned int core, unsigned int vpe_id)
|
||||
mips_cm_lock_other(0, core, 0, CM_GCR_Cx_OTHER_BLOCK_LOCAL);
|
||||
|
||||
/* Set its reset vector */
|
||||
write_gcr_co_reset_base(core_entry_reg);
|
||||
if (mips_cm_is64)
|
||||
write_gcr_co_reset64_base(core_entry_reg);
|
||||
else
|
||||
write_gcr_co_reset_base(core_entry_reg);
|
||||
|
||||
/* Ensure its coherency is disabled */
|
||||
write_gcr_co_coherence(0);
|
||||
@ -411,7 +440,10 @@ static int cps_boot_secondary(int cpu, struct task_struct *idle)
|
||||
|
||||
if (cpu_has_vp) {
|
||||
mips_cm_lock_other(0, core, vpe_id, CM_GCR_Cx_OTHER_BLOCK_LOCAL);
|
||||
write_gcr_co_reset_base(core_entry_reg);
|
||||
if (mips_cm_is64)
|
||||
write_gcr_co_reset64_base(core_entry_reg);
|
||||
else
|
||||
write_gcr_co_reset_base(core_entry_reg);
|
||||
mips_cm_unlock_other();
|
||||
}
|
||||
|
||||
|
@ -165,9 +165,8 @@ static ssize_t modalias_show(struct device *dev, struct device_attribute *a,
|
||||
char *buf)
|
||||
{
|
||||
struct gio_device *gio_dev = to_gio_device(dev);
|
||||
int len = snprintf(buf, PAGE_SIZE, "gio:%x\n", gio_dev->id.id);
|
||||
|
||||
return (len >= PAGE_SIZE) ? (PAGE_SIZE - 1) : len;
|
||||
return sysfs_emit(buf, "gio:%x\n", gio_dev->id.id);
|
||||
}
|
||||
static DEVICE_ATTR_RO(modalias);
|
||||
|
||||
@ -177,7 +176,7 @@ static ssize_t name_show(struct device *dev,
|
||||
struct gio_device *giodev;
|
||||
|
||||
giodev = to_gio_device(dev);
|
||||
return sprintf(buf, "%s", giodev->name);
|
||||
return sysfs_emit(buf, "%s\n", giodev->name);
|
||||
}
|
||||
static DEVICE_ATTR_RO(name);
|
||||
|
||||
@ -187,7 +186,7 @@ static ssize_t id_show(struct device *dev,
|
||||
struct gio_device *giodev;
|
||||
|
||||
giodev = to_gio_device(dev);
|
||||
return sprintf(buf, "%x", giodev->id.id);
|
||||
return sysfs_emit(buf, "%x\n", giodev->id.id);
|
||||
}
|
||||
static DEVICE_ATTR_RO(id);
|
||||
|
||||
|
@ -162,7 +162,7 @@ static int __init tc_init(void)
|
||||
if (tc_bus.info.slot_size) {
|
||||
unsigned int tc_clock = tc_get_speed(&tc_bus) / 100000;
|
||||
|
||||
pr_info("tc: TURBOchannel rev. %d at %d.%d MHz "
|
||||
pr_info("tc: TURBOchannel rev. %d at %u.%u MHz "
|
||||
"(with%s parity)\n", tc_bus.info.revision,
|
||||
tc_clock / 10, tc_clock % 10,
|
||||
tc_bus.info.parity ? "" : "out");
|
||||
|
Loading…
Reference in New Issue
Block a user