#
2baed46e |
|
13-Mar-2024 |
John Baldwin <jhb@FreeBSD.org> |
new-bus: Remove the 'rid' and 'type' arguments from BUS_*ACTIVATE_RESOURCE The public bus_activate/deactivate_resource() API still accepts both forms, but the internal kobj methods no longer pass the arguments. Implementations which need the rid or type now use rman_get_rid() or rman_get_type() to fetch the value from the allocated resource. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D44130
|
#
d77f2092 |
|
13-Mar-2024 |
John Baldwin <jhb@FreeBSD.org> |
new-bus: Remove the 'type' argument from BUS_MAP/UNMAP_RESOURCE The public bus_map/unmap_resource() API still accepts both forms, but the internal kobj methods no longer pass the argument. Implementations which need the type now use rman_get_type() to fetch the value from the allocated resource. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D44129
|
#
faeb273e |
|
23-Jan-2024 |
John Baldwin <jhb@FreeBSD.org> |
arm nexus: Use bus_generic_rman_* - Implement bus_get_rman pulling bits from nexus_alloc_resource. - Implement bus_map/unmap_resource pulling bits from nexus_activate/deactivate_resource. - Use bus_generic_rman_* for bus_alloc/adjust/activate/deactivate/release_resource except for custom interrupt activate/deactivate logic still in nexus_activate/deactivate_resource. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D43437
|
#
fdafd315 |
|
24-Nov-2023 |
Warner Losh <imp@FreeBSD.org> |
sys: Automated cleanup of cdefs and other formatting Apply the following automated changes to try to eliminate no-longer-needed sys/cdefs.h includes as well as now-empty blank lines in a row. Remove /^#if.*\n#endif.*\n#include\s+<sys/cdefs.h>.*\n/ Remove /\n+#include\s+<sys/cdefs.h>.*\n+#if.*\n#endif.*\n+/ Remove /\n+#if.*\n#endif.*\n+/ Remove /^#if.*\n#endif.*\n/ Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/types.h>/ Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/param.h>/ Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/capsicum.h>/ Sponsored by: Netflix
|
#
685dc743 |
|
16-Aug-2023 |
Warner Losh <imp@FreeBSD.org> |
sys: Remove $FreeBSD$: one-line .c pattern Remove /^[\s*]*__FBSDID\("\$FreeBSD\$"\);?\s*\n/
|
#
ca4c7859 |
|
26-Apr-2023 |
Mark Johnston <markj@FreeBSD.org> |
nexus: Consistently return a pointer in failure paths No functional change intended. MFC after: 1 week
|
#
c650e194 |
|
06-Feb-2023 |
Mitchell Horne <mhorne@FreeBSD.org> |
arm: nexus code tidy-up Make a pass at the various nexus implementations, fixing some very minor style issues, obsolete comments, etc. The method declaration section has become unwieldy in many respects. Attempt to tame it by: - Using generated method typedefs - Grouping methods roughly by category, and then alphabetically. Reviewed by: jhb Differential Revision: https://reviews.freebsd.org/D38495
|
#
53d5e65e |
|
13-Feb-2023 |
Mitchell Horne <mhorne@FreeBSD.org> |
ofwbus: remove arm64 ifdefs Rather than using the DEVICE_IDENTIFY method, let's have other ofwbus-using platforms add ofwbus0 explicitly in nexus, like arm64. This gives them the same flexibility, e.g. if riscv starts supporting ACPI, and cleans up the #ifdefs. We were doing this already on riscv, but adjust the 'order' parameters. Reviewed by: andrew, jhb MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D38492
|
#
f9bdaab9 |
|
08-Feb-2023 |
Elliott Mitchell <ehem+freebsd@m5p.com> |
ofwbus: remove handling of resources from ofwbus The architecture nexus should handle allocation and release of memory and interrupts. This is to ensure that system-wide resources such as these are available to all devices, not just children of ofwbus0. On powerpc this moves the ownership of these resources up one level, from ofwbus0 to nexus0. Other architectures already have the required logic in their nexus implementation, so this eliminates the duplication of resources. An implementation of nexus_adjust_resource() is added for arm, arm64, and riscv. As noted by ian@ in the review, resource handling was the main bit of logic distinguishing ofwbus from simplebus. With some attention to detail, it should be possible to merge the two in the future. Co-authored by: mhorne MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D30554
|
#
1d03c357 |
|
05-Dec-2021 |
Mitchell Horne <mhorne@FreeBSD.org> |
arm: add an interrupt rman to nexus Allow the nexus bus to own and manage interrupt resources. Currently, interrupt resources on this architecture are managed completely by ofwbus, but it is desirable that system-wide memory and interrupt resources be managed by the top-level bus. This is a pre-requisite to moving this resource management out of ofwbus. Reviewed By: ian, Elliott Mitchell <ehem+freebsd@m5p.com> MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D32357
|
#
7ae99f80 |
|
22-Sep-2022 |
John Baldwin <jhb@FreeBSD.org> |
pmap_unmapdev/bios: Accept a pointer instead of a vm_offset_t. This matches the return type of pmap_mapdev/bios. Reviewed by: kib, markj Sponsored by: DARPA Differential Revision: https://reviews.freebsd.org/D36548
|
#
ea8f128c |
|
28-Jul-2022 |
John Baldwin <jhb@FreeBSD.org> |
pmap_mapdev: Consistently use vm_paddr_t for the first argument. The devmap variants used vm_offset_t for some reason, and a few places explicitly cast bus addresses to vm_offset_t. (Probably those casts along with similar casts for vm_size_t should just be removed and instead permit the compiler to DTRT.) Reviewed by: markj Sponsored by: DARPA Differential Revision: https://reviews.freebsd.org/D35961
|
#
3e931869 |
|
09-May-2022 |
John Baldwin <jhb@FreeBSD.org> |
arm/arm: Remove unused devclass arguments to DRIVER_MODULE.
|
#
17f790f4 |
|
07-Oct-2021 |
Mitchell Horne <mhorne@FreeBSD.org> |
arm, arm64, riscv: adjust top-level nexus comment These platforms don't manage resources for DMA request lines or I/O ports, this is specific to x86. Remove the references from the comments. Reviewed by: imp, jhb MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D32358
|
#
5c2967f6 |
|
29-Nov-2020 |
Michal Meloun <mmel@FreeBSD.org> |
Remove the pre-ARMv6 and pre-INTRNG code. ARM has required ARMV6+ and INTRNg for some time now, so remove always false #ifdefs and unconditionally do always true #ifdefs.
|
#
65454883 |
|
01-Sep-2020 |
Mateusz Guzik <mjg@FreeBSD.org> |
arm: clean up empty lines in .c and .h files
|
#
474612c3 |
|
21-Jun-2017 |
Zbigniew Bodek <zbb@FreeBSD.org> |
Enable setting the dma tag at the nexus level Allow to set the dma tag for nexus in the platform init code, so that all busses and devices would be able to inherit it. This change is useful e.g. for setting coherent dma tag for the platforms with hardware IO cache coherency. Submitted by: ian Michal Mazur <mkm@semihalf.com> Reviewed by: ian Differential revision: https://reviews.freebsd.org/D11202
|
#
c38fb780 |
|
12-Oct-2016 |
Oleksandr Tymoshenko <gonzo@FreeBSD.org> |
INTRNG: Propagate IRQ activation error to API consumer Keep resource state consistent with INTRNG state - if intr_activate_irq fails - deactivate resource and propagate error to calling function Reviewed by: mmel
|
#
895c8b1c |
|
19-Aug-2016 |
Michal Meloun <mmel@FreeBSD.org> |
INTRNG: Rework handling with resources. Partially revert r301453. - Read interrupt properties at bus enumeration time and store it into global mapping table. - At bus_activate_resource() time, given mapping entry is resolved and connected to real interrupt source. A copy of mapping entry is attached to given resource. - At bus_setup_intr() time, mapping entry stored in resource is used for delivery of requested interrupt configuration. - For MSI/MSIX interrupts, mapping entry is created within pci_alloc_msi()/pci_alloc_msix() call. - For legacy PCI interrupts, mapping entry must be created within pcib_route_interrupt() by pcib driver itself. Reviewed by: nwhitehorn, andrew Differential Revision: https://reviews.freebsd.org/D7493
|
#
ad5244ec |
|
05-Jun-2016 |
Svatopluk Kraus <skra@FreeBSD.org> |
INTRNG - change the way how an interrupt mapping data are provided to the framework in OFW (FDT) case. This is a follow-up to r301451. Differential Revision: https://reviews.freebsd.org/D6634
|
#
59c3cb81 |
|
15-Apr-2016 |
Andrew Turner <andrew@FreeBSD.org> |
Rename ARM_INTRNG and MIPS_INTRNG to INTRNG. This will help with machine independent code that needs to know about INTRNG such as PCI drivers. Obtained from: ABT Systems Ltd Sponsored by: The FreeBSD Foundation
|
#
41b610a8 |
|
15-Apr-2016 |
Pedro F. Giffuni <pfg@FreeBSD.org> |
arm: for pointers replace 0 with NULL. These are mostly cosmetical, no functional change. Found with devel/coccinelle.
|
#
bff6be3e |
|
04-Apr-2016 |
Svatopluk Kraus <skra@FreeBSD.org> |
Remove FDT specific parts from INTRNG. Change its interface to make it universal. (1) New struct intr_map_data is defined as a container for arbitrary description of an interrupt used by a device. Typically, an interrupt number and configuration relevant to an interrupt controller is encoded in such description. However, any additional information may be encoded too like a set of cpus on which an interrupt should be enabled or vendor specific data needed for setup of an interrupt in controller. The struct intr_map_data itself is meant to be opaque for INTRNG. (2) An intr_map_irq() function is created which takes an interrupt controller identification and struct intr_map_data as arguments and returns global interrupt number which identifies an interrupt. (3) A set of functions to be used by bus drivers is created as well as a corresponding set of methods for interrupt controller drivers. These sets take both struct resource and struct intr_map_data as one of the arguments. There is a goal to keep struct intr_map_data in struct resource, however, this way a final solution is not limited to that. (4) Other small changes are done to reflect new situation. This is only first step aiming to create stable interface for interrupt controller drivers. Thus, some temporary solution is taken. Interrupt descriptions for devices are stored in INTRNG and two specific mapping function are created to be temporary used by bus drivers. That's why the struct intr_map_data is not opaque for INTRNG now. This temporary solution will be replaced by final one in next step. Differential Revision: https://reviews.freebsd.org/D5730
|
#
e665eafb |
|
29-Feb-2016 |
Justin Hibbits <jhibbits@FreeBSD.org> |
Correct the memory rman ranges to be to BUS_SPACE_MAXADDR Summary: As part of the migration of rman_res_t to be typed to uintmax_t, memory ranges must be clamped appropriately for the bus, to prevent completely bogus addresses from being used. This is extracted from D4544. Reviewed By: cem Sponsored by: Alex Perez/Inertial Computing Differential Revision: https://reviews.freebsd.org/D5134
|
#
b998c965 |
|
18-Feb-2016 |
Zbigniew Bodek <zbb@FreeBSD.org> |
Introduce bus_get_bus_tag() method Provide bus_get_bus_tag() for sparc64, powerpc, arm, arm64 and mips nexus and its children in order to return a platform specific default tag. This is required to ensure generic correctness of the bus_space tag. It is especially needed for arches where child bus tag does not match the parent bus tag. This solves the problem with ppc architecture where the PCI bus tag differs from parent bus tag which is big-endian. This commit is a part of the following patch: https://reviews.freebsd.org/D4879 Submitted by: Marcin Mazurek <mma@semihalf.com> Obtained from: Semihalf Sponsored by: Annapurna Labs Reviewed by: jhibbits, mmel Differential Revision: https://reviews.freebsd.org/D4879
|
#
2dd1bdf1 |
|
26-Jan-2016 |
Justin Hibbits <jhibbits@FreeBSD.org> |
Convert rman to use rman_res_t instead of u_long Summary: Migrate to using the semi-opaque type rman_res_t to specify rman resources. For now, this is still compatible with u_long. This is step one in migrating rman to use uintmax_t for resources instead of u_long. Going forward, this could feasibly be used to specify architecture-specific definitions of resource ranges, rather than baking a specific integer type into the API. This change has been broken out to facilitate MFC'ing drivers back to 10 without breaking ABI. Reviewed By: jhb Sponsored by: Alex Perez/Inertial Computing Differential Revision: https://reviews.freebsd.org/D5075
|
#
2b3ad188 |
|
17-Dec-2015 |
Adrian Chadd <adrian@FreeBSD.org> |
[intrng] Migrate the intrng code from sys/arm/arm to sys/kern/subr_intr.c. The ci20 port (by kan@) is going to reuse almost all of the intrng code since the SoC in question looks suspiciously like someone took an ARM SoC design and replaced the ARM core with a MIPS core. * migrate out the code; * rename ARM_ -> INTR_; * rename arm_ -> intr_; * move the interrupt flush routine from intr.c / intrng.c into arm/machdep_intr.c - removing the code duplication and removing the ARM specific bits from here. Thanks to the Star Wars: The Force Awakens premiere line for allowing me a couple hours of quiet time to finish the universe builds. Tested: * make universe TODO: * The structure definitions in subr_intr.c still includes machine/intr.h which requires one duplicates all of the intrng definitions in the platform code (which kan has done, and I think we don't have to.) Instead I should break out the generic things (function declarations, common intr structures, etc) into a separate header. * Kan has requested I make the PIC based IPI stuff optional.
|
#
686450c8 |
|
18-Oct-2015 |
Ian Lepore <ian@FreeBSD.org> |
Import ARM_INTRNG, the "next generation" interrupt architecture for arm and armv6 architecures. The primary enhancement over the old design is support for hierarchical interrupt controllers (such as a gpio driver which can receive interrupts from a root PIC and act as a PIC itself for clients interested in handling a change of gpio pin state as an interrupt). The new code also provides an infrastructure for mapping interrupts described in metadata in the form of a "controller reference plus interrupt number" tuple into the simple "0-n" flat numeric space understood by rman and the bus resource mechanisms. Use of the new code is enabled by setting the ARM_INTRNG option, and by making a few simple changes to the platform's support code. In addition each existing PIC driver needs changes to be ready for INTRNG; this commit contains the changes for the arm/gic driver, which most armv6 SoCs use, but it does not enable the new code yet on any platform. This project has been many years in the making, starting as a GSoC project by Jakub Klama (jceel@) in 2012. That didn't get committed right away and the source base evolved out from under it to some degree. In 2014 I rebased the diffs to then -current and did some enhancements in the area of mapping interrupt numbers and storing associated fdt data, then the project went cold again for a while. Eventually Svata Kraus took that work in progress and did another big round of work on it, removing most of the remaining rough edges. Finally I took that and made one more pass through it, mostly disabling the "INTR_SOLO" feature for now, pending further design discussions on how to most efficiently dispatch a pending interrupt through more than one layer of PIC. The current code with the INTR_SOLO feature disabled uses approximate 100 extra cpu cycles for each cascaded PIC the interrupt has to be passed to, so what's left to do is about efficiency, not correct operation. Differential Revision: https://reviews.freebsd.org/D2047
|
#
66fb2f18 |
|
23-May-2015 |
Andrew Turner <andrew@FreeBSD.org> |
Remove trailing whitespace from sys/arm/arm
|
#
ec7d251e |
|
21-Dec-2014 |
Andrew Turner <andrew@FreeBSD.org> |
Pull out the fdt mapping code into intr.c. The arm_intrng branch also defines this function allowing the mapping method to change when we move to it.
|
#
81d54b79 |
|
26-Oct-2014 |
Ian Lepore <ian@FreeBSD.org> |
Remove the ARM_DEVICE_MULTIPASS option and make its effect be the default. Multipass device attachment was tested on many arm platforms by users and only success was reported on the arm@ mailing list. This is just the long-delayed followup of making it the default. Multipass attachment is necessary when using vendor-supplied FDT data, because our devices may need to be attached in a different order than they are described in the FDT data.
|
#
67993f6a |
|
14-Sep-2014 |
Ian Lepore <ian@FreeBSD.org> |
Fix an undefined variable that was accidentally not causing an error. The code had references to both intr_offset and intr_parent variable names as referring to the parent interrupt node. The intr_parent variable wasn't actually defined anywhere, but the only references to it were as an argument to a macro that didn't use that argument in expansion, so the undefined variable accidentally didn't cause an error. The intr_parent name makes more sense in context, so change all occurrances of intr_offset to intr_parent.
|
#
ace8dcfc |
|
12-Sep-2014 |
John Baldwin <jhb@FreeBSD.org> |
- Don't let rman_reserve_resource() activate the resource in nexus_alloc_resource() and don't set a bushandle. nexus_activate_resource() will set a proper bushandle. - Implement a proper nexus_release_resource(). - Fix ixppcib_activate_resource() to call rman_activate_resource() before creating a mapping for the resource. Tested by: jmg
|
#
752ba930 |
|
01-Sep-2014 |
Ian Lepore <ian@FreeBSD.org> |
Rename OF_xref_phandle() to OF_node_from_xref() and add a new function that provides the inverse translation, OF_xref_from_node(). Discussed with: nwhitehorn
|
#
9a6e86e1 |
|
13-Aug-2014 |
Warner Losh <imp@FreeBSD.org> |
Add support for multipass to Atmel, for both FDT and !FDT cases.
|
#
970775a5 |
|
05-Aug-2014 |
Ian Lepore <ian@FreeBSD.org> |
Add an arm option, ARM_DEVICE_MULTIPASS, used to opt-in to multi-pass device attachment on arm platforms. If this is defined, nexus attaches early in BUS_PASS_BUS, and other busses and devices attach later, in the pass number they are set up for. Without it defined, nexus attaches in BUS_PASS_DEFAULT and thus so does everything else, which is status quo. Arm platforms which use FDT data to enumerate devices have been relying on devices being attached in the exact order they're listed in the dts source file. That's one of things currently preventing us from using vendor-supplied fdt data (because then we don't control the order of the devices in the data). Multi-pass attachment can go a long way towards solving that problem by ensuring things like clock and interrupt drivers are attached before the more mundane devices that need them. The long-term goal is to have all arm fdt-based platforms using multipass. This option is a bridge to that, letting us enable it selectively as platforms are converted and tested (the alternative being to just throw a big switch and try to fight fires as they're reported).
|
#
65d08437 |
|
05-Feb-2014 |
Nathan Whitehorn <nwhitehorn@FreeBSD.org> |
Move Open Firmware device root on PowerPC, ARM, and MIPS systems to a sub-node of nexus (ofwbus) rather than direct attach under nexus. This fixes FDT on x86 and will make coexistence with ACPI on ARM systems easier. SPARC is unchanged. Reviewed by: imp, ian
|
#
52567c06 |
|
02-Feb-2014 |
Nathan Whitehorn <nwhitehorn@FreeBSD.org> |
Fix one remnant endian flaw here. The back-and-forth endian conversions are confusing.
|
#
4a5e35f6 |
|
01-Feb-2014 |
Nathan Whitehorn <nwhitehorn@FreeBSD.org> |
Fix typo. Sorry for breakage!
|
#
bbc6da03 |
|
01-Feb-2014 |
Nathan Whitehorn <nwhitehorn@FreeBSD.org> |
Open Firmware interrupt specifiers can consist of arbitrary-length byte strings and include arbitrary information (IRQ line/domain/sense). When the ofw_bus_map_intr() API was introduced, it assumed that, as on most systems, these were either 1 cell, containing an interrupt line, or 2, containing a line number plus a sense code. It turns out a non-negligible number of ARM systems use 3 (or even 4!) cells for interrupts, so make this more general.
|
#
f61b6fe5 |
|
04-Jan-2014 |
Ian Lepore <ian@FreeBSD.org> |
Use bus_space_map() rather than pmap_mapdev() in nexus_activate_resource(), when running on FDT systems. Unmap memory in nexus_deactivate_resource(). Also, call rman_activate_resource() before mapping device memory, and only do the mapping if it returns success. Reviewed by: nwhitehorn
|
#
818f49fc |
|
04-Jan-2014 |
Nathan Whitehorn <nwhitehorn@FreeBSD.org> |
Implement OFW_BUS_MAP_INTR() in terms of the FDT PIC table, which will become an ARM-specific quirk.
|
#
4acd62c5 |
|
01-Jan-2014 |
Zbigniew Bodek <zbb@FreeBSD.org> |
Add polarity and level support to ARM GIC Add suport for setting triggering level and polarity in GIC. New function pointer was added to nexus which corresponds to the function which sets level/sense in the hardware (GIC). Submitted by: Wojciech Macek <wma@semihalf.com> Obtained from: Semihalf
|
#
5cd2b97c |
|
05-Nov-2013 |
Nathan Whitehorn <nwhitehorn@FreeBSD.org> |
Teach nexus(4) about Open Firmware (e.g. FDT) on ARM and MIPS, retiring fdtbus in most cases. This brings ARM and MIPS more in line with existing Open Firmware platforms like sparc64 and powerpc, as well as preventing double-enumeration of the OF tree on embedded PowerPC (first through nexus, then through fdtbus). This change is also designed to simplify resource management on FDT platforms by letting there exist a platform-defined root bus resource_activate() call instead of replying on fdtbus to do the right thing through fdt_bs_tag. The OFW_BUS_MAP_INTR() and OFW_BUS_CONFIG_INTR() kobj methods are also available to implement for similar purposes. Discussed on: -arm, -mips Tested by: zbb, brooks, imp, and others MFC after: 6 weeks
|
#
69d75558 |
|
26-Oct-2013 |
Ian Lepore <ian@FreeBSD.org> |
Remove all #include <machine/pmap.h> from arm code. It's already included by vm/pmap.h, which is a prerequisite for arm/machine/pmap.h so there's no reason to ever include it directly. Thanks to alc@ for pointing this out.
|
#
86bce749 |
|
16-Jul-2012 |
Oleksandr Tymoshenko <gonzo@FreeBSD.org> |
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@
|
#
5e92d389 |
|
12-Jun-2012 |
Warner Losh <imp@FreeBSD.org> |
Final whitespace trim.
|
#
7377b92e |
|
23-May-2012 |
Grzegorz Bernacki <gber@FreeBSD.org> |
ARMs don't have motherboards. Obtained from: Semihalf
|
#
b67d11bb |
|
29-Apr-2011 |
John Baldwin <jhb@FreeBSD.org> |
Change rman_manage_region() to actually honor the rm_start and rm_end constraints on the rman and reject attempts to manage a region that is out of range. - Fix various places that set rm_end incorrectly (to ~0 or ~0u instead of ~0ul). - To preserve existing behavior, change rman_init() to set rm_start and rm_end to allow managing the full range (0 to ~0ul) if they are not set by the caller when rman_init() is called.
|
#
a7d5f7eb |
|
19-Oct-2010 |
Jamie Gritton <jamie@FreeBSD.org> |
A new jail(8) with a configuration file, to replace the work currently done by /etc/rc.d/jail.
|
#
3d844edd |
|
10-Sep-2010 |
Andriy Gapon <avg@FreeBSD.org> |
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
|
#
915421bb |
|
16-Jun-2010 |
Rafal Jaworowski <raj@FreeBSD.org> |
Move ARM nexus rman initialization to attach routine. This fixes a panic, which started to trigger after r209129 cleanup. Submitted by: Andrew Turner
|
#
ddf2705d |
|
13-Jun-2010 |
Rafal Jaworowski <raj@FreeBSD.org> |
Improve style.
|
#
d7f03759 |
|
19-Oct-2008 |
Ulf Lilleengen <lulf@FreeBSD.org> |
- Import the HEAD csup code which is the basis for the cvsmode work.
|
#
217d7296 |
|
10-Sep-2008 |
Rafal Jaworowski <raj@FreeBSD.org> |
ARM nexus style(9) improvements.
|
#
f4e42148 |
|
10-Sep-2008 |
Rafal Jaworowski <raj@FreeBSD.org> |
ARM interrupts improvements. - Fix nexus_setup_intr() abuse of setting up multiple IRQs in one go. Calling arm_setup_irqhandler() in loop is bogus, as there's just one cookie given from the caller and it is overwritten in each iteration so that only the last handler's cookie value prevails. - Proper intr masking/unmasking handling: the IRQ source is masked at PIC level only after the last handler has been removed from the list. Reviewed by: cognet, imp, sam, stass Obtained from: Grzegorz Bernacki gjb ! semihalf dot com
|
#
507ea268 |
|
12-Mar-2008 |
Rafal Jaworowski <raj@FreeBSD.org> |
Respect RF_SHAREABLE flag in ARM nexus_setup_intr() Reviewed by: imp Approved by: cognet (mentor)
|
#
ef544f63 |
|
22-Feb-2007 |
Paolo Pisati <piso@FreeBSD.org> |
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@
|
#
1ea7de37 |
|
17-Nov-2006 |
Olivier Houchard <cognet@FreeBSD.org> |
Erm we really want to mask all interrupts in the range, just not the first one. Submitted by: ru
|
#
4e52d868 |
|
25-Oct-2006 |
Olivier Houchard <cognet@FreeBSD.org> |
Let allow to teardown multiple irqs as well.
|
#
0a7b0490 |
|
25-Oct-2006 |
Olivier Houchard <cognet@FreeBSD.org> |
Setup multiple interrupts if needed.
|
#
018dc558 |
|
19-Apr-2006 |
Warner Losh <imp@FreeBSD.org> |
When returning a resource that we've allocated with rman_reserve_resource, go ahead and set the rid for that resource.
|
#
0cc67e3d |
|
25-Sep-2005 |
Olivier Houchard <cognet@FreeBSD.org> |
Fix multiple abuses of __RMAN_RESOURCE_VISIBLE in the arm code. Spotted out by: phk
|
#
f60e923b |
|
08-Jun-2005 |
Olivier Houchard <cognet@FreeBSD.org> |
- MFp4: modify slightly the arm intr API, there's arm CPUs with more than 32 interrupts. - Implement teardown methods where appropriate.
|
#
d8315c79 |
|
05-Jan-2005 |
Warner Losh <imp@FreeBSD.org> |
Start all license statements with /*-
|
#
0e564675 |
|
02-Jul-2004 |
Olivier Houchard <cognet@FreeBSD.org> |
Define __RMAN_RESOURCE_VISIBLE where appropriate.
|
#
fc1bcbd0 |
|
22-May-2004 |
Maxime Henrion <mux@FreeBSD.org> |
Remove two debugging printf(). On behalf of: cognet
|
#
6fc729af |
|
14-May-2004 |
Olivier Houchard <cognet@FreeBSD.org> |
Import FreeBSD/arm kernel bits. It only supports sa1110 (on simics) right now, but xscale support should come soon. Some of the initial work has been provided by : Stephane Potvin <sepotvin at videotron.ca> Most of this comes from NetBSD.
|