1746 Commits

Author SHA1 Message Date
ru
00c76003d2 Restore support for -c and -d that were treacherously murdered in
rev. 1.58.  (This only costs us four bytes.)

Prodded by:	bde
MFC after:	3 days
2006-10-26 19:41:02 +00:00
ru
72a6cefb67 Back out rev. 1.71 as it breaks directly loading (i386) kernels.
OK'ed by:	jhb
PR:		i386/96430, i386/104709
MFC after:	3 days
2006-10-26 19:15:54 +00:00
imp
d928160750 Don't descend into at91 until we sort out the boot loader issues more generally 2006-10-23 00:05:28 +00:00
imp
83009d5ef8 MFp4: default to not loading the fpga 2006-10-21 22:51:21 +00:00
imp
42aaacd596 MFp4: Update to smaller code footprint. 2006-10-21 22:44:26 +00:00
imp
824e6015c6 MFp4: Move to smaller code footprint. 2006-10-21 22:43:39 +00:00
imp
ceb6dbfdd1 MFp4: Move to smaller code. This was somehow forgotten before. 2006-10-21 22:43:07 +00:00
imp
6ea184e790 There's no fpga.c, so omit it. 2006-10-20 16:57:30 +00:00
imp
5a969a2f85 MFp4:
Massive update.  The highlights:
	o dramatically cut memory usage by writing better, less intertwingled
	  code.
	o implement booting off mmc/sd cards (sd only tested one at the moment)
	o start to split out board specific stuff for boot2.
2006-10-20 09:12:05 +00:00
ru
c43e76ed8f Replace a rarely used "depuration" with "debugging".
PR:		docs/85127
Submitted by:	Gary W. Swearingen (partially)
MFC after:	3 days
2006-10-13 20:48:17 +00:00
kmacy
5a59ed693d more sun4v fallout - missed add
Approved by: rwatson (mentor)
2006-10-09 07:00:59 +00:00
kmacy
98d1f51687 unbreak sparc64 loader build
re-add accidentally deleted asi value
remove sun4v only header include

Approved by: rwatson (mentor)
Reviewed by: jmg
2006-10-09 05:59:04 +00:00
kmacy
e9d6f8c905 add sun4v support to the sparc64 boot loader
Approved by: rwatson (mentor)
Reviewed by: jmg
Tested by: kris, dwhite, and jmg
2006-10-09 04:43:07 +00:00
pav
2c9c02b81b - Update URL of Intel documentation
Submitted by:	Rob <spamrefuse@yahoo.com> on freebsd-doc
MFC after:	3 days
2006-10-07 10:39:34 +00:00
jhb
f576e0540b - Fix a couple of improper uses of leal in the previous space saving
commits.  For some reason I thought the scale factor was a shift count
  rather than the multiplicand (that is, I thought leal (%eax,%edx,4) was
  going to generate %eax + %edx << 4 rather than %eax + %edx * 4).  What
  I need is to multiply by 16 to convert a real-mode (seg, offset) tuple
  into a flat address.  However, the max multiplicand for scaled/index
  addressing on i386 is 8, so go back to using a shl and an add.
- Convert two more inter-register mov instructions where we don't need to
  preserve the source register to xchg instructions to keep our space
  savings.

Tested by:	Ian FREISLICH if at hetzner.co.za
MFC after:	1 week
2006-10-05 15:30:51 +00:00
ariff
984ed308c3 Add module loading option for Intel High Definition Audio Controller
- snd_hda(4)
2006-10-01 14:58:30 +00:00
netchild
cc75332666 Add snd_envy24ht and remove the snd_ak4* module. 2006-09-30 18:07:26 +00:00
ru
a41116404c Fix WARNS=2 warnings. 2006-09-29 20:57:38 +00:00
ru
4a9bb44813 Fix most of the WARNS=2 warnings. 2006-09-29 20:27:41 +00:00
jhb
4a28927c3c Oops, add return values for the smap command function. We must have the
warnings set weird or something because gcc didn't warn about this at all.

Submitted by:	ru
2006-09-29 20:07:16 +00:00
jhb
ba03f04b14 Tweak the code to handle intercepting BIOS calls to int 0x15 to shave
another 16 bytes off of BTX (and thus boot2):
- Compare against the value of %eax that is saved on the stack instead of
  loading it into %eax (which requires saving the current %eax on the
  stack).
- Use %ch to examine the keyboard flag state in the BIOS to see if
  Ctrl-Alt-Del is pressed instead of %al so we don't have to save %eax on
  the stack anymore.

MFC after:	1 week
2006-09-28 19:42:10 +00:00
jhb
79660d10e4 Optimize the int 15/87 handler for space to shave another 16 bytes off of
BTX (and thus boot2):
- Don't bother saving %eax, %ebx, or %ecx as it is not necessary.
- Use a more compact sequence to load the base value out of a GDT entry
  by loading the contiguous low 24 bits into the upper 24 bits of %eax,
  loading the high 8 bits into %al, and using a ror to rotate the bits
  (2 mov's and a ror) rather than loading the pieces in smaller chunks
  (3 mov's and a shl).
- Use movzwl + leal instead of movl + movw + shll + addl.
- Use 'xchgl %eax,%foo' rather than 'movl %eax,%foo' for cases where
  it's ok to trash %eax.  xchgl %eax, foo is a 1-byte opcode whereas the
  mov is a 2-byte opcode.
- Use movzwl rather than xorl + movw.

MFC after:	1 week
2006-09-28 19:38:02 +00:00
jhb
7a85c13bc9 Add an 'smap' command that dumps out the BIOS SMAP.
MFC after:	1 week
2006-09-28 19:07:13 +00:00
jhb
1817594458 Ignore a sub-topic match if it is inside the command description.
Otherwise, merge-help can get confused by a command description that
includes a word that starts with a capital S.

MFC after:	1 week
2006-09-28 19:06:20 +00:00
jhb
80c5933f1c A couple of simple tweaks that trim BTX by 6 bytes. Since BTX is
16-byte aligned within boot2 however, this actually trims boot2 by 16
bytes.
2006-09-28 16:30:36 +00:00
ru
99ad5797cb Add -march=i386 to fix amd64 build by generating the same code
as i386 would do.
2006-09-28 10:02:04 +00:00
jhb
f6b387ce53 Emulate moving cr0, cr2, cr3, or cr4 into any i386 general register
rather than just emulating mov cr0, eax.  This fixes some Compaq/HP BIOS
with DMA (as the BIOS tried to read cr3 so it could translate addresses
if paging was enabled).

MFC after:	1 week
2006-09-27 19:32:26 +00:00
tegge
f42473d76b Add mnt_noasync counter to better handle interleaved calls to nmount(),
sync() and sync_fsync() without losing MNT_ASYNC.  Add MNTK_ASYNC flag
which is set only when MNT_ASYNC is set and mnt_noasync is zero, and
check that flag instead of MNT_ASYNC before initiating async io.
2006-09-26 04:15:59 +00:00
ru
d3b5cc24ad - Include <sys/reboot.h> to get the RB_* defines.
- Make the PROBE_KEYBOARD option better resemble the -P option in
  boot2, i.e., if keyboard isn't present then boot with both
  RB_SERIAL and RB_MULTIPLE set.

Reviewed by:	jhb
2006-09-05 19:28:03 +00:00
ru
22b7409ade Make the default "init_path" value breakable, so it fits on the
screen's width, thus eliminating a groff(1) warning.

Suggested by:	marck
2006-08-20 09:31:17 +00:00
imp
1eee061e71 Copy powerpc ficl files sysdep files (maybe we need a common one) 2006-08-18 21:41:43 +00:00
imp
b93cd97574 Build at91 2006-08-18 21:37:27 +00:00
imp
98835e6c84 Support compiling as part of world 2006-08-18 20:26:54 +00:00
brueffer
5642c992cd Wordsmithing on the ixgb(4) and mxge(4) descriptions.
Suggested by:	ru (ixgb)
2006-08-18 19:03:28 +00:00
brueffer
ff9270e136 Add more modules, correct alphabetical order. 2006-08-18 17:48:17 +00:00
marck
0d5e6d6efe kern.ipc.nmbclusters is sysctl, not compile-time option. Change Dv to Va.
Touch .Dd.

Pointed out by:	ru
MFC after:	1 week
2006-08-18 10:15:01 +00:00
marck
908b7097ec Remove references to NMBCLUSTERS which is obsoleted.
PR:		100427
Approved by:	maxim
MFC after:	1 week
2006-08-18 08:03:06 +00:00
imp
b3160d204f MFp4: changes since .s -> .S rename. Use correct header for size 2006-08-17 00:14:32 +00:00
imp
8fc3a4c4bb MFp4: First cut at making spi and/or sd card booting work, needs work 2006-08-16 23:39:58 +00:00
imp
06f9bdf49a MFp4:
Tidy up a bit.  Make sure that the burned image matches the downloaded
one.
2006-08-16 23:18:07 +00:00
imp
25ea85244a MFp4:
Simplify life a little for such a simple program.
2006-08-16 23:14:52 +00:00
brueffer
3058e38d1e Several updates:
- Added missing file system/network/sound module entries
- Removed obsolete network module entries
- Capitalized (Fast|Gigabit) Ethernet

MFC after:	1 week
2006-08-14 18:04:01 +00:00
imp
246a49807b MFp4: Integrate a boatload of bug fixes from p4. We're right on the
8k boundary with this program still.

   text    data     bss     dec     hex filename
   7925       4    4476   12405    3075 bootiic.out

so we have like 293 bytes left before we have to play games.  There
may be ways to reduce that somewhat, but they start to be very board
specific.
2006-08-10 19:55:52 +00:00
imp
b594a7a463 MFp4:
Reach over into the arm tree to grab some at91 definitions.
Better warnings
Lots of build tweaks
2006-08-10 18:22:56 +00:00
imp
4f66f90cd9 MFp4: remove obsolete files 2006-08-10 18:19:45 +00:00
imp
f67340299e MFp4:
Remove obsolete files in list
	Add spi flash reading routines
2006-08-10 18:14:35 +00:00
imp
349e8420c6 MFp4: Numerous changes from p4 to try to improve tftp downloading,
reduce code footprint, etc.  While some problems still remain, the
reliability of tftp is much improved.
2006-08-10 18:11:22 +00:00
imp
74d513176d MFp4: consolidate #include files down to lib.h 2006-08-10 18:07:49 +00:00
imp
42bb82b6ca MFp4: These will migrate to the boot specific directories because they
are too hard to share between the different boot loaders.
2006-08-10 18:07:01 +00:00
imp
bc663dd8c5 MFp4: Make it clearer that the address passed to the eeprom routines is
really an offset within the eeprom device, and not a IIC address.
2006-08-10 18:03:50 +00:00