Commit Graph

75968 Commits

Author SHA1 Message Date
Warner Losh
e9077454e4 Merge r187428, r191079, r195533, r195669, r197004, r197012 and r197015
from projects/mips to head by hand:

r197015 | imp | 2009-09-08 21:59:46 -0600 (Tue, 08 Sep 2009) | 2 lines
Prefer PTR_LA over a naked la to work with 64-bits..

r197012 | imp | 2009-09-08 21:46:04 -0600 (Tue, 08 Sep 2009) | 3 lines
Use proper set of flags to build the tramp.  this gets 64-bit almost
building and lets me debug the 'almost' :)

r197004 | imp | 2009-09-08 18:47:12 -0600 (Tue, 08 Sep 2009) | 2 lines
Use ${LDSCRIPT_NAME} in preference to ldscript.$M.

r195669 | gonzo | 2009-07-13 17:03:44 -0600 (Mon, 13 Jul 2009) | 3 lines
- Remove -mno-dsp from CFLAGS. MIPS DSP ASE is off by default
  now (as it should be)

r195533 | imp | 2009-07-10 01:21:26 -0600 (Fri, 10 Jul 2009) | 4 lines
Add in the emulation selection when linking...  We're still not 100%
of the way there, but we're better with it.  hack.so build now, but
we die when we try to link it in.

r191079 | gonzo | 2009-04-14 16:53:22 -0600 (Tue, 14 Apr 2009) | 2 lines
- Revert changes accidentally killed by merge operation

r187418 | gonzo | 2009-01-18 19:37:10 -0700 (Sun, 18 Jan 2009) | 4 lines
- Add trampoline stuff for bootloaders that do not support ELF
- Replace arm'ish KERNPHYSADDR/KERNVIRTADDR with
    KERNLOADADDR/TRAMPLOADADDR and clean configs
2010-01-10 05:34:46 +00:00
Warner Losh
604a99e9a8 Merge r192355 from projects/mips to head by hand:
r192355 | gonzo | 2009-05-18 17:20:56 -0600 (Mon, 18 May 2009) | 2 lines
- Add support for MX25Lxxx SPI flash (readonly atm)
2010-01-10 05:28:36 +00:00
Warner Losh
5b12181c4e Merge from projects/mips to head by hand:
merge register definitions for mx25l flash.
2010-01-10 05:16:55 +00:00
Warner Losh
c5455f1b46 Merge from projects/mips to head by hand:
Merge support for MX25L spi flash.
2010-01-10 05:15:46 +00:00
Warner Losh
e5cfed3c97 mirror copy in head for less insane diffing... 2010-01-10 05:14:15 +00:00
Warner Losh
8cc6cc81dd Merge from projects/mips to head by hand:
Copy sys/dev/rmi to sys/mips/rmi/dev [sic].  For devices that are on
only one SoC, or family of SoC, we place them under sys/<vendor>/dev.
I'll fix the build problems this causes as best I can since rmi kernel
require external toolchains due to lack of support for rmi op-codes in
the ancient binutils we have in the tree.
2010-01-10 05:11:27 +00:00
Warner Losh
522e41fcac Merge from projects/mips to head by hand:
Merge the siba bus device.  This was moved from mips to dev because
siba bus can be in other architectures, like ARM.
2010-01-10 05:07:29 +00:00
Warner Losh
b11c8e13fc These files have been moved on the branch. Delete them here before
copying them from the branch.
2010-01-10 05:05:33 +00:00
Warner Losh
0e431d6ab9 Merge from projects/mips to head by hand:
Placeholder for ptrace machine specific stuff...  This will likely be
used to report CP2 or CP3 registers on those CPUs that have them...
2010-01-10 05:01:47 +00:00
Warner Losh
5888aefdcc Merge from projects/mips to head by hand:
loader script for octeon1 in n32 abi mode.
2010-01-10 04:49:13 +00:00
Warner Losh
6f561ff898 Merge from projects/mips to head by hand:
Special linker file for octeon1 in pseudo-32-bit mode.
2010-01-10 04:48:26 +00:00
Warner Losh
d02d06f112 Merge from projects/mips to head by hand:
mips64 ld script for the kernel.
2010-01-10 03:47:12 +00:00
Warner Losh
27773babce Merge from projects/mips to head by hand:
special ld script for 64-bit octeon link.
2010-01-10 03:46:08 +00:00
Warner Losh
9311b21639 Mirror copy in /head.. 2010-01-10 03:28:25 +00:00
Marcel Moolenaar
592daa5d9b Remove debugging printf(). There's no need to print the image
base address anymore.
2010-01-10 00:14:04 +00:00
Brooks Davis
7cca94f3f2 Improve the comment about CMGROUP_MAX.
MFC after:	3 days
2010-01-09 23:24:49 +00:00
Brooks Davis
646063122d Update the comment on printing group membership to reflect that fact
that each groupt the process is a member of is printed rather than an
entry for each group the user could be a member of.

MFC after:	3 days
2010-01-09 23:23:52 +00:00
Brooks Davis
5feedc2575 Correct the explination text for the kern.ngroups. It reflects the
number of supplemental groups, not the total number of groups.

MFC after:	3 days
2010-01-09 23:22:31 +00:00
Marcel Moolenaar
716f79c093 Remove file system support based on the simple file system protocol
as this only allows us to access file systems that EFI knows about.
With a loader that can only use EFI-supported file systems, we're
forced to put /boot on the EFI system partition. This is suboptimal
in the following ways:
1.  With /boot a symlink to /efi/boot, mergemaster complains about
    the mismatch and there's no quick solution.
2.  The EFI loader can only boot a single version of FreeBSD. There's
    no way to install multiple versions of FreeBSD and select one
    at the loader prompt.
3.  ZFS maintains /boot/zfs/zpool.cache and with /boot a symlink we
    end up with the file on a MSDOS file system. ZFS does not have
    proper handling of file systems that are under Giant.

Implement a disk device based on the block I/O protocol instead and
pull in file system code from libstand. The disk devices are really
the partitions that EFI knows about.

This change is backward compatible.

MFC after:	1 week
2010-01-09 22:54:29 +00:00
Alan Cox
0f59b74f76 Long ago, in r120654, the rounding of KERNend and physfree in locore
was changed from a small page boundary to a large page boundary.  As
a consequence pmap_kmem_choose() became a pointless waste of address
space.  Eliminate it.
2010-01-09 22:09:10 +00:00
Marius Strobl
ccb1921ee0 - Add code allowing a network device to only be open and closed once
by keeping it opened after the first open and closing it via the
  cleanup handler when NETIF_OPEN_CLOSE_ONCE is defined in order to
  avoid the open-close-dance on every file access which with firmware
  that for example performs an auto-negotiation on every open causes
  netbooting to take horribly long. Basically the behavior with this
  knob enabled resembles the one employed between r60506 and r177108
  (and for sparc64 also again since r182919) with the addition that
  the network device now is closed eventually before entering the
  kernel and before rebooting. Actually I think this should be the
  desired MI behavior, however the U-Boot loader actually requires
  net_close() to be called after every transaction in order for some
  local shutdown operations to be performed (and which I think thus
  will break on concurrent opens, i.e. when netdev_opens is > 1, like
  the loader does at least for disks when LOADER_GZIP_SUPPORT is
  enabled).
- Use NETIF_OPEN_CLOSE_ONCE to replace the hack, which artificially
  increased netdev_opens for sparc64 in order to keep the network
  device opened forever, as at least some firmware versions require
  the network device to be closed eventually before entering the
  kernel or otherwise will DMA received packets to stale memory.
  The powerpc OFW loader probably wants NETIF_OPEN_CLOSE_ONCE to be
  set as well for the same reasons.
2010-01-09 21:23:39 +00:00
Max Khon
bb027e0647 Send link state change control messages to "orphans" hook as well.
MFC after:	1 week
2010-01-09 19:03:48 +00:00
Warner Losh
6b06709221 Merge from projects/mips to head by hand:
Copy the support files for the Octeon 1 CPU from sys/mips/octeon1 on
the projects/mips side to sys/mips/cavium on the head side to conform
to the other vendor code.  This code was contributed by Cavium to the
project and forward ported by Warner Losh, with some additional code
from Randal Stewart.

# I'll fix the building problems the move creates in a future commit.
2010-01-09 18:59:03 +00:00
Warner Losh
6e9fd5e257 Merge from projects/mips to head by hand:
Copy over the support files (except sys/conf and sys/mips/conf) for
RMI XLR processor support.  This port has been contributed by RMI and
brought up to date by Randal Stewart (rrs@).  This port is a work in
progress, and there might still be significant changes.  The port
makes it to multi-user, but is still early beta.
2010-01-09 18:29:35 +00:00
Warner Losh
ffc186bc8c Merge from projects/mips to head by hand:
Copy over MALTA64, the 64-bit varianat of the malta board...
2010-01-09 18:19:31 +00:00
Warner Losh
6a9254300c Merge from projects/mips to head by hand:
Copy over XLR kernel config file.
2010-01-09 18:17:39 +00:00
Warner Losh
00152147ef Merge from projects/mips to head by hand:
Copy over the OCTEON1 kernel config file.   This is the 64-bit version.
2010-01-09 18:15:28 +00:00
Warner Losh
48d3352bfa Merge from projects/mips to head by hand:
Copy over OCTEON1.hints file.
2010-01-09 18:14:27 +00:00
Warner Losh
55f6b015ea Merge from projects/mips to head by hand:
Copy over OCTEON1-32 file: the 32-bit variant of the octeon kernel
config file.
2010-01-09 18:13:13 +00:00
Warner Losh
4d1442a381 Merge from projects/mips to head by hand:
Copy over AR71XX.hints file.
2010-01-09 18:11:45 +00:00
Warner Losh
41d06da412 Merge from projects/mips to head by hand:
Copy over the AR71XX config file.
2010-01-09 18:10:46 +00:00
Warner Losh
e4e87ebf41 Merge from projects/mips to head by hand.
Copy over the SWARM.hints file.
2010-01-09 18:09:30 +00:00
Warner Losh
aa046e0f16 Merge from pprojects/mips to head by hand.
Copy over the SWARM config file.
2010-01-09 18:08:31 +00:00
Navdeep Parhar
b6783ad018 Extra parantheses to keep certain compilers happy.
Submitted by:	trasz@
2010-01-09 18:07:10 +00:00
Warner Losh
2a8a26507d Merge from projects/mips to head by hand:
Merge support files for the Atheros AR71xx (and soon AR9xxx)
processors, except files from sys/conf and sys/mips/conf.  This work
was done primarily by Olecksandr Tymoshenko and works on the
RouterStation and RouterStation PRO.  Other AR71xx-based boards have
been reported as working as well (RouterBoard, for example).
2010-01-09 18:02:31 +00:00
Warner Losh
cd5e5a7f5d Merge from projects/mips to head by hand:
Copy the files for the sibyte support (except files in sys/conf and
sys/mips/conf).  This targets the Broadcom SWARM board (bcm91250) and
the SB-1 core in the BCM1250 SoC.  This work was done by Neel Natu.
2010-01-09 17:56:25 +00:00
Warner Losh
9fc13460f5 Merge r201902 and r195669 from projects/mips into head by hand:
r201902 | imp | 2010-01-09 10:16:19 -0700 (Sat, 09 Jan 2010) | 2 lines
Fix comment, which was missed in an earlier commit...

r195669 | gonzo | 2009-07-13 17:03:44 -0600 (Mon, 13 Jul 2009) | 3 lines
- Remove -mno-dsp from CFLAGS. MIPS DSP ASE is off by default
   now (as it should be)
2010-01-09 17:21:36 +00:00
Warner Losh
02dd934270 Fix comment, which was missed in an earlier commit... 2010-01-09 17:16:19 +00:00
Marius Strobl
989bac19ea Remove clause 3 and 4 from TNF licenses (this was the only 4-clause TNF
license FreeBSD had in sys/boot).

Obtained from:	NetBSD
2010-01-09 17:09:57 +00:00
Marius Strobl
869652f6f1 Some style(9) fixes in order to fabricate a commit to denote that
the commit message for r201896 actually should have read:

As nfsm_srvmtofh_xx() assumes the 4-byte alignment required by XDR
ensure the mbuf data is aligned accordingly by calling nfs_realign()
in fha_extract_info(). This fix is orthogonal to the problem solved
by r199274/r199284.

PR:		142102 (second part)
MFC after:	1 week
2010-01-09 15:59:15 +00:00
Bjoern A. Zeeb
77680d964f Add comments trying to explain what bad things happen here, i.e.
how hashed MD5/SHA are implemented, abusing Final() for padding and
sw_octx to transport the key from the beginning to the end.

Enlightened about what was going on here by: cperciva
Reviewed by:	cperciva
MFC After:	3 days
X-MFC with:	r187826
PR:		kern/126468
2010-01-09 15:43:47 +00:00
Marius Strobl
816bf02c2d Exclude options COMPAT_FREEBSD4 now that the MD freebsd4_sigreturn()
is gone since r201396 and which is also in line with the fact that
FreeBSD 4 didn't supported sparc64.

PR:		142102 (second part)
MFC after:	1 week
2010-01-09 15:31:27 +00:00
Marko Zec
5d005b51e5 Reduce recursions on curvnet and thus spamming the console with warning
messages for kernels built with options VIMAGE and VNET_DEBUG enabled.

Reviewed by:	bz
MFC after:	3 days
2010-01-09 14:56:38 +00:00
Konstantin Belousov
293409233b Set md_ldt (pointer to the LDT) after md_ldt_sd (system segment
descriptor for the LDT) is populated. md_ldt is used by context-switch
code as indicator that LDT segment register shall be loaded with
GUSERLDT segment instead of 0, so context switch at the wrong time may
cause attempt to load non-populated descriptor.

Use store with the barrier to prevent other CPUs from seeing updated
md_ldt but not seeing updated md_ldt_sd. Multithreaded process may
context-switch to another thread of the process on another CPU and read
md_ldt.

MFC after:	1 week
2010-01-09 11:28:01 +00:00
David Xu
73532aa78c Use enum to define key types.
Suggested by:	jmallett
2010-01-09 06:30:40 +00:00
David Xu
4904f91fe0 put semaphore waiter in long term list. 2010-01-09 06:12:44 +00:00
David Xu
2c3b3fef36 Add key type TYPE_SEM. 2010-01-09 06:05:31 +00:00
Warner Losh
2bd661baa1 Merge r195128 from project/mips to head.
r195128 | gonzo | 2009-06-27 17:27:41 -0600 (Sat, 27 Jun 2009) | 4 lines
- Add support for handling TLS area address in kernel space.
    From the userland point of view get/set operations are
    performed using sysarch(2) call.
2010-01-09 04:59:57 +00:00
Giorgos Keramidas
578fece5ff Revert iwn channel-argument handling of set_txpower() to r201822
Pass the channel argument as a real argument and not through
RXON.  The RXON version seems to have problem with both the older
228.57.2.23 firmware and the latest 228.61.2.24 version resulting
in device initialization errors like:

  wpa_supplicant[2928]: Failed to initiate AP scan.
  kernel: firmware error log:
  kernel: error type      = "SYSASSERT" (0x00000005)
  kernel: program counter = 0x0000147C
  kernel: source line     = 0x0000058B
  kernel: error data      = 0x0000058B00000000
  kernel: branch link     = 0x0000145A00001492
  kernel: interrupt link  = 0x000006DE00000000
  kernel: time            = 7310
  ...
  kernel: iwn0: iwn_config: could not set TX power
  kernel: iwn0: iwn_init_locked: could not configure device, error 35

By passing the current channel to hal->set_txpower() the firmware
error is fixed, at least for the 4965 chipset of my Thinkpad and
the ones tested by Bernhard.

Submitted by:	Bernhard Schmidt <bschmidt@techwires.net>
Approved by:	rpaulo
2010-01-09 04:00:22 +00:00
Warner Losh
3ad9e328b8 Rename mips_pcpu_init to mips_pcpu0_init since it applies only to the
BSP.  Provide a missing prototype.
2010-01-09 03:08:22 +00:00