Home | History | Annotate | only in /src/sys/arch/zaurus/stand/zbsdmod
History log of /src/sys/arch/zaurus/stand/zbsdmod
RevisionDateAuthorComments
 1.12 26-Oct-2019  tsutsui Misc cleanup to avoid future confusion.

- Remove more unnecessary debug sections
- Use DBG instead of COPTS to specify -Os as defined in bsd.prog.mk
- Use CFLAGS and CPPFLAGS correctly
- Explicitly set -ffreestanding
 1.11 23-Sep-2019  christos Consistently use ${RELEASEDIR}/${RELEASEMACHINE} instead of
${RELEASEDIR}/${MACHINE} (Paul Ripke)
 1.10 31-Jan-2016  christos branches: 1.10.10; 1.10.18; 1.10.22;
include bsd.init.mk to get Makefile.inc
 1.9 14-Oct-2014  nonaka branches: 1.9.2;
Avoid "unhandled relocation of type 3 for" error when load module.
"insmod zbsdmod.o" is successful now.
 1.8 15-Dec-2013  joerg branches: 1.8.4;
Move flags for ARM's APCS ABI into a common variable. Add some forces to
deal with limitations in the Clang <-> LLVM backend interaction to pick
the correct ABI and target assembler.
 1.7 01-May-2013  matt branches: 1.7.4;
Force abi/float-abi/cpu
Only allow to build on little-endian.
Force MACHINE to be zaurus.
 1.6 11-Dec-2011  nonaka branches: 1.6.6;
- WARNS=4
- object size is more smaller.
 1.5 13-Apr-2009  nonaka branches: 1.5.12; 1.5.16;
Use <bsd.klinks.mk> to create ${MACHINE} and ${MACHINE_ARCH} symlinks.
 1.4 17-Oct-2007  garbled branches: 1.4.20; 1.4.28; 1.4.34;
Merge the ppcoea-renovation branch to HEAD.

This branch was a major cleanup and rototill of many of the various OEA
cpu based PPC ports that focused on sharing as much code as possible
between the various ports to eliminate near-identical copies of files in
every tree. Additionally there is a new PIC system that unifies the
interface to interrupt code for all different OEA ppc arches. The work
for this branch was done by a variety of people, too long to list here.

TODO:
bebox still needs work to complete the transition to -renovation.
ofppc still needs a bunch of work, which I will be looking at.
ev64260 still needs to be renovated
amigappc was not attempted.

NOTES:
pmppc was removed as an arch, and moved to a evbppc target.
 1.3 17-Aug-2007  he branches: 1.3.2;
Use $INSTALL_FILE, not just $INSTALL so that unpriviliged builds work.
 1.2 09-Aug-2007  nonaka build and install zbsdmod.o.
 1.1 17-Dec-2006  peter branches: 1.1.2; 1.1.4; 1.1.6; 1.1.12; 1.1.20; 1.1.24; 1.1.26; 1.1.28;
Update from the latest Zaurus source from NONAKA Kimihiro.

- LCD screen and keyboard are working now.
- Add bootstrap loader.
 1.1.28.2 03-Sep-2007  jmcneill Sync with HEAD.
 1.1.28.1 16-Aug-2007  jmcneill Sync with HEAD.
 1.1.26.1 01-Nov-2007  rjs Sync with HEAD.
 1.1.24.2 03-Sep-2007  skrll Sync with HEAD.
 1.1.24.1 15-Aug-2007  skrll Sync with HEAD.
 1.1.20.1 03-Oct-2007  garbled Sync with HEAD
 1.1.12.1 20-Aug-2007  ad Sync with HEAD.
 1.1.6.2 12-Jan-2007  ad Sync with head.
 1.1.6.1 17-Dec-2006  ad file Makefile was added on branch newlock2 on 2007-01-12 01:01:03 +0000
 1.1.4.3 03-Sep-2007  yamt sync with head.
 1.1.4.2 30-Dec-2006  yamt sync with head.
 1.1.4.1 17-Dec-2006  yamt file Makefile was added on branch yamt-lazymbuf on 2006-12-30 20:47:31 +0000
 1.1.2.2 18-Dec-2006  yamt sync with head.
 1.1.2.1 17-Dec-2006  yamt file Makefile was added on branch yamt-splraiseipl on 2006-12-18 11:42:12 +0000
 1.3.2.1 06-Nov-2007  matt sync with HEAD
 1.4.34.1 13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.4.28.1 28-Apr-2009  skrll Sync with HEAD.
 1.4.20.1 04-May-2009  yamt sync with head.
 1.5.16.1 18-Feb-2012  mrg merge to -current.
 1.5.12.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.5.12.1 17-Apr-2012  yamt sync with head
 1.6.6.3 03-Dec-2017  jdolecek update from HEAD
 1.6.6.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.6.6.1 23-Jun-2013  tls resync from head
 1.7.4.1 18-May-2014  rmind sync with head
 1.8.4.1 15-Oct-2014  martin Pull up following revision(s) (requested by nonaka in ticket #141):
sys/arch/zaurus/stand/zbsdmod/Makefile: revision 1.9
Avoid "unhandled relocation of type 3 for" error when load module.
"insmod zbsdmod.o" is successful now.
 1.9.2.1 19-Mar-2016  skrll Sync with HEAD
 1.10.22.1 03-Nov-2019  martin Pull up following revision(s) (requested by tsutsui in ticket #391):

sys/arch/zaurus/stand/zbsdmod/Makefile: revision 1.12
sys/arch/zaurus/stand/zbsdmod/zbsdmod.c: revision 1.10
sys/arch/zaurus/conf/Makefile.zaurus.inc: revision 1.10
sys/arch/zaurus/stand/zbsdmod/zbsdmod.c: revision 1.11
sys/arch/zaurus/stand/zbsdmod/compat_linux.h: revision 1.7

Explicitly set empty LINKENTRY to keep ENTRY address specified in ldscript.

This fixes kernel boot failures of NetBSD/zaurus 8.x and later.
While here, also set empty TEXTADDR also specified in ldscript.

See my post in port-zaurus@ for details:
https://mail-index.netbsd.org/port-zaurus/2019/10/22/msg000069.html

Should be pulled up to netbsd-8 and netbsd-9.

-

Fix another boot failure issue of NetBSD/zaurus 8.x and later.

It looks some cacheline alignment restriction so that zbsdmod.o in
NetBSD/zaurus 8.x release cannot jump to a loaded kernel properly.

Adding an explicit alingment pseudo op to put all instructions
between I-cache flush and jumping to the loaded kernel into the
same cacheline solves the issue.

See my post in port-zaurus@ for details:
https://mail-index.netbsd.org/port-zaurus/2019/10/22/msg000069.html

Should be pulled up to netbsd-8 and netbsd-9.

-

Misc cleanup to avoid future confusion.
- Remove more unnecessary debug sections
- Use DBG instead of COPTS to specify -Os as defined in bsd.prog.mk
- Use CFLAGS and CPPFLAGS correctly
- Explicitly set -ffreestanding

-

Make sure to clear bss before jumping to a kernel copied from load buffer.
This will fix yet another boot failure issue
"screen white-out after loading a kernel"
https://mail-index.netbsd.org/port-zaurus/2019/10/26/msg000072.html

Should be pulled up to netbsd-8 and netbsd-9.
 1.10.18.1 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.10.10.1 03-Nov-2019  martin Pull up following revision(s) (requested by tsutsui in ticket #1420):

sys/arch/zaurus/stand/zbsdmod/Makefile: revision 1.12
sys/arch/zaurus/stand/zbsdmod/zbsdmod.c: revision 1.10
sys/arch/zaurus/conf/Makefile.zaurus.inc: revision 1.10
sys/arch/zaurus/stand/zbsdmod/zbsdmod.c: revision 1.11
sys/arch/zaurus/stand/zbsdmod/compat_linux.h: revision 1.7

Explicitly set empty LINKENTRY to keep ENTRY address specified in ldscript.

This fixes kernel boot failures of NetBSD/zaurus 8.x and later.
While here, also set empty TEXTADDR also specified in ldscript.

See my post in port-zaurus@ for details:
https://mail-index.netbsd.org/port-zaurus/2019/10/22/msg000069.html

Should be pulled up to netbsd-8 and netbsd-9.

-

Fix another boot failure issue of NetBSD/zaurus 8.x and later.

It looks some cacheline alignment restriction so that zbsdmod.o in
NetBSD/zaurus 8.x release cannot jump to a loaded kernel properly.

Adding an explicit alingment pseudo op to put all instructions
between I-cache flush and jumping to the loaded kernel into the
same cacheline solves the issue.

See my post in port-zaurus@ for details:
https://mail-index.netbsd.org/port-zaurus/2019/10/22/msg000069.html

Should be pulled up to netbsd-8 and netbsd-9.

-

Misc cleanup to avoid future confusion.
- Remove more unnecessary debug sections
- Use DBG instead of COPTS to specify -Os as defined in bsd.prog.mk
- Use CFLAGS and CPPFLAGS correctly
- Explicitly set -ffreestanding

-

Make sure to clear bss before jumping to a kernel copied from load buffer.
This will fix yet another boot failure issue
"screen white-out after loading a kernel"
https://mail-index.netbsd.org/port-zaurus/2019/10/26/msg000072.html

Should be pulled up to netbsd-8 and netbsd-9.
 1.7 28-Oct-2019  tsutsui Make sure to clear bss before jumping to a kernel copied from load buffer.

This will fix yet another boot failure issue
"screen white-out after loading a kernel"
https://mail-index.netbsd.org/port-zaurus/2019/10/26/msg000072.html

Should be pulled up to netbsd-8 and netbsd-9.
 1.6 11-Dec-2011  nonaka branches: 1.6.40; 1.6.48; 1.6.52;
- WARNS=4
- object size is more smaller.
 1.5 26-Dec-2010  nonaka branches: 1.5.8; 1.5.12;
Advertise printk() as a printf-like function. (from OpenBSD)
 1.4 17-Oct-2007  garbled branches: 1.4.42;
Merge the ppcoea-renovation branch to HEAD.

This branch was a major cleanup and rototill of many of the various OEA
cpu based PPC ports that focused on sharing as much code as possible
between the various ports to eliminate near-identical copies of files in
every tree. Additionally there is a new PIC system that unifies the
interface to interrupt code for all different OEA ppc arches. The work
for this branch was done by a variety of people, too long to list here.

TODO:
bebox still needs work to complete the transition to -renovation.
ofppc still needs a bunch of work, which I will be looking at.
ev64260 still needs to be renovated
amigappc was not attempted.

NOTES:
pmppc was removed as an arch, and moved to a evbppc target.
 1.3 28-Jun-2007  nonaka branches: 1.3.10;
Added RCS Id.
 1.2 28-Jun-2007  nonaka remove unused function.
 1.1 17-Dec-2006  peter branches: 1.1.2; 1.1.4; 1.1.6; 1.1.12; 1.1.14; 1.1.20;
Update from the latest Zaurus source from NONAKA Kimihiro.

- LCD screen and keyboard are working now.
- Add bootstrap loader.
 1.1.20.1 03-Oct-2007  garbled Sync with HEAD
 1.1.14.1 11-Jul-2007  mjf Sync with head.
 1.1.12.1 15-Jul-2007  ad Sync with head.
 1.1.6.2 12-Jan-2007  ad Sync with head.
 1.1.6.1 17-Dec-2006  ad file compat_linux.h was added on branch newlock2 on 2007-01-12 01:01:03 +0000
 1.1.4.3 03-Sep-2007  yamt sync with head.
 1.1.4.2 30-Dec-2006  yamt sync with head.
 1.1.4.1 17-Dec-2006  yamt file compat_linux.h was added on branch yamt-lazymbuf on 2006-12-30 20:47:31 +0000
 1.1.2.2 18-Dec-2006  yamt sync with head.
 1.1.2.1 17-Dec-2006  yamt file compat_linux.h was added on branch yamt-splraiseipl on 2006-12-18 11:42:12 +0000
 1.3.10.1 06-Nov-2007  matt sync with HEAD
 1.4.42.1 05-Mar-2011  rmind sync with head
 1.5.12.1 18-Feb-2012  mrg merge to -current.
 1.5.8.1 17-Apr-2012  yamt sync with head
 1.6.52.1 03-Nov-2019  martin Pull up following revision(s) (requested by tsutsui in ticket #391):

sys/arch/zaurus/stand/zbsdmod/Makefile: revision 1.12
sys/arch/zaurus/stand/zbsdmod/zbsdmod.c: revision 1.10
sys/arch/zaurus/conf/Makefile.zaurus.inc: revision 1.10
sys/arch/zaurus/stand/zbsdmod/zbsdmod.c: revision 1.11
sys/arch/zaurus/stand/zbsdmod/compat_linux.h: revision 1.7

Explicitly set empty LINKENTRY to keep ENTRY address specified in ldscript.

This fixes kernel boot failures of NetBSD/zaurus 8.x and later.
While here, also set empty TEXTADDR also specified in ldscript.

See my post in port-zaurus@ for details:
https://mail-index.netbsd.org/port-zaurus/2019/10/22/msg000069.html

Should be pulled up to netbsd-8 and netbsd-9.

-

Fix another boot failure issue of NetBSD/zaurus 8.x and later.

It looks some cacheline alignment restriction so that zbsdmod.o in
NetBSD/zaurus 8.x release cannot jump to a loaded kernel properly.

Adding an explicit alingment pseudo op to put all instructions
between I-cache flush and jumping to the loaded kernel into the
same cacheline solves the issue.

See my post in port-zaurus@ for details:
https://mail-index.netbsd.org/port-zaurus/2019/10/22/msg000069.html

Should be pulled up to netbsd-8 and netbsd-9.

-

Misc cleanup to avoid future confusion.
- Remove more unnecessary debug sections
- Use DBG instead of COPTS to specify -Os as defined in bsd.prog.mk
- Use CFLAGS and CPPFLAGS correctly
- Explicitly set -ffreestanding

-

Make sure to clear bss before jumping to a kernel copied from load buffer.
This will fix yet another boot failure issue
"screen white-out after loading a kernel"
https://mail-index.netbsd.org/port-zaurus/2019/10/26/msg000072.html

Should be pulled up to netbsd-8 and netbsd-9.
 1.6.48.1 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.6.40.1 03-Nov-2019  martin Pull up following revision(s) (requested by tsutsui in ticket #1420):

sys/arch/zaurus/stand/zbsdmod/Makefile: revision 1.12
sys/arch/zaurus/stand/zbsdmod/zbsdmod.c: revision 1.10
sys/arch/zaurus/conf/Makefile.zaurus.inc: revision 1.10
sys/arch/zaurus/stand/zbsdmod/zbsdmod.c: revision 1.11
sys/arch/zaurus/stand/zbsdmod/compat_linux.h: revision 1.7

Explicitly set empty LINKENTRY to keep ENTRY address specified in ldscript.

This fixes kernel boot failures of NetBSD/zaurus 8.x and later.
While here, also set empty TEXTADDR also specified in ldscript.

See my post in port-zaurus@ for details:
https://mail-index.netbsd.org/port-zaurus/2019/10/22/msg000069.html

Should be pulled up to netbsd-8 and netbsd-9.

-

Fix another boot failure issue of NetBSD/zaurus 8.x and later.

It looks some cacheline alignment restriction so that zbsdmod.o in
NetBSD/zaurus 8.x release cannot jump to a loaded kernel properly.

Adding an explicit alingment pseudo op to put all instructions
between I-cache flush and jumping to the loaded kernel into the
same cacheline solves the issue.

See my post in port-zaurus@ for details:
https://mail-index.netbsd.org/port-zaurus/2019/10/22/msg000069.html

Should be pulled up to netbsd-8 and netbsd-9.

-

Misc cleanup to avoid future confusion.
- Remove more unnecessary debug sections
- Use DBG instead of COPTS to specify -Os as defined in bsd.prog.mk
- Use CFLAGS and CPPFLAGS correctly
- Explicitly set -ffreestanding

-

Make sure to clear bss before jumping to a kernel copied from load buffer.
This will fix yet another boot failure issue
"screen white-out after loading a kernel"
https://mail-index.netbsd.org/port-zaurus/2019/10/26/msg000072.html

Should be pulled up to netbsd-8 and netbsd-9.
 1.12 13-Nov-2019  tsutsui Make zaurus kernels use symbol tables loaded by the bootloader.

Now COPY_SYMTAB is no longer necessary and it saves ~500kbytes of
GENERIC, so re-enable options DDB (i.e. revert GENERIC rev 1.85).

Also fix zbsdmod.o (a kernel loader for Zaurus Linux) to load symbols
at a proper address as the MI sys/lib/libsa/loadfile_elf32.c does.

No particular comment on port-zaurus@:
https://mail-index.netbsd.org/port-zaurus/2019/11/11/msg000086.html

Note zbsdmod.c (derived from OpenBSD/zaurus) assumed that the loaded
kernels had "esym" variable at the top of its data section and
implicitly overwrote it with the address of loaded symbol tables.
OpenBSD/zaurus kernels used the esym value written by the zbsdmod.o
to initialize ksyms(4) on startup, but we will avoid such implicit
MD interface between the bootloader and kernels (though we don't
bother to add a symbol address value into bootinfo but just assume
symbols are loaded at end[] of a loaded kernel, as per the MI
libsa loadfile() implementation).

Worth to pullup to both netbsd-8 and netbsd-9.
 1.11 28-Oct-2019  tsutsui Make sure to clear bss before jumping to a kernel copied from load buffer.

This will fix yet another boot failure issue
"screen white-out after loading a kernel"
https://mail-index.netbsd.org/port-zaurus/2019/10/26/msg000072.html

Should be pulled up to netbsd-8 and netbsd-9.
 1.10 26-Oct-2019  tsutsui Fix another boot failure issue of NetBSD/zaurus 8.x and later.

It looks some cacheline alignment restriction so that zbsdmod.o in
NetBSD/zaurus 8.x release cannot jump to a loaded kernel properly.
Adding an explicit alingment pseudo op to put all instructions
between I-cache flush and jumping to the loaded kernel into the
same cacheline solves the issue.

See my post in port-zaurus@ for details:
https://mail-index.netbsd.org/port-zaurus/2019/10/22/msg000069.html

Should be pulled up to netbsd-8 and netbsd-9.
 1.9 02-Dec-2013  joerg branches: 1.9.22; 1.9.30; 1.9.34;
Don't use cpsr_all/spsr_all with mrs, it doesn't take a mask.
 1.8 16-Dec-2011  nonaka branches: 1.8.6; 1.8.10;
more clean D-cache.
 1.7 11-Dec-2011  nonaka - WARNS=4
- object size is more smaller.
 1.6 05-May-2011  nonaka branches: 1.6.4; 1.6.8;
Reduce kernel size.
Tested on SL-C1000.

Fix PR/44898.
 1.5 26-Dec-2010  nonaka branches: 1.5.2;
Add missing argument to printk(). (from OpenBSD)
 1.4 02-Mar-2009  nonaka branches: 1.4.4;
Added zboot from OpenBSD.
 1.3 12-Nov-2008  ad branches: 1.3.4;
Remove LKMs and switch to the module framework, pass 1.

Proposed on tech-kern@.
 1.2 11-Apr-2008  nonaka branches: 1.2.4; 1.2.10; 1.2.12;
increase bsdimage size.
 1.1 17-Dec-2006  peter branches: 1.1.2; 1.1.4; 1.1.6; 1.1.50;
Update from the latest Zaurus source from NONAKA Kimihiro.

- LCD screen and keyboard are working now.
- Add bootstrap loader.
 1.1.50.2 17-Jan-2009  mjf Sync with HEAD.
 1.1.50.1 02-Jun-2008  mjf Sync with HEAD.
 1.1.6.2 12-Jan-2007  ad Sync with head.
 1.1.6.1 17-Dec-2006  ad file zbsdmod.c was added on branch newlock2 on 2007-01-12 01:01:03 +0000
 1.1.4.2 30-Dec-2006  yamt sync with head.
 1.1.4.1 17-Dec-2006  yamt file zbsdmod.c was added on branch yamt-lazymbuf on 2006-12-30 20:47:31 +0000
 1.1.2.2 18-Dec-2006  yamt sync with head.
 1.1.2.1 17-Dec-2006  yamt file zbsdmod.c was added on branch yamt-splraiseipl on 2006-12-18 11:42:12 +0000
 1.2.12.2 03-Mar-2009  skrll Sync with HEAD.
 1.2.12.1 19-Jan-2009  skrll Sync with HEAD.
 1.2.10.1 13-Dec-2008  haad Update haad-dm branch to haad-dm-base2.
 1.2.4.1 04-May-2009  yamt sync with head.
 1.3.4.1 13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.4.4.2 31-May-2011  rmind sync with head
 1.4.4.1 05-Mar-2011  rmind sync with head
 1.5.2.1 06-Jun-2011  jruoho Sync with HEAD.
 1.6.8.1 18-Feb-2012  mrg merge to -current.
 1.6.4.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.6.4.1 17-Apr-2012  yamt sync with head
 1.8.10.1 18-May-2014  rmind sync with head
 1.8.6.1 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.9.34.2 16-Nov-2019  martin Pull up following revision(s) (requested by tsutsui in ticket #431):

sys/arch/zaurus/conf/GENERIC: revision 1.89
sys/arch/zaurus/stand/zbsdmod/zbsdmod.c: revision 1.12
sys/arch/zaurus/conf/INSTALL: revision 1.40
sys/arch/zaurus/zaurus/machdep.c: revision 1.45

Make zaurus kernels use symbol tables loaded by the bootloader.

Now COPY_SYMTAB is no longer necessary and it saves ~500kbytes of
GENERIC, so re-enable options DDB (i.e. revert GENERIC rev 1.85).
Also fix zbsdmod.o (a kernel loader for Zaurus Linux) to load symbols
at a proper address as the MI sys/lib/libsa/loadfile_elf32.c does.

No particular comment on port-zaurus@:

https://mail-index.netbsd.org/port-zaurus/2019/11/11/msg000086.html

Note zbsdmod.c (derived from OpenBSD/zaurus) assumed that the loaded
kernels had "esym" variable at the top of its data section and
implicitly overwrote it with the address of loaded symbol tables.
OpenBSD/zaurus kernels used the esym value written by the zbsdmod.o
to initialize ksyms(4) on startup, but we will avoid such implicit
MD interface between the bootloader and kernels (though we don't
bother to add a symbol address value into bootinfo but just assume
symbols are loaded at end[] of a loaded kernel, as per the MI
libsa loadfile() implementation).

Worth to pullup to both netbsd-8 and netbsd-9.
 1.9.34.1 03-Nov-2019  martin Pull up following revision(s) (requested by tsutsui in ticket #391):

sys/arch/zaurus/stand/zbsdmod/Makefile: revision 1.12
sys/arch/zaurus/stand/zbsdmod/zbsdmod.c: revision 1.10
sys/arch/zaurus/conf/Makefile.zaurus.inc: revision 1.10
sys/arch/zaurus/stand/zbsdmod/zbsdmod.c: revision 1.11
sys/arch/zaurus/stand/zbsdmod/compat_linux.h: revision 1.7

Explicitly set empty LINKENTRY to keep ENTRY address specified in ldscript.

This fixes kernel boot failures of NetBSD/zaurus 8.x and later.
While here, also set empty TEXTADDR also specified in ldscript.

See my post in port-zaurus@ for details:
https://mail-index.netbsd.org/port-zaurus/2019/10/22/msg000069.html

Should be pulled up to netbsd-8 and netbsd-9.

-

Fix another boot failure issue of NetBSD/zaurus 8.x and later.

It looks some cacheline alignment restriction so that zbsdmod.o in
NetBSD/zaurus 8.x release cannot jump to a loaded kernel properly.

Adding an explicit alingment pseudo op to put all instructions
between I-cache flush and jumping to the loaded kernel into the
same cacheline solves the issue.

See my post in port-zaurus@ for details:
https://mail-index.netbsd.org/port-zaurus/2019/10/22/msg000069.html

Should be pulled up to netbsd-8 and netbsd-9.

-

Misc cleanup to avoid future confusion.
- Remove more unnecessary debug sections
- Use DBG instead of COPTS to specify -Os as defined in bsd.prog.mk
- Use CFLAGS and CPPFLAGS correctly
- Explicitly set -ffreestanding

-

Make sure to clear bss before jumping to a kernel copied from load buffer.
This will fix yet another boot failure issue
"screen white-out after loading a kernel"
https://mail-index.netbsd.org/port-zaurus/2019/10/26/msg000072.html

Should be pulled up to netbsd-8 and netbsd-9.
 1.9.30.1 13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.9.22.2 16-Nov-2019  martin Pull up following revision(s) (requested by tsutsui in ticket #1446):

sys/arch/zaurus/conf/GENERIC: revision 1.89
sys/arch/zaurus/stand/zbsdmod/zbsdmod.c: revision 1.12
sys/arch/zaurus/conf/INSTALL: revision 1.40
sys/arch/zaurus/zaurus/machdep.c: revision 1.40
sys/arch/zaurus/zaurus/machdep.c: revision 1.45
sys/arch/zaurus/conf/GENERIC: revision 1.85

Yes, we need to load symbols, but we don't need the whole DDB infrastructure
for that.

bye ddb and we fit again.

Make zaurus kernels use symbol tables loaded by the bootloader.
Now COPY_SYMTAB is no longer necessary and it saves ~500kbytes of
GENERIC, so re-enable options DDB (i.e. revert GENERIC rev 1.85).

Also fix zbsdmod.o (a kernel loader for Zaurus Linux) to load symbols
at a proper address as the MI sys/lib/libsa/loadfile_elf32.c does.

No particular comment on port-zaurus@:

https://mail-index.netbsd.org/port-zaurus/2019/11/11/msg000086.html

Note zbsdmod.c (derived from OpenBSD/zaurus) assumed that the loaded
kernels had "esym" variable at the top of its data section and
implicitly overwrote it with the address of loaded symbol tables.
OpenBSD/zaurus kernels used the esym value written by the zbsdmod.o
to initialize ksyms(4) on startup, but we will avoid such implicit
MD interface between the bootloader and kernels (though we don't
bother to add a symbol address value into bootinfo but just assume
symbols are loaded at end[] of a loaded kernel, as per the MI
libsa loadfile() implementation).

Worth to pullup to both netbsd-8 and netbsd-9.
 1.9.22.1 03-Nov-2019  martin Pull up following revision(s) (requested by tsutsui in ticket #1420):

sys/arch/zaurus/stand/zbsdmod/Makefile: revision 1.12
sys/arch/zaurus/stand/zbsdmod/zbsdmod.c: revision 1.10
sys/arch/zaurus/conf/Makefile.zaurus.inc: revision 1.10
sys/arch/zaurus/stand/zbsdmod/zbsdmod.c: revision 1.11
sys/arch/zaurus/stand/zbsdmod/compat_linux.h: revision 1.7

Explicitly set empty LINKENTRY to keep ENTRY address specified in ldscript.

This fixes kernel boot failures of NetBSD/zaurus 8.x and later.
While here, also set empty TEXTADDR also specified in ldscript.

See my post in port-zaurus@ for details:
https://mail-index.netbsd.org/port-zaurus/2019/10/22/msg000069.html

Should be pulled up to netbsd-8 and netbsd-9.

-

Fix another boot failure issue of NetBSD/zaurus 8.x and later.

It looks some cacheline alignment restriction so that zbsdmod.o in
NetBSD/zaurus 8.x release cannot jump to a loaded kernel properly.

Adding an explicit alingment pseudo op to put all instructions
between I-cache flush and jumping to the loaded kernel into the
same cacheline solves the issue.

See my post in port-zaurus@ for details:
https://mail-index.netbsd.org/port-zaurus/2019/10/22/msg000069.html

Should be pulled up to netbsd-8 and netbsd-9.

-

Misc cleanup to avoid future confusion.
- Remove more unnecessary debug sections
- Use DBG instead of COPTS to specify -Os as defined in bsd.prog.mk
- Use CFLAGS and CPPFLAGS correctly
- Explicitly set -ffreestanding

-

Make sure to clear bss before jumping to a kernel copied from load buffer.
This will fix yet another boot failure issue
"screen white-out after loading a kernel"
https://mail-index.netbsd.org/port-zaurus/2019/10/26/msg000072.html

Should be pulled up to netbsd-8 and netbsd-9.

RSS XML Feed