Skip to content

Commit

Permalink
Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/…
Browse files Browse the repository at this point in the history
…git/gerg/m68knommu

Pull m68knommu updates from Greg Ungerer:
 "The bulk of the changes are generalizing the ColdFire v3 core support
  and adding in 537x CPU support.  Also a couple of other bug fixes, one
  to fix a reintroduction of a past bug in the romfs filesystem nommu
  support."

* 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu:
  m68knommu: enable Timer on coldfire 532x
  m68knommu: fix ColdFire 5373/5329 QSPI base address
  m68knommu: add support for configuring a Freescale M5373EVB board
  m68knommu: add support for the ColdFire 537x family of CPUs
  m68knommu: make ColdFire M532x platform support more v3 generic
  m68knommu: create and use a common M53xx ColdFire class of CPUs
  m68k: remove unused asm/dbg.h
  m68k: Set ColdFire ACR1 cache mode depending on kernel configuration
  romfs: fix nommu map length to keep inside filesystem
  m68k: clean up unused "config ROMVECSIZE"
  • Loading branch information
torvalds committed May 10, 2013
2 parents f5b8fcb + 2842e5b commit 977b58e
Show file tree
Hide file tree
Showing 16 changed files with 60 additions and 49 deletions.
12 changes: 12 additions & 0 deletions arch/m68k/Kconfig.cpu
Original file line number Diff line number Diff line change
Expand Up @@ -223,13 +223,25 @@ config M5307
help
Motorola ColdFire 5307 processor support.

config M53xx
bool

config M532x
bool "MCF532x"
depends on !MMU
select M53xx
select HAVE_CACHE_CB
help
Freescale (Motorola) ColdFire 532x processor support.

config M537x
bool "MCF537x"
depends on !MMU
select M53xx
select HAVE_CACHE_CB
help
Freescale ColdFire 537x processor support.

config M5407
bool "MCF5407"
depends on !MMU
Expand Down
16 changes: 7 additions & 9 deletions arch/m68k/Kconfig.machine
Original file line number Diff line number Diff line change
Expand Up @@ -358,6 +358,13 @@ config COBRA5329
help
Support for the senTec COBRA5329 board.

config M5373EVB
bool "Freescale M5373EVB board support"
depends on M537x
select FREESCALE
help
Support for the Freescale M5373EVB board.

config M5407C3
bool "Motorola M5407C3 board support"
depends on M5407
Expand Down Expand Up @@ -539,15 +546,6 @@ config ROMVEC
68000 type variants the vectors are at the base of the boot device
on system startup.

config ROMVECSIZE
hex "Size of ROM vector region (in bytes)"
default "0x400"
depends on ROM
help
Define the size of the vector region in ROM. For most 68000
variants this would be 0x400 bytes in size. Set to 0 if you do
not want a vector region at the start of the ROM.

config ROMSTART
hex "Address of the base of system image in ROM"
default "0x400"
Expand Down
1 change: 1 addition & 0 deletions arch/m68k/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@ cpuflags-$(CONFIG_M5441x) := $(call cc-option,-mcpu=54455,-mcfv4e)
cpuflags-$(CONFIG_M54xx) := $(call cc-option,-mcpu=5475,-m5200)
cpuflags-$(CONFIG_M5407) := $(call cc-option,-mcpu=5407,-m5200)
cpuflags-$(CONFIG_M532x) := $(call cc-option,-mcpu=532x,-m5307)
cpuflags-$(CONFIG_M537x) := $(call cc-option,-mcpu=537x,-m5307)
cpuflags-$(CONFIG_M5307) := $(call cc-option,-mcpu=5307,-m5200)
cpuflags-$(CONFIG_M528x) := $(call cc-option,-mcpu=528x,-m5307)
cpuflags-$(CONFIG_M5275) := $(call cc-option,-mcpu=5275,-m5307)
Expand Down
6 changes: 0 additions & 6 deletions arch/m68k/include/asm/dbg.h

This file was deleted.

2 changes: 1 addition & 1 deletion arch/m68k/include/asm/dma.h
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@
#define MAX_M68K_DMA_CHANNELS 4
#elif defined(CONFIG_M5272)
#define MAX_M68K_DMA_CHANNELS 1
#elif defined(CONFIG_M532x)
#elif defined(CONFIG_M53xx)
#define MAX_M68K_DMA_CHANNELS 0
#else
#define MAX_M68K_DMA_CHANNELS 2
Expand Down
4 changes: 2 additions & 2 deletions arch/m68k/include/asm/m53xxacr.h
Original file line number Diff line number Diff line change
Expand Up @@ -55,8 +55,8 @@
#define CACHE_SIZE 0x2000 /* 8k of unified cache */
#define ICACHE_SIZE CACHE_SIZE
#define DCACHE_SIZE CACHE_SIZE
#elif defined(CONFIG_M532x)
#define CACHE_SIZE 0x4000 /* 32k of unified cache */
#elif defined(CONFIG_M53xx)
#define CACHE_SIZE 0x4000 /* 16k of unified cache */
#define ICACHE_SIZE CACHE_SIZE
#define DCACHE_SIZE CACHE_SIZE
#endif
Expand Down
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
/****************************************************************************/

/*
* m532xsim.h -- ColdFire 5329 registers
* m53xxsim.h -- ColdFire 5329 registers
*/

/****************************************************************************/
#ifndef m532xsim_h
#define m532xsim_h
#ifndef m53xxsim_h
#define m53xxsim_h
/****************************************************************************/

#define CPU_NAME "COLDFIRE(m532x)"
#define CPU_NAME "COLDFIRE(m53xx)"
#define CPU_INSTR_PER_JIFFY 3
#define MCF_BUSCLK (MCF_CLK / 3)

Expand Down Expand Up @@ -107,7 +107,7 @@
/*
* QSPI module.
*/
#define MCFQSPI_BASE 0xFC058000 /* Base address of QSPI */
#define MCFQSPI_BASE 0xFC05C000 /* Base address of QSPI */
#define MCFQSPI_SIZE 0x40 /* Size of QSPI region */

#define MCFQSPI_CS0 84
Expand Down Expand Up @@ -1238,4 +1238,4 @@
#define MCFEPORT_EPFR (0xFC094006)

/********************************************************************/
#endif /* m532xsim_h */
#endif /* m53xxsim_h */
7 changes: 6 additions & 1 deletion arch/m68k/include/asm/m54xxacr.h
Original file line number Diff line number Diff line change
Expand Up @@ -96,8 +96,13 @@
*/
#define ACR0_MODE (ACR_BA(CONFIG_MBAR)+ACR_ADMSK(0x1000000)+ \
ACR_ENABLE+ACR_SUPER+ACR_CM_OFF_PRE+ACR_SP)
#if defined(CONFIG_CACHE_COPYBACK)
#define ACR1_MODE (ACR_BA(CONFIG_RAMBASE)+ACR_ADMSK(CONFIG_RAMSIZE)+ \
ACR_ENABLE+ACR_SUPER+ACR_SP)
ACR_ENABLE+ACR_SUPER+ACR_SP+ACR_CM_CP)
#else
#define ACR1_MODE (ACR_BA(CONFIG_RAMBASE)+ACR_ADMSK(CONFIG_RAMSIZE)+ \
ACR_ENABLE+ACR_SUPER+ACR_SP+ACR_CM_WT)
#endif
#define ACR2_MODE 0
#define ACR3_MODE (ACR_BA(CONFIG_RAMBASE)+ACR_ADMSK(CONFIG_RAMSIZE)+ \
ACR_ENABLE+ACR_SUPER+ACR_SP)
Expand Down
10 changes: 5 additions & 5 deletions arch/m68k/include/asm/mcfgpio.h
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,7 @@ static inline void gpio_free(unsigned gpio)
#if defined(CONFIG_M5206) || defined(CONFIG_M5206e) || \
defined(CONFIG_M520x) || defined(CONFIG_M523x) || \
defined(CONFIG_M527x) || defined(CONFIG_M528x) || \
defined(CONFIG_M532x) || defined(CONFIG_M54xx) || \
defined(CONFIG_M53xx) || defined(CONFIG_M54xx) || \
defined(CONFIG_M5441x)

/* These parts have GPIO organized by 8 bit ports */
Expand Down Expand Up @@ -139,7 +139,7 @@ static inline void gpio_free(unsigned gpio)

#if defined(CONFIG_M520x) || defined(CONFIG_M523x) || \
defined(CONFIG_M527x) || defined(CONFIG_M528x) || \
defined(CONFIG_M532x) || defined(CONFIG_M5441x)
defined(CONFIG_M53xx) || defined(CONFIG_M5441x)
/*
* These parts have an 'Edge' Port module (external interrupt/GPIO) which uses
* read-modify-write to change an output and a GPIO module which has separate
Expand Down Expand Up @@ -195,7 +195,7 @@ static inline u32 __mcfgpio_ppdr(unsigned gpio)
return MCFSIM2_GPIO1READ;
#elif defined(CONFIG_M520x) || defined(CONFIG_M523x) || \
defined(CONFIG_M527x) || defined(CONFIG_M528x) || \
defined(CONFIG_M532x) || defined(CONFIG_M5441x)
defined(CONFIG_M53xx) || defined(CONFIG_M5441x)
#if !defined(CONFIG_M5441x)
if (gpio < 8)
return MCFEPORT_EPPDR;
Expand Down Expand Up @@ -237,7 +237,7 @@ static inline u32 __mcfgpio_podr(unsigned gpio)
return MCFSIM2_GPIO1WRITE;
#elif defined(CONFIG_M520x) || defined(CONFIG_M523x) || \
defined(CONFIG_M527x) || defined(CONFIG_M528x) || \
defined(CONFIG_M532x) || defined(CONFIG_M5441x)
defined(CONFIG_M53xx) || defined(CONFIG_M5441x)
#if !defined(CONFIG_M5441x)
if (gpio < 8)
return MCFEPORT_EPDR;
Expand Down Expand Up @@ -279,7 +279,7 @@ static inline u32 __mcfgpio_pddr(unsigned gpio)
return MCFSIM2_GPIO1ENABLE;
#elif defined(CONFIG_M520x) || defined(CONFIG_M523x) || \
defined(CONFIG_M527x) || defined(CONFIG_M528x) || \
defined(CONFIG_M532x) || defined(CONFIG_M5441x)
defined(CONFIG_M53xx) || defined(CONFIG_M5441x)
#if !defined(CONFIG_M5441x)
if (gpio < 8)
return MCFEPORT_EPDDR;
Expand Down
4 changes: 2 additions & 2 deletions arch/m68k/include/asm/mcfsim.h
Original file line number Diff line number Diff line change
Expand Up @@ -36,8 +36,8 @@
#elif defined(CONFIG_M5307)
#include <asm/m5307sim.h>
#include <asm/mcfintc.h>
#elif defined(CONFIG_M532x)
#include <asm/m532xsim.h>
#elif defined(CONFIG_M53xx)
#include <asm/m53xxsim.h>
#elif defined(CONFIG_M5407)
#include <asm/m5407sim.h>
#include <asm/mcfintc.h>
Expand Down
2 changes: 1 addition & 1 deletion arch/m68k/include/asm/mcftimer.h
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
#define MCFTIMER_TRR 0x04 /* Timer Reference (r/w) */
#define MCFTIMER_TCR 0x08 /* Timer Capture reg (r/w) */
#define MCFTIMER_TCN 0x0C /* Timer Counter reg (r/w) */
#if defined(CONFIG_M532x) || defined(CONFIG_M5441x)
#if defined(CONFIG_M53xx) || defined(CONFIG_M5441x)
#define MCFTIMER_TER 0x03 /* Timer Event reg (r/w) */
#else
#define MCFTIMER_TER 0x11 /* Timer Event reg (r/w) */
Expand Down
2 changes: 1 addition & 1 deletion arch/m68k/platform/coldfire/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ obj-$(CONFIG_M527x) += m527x.o pit.o intc-2.o reset.o
obj-$(CONFIG_M5272) += m5272.o intc-5272.o timers.o
obj-$(CONFIG_M528x) += m528x.o pit.o intc-2.o reset.o
obj-$(CONFIG_M5307) += m5307.o timers.o intc.o reset.o
obj-$(CONFIG_M532x) += m532x.o timers.o intc-simr.o reset.o
obj-$(CONFIG_M53xx) += m53xx.o timers.o intc-simr.o reset.o
obj-$(CONFIG_M5407) += m5407.o timers.o intc.o reset.o
obj-$(CONFIG_M54xx) += m54xx.o sltimers.o intc-2.o
obj-$(CONFIG_M5441x) += m5441x.o pit.o intc-simr.o reset.o
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/***************************************************************************/

/*
* linux/arch/m68knommu/platform/532x/config.c
* m53xx.c -- platform support for ColdFire 53xx based boards
*
* Copyright (C) 1999-2002, Greg Ungerer ([email protected])
* Copyright (C) 2000, Lineo (www.lineo.com)
Expand Down Expand Up @@ -118,7 +118,8 @@ static struct clk * const enable_clks[] __initconst = {
&__clk_0_24, /* mcfuart.0 */
&__clk_0_25, /* mcfuart.1 */
&__clk_0_26, /* mcfuart.2 */

&__clk_0_28, /* mcftmr.0 */
&__clk_0_29, /* mcftmr.1 */
&__clk_0_32, /* mcfpit.0 */
&__clk_0_33, /* mcfpit.1 */
&__clk_0_37, /* mcfeport.0 */
Expand All @@ -134,8 +135,6 @@ static struct clk * const disable_clks[] __initconst = {
&__clk_0_17, /* edma */
&__clk_0_22, /* mcfi2c.0 */
&__clk_0_23, /* mcfqspi.0 */
&__clk_0_28, /* mcftmr.0 */
&__clk_0_29, /* mcftmr.1 */
&__clk_0_30, /* mcftmr.2 */
&__clk_0_31, /* mcftmr.3 */
&__clk_0_34, /* mcfpit.2 */
Expand All @@ -153,7 +152,7 @@ static struct clk * const disable_clks[] __initconst = {
};


static void __init m532x_clk_init(void)
static void __init m53xx_clk_init(void)
{
unsigned i;

Expand All @@ -169,7 +168,7 @@ static void __init m532x_clk_init(void)

#if IS_ENABLED(CONFIG_SPI_COLDFIRE_QSPI)

static void __init m532x_qspi_init(void)
static void __init m53xx_qspi_init(void)
{
/* setup QSPS pins for QSPI with gpio CS control */
writew(0x01f0, MCFGPIO_PAR_QSPI);
Expand All @@ -179,15 +178,15 @@ static void __init m532x_qspi_init(void)

/***************************************************************************/

static void __init m532x_uarts_init(void)
static void __init m53xx_uarts_init(void)
{
/* UART GPIO initialization */
writew(readw(MCFGPIO_PAR_UART) | 0x0FFF, MCFGPIO_PAR_UART);
}

/***************************************************************************/

static void __init m532x_fec_init(void)
static void __init m53xx_fec_init(void)
{
u8 v;

Expand Down Expand Up @@ -217,11 +216,11 @@ void __init config_BSP(char *commandp, int size)
}
#endif
mach_sched_init = hw_timer_init;
m532x_clk_init();
m532x_uarts_init();
m532x_fec_init();
m53xx_clk_init();
m53xx_uarts_init();
m53xx_fec_init();
#if IS_ENABLED(CONFIG_SPI_COLDFIRE_QSPI)
m532x_qspi_init();
m53xx_qspi_init();
#endif

#ifdef CONFIG_BDM_DISABLE
Expand Down
2 changes: 1 addition & 1 deletion arch/m68k/platform/coldfire/timers.c
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@
*/
void coldfire_profile_init(void);

#if defined(CONFIG_M532x) || defined(CONFIG_M5441x)
#if defined(CONFIG_M53xx) || defined(CONFIG_M5441x)
#define __raw_readtrr __raw_readl
#define __raw_writetrr __raw_writel
#else
Expand Down
1 change: 0 additions & 1 deletion drivers/tty/serial/68328serial.c
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,6 @@
* 2.4/2.5 port David McCullough
*/

#include <asm/dbg.h>
#include <linux/module.h>
#include <linux/errno.h>
#include <linux/serial.h>
Expand Down
5 changes: 4 additions & 1 deletion fs/romfs/mmap-nommu.c
Original file line number Diff line number Diff line change
Expand Up @@ -49,8 +49,11 @@ static unsigned long romfs_get_unmapped_area(struct file *file,
return (unsigned long) -EINVAL;

offset += ROMFS_I(inode)->i_dataoffset;
if (offset > mtd->size - len)
if (offset >= mtd->size)
return (unsigned long) -EINVAL;
/* the mapping mustn't extend beyond the EOF */
if ((offset + len) > mtd->size)
len = mtd->size - offset;

ret = mtd_get_unmapped_area(mtd, len, offset, flags);
if (ret == -EOPNOTSUPP)
Expand Down

0 comments on commit 977b58e

Please sign in to comment.