mirror of
https://github.com/Dasharo/linux.git
synced 2026-03-06 15:25:10 -08:00
Merge tag 'mips_6.8' 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.8' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux: MIPS: Alchemy: Fix an out-of-bound access in db1550_dev_setup() MIPS: Alchemy: Fix an out-of-bound access in db1200_dev_setup() MIPS: Fix typos MIPS: Remove unused shadow GPR support from vector irq setup MIPS: Allow vectored interrupt handler to reside everywhere for 64bit mips: Set dump-stack arch description mips: mm: add slab availability checking in ioremap_prot mips: Optimize max_mapnr init procedure mips: Fix max_mapnr being uninitialized on early stages mips: Fix incorrect max_low_pfn adjustment mips: dmi: Fix early remap on MIPS32 MIPS: compressed: Use correct instruction for 64 bit code MIPS: SGI-IP27: hubio: fix nasid kernel-doc warning MAINTAINERS: Add myself as maintainer of the Ralink architecture
This commit is contained in:
@@ -18196,6 +18196,7 @@ F: drivers/media/cec/usb/rainshadow/
|
||||
|
||||
RALINK MIPS ARCHITECTURE
|
||||
M: John Crispin <john@phrozen.org>
|
||||
M: Sergio Paracuellos <sergio.paracuellos@gmail.com>
|
||||
L: linux-mips@vger.kernel.org
|
||||
S: Maintained
|
||||
F: arch/mips/ralink
|
||||
|
||||
@@ -847,7 +847,7 @@ int __init db1200_dev_setup(void)
|
||||
i2c_register_board_info(0, db1200_i2c_devs,
|
||||
ARRAY_SIZE(db1200_i2c_devs));
|
||||
spi_register_board_info(db1200_spi_devs,
|
||||
ARRAY_SIZE(db1200_i2c_devs));
|
||||
ARRAY_SIZE(db1200_spi_devs));
|
||||
|
||||
/* SWITCHES: S6.8 I2C/SPI selector (OFF=I2C ON=SPI)
|
||||
* S6.7 AC97/I2S selector (OFF=AC97 ON=I2S)
|
||||
|
||||
@@ -589,7 +589,7 @@ int __init db1550_dev_setup(void)
|
||||
i2c_register_board_info(0, db1550_i2c_devs,
|
||||
ARRAY_SIZE(db1550_i2c_devs));
|
||||
spi_register_board_info(db1550_spi_devs,
|
||||
ARRAY_SIZE(db1550_i2c_devs));
|
||||
ARRAY_SIZE(db1550_spi_devs));
|
||||
|
||||
c = clk_get(NULL, "psc0_intclk");
|
||||
if (!IS_ERR(c)) {
|
||||
|
||||
@@ -147,21 +147,21 @@ static const struct gpio_keys_button
|
||||
bcm47xx_buttons_buffalo_whr_g125[] __initconst = {
|
||||
BCM47XX_GPIO_KEY(0, KEY_WPS_BUTTON),
|
||||
BCM47XX_GPIO_KEY(4, KEY_RESTART),
|
||||
BCM47XX_GPIO_KEY(5, BTN_0), /* Router / AP mode swtich */
|
||||
BCM47XX_GPIO_KEY(5, BTN_0), /* Router / AP mode switch */
|
||||
};
|
||||
|
||||
static const struct gpio_keys_button
|
||||
bcm47xx_buttons_buffalo_whr_g54s[] __initconst = {
|
||||
BCM47XX_GPIO_KEY(0, KEY_WPS_BUTTON),
|
||||
BCM47XX_GPIO_KEY_H(4, KEY_RESTART),
|
||||
BCM47XX_GPIO_KEY(5, BTN_0), /* Router / AP mode swtich */
|
||||
BCM47XX_GPIO_KEY(5, BTN_0), /* Router / AP mode switch */
|
||||
};
|
||||
|
||||
static const struct gpio_keys_button
|
||||
bcm47xx_buttons_buffalo_whr_hp_g54[] __initconst = {
|
||||
BCM47XX_GPIO_KEY(0, KEY_WPS_BUTTON),
|
||||
BCM47XX_GPIO_KEY(4, KEY_RESTART),
|
||||
BCM47XX_GPIO_KEY(5, BTN_0), /* Router / AP mode swtich */
|
||||
BCM47XX_GPIO_KEY(5, BTN_0), /* Router / AP mode switch */
|
||||
};
|
||||
|
||||
static const struct gpio_keys_button
|
||||
|
||||
@@ -174,7 +174,7 @@ static void enetsw_set(struct clk *clk, int enable)
|
||||
}
|
||||
|
||||
if (enable) {
|
||||
/* reset switch core afer clock change */
|
||||
/* reset switch core after clock change */
|
||||
bcm63xx_core_set_reset(BCM63XX_RESET_ENETSW, 1);
|
||||
msleep(10);
|
||||
bcm63xx_core_set_reset(BCM63XX_RESET_ENETSW, 0);
|
||||
@@ -304,7 +304,7 @@ static void xtm_set(struct clk *clk, int enable)
|
||||
bcm_hwclock_set(CKCTL_6368_SAR_EN, enable);
|
||||
|
||||
if (enable) {
|
||||
/* reset sar core afer clock change */
|
||||
/* reset sar core after clock change */
|
||||
bcm63xx_core_set_reset(BCM63XX_RESET_SAR, 1);
|
||||
mdelay(1);
|
||||
bcm63xx_core_set_reset(BCM63XX_RESET_SAR, 0);
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
* MIPS-specific debug support for pre-boot environment
|
||||
*
|
||||
* NOTE: putc() is board specific, if your board have a 16550 compatible uart,
|
||||
* please select SYS_SUPPORTS_ZBOOT_UART16550 for your machine. othewise, you
|
||||
* please select SYS_SUPPORTS_ZBOOT_UART16550 for your machine. otherwise, you
|
||||
* need to implement your own putc().
|
||||
*/
|
||||
#include <linux/compiler.h>
|
||||
|
||||
@@ -25,8 +25,8 @@
|
||||
/* Clear BSS */
|
||||
PTR_LA a0, _edata
|
||||
PTR_LA a2, _end
|
||||
1: sw zero, 0(a0)
|
||||
addiu a0, a0, 4
|
||||
1: PTR_S zero, 0(a0)
|
||||
PTR_ADDIU a0, a0, PTRSIZE
|
||||
bne a2, a0, 1b
|
||||
|
||||
PTR_LA a0, (.heap) /* heap address */
|
||||
|
||||
@@ -443,7 +443,7 @@ int main(int argc, char *argv[])
|
||||
efh.f_symptr = 0;
|
||||
efh.f_nsyms = 0;
|
||||
efh.f_opthdr = sizeof eah;
|
||||
efh.f_flags = 0x100f; /* Stripped, not sharable. */
|
||||
efh.f_flags = 0x100f; /* Stripped, not shareable. */
|
||||
|
||||
memset(esecs, 0, sizeof esecs);
|
||||
strcpy(esecs[0].s_name, ".text");
|
||||
|
||||
@@ -113,7 +113,7 @@ static struct clocksource clocksource_mips = {
|
||||
|
||||
unsigned long long notrace sched_clock(void)
|
||||
{
|
||||
/* 64-bit arithmatic can overflow, so use 128-bit. */
|
||||
/* 64-bit arithmetic can overflow, so use 128-bit. */
|
||||
u64 t1, t2, t3;
|
||||
unsigned long long rv;
|
||||
u64 mult = clocksource_mips.mult;
|
||||
|
||||
@@ -143,7 +143,7 @@ static void cvmx_boot_vector_init(void *mem)
|
||||
uint64_t v = _cvmx_bootvector_data[i];
|
||||
|
||||
if (OCTEON_IS_OCTEON1PLUS() && (i == 0 || i == 7))
|
||||
v &= 0xffffffff00000000ull; /* KScratch not availble. */
|
||||
v &= 0xffffffff00000000ull; /* KScratch not available */
|
||||
cvmx_write_csr(CVMX_MIO_BOOT_LOC_ADR, i * 8);
|
||||
cvmx_write_csr(CVMX_MIO_BOOT_LOC_DAT, v);
|
||||
}
|
||||
|
||||
@@ -264,7 +264,7 @@ int64_t cvmx_bootmem_phy_alloc(uint64_t req_size, uint64_t address_min,
|
||||
* Convert !0 address_min and 0 address_max to special case of
|
||||
* range that specifies an exact memory block to allocate. Do
|
||||
* this before other checks and adjustments so that this
|
||||
* tranformation will be validated.
|
||||
* transformation will be validated.
|
||||
*/
|
||||
if (address_min && !address_max)
|
||||
address_max = address_min + req_size;
|
||||
|
||||
@@ -192,7 +192,7 @@ cvmx_cmd_queue_result_t cvmx_cmd_queue_initialize(cvmx_cmd_queue_id_t queue_id,
|
||||
}
|
||||
|
||||
/*
|
||||
* Shutdown a queue a free it's command buffers to the FPA. The
|
||||
* Shutdown a queue and free its command buffers to the FPA. The
|
||||
* hardware connected to the queue must be stopped before this
|
||||
* function is called.
|
||||
*
|
||||
@@ -285,7 +285,7 @@ int cvmx_cmd_queue_length(cvmx_cmd_queue_id_t queue_id)
|
||||
|
||||
/*
|
||||
* Return the command buffer to be written to. The purpose of this
|
||||
* function is to allow CVMX routine access t othe low level buffer
|
||||
* function is to allow CVMX routine access to the low level buffer
|
||||
* for initial hardware setup. User applications should not call this
|
||||
* function directly.
|
||||
*
|
||||
|
||||
@@ -103,7 +103,7 @@ uint32_t cvmx_helper_qlm_jtag_shift(int qlm, int bits, uint32_t data)
|
||||
/**
|
||||
* Shift long sequences of zeros into the QLM JTAG chain. It is
|
||||
* common to need to shift more than 32 bits of zeros into the
|
||||
* chain. This function is a convience wrapper around
|
||||
* chain. This function is a convenience wrapper around
|
||||
* cvmx_helper_qlm_jtag_shift() to shift more than 32 bits of
|
||||
* zeros at a time.
|
||||
*
|
||||
|
||||
@@ -615,7 +615,7 @@ int cvmx_pko_rate_limit_bits(int port, uint64_t bits_s, int burst)
|
||||
/*
|
||||
* Each packet has a 12 bytes of interframe gap, an 8 byte
|
||||
* preamble, and a 4 byte CRC. These are not included in the
|
||||
* per word count. Multiply by 8 to covert to bits and divide
|
||||
* per word count. Multiply by 8 to convert to bits and divide
|
||||
* by 256 for limit granularity.
|
||||
*/
|
||||
pko_mem_port_rate0.s.rate_pkt = (12 + 8 + 4) * 8 * tokens_per_bit / 256;
|
||||
|
||||
@@ -973,7 +973,7 @@ int __init octeon_prune_device_tree(void)
|
||||
* zero.
|
||||
*/
|
||||
|
||||
/* Asume that CS1 immediately follows. */
|
||||
/* Assume that CS1 immediately follows. */
|
||||
mio_boot_reg_cfg.u64 =
|
||||
cvmx_read_csr(CVMX_MIO_BOOT_REG_CFGX(cs + 1));
|
||||
region1_base = mio_boot_reg_cfg.s.base << 16;
|
||||
|
||||
@@ -15,11 +15,11 @@
|
||||
/*
|
||||
* For 64bit kernels working with a 32bit ARC PROM pointer arguments
|
||||
* for ARC calls need to reside in CKEG0/1. But as soon as the kernel
|
||||
* switches to it's first kernel thread stack is set to an address in
|
||||
* switches to its first kernel thread stack is set to an address in
|
||||
* XKPHYS, so anything on stack can't be used anymore. This is solved
|
||||
* by using a * static declartion variables are put into BSS, which is
|
||||
* by using a * static declaration variables are put into BSS, which is
|
||||
* linked to a CKSEG0 address. Since this is only used on UP platforms
|
||||
* there is not spinlock needed
|
||||
* there is no spinlock needed
|
||||
*/
|
||||
#define O32_STATIC static
|
||||
#else
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
|
||||
/*
|
||||
* mips_debugfs_dir corresponds to the "mips" directory at the top level
|
||||
* of the DebugFS hierarchy. MIPS-specific DebugFS entires should be
|
||||
* of the DebugFS hierarchy. MIPS-specific DebugFS entries should be
|
||||
* placed beneath this directory.
|
||||
*/
|
||||
extern struct dentry *mips_debugfs_dir;
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
#include <linux/io.h>
|
||||
#include <linux/memblock.h>
|
||||
|
||||
#define dmi_early_remap(x, l) ioremap_cache(x, l)
|
||||
#define dmi_early_remap(x, l) ioremap(x, l)
|
||||
#define dmi_early_unmap(x, l) iounmap(x)
|
||||
#define dmi_remap(x, l) ioremap_cache(x, l)
|
||||
#define dmi_unmap(x) iounmap(x)
|
||||
|
||||
@@ -159,7 +159,7 @@ void iounmap(const volatile void __iomem *addr);
|
||||
* address is not guaranteed to be usable directly as a virtual
|
||||
* address.
|
||||
*
|
||||
* This version of ioremap ensures that the memory is marked cachable by
|
||||
* This version of ioremap ensures that the memory is marked cacheable by
|
||||
* the CPU. Also enables full write-combining. Useful for some
|
||||
* memory-like regions on I/O busses.
|
||||
*/
|
||||
@@ -177,7 +177,7 @@ void iounmap(const volatile void __iomem *addr);
|
||||
* address is not guaranteed to be usable directly as a virtual
|
||||
* address.
|
||||
*
|
||||
* This version of ioremap ensures that the memory is marked uncachable
|
||||
* This version of ioremap ensures that the memory is marked uncacheable
|
||||
* but accelerated by means of write-combining feature. It is specifically
|
||||
* useful for PCIe prefetchable windows, which may vastly improve a
|
||||
* communications performance. If it was determined on boot stage, what
|
||||
|
||||
@@ -259,7 +259,7 @@ static inline void set_dma_mode(unsigned int dmanr, unsigned int mode)
|
||||
if (!chan)
|
||||
return;
|
||||
/*
|
||||
* set_dma_mode is only allowed to change endianess, direction,
|
||||
* set_dma_mode is only allowed to change endianness, direction,
|
||||
* transfer size, device FIFO width, and coherency settings.
|
||||
* Make sure anything else is masked off.
|
||||
*/
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user