Commit 1850536b authored by Linus Torvalds's avatar Linus Torvalds

Merge git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile

* git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile:
  arch/tile/mm/init.c: trivial: use BUG_ON
  arch/tile: remove useless set_fixmap_nocache() macro
  arch/tile: add hypervisor-based character driver for SPI flash ROM
  ioctl-number.txt: add the tile hardwall ioctl range
  tile: use generic-y format for one-line asm-generic headers
  clocksource: tile: convert to use clocksource_register_hz
parents ed8f3737 d1afa65c
...@@ -292,6 +292,7 @@ Code Seq#(hex) Include File Comments ...@@ -292,6 +292,7 @@ Code Seq#(hex) Include File Comments
<mailto:buk@buks.ipn.de> <mailto:buk@buks.ipn.de>
0xA0 all linux/sdp/sdp.h Industrial Device Project 0xA0 all linux/sdp/sdp.h Industrial Device Project
<mailto:kenji@bitgate.com> <mailto:kenji@bitgate.com>
0xA2 00-0F arch/tile/include/asm/hardwall.h
0xA3 80-8F Port ACL in development: 0xA3 80-8F Port ACL in development:
<mailto:tlewis@mindspring.com> <mailto:tlewis@mindspring.com>
0xA3 90-9F linux/dtlk.h 0xA3 90-9F linux/dtlk.h
......
...@@ -2,3 +2,41 @@ include include/asm-generic/Kbuild.asm ...@@ -2,3 +2,41 @@ include include/asm-generic/Kbuild.asm
header-y += ucontext.h header-y += ucontext.h
header-y += hardwall.h header-y += hardwall.h
generic-y += bug.h
generic-y += bugs.h
generic-y += cputime.h
generic-y += device.h
generic-y += div64.h
generic-y += emergency-restart.h
generic-y += errno.h
generic-y += fb.h
generic-y += fcntl.h
generic-y += ioctl.h
generic-y += ioctls.h
generic-y += ipc.h
generic-y += ipcbuf.h
generic-y += irq_regs.h
generic-y += kdebug.h
generic-y += local.h
generic-y += module.h
generic-y += msgbuf.h
generic-y += mutex.h
generic-y += param.h
generic-y += parport.h
generic-y += poll.h
generic-y += posix_types.h
generic-y += resource.h
generic-y += scatterlist.h
generic-y += sembuf.h
generic-y += serial.h
generic-y += shmbuf.h
generic-y += shmparam.h
generic-y += socket.h
generic-y += sockios.h
generic-y += statfs.h
generic-y += termbits.h
generic-y += termios.h
generic-y += types.h
generic-y += ucontext.h
generic-y += xor.h
#include <asm-generic/bug.h>
#include <asm-generic/bugs.h>
#include <asm-generic/cputime.h>
#include <asm-generic/device.h>
#include <asm-generic/div64.h>
#include <asm-generic/emergency-restart.h>
#include <asm-generic/errno.h>
#include <asm-generic/fb.h>
#include <asm-generic/fcntl.h>
...@@ -75,12 +75,6 @@ extern void __set_fixmap(enum fixed_addresses idx, ...@@ -75,12 +75,6 @@ extern void __set_fixmap(enum fixed_addresses idx,
#define set_fixmap(idx, phys) \ #define set_fixmap(idx, phys) \
__set_fixmap(idx, phys, PAGE_KERNEL) __set_fixmap(idx, phys, PAGE_KERNEL)
/*
* Some hardware wants to get fixmapped without caching.
*/
#define set_fixmap_nocache(idx, phys) \
__set_fixmap(idx, phys, PAGE_KERNEL_NOCACHE)
#define clear_fixmap(idx) \ #define clear_fixmap(idx) \
__set_fixmap(idx, 0, __pgprot(0)) __set_fixmap(idx, 0, __pgprot(0))
......
#include <asm-generic/ioctl.h>
#include <asm-generic/ioctls.h>
#include <asm-generic/ipc.h>
#include <asm-generic/ipcbuf.h>
#include <asm-generic/irq_regs.h>
#include <asm-generic/kdebug.h>
#include <asm-generic/local.h>
#include <asm-generic/module.h>
#include <asm-generic/msgbuf.h>
#include <asm-generic/mutex-dec.h>
#include <asm-generic/param.h>
#include <asm-generic/parport.h>
#include <asm-generic/poll.h>
#include <asm-generic/posix_types.h>
#include <asm-generic/resource.h>
#include <asm-generic/scatterlist.h>
#include <asm-generic/sembuf.h>
#include <asm-generic/serial.h>
#include <asm-generic/shmbuf.h>
#include <asm-generic/shmparam.h>
#include <asm-generic/socket.h>
#include <asm-generic/sockios.h>
#include <asm-generic/statfs.h>
#include <asm-generic/termbits.h>
#include <asm-generic/termios.h>
#include <asm-generic/types.h>
#include <asm-generic/ucontext.h>
#include <asm-generic/xor.h>
/*
* Copyright 2011 Tilera Corporation. All Rights Reserved.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation, version 2.
*
* This program is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, GOOD TITLE or
* NON INFRINGEMENT. See the GNU General Public License for
* more details.
*/
/**
* @file drv_srom_intf.h
* Interface definitions for the SPI Flash ROM driver.
*/
#ifndef _SYS_HV_INCLUDE_DRV_SROM_INTF_H
#define _SYS_HV_INCLUDE_DRV_SROM_INTF_H
/** Read this offset to get the total device size. */
#define SROM_TOTAL_SIZE_OFF 0xF0000000
/** Read this offset to get the device sector size. */
#define SROM_SECTOR_SIZE_OFF 0xF0000004
/** Read this offset to get the device page size. */
#define SROM_PAGE_SIZE_OFF 0xF0000008
/** Write this offset to flush any pending writes. */
#define SROM_FLUSH_OFF 0xF1000000
/** Write this offset, plus the byte offset of the start of a sector, to
* erase a sector. Any write data is ignored, but there must be at least
* one byte of write data. Only applies when the driver is in MTD mode.
*/
#define SROM_ERASE_OFF 0xF2000000
#endif /* _SYS_HV_INCLUDE_DRV_SROM_INTF_H */
...@@ -78,7 +78,6 @@ static struct clocksource cycle_counter_cs = { ...@@ -78,7 +78,6 @@ static struct clocksource cycle_counter_cs = {
.rating = 300, .rating = 300,
.read = clocksource_get_cycles, .read = clocksource_get_cycles,
.mask = CLOCKSOURCE_MASK(64), .mask = CLOCKSOURCE_MASK(64),
.shift = 22, /* typical value, e.g. x86 tsc uses this */
.flags = CLOCK_SOURCE_IS_CONTINUOUS, .flags = CLOCK_SOURCE_IS_CONTINUOUS,
}; };
...@@ -91,8 +90,6 @@ void __init setup_clock(void) ...@@ -91,8 +90,6 @@ void __init setup_clock(void)
cycles_per_sec = hv_sysconf(HV_SYSCONF_CPU_SPEED); cycles_per_sec = hv_sysconf(HV_SYSCONF_CPU_SPEED);
sched_clock_mult = sched_clock_mult =
clocksource_hz2mult(cycles_per_sec, SCHED_CLOCK_SHIFT); clocksource_hz2mult(cycles_per_sec, SCHED_CLOCK_SHIFT);
cycle_counter_cs.mult =
clocksource_hz2mult(cycles_per_sec, cycle_counter_cs.shift);
} }
void __init calibrate_delay(void) void __init calibrate_delay(void)
...@@ -107,7 +104,7 @@ void __init calibrate_delay(void) ...@@ -107,7 +104,7 @@ void __init calibrate_delay(void)
void __init time_init(void) void __init time_init(void)
{ {
/* Initialize and register the clock source. */ /* Initialize and register the clock source. */
clocksource_register(&cycle_counter_cs); clocksource_register_hz(&cycle_counter_cs, cycles_per_sec);
/* Start up the tile-timer interrupt source on the boot cpu. */ /* Start up the tile-timer interrupt source on the boot cpu. */
setup_tile_timer(); setup_tile_timer();
......
...@@ -836,8 +836,7 @@ void __init mem_init(void) ...@@ -836,8 +836,7 @@ void __init mem_init(void)
#endif #endif
#ifdef CONFIG_FLATMEM #ifdef CONFIG_FLATMEM
if (!mem_map) BUG_ON(!mem_map);
BUG();
#endif #endif
#ifdef CONFIG_HIGHMEM #ifdef CONFIG_HIGHMEM
......
...@@ -616,5 +616,16 @@ config MSM_SMD_PKT ...@@ -616,5 +616,16 @@ config MSM_SMD_PKT
Enables userspace clients to read and write to some packet SMD Enables userspace clients to read and write to some packet SMD
ports via device interface for MSM chipset. ports via device interface for MSM chipset.
config TILE_SROM
bool "Character-device access via hypervisor to the Tilera SPI ROM"
depends on TILE
default y
---help---
This device provides character-level read-write access
to the SROM, typically via the "0", "1", and "2" devices
in /dev/srom/. The Tilera hypervisor makes the flash
device appear much like a simple EEPROM, and knows
how to partition a single ROM for multiple purposes.
endmenu endmenu
...@@ -63,3 +63,5 @@ obj-$(CONFIG_RAMOOPS) += ramoops.o ...@@ -63,3 +63,5 @@ obj-$(CONFIG_RAMOOPS) += ramoops.o
obj-$(CONFIG_JS_RTC) += js-rtc.o obj-$(CONFIG_JS_RTC) += js-rtc.o
js-rtc-y = rtc.o js-rtc-y = rtc.o
obj-$(CONFIG_TILE_SROM) += tile-srom.o
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment