Home | History | Annotate | Download | only in smdk2xx0
History log of /src/sys/arch/evbarm/smdk2xx0/smdk2410_machdep.c
RevisionDateAuthorComments
 1.47  20-Feb-2024  andvar Fix format specifier for physmem from %d to 0x%"PRIxPSIZE" in multiple places.

Should fix VERBOSE_INIT_ARM for various evbarm kernel configs.
Also add 0x prefix in few previously fixed places to improve readability.
 1.46  20-Apr-2023  skrll Provide a shared pmap_devmap implementation and convert all pmap_devmap
arrays to use DEVMAP_ENTRY{,_END}
 1.45  17-Aug-2021  andvar fix multiplei repetitive typos in comments, messages and documentation. mainly because copy paste code big amount of files are affected.
 1.44  18-Apr-2020  skrll PMAP_DEBUG has been deleted on arm
 1.43  18-Apr-2020  skrll Trailing whitespace
 1.42  10-Nov-2019  chs branches: 1.42.6;
in many device attach paths, allocate memory with M_WAITOK instead of M_NOWAIT
and remove code to handle failures that can no longer happen.
 1.41  16-Jul-2019  skrll Consistently use vaddr_t as initarm and friends return type.

Makes no difference to binaries except for aarch64 where it's required
 1.40  16-Jul-2019  skrll KNF
 1.39  28-Oct-2018  skrll Fix a commit
 1.38  21-Sep-2018  skrll Centralise defparam CONSADDR, CONSPEED, CONMODE and CONADDR into
opt_console.h and adjust.
 1.37  31-Jul-2018  skrll Sprinkle #include "opt_arm_debug.h" where VERBOSE_INIT_ARM is used
 1.36  22-Dec-2016  cherry branches: 1.36.14; 1.36.16;
switch all ports to use uvm_init.c:uvm_md_init()

uvm_setpagesize() is now subsumed within this funciton.
 1.35  13-Sep-2014  matt branches: 1.35.2; 1.35.4;
Replace more vm_offset_t, vm_size_t with vaddr_t, vsize_t
Use paddr_t for msgbufphys
 1.34  27-Feb-2014  joerg GC writeback_dcache_line and clear_dcache_line.
 1.33  18-Aug-2013  matt <arm/locore.h> fallout (fixes some include ordering errors)
 1.32  22-Sep-2012  matt branches: 1.32.2;
Don't use an asm in pmap_activate to update the TTBR, use cpu_setttb instead
but add a second argument to it to indicate whether the TLB/caches need to be
flushed. Default cortex to pmap_needs_fixup = 1. But check the MMFR3 field
to see if the fixed can be skipped.
Use a cf_flag bit 0 to indicate whether the A9 L2 cache should disable (bit 0 = 1)
or enabeld (bit = 0).

With these changes, the A9 MMU can use traverse caches to do MMU tablewalks
Also, make sure all memory has the shareable bit for the A9.
 1.31  16-Aug-2012  matt branches: 1.31.2;
Move the standard definitions of the {UND,IRQ,FIQ,ABT}_STACK_SIZE to
<arm32/machdep.h>
Move the extern for cpu_reset_address to the same file.
Add cpu_reset_address_paddr.
Kill cpu_reset_v4_MMU_disable.
if cpu_reset_address is NULL, then the MMU will be disabled.
 1.30  29-Jul-2012  matt Fix more -fno-common fallout.
Move more variables to common locations.
 1.29  01-Jul-2011  dyoung branches: 1.29.2;
#include <sys/bus.h> instead of <machine/bus.h>.
 1.28  30-Jun-2011  wiz dependant -> dependent
 1.27  26-Dec-2009  uebayasi Use cpu_* prefix to call cpu_* functions (setttb() -> cpu_setttb()); no
functional changes.
 1.26  26-Dec-2009  uebayasi Garbage collect an unused global, vm_offset_t pagetables_start.
 1.25  27-Nov-2009  rmind - Use uvm_lwp_setuarea() instead of directly setting address to lwp_t::l_addr.
- Replace most remaining uses of l_addr with uvm_lwp_getuarea() or lwp_getpcb().
- Amend assembly in ports where it accesses PCB via struct user.
- Rename L_ADDR to L_PCB in few places. Reduce sys/user.h inclusions.
 1.24  26-Nov-2009  matt Kill proc0paddr. Use lwp0.l_addr instead.
 1.23  11-Aug-2009  matt Remove all declarations of physmem from sys/arch. Add an include of
<sys/systm.h> to the one file that did not already contain it.
This now means that physmem can be changed by updating systm.h and uvm_page.c
(excluding fixing printfs)
 1.22  30-Nov-2008  martin As discussed on tech-kern: mutex_init is too heavyweight for early bootstrap
phases, so move the initialization of the ksyms mutex back into main via
a function called ksyms_init. Rename the existing (but quite different)
ksyms_init* variations into ksyms_addsyms_elf() and ksyms_addsyms_explicit()
and adapt machdep code accordingly.
 1.21  18-Nov-2008  cliff fix botched LKM edits
 1.20  12-Nov-2008  ad Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.
 1.19  11-Nov-2008  dyoung It is not appropriate to call pmf_system_shutdown(9) from
doshutdownhooks(9): shutdown hooks registered by shutdownhook_establish(9)
expect to be called with interrupts disabled, but shutdown hooks
registered with pmf_device_register1(9) expect to be called with
interrupts enabled. So I have made two changes:

1 Do not call pmf_system_shutdown() from doshutdownhooks(). Instead,
change every call to doshutdownhooks() to a call to doshutdownhooks()
followed by a call to pmf_system_shutdown(). No functional change
is intended by this change.

2 Make i386 re-enable interrupts briefly while it calls
pmf_system_shutdown(). I leave it to others either to fix the
other ports, or to factor out some MI shutdown code, as joerg@
suggests, and fix that. Note that a functional change *is* intended
by this change.

I hope that this patch will stop us from flip-flopping between
calling doshutdownhooks() and pmf_system_shutdown() sometimes with
and sometimes without interrupts enabled.
 1.18  27-Apr-2008  matt branches: 1.18.6; 1.18.8;
Merge kernel changes in matt-armv6 to HEAD.
 1.17  19-Jan-2008  chris branches: 1.17.6; 1.17.8; 1.17.10;
Remove arm support for IPKDB.

It hasn't worked since arm was broken out from arm32 in Jan 2001, and
no-one has noticed or cared to fix it.
 1.16  17-May-2006  mrg branches: 1.16.34; 1.16.38; 1.16.44; 1.16.52;
in initarm(), initialise kernel_l1pt.pv_va as well as kernel_l1pt.pv_pa.
 1.15  24-Dec-2005  perry branches: 1.15.4; 1.15.6; 1.15.8; 1.15.12;
bare asm -> __asm
 1.14  24-Dec-2005  perry Remove leading __ from __(const|inline|signed|volatile) -- it is obsolete.
 1.13  11-Dec-2005  christos merge ktrace-lwp.
 1.12  16-Mar-2005  bsh branches: 1.12.4;
Switch SMDK2410 and SMDK2800 kernels to use pmap_devmap_bootstrap() to map
I/O registers that are used in early start-up stage. This replaces the
special bootstrap-time-only bus_space_map function in smdk{2410,2800}_machdep.c.

This makes SMDK{2410,2800}'s initarm() a bit simpler, and gives us smaller diffs
to other evbarm platforms.

An another good thing for SMDK2800 is that now we have all built-in peripheral
registers mapped in 2 segments. We may expect less TLB miss on I/O access
(very slightly).
 1.11  08-Mar-2005  bsh delete unused stuff.
 1.10  12-Dec-2004  abs branches: 1.10.2; 1.10.4;
Fix comments regarding configration bounaries
 1.9  12-Dec-2004  abs Fix comments slighly
 1.8  17-Dec-2003  bsh branches: 1.8.4;
mask all interrupts during bootstrap *correctly*.

call s3c2xx0_intr_bootstrap() to initialize variables used by splfoo().
 1.7  03-Sep-2003  mycroft GC a bogus variable that was causing link failures with PCMCIA.
 1.6  29-Aug-2003  bsh tweak memory controller on startup for CS8900A at CS3 and CL-PD7610 at
CS2.
 1.5  27-Aug-2003  bsh move some definitions of register block size from s3c24[10]0reg.h
to s3c24x0reg.h when they are same for S3C2410 and 2400, and rename them as
S3C24X0_FOO_SIZE.
 1.4  05-Aug-2003  bsh add s3c2xx0_bus_dma_init() which is called by s3c2410_attach().

add a variable wdcdebug_wd_mask for a temporary workaround to the link
error when umass is configured in SMDK2410 kernel. I'll re-visit this
later.
 1.3  04-Aug-2003  bsh don't be too verbose unless VERBOSE_INIT_ARM is defined.
 1.2  01-Aug-2003  bsh delete my private hack sneaked into previous commit.
 1.1  31-Jul-2003  bsh the first cut for Samsung SMDK2410 support.
It is an evaluation board for S3C2410.

XXX: not tested much yet.
XXX: smdk2410_machdep.c and smdk2410_start.S are almost identical
to SMDK2800's. One day I'll merge them.
 1.8.4.6  01-Apr-2005  skrll Sync with HEAD.
 1.8.4.5  18-Dec-2004  skrll Sync with HEAD.
 1.8.4.4  21-Sep-2004  skrll Fix the sync with head I botched.
 1.8.4.3  18-Sep-2004  skrll Sync with HEAD.
 1.8.4.2  03-Aug-2004  skrll Sync with HEAD
 1.8.4.1  17-Dec-2003  skrll file smdk2410_machdep.c was added on branch ktrace-lwp on 2004-08-03 10:34:03 +0000
 1.10.4.1  19-Mar-2005  yamt sync with head. xen and whitespace. xen part is not finished.
 1.10.2.1  29-Apr-2005  kent sync with -current
 1.12.4.2  21-Jan-2008  yamt sync with head
 1.12.4.1  21-Jun-2006  yamt sync with head.
 1.15.12.1  24-May-2006  tron Merge 2006-05-24 NetBSD-current into the "peter-altq" branch.
 1.15.8.1  24-May-2006  yamt sync with head.
 1.15.6.1  01-Jun-2006  kardel Sync with head.
 1.15.4.1  09-Sep-2006  rpaulo sync with head
 1.16.52.1  20-Jan-2008  bouyer Sync with HEAD
 1.16.44.1  18-Feb-2008  mjf Sync with HEAD.
 1.16.38.2  23-Mar-2008  matt sync with HEAD
 1.16.38.1  09-Nov-2007  matt Make all the evbarm kernels build again. Fix lossage from rebase.
 1.16.34.1  28-Feb-2008  rjs Sync with HEAD.
 1.17.10.4  11-Mar-2010  yamt sync with head
 1.17.10.3  19-Aug-2009  yamt sync with head.
 1.17.10.2  04-May-2009  yamt sync with head.
 1.17.10.1  16-May-2008  yamt sync with head.
 1.17.8.1  18-May-2008  yamt sync with head.
 1.17.6.2  17-Jan-2009  mjf Sync with HEAD.
 1.17.6.1  02-Jun-2008  mjf Sync with HEAD.
 1.18.8.1  19-Jan-2009  skrll Sync with HEAD.
 1.18.6.1  13-Dec-2008  haad Update haad-dm branch to haad-dm-base2.
 1.29.2.2  22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.29.2.1  30-Oct-2012  yamt sync with head
 1.31.2.3  03-Dec-2017  jdolecek update from HEAD
 1.31.2.2  20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.31.2.1  20-Nov-2012  tls Resync to 2012-11-19 00:00:00 UTC
 1.32.2.2  18-May-2014  rmind sync with head
 1.32.2.1  28-Aug-2013  rmind sync with head
 1.35.4.1  07-Jan-2017  pgoyette Sync with HEAD. (Note that most of these changes are simply $NetBSD$
tag issues.)
 1.35.2.1  05-Feb-2017  skrll Sync with HEAD
 1.36.16.3  21-Apr-2020  martin Sync with HEAD
 1.36.16.2  13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.36.16.1  10-Jun-2019  christos Sync with HEAD
 1.36.14.3  26-Nov-2018  pgoyette Sync with HEAD, resolve a couple of conflicts
 1.36.14.2  30-Sep-2018  pgoyette Ssync with HEAD
 1.36.14.1  06-Sep-2018  pgoyette Sync with HEAD

Resolve a couple of conflicts (result of the uimin/uimax changes)
 1.42.6.1  20-Apr-2020  bouyer Sync with HEAD

RSS XML Feed