litedram: Add support for Microwatt-initialized controller
This adds support for initializing the memory controller from microwatt rather than using a built-in RiscV processor. This might require some fixes to LiteX and LiteDRAM (they haven't been merged as of this commit yet). This is enabled in the shipped generated files and can be changed via modifying the generator script to pass False to "mw_init" Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>pull/170/head
parent
c5f5f50738
commit
7f1f6b8525
@ -1,3 +1,17 @@
|
|||||||
static inline void flush_cpu_dcache(void) { }
|
static inline void flush_cpu_dcache(void) { }
|
||||||
static inline void flush_l2_cache(void) { }
|
static inline void flush_l2_cache(void) { }
|
||||||
|
|
||||||
|
#define CONFIG_CPU_NOP "nop"
|
||||||
|
#define CONFIG_CLOCK_FREQUENCY 100000000
|
||||||
|
|
||||||
|
static inline void timer0_en_write(int e) { }
|
||||||
|
static inline void timer0_reload_write(int r) { }
|
||||||
|
static inline void timer0_load_write(int l) { }
|
||||||
|
static inline void timer0_update_value_write(int v) { }
|
||||||
|
static inline uint64_t timer0_value_read(void)
|
||||||
|
{
|
||||||
|
uint64_t val;
|
||||||
|
|
||||||
|
__asm__ volatile ("mfdec %0" : "=r" (val));
|
||||||
|
return val;
|
||||||
|
}
|
||||||
|
@ -0,0 +1,32 @@
|
|||||||
|
/******************************************************************************
|
||||||
|
* Copyright (c) 2004, 2008 IBM Corporation
|
||||||
|
* All rights reserved.
|
||||||
|
* This program and the accompanying materials
|
||||||
|
* are made available under the terms of the BSD License
|
||||||
|
* which accompanies this distribution, and is available at
|
||||||
|
* http://www.opensource.org/licenses/bsd-license.php
|
||||||
|
*
|
||||||
|
* Contributors:
|
||||||
|
* IBM Corporation - initial implementation
|
||||||
|
*****************************************************************************/
|
||||||
|
|
||||||
|
#ifndef _LIMITS_H
|
||||||
|
#define _LIMITS_H
|
||||||
|
|
||||||
|
#define UCHAR_MAX 255
|
||||||
|
#define SCHAR_MAX 127
|
||||||
|
#define SCHAR_MIN (-128)
|
||||||
|
|
||||||
|
#define USHRT_MAX 65535
|
||||||
|
#define SHRT_MAX 32767
|
||||||
|
#define SHRT_MIN (-32768)
|
||||||
|
|
||||||
|
#define UINT_MAX (4294967295U)
|
||||||
|
#define INT_MAX 2147483647
|
||||||
|
#define INT_MIN (-2147483648)
|
||||||
|
|
||||||
|
#define ULONG_MAX ((unsigned long)-1L)
|
||||||
|
#define LONG_MAX (ULONG_MAX/2)
|
||||||
|
#define LONG_MIN ((-LONG_MAX)-1)
|
||||||
|
|
||||||
|
#endif
|
@ -1 +0,0 @@
|
|||||||
vexriscv
|
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
@ -1 +0,0 @@
|
|||||||
vexriscv
|
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
Loading…
Reference in New Issue