259065 |
07-Dec-2013 |
gjb |
- Copy stable/10 (r259064) to releng/10.0 as part of the 10.0-RELEASE cycle. - Update __FreeBSD_version [1] - Set branch name to -RC1
[1] 10.0-CURRENT __FreeBSD_version value ended at '55', so start releng/10.0 at '100' so the branch is started with a value ending in zero.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation |
256281 |
10-Oct-2013 |
gjb |
Copy head (r256279) to stable/10 as part of the 10.0-RELEASE cycle.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation
|
254025 |
07-Aug-2013 |
jeff |
Replace kernel virtual address space allocation with vmem. This provides transparent layering and better fragmentation.
- Normalize functions that allocate memory to use kmem_* - Those that allocate address space are named kva_* - Those that operate on maps are named kmap_* - Implement recursive allocation handling for kmem_arena in vmem.
Reviewed by: alc Tested by: pho Sponsored by: EMC / Isilon Storage Division
|
249582 |
17-Apr-2013 |
gabor |
- Correct mispellings of the word occurrence
Submitted by: Christoph Mallon <christoph.mallon@gmx.de> (via private mail)
|
249449 |
13-Apr-2013 |
dim |
Fix undefined behaviour in several gpio_pin_setflags() routines (under sys/arm and sys/mips), squelching the clang 3.3 warnings about this.
Noticed by: tinderbox and many irate spectators Submitted by: Luiz Otavio O Souza <loos.br@gmail.com> PR: kern/177759 MFC after: 3 days
|
247564 |
01-Mar-2013 |
alc |
Eliminate a redundant #include: machine/pmap.h is already included through vm/pmap.h.
|
247429 |
28-Feb-2013 |
attilio |
Complete r247297: Remove unused inclusions of vm/vm_pager.h and vm/vnode_pager.h.
Sponsored by: EMC / Isilon storage division
|
247046 |
20-Feb-2013 |
alc |
Initialize vm_max_kernel_address on non-FDT platforms. (This should have been included in r246926.)
The second parameter to pmap_bootstrap() is redundant. Eliminate it.
Reviewed by: andrew
|
243882 |
05-Dec-2012 |
glebius |
Mechanically substitute flags from historic mbuf allocator with malloc(9) flags within sys.
Exceptions:
- sys/contrib not touched - sys/mbuf.h edited manually
|
243194 |
17-Nov-2012 |
andrew |
Clean up the two i80321 copies of initarm to be closer to one another.
|
241885 |
22-Oct-2012 |
eadler |
This isn't functionally identical. In some cases a hint to disable unit 0 would in fact disable all units.
This reverts r241856
Approved by: cperciva (implicit)
|
241856 |
22-Oct-2012 |
eadler |
Now that device disabling is generic, remove extraneous code from the device drivers that used to provide this feature.
Reviewed by: des Approved by: cperciva MFC after: 1 week
|
240802 |
22-Sep-2012 |
andrew |
Create a common set_stackptrs in sys/arm/machdep.c.
On single core devices set_stackptrs is only ever called with cpu = 0 in initarm and will be identical to the existing function. On SMP this needs to be implemented for sys/arm/mp_machdep.c, but the implementations are identical for each SoC.
|
239362 |
18-Aug-2012 |
andrew |
Set machine correctly on ARM. This allows universe to use the correct world when building each kernel.
Reviewed by: imp
|
239351 |
17-Aug-2012 |
rpaulo |
The GPIO drivers were initialising their mutexes with type of MTX_NETWORK_LOCK. This is wrong since these mutexes have nothing to do with networking.
|
239268 |
15-Aug-2012 |
gonzo |
Merging projects/armv6, part 1
Cummulative patch of changes that are not vendor-specific: - ARMv6 and ARMv7 architecture support - ARM SMP support - VFP/Neon support - ARM Generic Interrupt Controller driver - Simplification of startup code for all platforms
|
238545 |
17-Jul-2012 |
gonzo |
Move unmask IRQ function call up to nexus device level.
FDT-enabled targets were broken after r238043 that relies on device up the hierarchy to properly setup interrupt. nexus device for ARM platforms did job only partially: setting handler but not unmasking interrupt. Unmasking was performed by platform code.
Reviewed by: andrew@
|
238329 |
10-Jul-2012 |
imp |
Remove some unused variables/externs that have been copied too many times...
|
238327 |
10-Jul-2012 |
imp |
Not quite ready for this yet, so comment it out.
|
237741 |
29-Jun-2012 |
imp |
All xscale ports are armeb, so mark it here. This should reduce universe times a little.
|
237089 |
14-Jun-2012 |
imp |
Fix missing straggler for the move to parse_boot_param()
|
237045 |
14-Jun-2012 |
imp |
More Linux boot support. Create arm_dump_avail_init() to initialize this array either from Linux boot data, when enabled, or in the typical way that most ports do it. arm_pyhs_avail_init is coming soon since it must be a separate function.
|
237040 |
14-Jun-2012 |
imp |
Modify all the arm platform files to call parse_boot_param passing in the boot parameters from initarm first thing. parse_boot_param parses the boot arguments and converts them to the /boot/loader metadata the rest of the kernel uses. parse_boot_param is a weak alias to fake_preload_metadata, which all the platforms use now, but may become more extensive in the future.
Since it is a weak symbol, specific boards may define their own parse_boot_param to interface to custom boot loaders.
Reviewed by: cognet@, Ian Lapore
|
237010 |
13-Jun-2012 |
imp |
Remove leakage of other patches into last commit.
|
236987 |
13-Jun-2012 |
imp |
trim trailing spaces that have accumulated over the years (these files served as the basis for too many other platforms).
|
236846 |
10-Jun-2012 |
andrew |
Remove an unneeded increment from initarm. The variable is uninitialised, is not used in this part of the function and correctly initialised later when it is used.
|
236828 |
10-Jun-2012 |
andrew |
Pull out the common code to initialise proc0 & thread0 from initarm to a common function.
Reviewed by: imp
|
236524 |
03-Jun-2012 |
imp |
Minor rearrangement of the locore <-> initarm interface. Pass in a structure with the first 4 registers to allow a wider range of boot loaders to work. Future commits will make use of this to centralize support for the different loaders.
|
235273 |
11-May-2012 |
imp |
Remove obsolte big endian flag. It is no longer needed.
|
234004 |
07-Apr-2012 |
stas |
- Add new ARM kernel option QEMU_WORKAROUNDS which can be used in the code which needs to implement some specific behaviour when being run under QEMU. - Make PXA UART probe code to work under QEMU gumstix, which doesn't emulate all the ports properly.
|
232295 |
29-Feb-2012 |
cognet |
Make sure we do not provide the page 0 to the VM. It can't handle it properly, because pmap_extract() returns 0 when there's no mapping.
PR: arm/154227 MFC after: 1 week
|
229125 |
31-Dec-2011 |
marius |
Fix header pollution, possibly unbreaking the build of cfi_bus_ixp4xx.c as part of cfi.ko.
|
227849 |
22-Nov-2011 |
hselasky |
Rename device_delete_all_children() into device_delete_children().
Suggested by: jhb @ and marius @ MFC after: 1 week
|
227843 |
22-Nov-2011 |
marius |
- There's no need to overwrite the default device method with the default one. Interestingly, these are actually the default for quite some time (bus_generic_driver_added(9) since r52045 and bus_generic_print_child(9) since r52045) but even recently added device drivers do this unnecessarily. Discussed with: jhb, marcel - While at it, use DEVMETHOD_END. Discussed with: jhb - Also while at it, use __FBSDID.
|
227701 |
19-Nov-2011 |
hselasky |
Move the device_delete_all_children() function from usb_util.c to kern/subr_bus.c. Simplify this function so that it no longer depends on malloc() to execute. Identify a few other places where it makes sense to use device_delete_all_children().
MFC after: 1 week
|
227309 |
07-Nov-2011 |
ed |
Mark all SYSCTL_NODEs static that have no corresponding SYSCTL_DECLs.
The SYSCTL_NODE macro defines a list that stores all child-elements of that node. If there's no SYSCTL_DECL macro anywhere else, there's no reason why it shouldn't be static.
|
227293 |
07-Nov-2011 |
ed |
Mark MALLOC_DEFINEs static that have no corresponding MALLOC_DECLAREs.
This means that their use is restricted to a single C file.
|
226832 |
27-Oct-2011 |
kevlo |
Check the return value of BUS_SETUP_INTR()
Reviewed by: imp
|
226325 |
12-Oct-2011 |
thompsa |
Name these gpio pins better, they are on an external PLD and not the same as the cpu wired gpio.
|
226324 |
12-Oct-2011 |
thompsa |
Dont just set the pin high when turning on output, use the current value. Also let this value be set when in input mode.
|
226034 |
05-Oct-2011 |
thompsa |
Add missing newbus glue, this has never attached properly to gpiobus.
|
220836 |
19-Apr-2011 |
pluknet |
Call init_param1() much earlier, so that msgbufsize is non-zero when we want to map and use the msgbuf.
Reviewed by: cognet MFC after: 1 week
|
219025 |
25-Feb-2011 |
obrien |
Add a real dependency on the microcode. Now when one does 'make kernel ; make kernel' the second invocation only does: `kernel.ko' is up to date. rather than reproduce all the binary microcode files and relink the kernel. [continuation of r212429]
|
218913 |
21-Feb-2011 |
cognet |
Get myself a brain, move the call to init_param1() before the first use in at91_machdep.c, and do it for the files I forgot the first time
Reported by: andrew Submitted by: pluknet
|
218909 |
21-Feb-2011 |
brucec |
Fix typos - remove duplicate "the".
PR: bin/154928 Submitted by: Eitan Adler <lists at eitanadler.com> MFC after: 3 days
|
218666 |
13-Feb-2011 |
cognet |
Call init_param1() much earlier, so that msgbufsize is non-zero when we want to map and use the msgbuf.
|
217688 |
21-Jan-2011 |
pluknet |
Make MSGBUF_SIZE kernel option a loader tunable kern.msgbufsize.
Submitted by: perryh pluto.rain.com (previous version) Reviewed by: jhb Approved by: kib (mentor) Tested by: universe
|
216681 |
23-Dec-2010 |
imp |
IXP4XX_GPIO_{,UN}LOCK() don't take args. Remove the sc here to make this compile again.
|
215319 |
14-Nov-2010 |
thompsa |
Provide a mutex around the read/modify/write of the IXP425_GPIO_* registers. Giant was used in some places, but not all.
|
215142 |
11-Nov-2010 |
thompsa |
Add a GPIO driver for the Gateworks Cambria platform.
The external gpio pins are connected to a PLD on the i2c bus, unfortunatley this device does not conform by failing to send an ack after each byte written. The iicbb driver will abort the transfer when the address is not ack'd and it would introduce a lot of churn to be able to pass a flag down to iicbb_start/iicbb_write. Instead we do bad things by grabbing the iicbus but then doing our own bit banging.
|
215034 |
09-Nov-2010 |
brucec |
Fix typos.
PR: bin/148894 Submitted by: olgeni
|
214948 |
07-Nov-2010 |
thompsa |
Remove line for the uncommitted Cambria gpio drive that snuck in with r214946.
|
214946 |
07-Nov-2010 |
thompsa |
Hook up the five gpio pins on the Avila board to the gpio framework. There are actually 16 I/O lines but the other ones are used for system devices and interrupts.
The IXP4XX platform can set interrupts on these pins for high/low/rising/falling/transitional but this is not implemented yet.
The Cambria has the same interface but as all the pins are assigned to system functions the gpio header is toggled via a PLD on the i2c bus and is not supported by this commit.
|
213893 |
15-Oct-2010 |
marius |
Convert the PHY drivers to honor the mii_flags passed down and convert the NIC drivers as well as the PHY drivers to take advantage of the mii_attach() introduced in r213878 to get rid of certain hacks. For the most part these were: - Artificially limiting miibus_{read,write}reg methods to certain PHY addresses; we now let mii_attach() only probe the PHY at the desired address(es) instead. - PHY drivers setting MIIF_* flags based on the NIC driver they hang off from, partly even based on grabbing and using the softc of the parent; we now pass these flags down from the NIC to the PHY drivers via mii_attach(). This got us rid of all such hacks except those of brgphy() in combination with bce(4) and bge(4), which is way beyond what can be expressed with simple flags.
While at it, I took the opportunity to change the NIC drivers to pass up the error returned by mii_attach() (previously by mii_phy_probe()) and unify the error message used in this case where and as appropriate as mii_attach() actually can fail for a number of reasons, not just because of no PHY(s) being present at the expected address(es).
Reviewed by: jhb, yongari
|
212413 |
10-Sep-2010 |
avg |
bus_add_child: change type of order parameter to u_int
This reflects actual type used to store and compare child device orders. Change is mostly done via a Coccinelle (soon to be devel/coccinelle) semantic patch. Verified by LINT+modules kernel builds.
Followup to: r212213 MFC after: 10 days
|
207554 |
03-May-2010 |
sobomax |
Add new tunable 'net.link.ifqmaxlen' to set default send interface queue length. The default value for this parameter is 50, which is quite low for many of today's uses and the only way to modify this parameter right now is to edit if_var.h file. Also add read-only sysctl with the same name, so that it's possible to retrieve the current value.
MFC after: 1 month
|
205705 |
26-Mar-2010 |
rpaulo |
Pass the correct pointer to fled_cb().
|
204198 |
22-Feb-2010 |
rpaulo |
Fix previous commit: led_func() doesn't exist, it should be fled_cb().
Pointed out by: bz
|
203752 |
10-Feb-2010 |
rpaulo |
Turn on the front LED at boot time like we do with the Avila.
|
200928 |
23-Dec-2009 |
rpaulo |
Intel XScale hwpmc(4) support.
This brings hwpmc(4) support for 2nd and 3rd generation XScale cores. Right now it's enabled by default to make sure we test this a bit. When the time comes it can be disabled by default. Tested on Gateworks boards.
A man page is coming.
Obtained from: //depot/user/rpaulo/xscalepmc/...
|
197733 |
03-Oct-2009 |
rpaulo |
Remove remaining bits of performance counter support.
Submitted by: Tom Judge <tom at tomjudge.com>
|
197704 |
02-Oct-2009 |
rpaulo |
Remove performance counter headers. This code came from NetBSD, but our hardware perf. counter support is different, so we don't need these files.
Reviewed by: freebsd-arm (no comments)
|
196479 |
23-Aug-2009 |
cognet |
No need to remove the same flag multiple times.
|
195049 |
26-Jun-2009 |
rwatson |
Use if_maddr_rlock()/if_maddr_runlock() rather than IF_ADDR_LOCK()/ IF_ADDR_UNLOCK() across network device drivers when accessing the per-interface multicast address list, if_multiaddrs. This will allow us to change the locking strategy without affecting our driver programming interface or binary interface.
For two wireless drivers, remove unnecessary locking, since they don't actually access the multicast address list.
Approved by: re (kib) MFC after: 6 weeks
|
194784 |
23-Jun-2009 |
jeff |
Implement a facility for dynamic per-cpu variables. - Modules and kernel code alike may use DPCPU_DEFINE(), DPCPU_GET(), DPCPU_SET(), etc. akin to the statically defined PCPU_*. Requires only one extra instruction more than PCPU_* and is virtually the same as __thread for builtin and much faster for shared objects. DPCPU variables can be initialized when defined. - Modules are supported by relocating the module's per-cpu linker set over space reserved in the kernel. Modules may fail to load if there is insufficient space available. - Track space available for modules with a one-off extent allocator. Free may block for memory to allocate space for an extent.
Reviewed by: jhb, rwatson, kan, sam, grehan, marius, marcel, stas
|
194753 |
23-Jun-2009 |
sam |
Now that we have UARTs running with fast interrupt handlers the ata driver's i/o ops must be locked to avoid chaos. Extend the cambria bus tag to support ata and add a spin lock. The ata driver is hacked to use that instead of it's builtin hack for ixp425. Once the ata driver is fixed to not be confused about byte order we can generalize the cambria bus tag code and make it generally useful.
While here take advantage of our being ixp435-specific to remove delays when switching between byte+word accesses and to eliminate the 2us delay for the uarts (the spin lock overhead looks to do this for us).
|
194752 |
23-Jun-2009 |
sam |
use consistent style
|
194670 |
22-Jun-2009 |
sam |
o add a bus space tag that forces a 2usec delay between r/w ops; this is used for the optional GPS+RS485 uarts on the Gateworks Cambria boards which otherwise are unreliable o setup the hack bus space tag for the GPS+RS485 uarts o program the gpio interrupts for the uarts to be edge-rising o force timing on the expansion bus for the uarts to be "slow"
Thanks to Chris Lang of Gateworks for these tips.
|
194668 |
22-Jun-2009 |
sam |
o remove hack to write UUE+RTOIE in the uart's IER; force them with hints o honor hints for the rclk
|
194656 |
22-Jun-2009 |
sam |
hook arm_post_filter to ACK GPIO interrupts; this fixes the interrupt storm observed on the GPS+RS485 uarts on Gateworks Cambria boards
Reviewed by: cognet
|
194655 |
22-Jun-2009 |
sam |
always define Cambria GPS+RS485 mappings as they are no longer conditional
|
194654 |
22-Jun-2009 |
sam |
map the optional GPS and RS485 uart's on the Gateworks Cambria board (may want to make these conditional)
|
194653 |
22-Jun-2009 |
sam |
add ixp425_set_gpio to program the gpio interrupt type
|
194652 |
22-Jun-2009 |
sam |
rewrite arm_get_next_irq to always make forward progress (should be optimized)
|
194651 |
22-Jun-2009 |
sam |
kill stray whitespace
|
194650 |
22-Jun-2009 |
sam |
move logic to ACK a GPIO to a separate function
|
194649 |
22-Jun-2009 |
sam |
swap order in ddb show gpio printf
|
194648 |
22-Jun-2009 |
sam |
make type use consistent
|
194378 |
17-Jun-2009 |
sam |
Add workaround to get IXP435 NPE-A working: reseting NPE-A after NPE-C causes both to become inoperative; this apparently was done by the original IAL code as a workaround for IMEM parity errors which we've not seen so just disable the reset.
Note this problem does not occur on IXP425 boards. The linux driver does fuse-resets on each NPE but in the order NPE-A < NPE-B < NPE-C (when probing for which NPE's are present/operational); we may want to switch to a similar scheme but for now disable the resets until we see an issue.
|
194325 |
17-Jun-2009 |
sam |
correct data/instruction memory sizes for non-ixp425 parts (these are only used to bounds-check writes when loading firmware)
|
194322 |
17-Jun-2009 |
sam |
remove IAL vestige for defining the max data/instruction memory size; instead of defining them according to ixp46x add new defines so we can do this at run time
|
194321 |
17-Jun-2009 |
sam |
o correct default miibase for NPE-B and NPE-C; these values are normally taken from the hints file so this should have no effect o set the port address "just in case" o add NPE-A support to the tx done qmgr callback
|
194319 |
17-Jun-2009 |
sam |
add ixp4xx_write_feature_bits
|
194044 |
12-Jun-2009 |
imp |
devclass_find_free_unit(xxx, 0) is identical to -1 for most applications (including this one). Switch to it since the former is a racy interface.
|
194015 |
11-Jun-2009 |
avg |
strict kobj signatures: number of fixes for arm architecture
no functional changes should result
Reviewed by: imp, current@ Approved by: jhb (mentor)
|
193847 |
09-Jun-2009 |
marcel |
Pass the previously returned IRQ back to arm_get_next_irq() so that the implementation can guarantee forward progress in the event of a stuck interrupt or interrupt storm. This is especially critical for fast interrupt handlers, as they can cause a hard hang in that case. When first called, arm_get_next_irq() is passed -1.
Obtained from: Juniper Networks, Inc.
|
193104 |
30-May-2009 |
sam |
maintain existing style
|
193096 |
30-May-2009 |
attilio |
When user_frac in the polling subsystem is low it is going to busy the CPU for too long period than necessary. Additively, interfaces are kept polled (in the tick) even if no more packets are available. In order to avoid such situations a new generic mechanism can be implemented in proactive way, keeping track of the time spent on any packet and fragmenting the time for any tick, stopping the processing as soon as possible.
In order to implement such mechanism, the polling handler needs to change, returning the number of packets processed. While the intended logic is not part of this patch, the polling KPI is broken by this commit, adding an int return value and the new flag IFCAP_POLLING_NOCOUNT (which will signal that the return value is meaningless for the installed handler and checking should be skipped).
Bump __FreeBSD_version in order to signal such situation.
Reviewed by: emaste Sponsored by: Sandvine Incorporated
|
192901 |
27-May-2009 |
thompsa |
Delete the old USB stack. The new stack has settled in and has all the drivers/functionality and then some.
|
192660 |
23-May-2009 |
sam |
accumulate npe statistics and expose them through dev.npe.X.stats
|
192599 |
22-May-2009 |
des |
Expand $FreeBSD$
|
189651 |
10-Mar-2009 |
sam |
add IXP4XX_FLASH_SIZE config knob that can be used to override the default flash size; this is necessary at the moment because we map all of flash at boot, eventually we'll do this on the fly
|
189650 |
10-Mar-2009 |
sam |
map CS0 on 2358 so flash is accessible
|
189645 |
10-Mar-2009 |
sam |
mark device capable of vlan-size frames
Obtained from: netbsd
|
189642 |
10-Mar-2009 |
sam |
turn off inclusion of FCS in rx'd frames; we don't use it anywhere and dhclient gets annoyed when it receives FCS in frames via bpf
|
189641 |
10-Mar-2009 |
sam |
o add missing bus_release_resource and bus_deactivate_resource that just operate on the resource (we have no local resources to manage); this fixes drivers that alloc/release resources in their probe method and then do it again in attach o while here add some prints to catch failures and massage style a bit
|
189633 |
10-Mar-2009 |
sam |
bring in ddb "show gpio" support from Cambria branch
|
189632 |
10-Mar-2009 |
sam |
Small cleanup of memory resource allocation from Cambria branch: o encode need for A4 bus space tag hackery according to the memory address; checking for "uart" breaks down with the GPS chip support which is also a uart but does not require the same hackery o encode the correct memory window instead of carving up all of i/o space, potentially with a larger window than a device should have; this likely should be handled in the drivers by using a proper bus alloc call but since some drivers depend on the bus support to figure this out we cannot simply mod them o add optional GPS and RS485 support (conditionally as the support isn't ready yet)
|
189630 |
10-Mar-2009 |
sam |
catch up with r189306; handle delayed activation of resources
Submitted by: jhb
|
189548 |
08-Mar-2009 |
sam |
o mark unexpected callbacks more clearly o unwrap some lines
|
189463 |
06-Mar-2009 |
sam |
Cleanup virtual device mapping some more: o improves understandability by replacing numerous relative address calculations with fixed addresses; everything should now match up more easily with the vm layout shown at the top of the file o move the expansion bus chip select regions to be contiguous with the expansion bus configuration area; this is not exploited right now but allows map consolidation in the future o leave a gap between the expansion bus regions and the pci config space in case we want to map more exp bus cs regions
Reviewed by: imp, thompsa
|
189461 |
06-Mar-2009 |
sam |
remove unneeded static mappings for NPE and MAC regions; these are already mapped through the IO region so never used
Reviewed by: imp, thompsa
|
189457 |
06-Mar-2009 |
sam |
fix legacy usb configuration
|
189456 |
06-Mar-2009 |
sam |
o simplify code in ixppcib_conf_setup o fixup debug printfs
|
189020 |
24-Feb-2009 |
thompsa |
Update paths for ehci_ixp4xx.c in the old and new stacks.
|
188505 |
11-Feb-2009 |
sam |
fix ARM_USE_SMALL_ALLOC after memory layout changes
Submitted by: cognet
|
188088 |
03-Feb-2009 |
sam |
Add support for the StrataFlash on 2348 boards: o add bus shim for cfi driver o add static mapping for CS0 (we map all 16M as the cfi driver doesn't support demand mapping)
Note this needs some tweaking to work for 2358 boards which is why the CAMBRIA config is not touched.
|
187340 |
16-Jan-2009 |
cognet |
Remove a duplicate #include.
|
186441 |
23-Dec-2008 |
sam |
move IXP4XX EHCI bus shim to the usb directory and rename
|
186420 |
23-Dec-2008 |
sam |
NPE cleanups needed for ancillary drivers (e.g. crypto acceleration): o check feature bits when probing NPE ethernet support o move firmware loading logic from if_npe to core npe support o allow multiple refs to core NPE driver o while here fix hw.npe.debug tunable path
|
186419 |
23-Dec-2008 |
sam |
kill NPE_PORTS_MAX, it's not used and likely will not be
|
186418 |
23-Dec-2008 |
sam |
Fill in feature control support: o add definitions for more bits, for masking out IXP465-specific bits, and %b format string o add ixp4xx_read_feature_bits to retrieve the mask of valid features (aka fuse bits) o add cpu_is_ixp42x() macro o print feature bits at boot
|
186416 |
23-Dec-2008 |
sam |
o enable TT and big-endian MMIO o force a reset before ehci_init to get byte-select setup
LS, FS, and HS devices now work on the Cambria board
|
186352 |
20-Dec-2008 |
sam |
Merge support for Gateworks Cambria boards: o add support for IXP435 cpu's (e.g. 64 irq's) o add support for Cambria-specific devices: npe, led's (front panel and octal latch), ehci, mcu, ide cf o redo memory mapping for xscale/ixp4xx boards: previously memory was assumed aliased to 0x10000000 but this appears to be true only for ixp425 systems and breaks operation on others; rework so memory is assumed to start at 0 o rework NPE configuration support to use NPE id's instead of port #'s; these changes also rename the associated MAC's to follow the NPE's they are attached to o update npe firmware to latest rev (same license) and update default fw imageid's to match; in particular this adds NPE-A and crypto support o re-style NPE fw handling code and add a console msg identifying the attributes of the loaded fw o fix numerous problems with handling failures during npe setup o fix npe rx q setup; need to spin waiting for mailbox responses during early boot stages as qmgr interrupts are not delivered; this fixes the problem where all 8 traffic classifications were not tied to the rx q (and eliminates the console msg "remember to fix rx q setup") o add DELAY to npe MII wait logic for IXP435 o strip down builtin phys->virt address translation table in resource handling to just those resources that require it and add a console msg to alert people when this (kludge) table needs to be extended o purge a bunch of dead netbsd-ism's o cleanup avila led driver o add Cambria support to boot2 and rework code for better multi-board support
Notes: 1. NPE-A doesn't work and causes NPE-C to stop working; it is disabled in the hints 2. USB isn't working yet; controller communicates ok but device discovery fails 3. Cambria support must be configured separately from IXP425 boards; multi-board support is TBD
Sponsored by: Hobnob, Gateworks (board donation) Reviewed by: imp
|
185513 |
01-Dec-2008 |
stas |
- Fix spelling error in comments.
PR: arm/128891 Submitted by: Pavel Pankov <pankov_p@mail.ru> Approved by: kib (mentor)
|
183886 |
14-Oct-2008 |
sam |
correct sizeof calculation
PR: arm/128095 Submitted by: Henning Petersen MFC after: 1 week
|
183557 |
02-Oct-2008 |
bms |
Allow static hints to override kenv.
|
182946 |
11-Sep-2008 |
cognet |
Bandaid: disable interrupts to make sure intr_enabled and the IER register are in sync. I'm not sure why it is needed, and why it wouldn't be on other arm platforms, but it prevents a lockup under heavy I/O.
|
182932 |
11-Sep-2008 |
raj |
IXP425: split handling of the two QMGR interrupts so they are separately managed. Adjust ixpqmgr_{attach,detach} to comply with device_* interface.
Reviewed by: cognet, imp, sam, stass Tested by: cognet
|
181303 |
04-Aug-2008 |
jhb |
Add locking to the various iicbus(4) bridge drivers: - Just grab Giant in the ixp425_iic(4) driver since this driver uses a shared address/data register window pair to access the actual I2C registers. None of the other ixp425 drivers lock access to these shared address/data registers yet and that would need to be done before this could use any meaningful locking. - Add locking to the interrupt handler and 'iicbus_reset' methods of the at91_twi(4) driver. - Add locking to the pcf(4) driver. Other pcf(4) fixes include: - Don't needlessly zero the softc. - Use bus_foo rather than bus_space_foo and remove bus space tag and handle from softc. - The lpbb(4) driver just grabs Giant for now. This will be refined later when ppbus(4) is locked. - As was done with smbus earlier, move the DRIVER_MODULE() lines to match the bus driver (either iicbus or iicbb) to the bridge driver into the bridge drivers.
Tested by: sam (arm/ixp425)
|
180584 |
18-Jul-2008 |
alc |
Eliminate unused global variables. (These global variables became fields of struct kva_md_info many years ago.)
|
179745 |
12-Jun-2008 |
kevlo |
Fix a typo: i80321_pci_probe -> i81342_pci_probe
|
179701 |
10-Jun-2008 |
kevlo |
Add the pxa_teardown_intr() bus method function to de-associate the interrupt handler
|
179700 |
10-Jun-2008 |
kevlo |
Pull all the code to deal with bus space methods into a shared set of routines.
|
179664 |
09-Jun-2008 |
kevlo |
Remove sa1_cache_clean_addr
|
179663 |
09-Jun-2008 |
kevlo |
Unify arminit() and clean up
|
179595 |
06-Jun-2008 |
benno |
Support for the XScale PXA255 SoC as found on the Gumstix Basix and Connex boards. This is enough to net-boot to multiuser.
Also supported is the SMSC LAN91C111 parts used on the netCF, netDUO and netMMC add-on boards.
I'll be putting some instructions on how to boot this on the Gumstix boards online soon.
This is still fairly rough and will be refined over time but I felt it was better to get this out there where other people can help out.
|
178001 |
08-Apr-2008 |
kevlo |
Remove some long-dead code
Reviewed by: cognet
|
177944 |
05-Apr-2008 |
cognet |
Remove bus_space_generic.c from the per-plarform files. Having it in the per-cpu files should be enough.
|
177943 |
05-Apr-2008 |
cognet |
Add bus_space_generic.c for the i81342 as well.
|
177887 |
03-Apr-2008 |
raj |
Refactor certain ARM bus space methods: instead of having multiple copies of the same code introduce sys/arm/arm/bus_space_generic.c for a shared set of routines.
Reviewed by: sam Approved by: cognet (mentor)
|
177886 |
03-Apr-2008 |
raj |
Fix AVILA build.
Reviewed by: sam Approved by: cognet(mentor)
|
177883 |
03-Apr-2008 |
imp |
Take the first baby step towards unifying and cleaning up arminit(): - Pull all the code to deal with the trampoline stuff into one centeralized place and use it from everywhere. - Some minor style tidiness
Reviewed by: tinguely
|
177874 |
03-Apr-2008 |
imp |
KERNBASE + 0x00200000 is the same thing as KERNVIRTADDR on this platform, so use the latter in preference to the former. This makes the fake_preload setup be the same between kb920x_machdep.c and avila_machdep.c....
|
177505 |
22-Mar-2008 |
sam |
Improve mac+phy configuration so that hints can be used to describe layouts different than the defaults: o hint.npe.0.mac="A", "B", etc. specifies the window for MAC register accesses o hint.npe.0.mii="A", "B", etc. specifies PHY registers o hint.npe.1.phy=%d specifies the PHY to map to a port
This allows devices like NSLU to be setup w/o code changes and will also be used for forthcoming support for more Avila boards.
Reviewed by: imp MFC after 1 week
|
177456 |
20-Mar-2008 |
sam |
map device 5; the optional USB controller on Gateworks 2348 boards shows up here instead of the minipci slot at J4
Reviewed by: cognet, imp MFC after: 1 week
|
177091 |
12-Mar-2008 |
jeff |
Remove kernel support for M:N threading.
While the KSE project was quite successful in bringing threading to FreeBSD, the M:N approach taken by the kse library was never developed to its full potential. Backwards compatibility will be provided via libmap.conf for dynamically linked binaries and static binaries will be broken.
|
176759 |
03-Mar-2008 |
kevlo |
Convert to be a 2-clause bsd-only license.
Pointed out by: rwatson
|
176588 |
26-Feb-2008 |
rwatson |
On the ixp425, when we fail to initialize the memory rman instance, the panic message should read "memory", not "IRQ".
MFC after: 3 days
|
175418 |
17-Jan-2008 |
jhb |
- Retire npe_defrag(), gem_defrag(), msk_defrag(), nfe_defrag(), and re_defrag() and use m_collapse() instead. - Replace a reference to ath_defrag() in a comment in if_wpi.c with m_collapse().
|
173361 |
05-Nov-2007 |
kib |
Fix for the panic("vm_thread_new: kstack allocation failed") and silent NULL pointer dereference in the i386 and sparc64 pmap_pinit() when the kmem_alloc_nofault() failed to allocate address space. Both functions now return error instead of panicing or dereferencing NULL.
As consequence, vmspace_exec() and vmspace_unshare() returns the errno int. struct vmspace arg was added to vm_forkproc() to avoid dealing with failed allocation when most of the fork1() job is already done.
The kernel stack for the thread is now set up in the thread_alloc(), that itself may return NULL. Also, allocation of the first process thread is performed in the fork1() to properly deal with stack allocation failure. proc_linkup() is separated into proc_linkup() called from fork1(), and proc_linkup0(), that is used to set up the kernel process (was known as swapper).
In collaboration with: Peter Holm Reviewed by: jhb
|
173336 |
04-Nov-2007 |
cognet |
Remove a staled comment, NPE-C should work fine.
Reviewed by: sam
|
172568 |
12-Oct-2007 |
kevlo |
Spelling fix for interupt -> interrupt
|
172394 |
30-Sep-2007 |
marius |
Make the PCI code aware of PCI domains (aka PCI segments) so we can support machines having multiple independently numbered PCI domains and don't support reenumeration without ambiguity amongst the devices as seen by the OS and represented by PCI location strings. This includes introducing a function pci_find_dbsf(9) which works like pci_find_bsf(9) but additionally takes a domain number argument and limiting pci_find_bsf(9) to only search devices in domain 0 (the only domain in single-domain systems). Bge(4) and ofw_pcibus(4) are changed to use pci_find_dbsf(9) instead of pci_find_bsf(9) in order to no longer report false positives when searching for siblings and dupe devices in the same domain respectively. Along with this change the sole host-PCI bridge driver converted to actually make use of PCI domain support is uninorth(4), the others continue to use domain 0 only for now and need to be converted as appropriate later on. Note that this means that the format of the location strings as used by pciconf(8) has been changed and that consumers of <sys/pciio.h> potentially need to be recompiled.
Suggested by: jhb Reviewed by: grehan, jhb, marcel Approved by: re (kensmith), jhb (PCI maintainer hat)
|
172358 |
27-Sep-2007 |
cognet |
Ok I hope I got it right this time. After discussion with Sam, switch back to use firmware(9) instead of having the firmware in hex format. Put the binary firmware uuencoded into sys/contrib/dev/npe, and slap a LICENSE file, as found on the Intel website.
Approved by: re (blanket), mux (mentor) MFC After: 1 week
|
172357 |
27-Sep-2007 |
cognet |
Now that Intel changed the license for the NPE firmware, import it directly hexed into our tree, instead of requiring the user to download it.
Approved by: re (blanket) MFC after: 1 week
|
172299 |
22-Sep-2007 |
cognet |
Add various macros for the ADMA unit.
Approved by: re (blanket)
|
172297 |
22-Sep-2007 |
cognet |
Add a driver for the 7seg found on the CRB board, largely based on the IQ31244 version.
Approved by: re (blanket)
|
172046 |
04-Sep-2007 |
cognet |
There's no need to re-read PCIR_COMMAND once we set it.
Approved by: re (blanket)
|
171629 |
27-Jul-2007 |
cognet |
Cleanup
Approved by: re (blanket)
|
171628 |
27-Jul-2007 |
cognet |
Do not define NIRQ, it is already defined in include/intr.h
Approved by: re (blanket)
|
171627 |
27-Jul-2007 |
cognet |
Share the timer and watchdog drivers with the i81342. It's the same, except it uses different registers.
Approved by: re (blanket)
|
171626 |
27-Jul-2007 |
cognet |
Add initial IOP342 support. Thanks to Intel for providing sample hardware.
Approved by: re (blanket)
|
170109 |
29-May-2007 |
jhay |
Remove the hardcoded IXP425_UART?_VBASE values in the uart_ixp425_probe() and uart_cpu_getdev(). Change uart_cpu_getdev() to use hints to find the console.
Reviewed by: marcel
|
170069 |
28-May-2007 |
jhay |
We do not need to get the irq out of ivars in ixp425_setup_intr(). By this time they have already been set. In fact trying to set it here too breaks irqs for pci devices.
|
170068 |
28-May-2007 |
jhay |
Optimize a bit more, both the Avila and Pronghorn Metro boards work with GPIO_TYPE_EDG_RISING.
Reviewed by: sam
|
169954 |
24-May-2007 |
sam |
Search for a proper ucode image to use by incrementing the minor release number up to the max. This should eliminate the need to tweak the default imageid define for later releases that are found on the Intel web site.
MFC after: 1 month
|
169952 |
24-May-2007 |
sam |
Move to hints for configuring numerous devices so we can eliminate various quirky code: uarts, led, cf/ide, ixpqmgr, npe are now specified with hints.
May want to put some of these devices back in the code and just use hints to override/specify configuration.
MFC after: 1 month
|
169950 |
24-May-2007 |
sam |
Don't muck with the internal state of a uart during probe, all we should setup is the class. This corrects an issue where enabling uart1 on the avila board caused uart0 to stop working during boot (no msgs generated by rc scripts were displayed).
Reviewed by: imp MFC after: 3 weeks
|
169947 |
24-May-2007 |
sam |
Fix interrupt setup; rev 1.3 switched the irq to GPIO_TYPE_ACT_LOW but this does not work on avila boards; special case them to use GPIO_TYPE_EDG_RISING.
MFC after: 3 weeks Submitted by: jhay
|
169900 |
23-May-2007 |
cognet |
Remove duplicate includes.
Submitted by: Cyril Nguyen Huu <cyril ci0 org>
|
169230 |
03-May-2007 |
kevlo |
Remove sa1_cache_clean_addr. It isn't needed.
|
168281 |
02-Apr-2007 |
marcel |
Don't expose the uart_ops structure directly, but instead have it obtained through the uart_class structure. This allows us to declare the uart_class structure as weak and as such allows us to reference it even when it's not compiled-in. It also allows is to get the uart_ops structure by name, which makes it possible to implement the dt tag handling in uart_getenv(). The side-effect of all this is that we're using the uart_class structure more consistently which means that we now also have access to the size of the bus space block needed by the hardware when we map the bus space, eliminating any hardcoding.
|
167950 |
27-Mar-2007 |
n_hibma |
Revisit the watchdogs: Resetting the error to EINVAL after failing to set the watchdog might hide the succesful arming of an earlier one. Accept that on failing to arm any watchdog (because of non-supported timeouts) EOPNOTSUPP is returned instead of the more appropriate EINVAL.
MFC after: 3 days
|
167570 |
14-Mar-2007 |
jhay |
Map the second CS of the compact flash too. This allow us access to the alternate status and the control registers. Remove the local version of ata_reset.
Add support for the ADI Pronghorn Metro boards. They use CS3 and CS4 instead of Avila's CS1 and CS2.
|
167565 |
14-Mar-2007 |
jhay |
Map the second CS of the compact flash too. This allow us access to the alternate status and the control registers. Remove the local version of ata_reset.
Add support for the ADI Pronghorn Metro boards. They use CS3 and CS4 instead of Avila's CS1 and CS2.
OKed by: sam, cognet
|
167263 |
06-Mar-2007 |
piso |
Wrap ixppcib_setup_intr() at 80.
|
167255 |
06-Mar-2007 |
kevlo |
Reverse this change. malloc() with M_WAITOK never fails.
Noted by: cognet, brian and thompsa
|
167219 |
05-Mar-2007 |
kevlo |
Check for malloc return value
|
166996 |
25-Feb-2007 |
cognet |
Update for the new prototype of bus_setup_intr().
|
166901 |
23-Feb-2007 |
piso |
o break newbus api: add a new argument of type driver_filter_t to bus_setup_intr()
o add an int return code to all fast handlers
o retire INTR_FAST/IH_FAST
For more info: http://docs.freebsd.org/cgi/getmsg.cgi?fetch=465712+0+current/freebsd-current
Reviewed by: many Approved by: re@
|
166756 |
15-Feb-2007 |
luigi |
Cleanup and document the implementation of firmware(9) based on a version that i posted earlier on the -current mailing list, and subsequent feedback received.
The core of the change is just in sys/firmware.h and kern/subr_firmware.c, while other files are just adaptation of the clients to the ABI change (const-ification of some parameters and hiding of internal info, so this is fully compatible at the binary level).
In detail: - reduce the amount of information exported to clients in struct firmware, and constify the pointer;
- internally, document and simplify the implementation of the various functions, and make sure error conditions are dealt with properly.
The diffs are large, but the code is really straightforward now (i hope).
Note also that there is a subtle issue with the implementation of firmware_register(): currently, as in the previous version, we just store a reference to the 'imagename' argument, but we should rather copy it because there is no guarantee that this is a static string. I realised this while testing this code, but i prefer to fix it in a later commit -- there is no regression with respect to the past.
Note, too, that the version in RELENG_6 has various bugs including missing locks around the module release calls, mishandling of modules loaded by /boot/loader, and so on, so an MFC is absolutely necessary there. I was just postponing it until this cleanup to avoid doing things twice.
MFC after: 1 week
|
166625 |
10-Feb-2007 |
mlaier |
Fix small altq related copy and paste error.
|
166454 |
03-Feb-2007 |
kevlo |
ether_ifattach() sets if_mtu to ETHERMTU, don't bother set it again.
Approved by: imp, cognet
|
166414 |
02-Feb-2007 |
kevlo |
Remove a bogus i = 0
Approved by: cognet
|
166339 |
30-Jan-2007 |
kevlo |
Use our own timer that piggybacks on npe_tick() callout instead of if_watchdog/if_timer interface.
Approved by: sam, cognet
|
166248 |
26-Jan-2007 |
kevlo |
Fix comments.
Approved by: cognet
|
166064 |
17-Jan-2007 |
cognet |
Create bus dma tags for both the PCI bus and the IXP425 root bus. Set the PCI bus' one as the default one, and explicitely use the other one for non-PCI devices. This is needed because the PCI bus can only address 64MB of RAM, while some IXP425 boards have 128MB or more, and most of the PCI drivers do not bother providing the parent dma tag.
|
165260 |
15-Dec-2006 |
n_hibma |
Align the interfaces for the various watchdogs and make the interface behave as expected.
Also: - Return an error if WD_PASSIVE is passed in to the ioctl as only WD_ACTIVE is implemented at the moment. See sys/watchdog.h for an explanation of the difference between WD_ACTIVE and WD_PASSIVE. - Remove the I_HAVE_TOTALLY_LOST_MY_SENSE_OF_HUMOR define. If you've lost your sense of humor, than don't add a define.
Specific changes:
i80321_wdog.c Don't roll your own passive watchdog tickle as this would defeat the purpose of an active (userland) watchdog tickle.
ichwd.c / ipmi.c: WD_ACTIVE means active patting of the watchdog by a userland process, not whether the watchdog is active. See sys/watchdog.h.
kern_clock.c: (software watchdog) Remove a check for WD_ACTIVE as this does not make sense here. This reverts r1.181.
|
164970 |
07-Dec-2006 |
sam |
Handle a missing NPE firmware file better; if it's missing print a (somewhat) meaningful message and terminate the build. It'd be nice to print a proper URL from which to fetch the file but that seems problematic. Leave a suggested starting point in this file (TBD: add it to the man page).
Submitted by: ru
|
164936 |
06-Dec-2006 |
julian |
Threading cleanup.. part 2 of several.
Make part of John Birrell's KSE patch permanent.. Specifically, remove: Any reference of the ksegrp structure. This feature was never fully utilised and made things overly complicated. All code in the scheduler that tried to make threaded programs fair to unthreaded programs. Libpthread processes will already do this to some extent and libthr processes already disable it.
Also: Since this makes such a big change to the scheduler(s), take the opportunity to rename some structures and elements that had to be moved anyhow. This makes the code a lot more readable.
The ULE scheduler compiles again but I have no idea if it works.
The 4bsd scheduler still reqires a little cleaning and some functions that now do ALMOST nothing will go away, but I thought I'd do that as a separate commit.
Tested by David Xu, and Dan Eischen using libthr and libpthread.
|
164824 |
02-Dec-2006 |
cognet |
Provide stream operations.
|
164763 |
30-Nov-2006 |
kevlo |
Better i2c bit definitions.
Approved by: cognet
|
164508 |
22-Nov-2006 |
kevlo |
Bring in status led support for /dev/led/gpioled on Avila.
Approved by: cognet
|
164440 |
20-Nov-2006 |
kevlo |
Match bus space unmap prototype.
Approved by: cognet
|
164426 |
19-Nov-2006 |
sam |
Gateworks Avila board support: o ixp425 support o NPE network driver (requires Intel microcode) o h/w qmgr support o True IDE compact flash over expansion bus o pci (ath and hifn795x parts tested) o xscale watchdog timer o ds1672 RTC on i2c bus o ad7418 voltage + temp monitoring on i2c bus o uart
Work done together with cognet, kevlo, and jmg. Parts of the ixp425 support obtaine/derived from netbsd.
Reviewed by: cognet, imp MFC after: 1 month
|
164351 |
17-Nov-2006 |
kevlo |
Compile -- remove an unused global variable avail_end.
Approved by: cognet
|
163709 |
26-Oct-2006 |
jb |
Make KSE a kernel option, turned on by default in all GENERIC kernel configs except sun4v (which doesn't process signals properly with KSE).
Reviewed by: davidxu@
|
161670 |
27-Aug-2006 |
cognet |
Fill in dump_avail[] before pmap_boostrap() is called so that ARM_USE_SMALL_ALLOC work.
|
161592 |
24-Aug-2006 |
cognet |
Finally bring it support for the i80219 XScale processor.
Submitted by: Max M. Boyarov <m.boyarov bsd by>
|
161105 |
08-Aug-2006 |
cognet |
Rewrite ARM_USE_SMALL_ALLOC so that instead of the current behavior, it maps whole the physical memory, cached, using 1MB section mappings. This reduces the address space available for user processes a bit, but given the amount of memory a typical arm machine has, it is not (yet) a big issue. It then provides a uma_small_alloc() that works as it does for architectures which have a direct mapping.
|
161063 |
08-Aug-2006 |
kevlo |
Remove a bogus i = 0. Approved by: cognet
|
160655 |
25-Jul-2006 |
kevlo |
Cleanup. Approved by: cognet
|
160343 |
14-Jul-2006 |
cognet |
Remove prototype for the undefined function counterhandler().
Submitted by: kevlo
|
159358 |
06-Jun-2006 |
cognet |
Remove a bogus, useless, "i++".
|
158928 |
26-May-2006 |
cognet |
Remove any reference to enable_mmu(), it's been gone for a long time.
Submitted by: kevlo
|
158746 |
19-May-2006 |
cognet |
We have an implementation of generic_bs_rr_1, so use it, as some drivers use it.
Submitted by: kevlo
|
158319 |
05-May-2006 |
cognet |
Setting the rid of the resource is a good idea, but we still need to return the resource after.
|
157891 |
20-Apr-2006 |
imp |
When returning a resource that we've allocated with rman_reserve_resource, go ahead and set the rid for that resource.
|
157726 |
13-Apr-2006 |
cognet |
We need to adjust the bus handle if the resource is SYS_RES_MEMORY, NOT SYS_RES_IOPORT.
|
157567 |
06-Apr-2006 |
cognet |
Add a new option, XSCALE_DISABLE_CCNT, to not use the xscale ccnt as a timecounter (because gxemul doesn't emule it yet).
|
156212 |
02-Mar-2006 |
cognet |
Use BUS_DMA_COHERENT.
|
155308 |
04-Feb-2006 |
cognet |
Don't forget to set the address of the next descriptor to 0 when we're zeroing a physical page, or we could end up re-zeroing portions of memory we have zeroed before, which is clearly not wanted.
|
154712 |
23-Jan-2006 |
cognet |
Donc recompute the io port address if it's already the good one.
|
153666 |
22-Dec-2005 |
jhb |
Tweak how the MD code calls the fooclock() methods some. Instead of passing a pointer to an opaque clockframe structure and requiring the MD code to supply CLKF_FOO() macros to extract needed values out of the opaque structure, just pass the needed values directly. In practice this means passing the pair (usermode, pc) to hardclock() and profclock() and passing the boolean (usermode) to hardclock_cpu() and hardclock_process(). Other details: - Axe clockframe and CLKF_FOO() macros on all architectures. Basically, all the archs were taking a trapframe and converting it into a clockframe one way or another. Now they can just extract the PC and usermode values directly out of the trapframe and pass it to fooclock(). - Renamed hardclock_process() to hardclock_cpu() as the latter is more accurate. - On Alpha, we now run profclock() at hz (profhz == hz) rather than at the slower stathz. - On Alpha, for the TurboLaser machines that don't have an 8254 timecounter, call hardclock() directly. This removes an extra conditional check from every clock interrupt on Alpha on the BSP. There is probably room for even further pruning here by changing Alpha to use the simplified timecounter we use on x86 with the lapic timer since we don't get interrupts from the 8254 on Alpha anyway. - On x86, clkintr() shouldn't ever be called now unless using_lapic_timer is false, so add a KASSERT() to that affect and remove a condition to slightly optimize the non-lapic case. - Change prototypeof arm_handler_execute() so that it's first arg is a trapframe pointer rather than a void pointer for clarity. - Use KCOUNT macro in profclock() to lookup the kernel profiling bucket.
Tested on: alpha, amd64, arm, i386, ia64, sparc64 Reviewed by: bde (mostly)
|
153615 |
21-Dec-2005 |
cognet |
Remove #undef DDB I shouldn't have committed.
|
153279 |
09-Dec-2005 |
cognet |
- Better use of the busdma API. - Use spin locks instead of sleep locks.
|
153278 |
09-Dec-2005 |
cognet |
Fix a harmless bug in the way we allocate the early PTEs.
|
153277 |
09-Dec-2005 |
cognet |
The IQ80321 clock is 200MHz, but the IQ80321 is 198MHz, so add a kernel option to override the frequency
|
152743 |
24-Nov-2005 |
cognet |
Use a magic number to know we were started from the elf wrapper. Add a dummy _start function to make the non-elf version of the wrapper work.
|
151524 |
20-Oct-2005 |
cognet |
Cleanup.
|
151415 |
17-Oct-2005 |
cognet |
Use the clock count register as a timecounter, as it's more accurate.
|
150916 |
04-Oct-2005 |
cognet |
Fix build when DDB isn't defined.
|
150872 |
03-Oct-2005 |
cognet |
Import dummy drivers for the i80321 DMA controller and AAU. The DMA controller driver only knows how to do memory to memory copies, and the AAU driver how to zero a chunk of memory. Use them to process big (>=1KB) copying/zeroing.
|
150867 |
03-Oct-2005 |
cognet |
Provide a dump_avail[] variable, which contains the page ranges to be dumped.
For iq31244_machdep.c, attempt to recognize hints provided by the elf trampoline.
|
150552 |
25-Sep-2005 |
cognet |
Fix multiple abuses of __RMAN_RESOURCE_VISIBLE in the arm code.
Spotted out by: phk
|
147545 |
23-Jun-2005 |
cognet |
Remove the va == pa mapping.
Approved by: re (blanket)
|
147166 |
09-Jun-2005 |
cognet |
- MFp4: modify slightly the arm intr API, there's arm CPUs with more than 32 interrupts. - Implement teardown methods where appropriate.
|
147114 |
07-Jun-2005 |
cognet |
Add a new arm-specific option, ARM_USE_SMALL_ALLOC. If defined, it provides an implementation of uma_small_alloc() which tries to preallocate memory 1MB per 1MB, and maps it into a section mapping.
|
146932 |
03-Jun-2005 |
cognet |
Remove a useless printf.
|
146618 |
25-May-2005 |
cognet |
Increase the refresh rate.
|
145594 |
27-Apr-2005 |
cognet |
Allocating the memory for the kernel stack one time is enough.
|
144763 |
07-Apr-2005 |
cognet |
Don't announce the range SDRAM_START-freemempos until I figure out what's going on, it produces random memory corruption.
|
144762 |
07-Apr-2005 |
cognet |
pmap_update() is gone.
|
143773 |
17-Mar-2005 |
cognet |
Bring back some of the cleanups and fixes jmg did in the TS7200 port.
|
143728 |
17-Mar-2005 |
cognet |
Use PCIR_BARS instead of PCIR_MAPS.
|
142570 |
26-Feb-2005 |
cognet |
Instead of using sysarch() to store-retrieve the tp, add a magic address, ARM_TP_ADDRESS, where the tp will be stored. On CPUs that support it, a cache line will be allocated and locked for this address, so that it will never go to RAM. On CPUs that does not, a page is allocated for it (it will be a bit slower, and is wrong for SMP, but should be fine for UP). The tp is still stored in the mdthread struct, and at each context switch, ARM_TP_ADDRESS gets updated.
Suggested by: davidxu
|
142145 |
20-Feb-2005 |
cognet |
MFp4: get the code that set the pc correctly to work, remove a few IQ31244 specific mappings from locore.S, re-organize iq31244_machdep.c to work with the new locore.S
Spotted out by: jmg
|
141819 |
13-Feb-2005 |
cognet |
Remove unused prototype.
|
141817 |
13-Feb-2005 |
cognet |
Remove redondant includes.
|
141813 |
13-Feb-2005 |
cognet |
Don't prototype pmap_kenter().
|
140533 |
20-Jan-2005 |
cognet |
Remove references to non-existing symbols DO_corb and got_mmu. While I'm there, remove dead code.
|
140350 |
16-Jan-2005 |
cognet |
Add a new sysctl, hw.sevenseg.freq, to control the update frequency.
|
140308 |
15-Jan-2005 |
cognet |
Add support for the IQ31244 7 seg display.
Obtained from: NetBSD
|
140307 |
15-Jan-2005 |
cognet |
Start the license statement with /*-
|
140305 |
15-Jan-2005 |
cognet |
Use device_set_desc().
|
140304 |
15-Jan-2005 |
cognet |
Add the i80321 watchdog.
|
140303 |
15-Jan-2005 |
cognet |
Add a driver for the i80321 watchdog.
Obtained from: NetBSD
|
139735 |
05-Jan-2005 |
imp |
Start all license statements with /*-
|
139117 |
21-Dec-2004 |
cognet |
- The IQ80321 has a jumper which changes the PCI device id from 4 to 8 for the GigE controller, so handle this. - Use the outbound window 0 if the PCI mem requested is in its range, instead of inconditionally use the outbound window 1. This should be enough to get FreeBSD/arm to work on the IQ80321 board as well.
Reported and tested by: Jia-Shiun Li <jiashiun at gmail dot com>
|
138417 |
05-Dec-2004 |
cognet |
Make sure to map the whole kernel into 1MB pages. Try to use the remaining memory for things such as the kernel stack.
|
138021 |
23-Nov-2004 |
cognet |
Use ns8250.
|
137939 |
20-Nov-2004 |
cognet |
Get the kernel stack right now that the u-area is gone.
|
137912 |
20-Nov-2004 |
das |
U areas are going away, so don't allocate one for process 0.
Reviewed by: arch@
|
137838 |
18-Nov-2004 |
cognet |
Move KERNPHYSADDR and KERNVIRTADDR from std.i80321 to std.iq31244. Use the correct KERNPHYSADDR.
|
137665 |
13-Nov-2004 |
cognet |
Remove debugging printf.
|
137551 |
10-Nov-2004 |
cognet |
Convert the IQ31244 code to use ARM32_NEW_VM_LAYOUT.
|
137273 |
05-Nov-2004 |
cognet |
If we're still running at the physical address, jump to the virtual address instead before calling initarm(). This removes the need to map virtual == physical in initarm().
|
135669 |
23-Sep-2004 |
cognet |
Import partial support for the IQ31244 eval board (i80321 CPU). IQ80321 might work out of the box too, but I have no hardware to test. It works well enough to go multiuser. Network works, SATA does not, as I have no drive to test. Thanks to Intel for sending such a board.
Obtained from: NetBSD
|
135668 |
23-Sep-2004 |
cognet |
Add Xscale common headers.
|