| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
| |
As cs is stored in a uint32_t, use the last bit to store the
active high flag as it's unlikely that we will have that much CS.
Reviewed by: loos
MFC after: 2 weeks
Differential Revision: https://reviews.freebsd.org/D8614
(cherry picked from commit f5f9058ccaec11fccc18817f45fff8859798a317)
|
|
|
|
|
|
|
|
|
|
| |
Remove bus_dma_get_range and bus_dma_get_range_nb on armv6. We only need
this on a few earlier arm SoCs.
Restrict where we need to define fdt_fixup_table to just PowerPC and
Marvell.
Add the missing void to function signatures in much of the arm code.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix device delete child function.
When detaching device trees parent devices must be detached prior to
detaching its children. This is because parent devices can have
pointers to the child devices in their softcs which are not
invalidated by device_delete_child(). This can cause use after free
issues and panic().
Device drivers implementing trees, must ensure its detach function
detaches or deletes all its children before returning.
While at it remove now redundant device_detach() calls before
device_delete_child() and device_delete_children(), mostly in
the USB controller drivers.
Tested by: Jan Henrik Sylvester <me@janh.de>
Reviewed by: jhb
Differential Revision: https://reviews.freebsd.org/D8070
|
|
|
|
|
| |
ARM: SEV/WFE instructions are implemented starting from ARMv6K, use it
directly.
|
|
|
|
|
|
|
|
| |
Consolidate debugging options from all arm kernel configs to std.arm[v6].
Correct syntax errors that only show up when compiled with INVARIANTS.
Approved by: re (gjb)
|
|
|
|
| |
Only affects comments: no functional change.
|
|
|
|
|
|
|
|
|
| |
by other architectures.
Reviewed by: imp
Differential Revision: https://reviews.freebsd.org/D6091
Sponsored by: DARPA, AFRL
Sponsored by: HEIF5
|
|
|
|
|
|
|
| |
independent code that needs to know about INTRNG such as PCI drivers.
Obtained from: ABT Systems Ltd
Sponsored by: The FreeBSD Foundation
|
|
|
|
| |
Found with devel/coccinelle.
|
|
|
|
|
|
|
|
|
| |
intr_pic_init_secondary. Replace them with a direct call. On BCM2836
and ARMADA XP we need to add this function, but it can be empty.
Reviewed by: ian, imp
Sponsored by: ABT Systems Ltd
Differential Revision: https://reviews.freebsd.org/D5460
|
|
|
|
|
|
|
|
|
|
| |
slightly wrong on the others. We should just check if mp_ncpus is set to
more than one CPU as we may wish to run on a single core even when SMP is
available.
Reviewed by: ian
Sponsored by: ABT Systems Ltd
Differential Revision: https://reviews.freebsd.org/D5458
|
|
|
|
|
|
| |
identical.
Sponsored by: ABT Systems Ltd
|
|
|
|
|
|
|
| |
Only L2 PIPT cache is supported for __ARM_ARCH >= 6.
In fact, this is just a pure proclamation as this option is used
only in armv4 specific files now.
|
| |
|
|
|
|
|
|
| |
in all but ARMv4 specific files.
Expand ARMv6 compatibility stubs in cpu-v4.h. Use physical address
in L2 cache functions if ARM_L2_PIPT is defined.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
| |
Create new driver which initializes Arndale PHY and calls ehci_init
Reviewed by: hselasky
Submitted by: Wojciech Macek <wma@semihalf.com>
Obtained from: Semihalf
Sponsored by: Juniper Networks Inc.
Differential Revision: https://reviews.freebsd.org/D4192
|
|
|
|
| |
Sponsored by: ABT Systems Ltd
|
|
|
|
|
|
|
| |
definition in a file.* file under sys/arm/arm in the few cases we need it
for non-fdt platforms.
Sponsored by: ABT Systems Ltd
|
|
|
|
|
| |
consistently used. It was a carry over from NetBSD that FreeBSD
doesn't use.
|
|
|
|
|
|
| |
in files.arm.
Sponsored by: ABT Systems Ltd
|
|
|
|
| |
Sponsored by: ABT Systems Ltd
|
|
|
|
|
|
|
|
|
|
| |
Use proper size of exynos_ehci_softc, not the generic one.
Reviewed by: andrew
Submitted by: Wojciech Macek <wma@semihalf.com>
Obtained from: Semihalf
Sponsored by: Juniper Networks Inc.
Differential Revision: https://reviews.freebsd.org/D4189
|
|
|
|
|
| |
main user of this code, however I haven't used it in over two years, and
don't expect to in the future.
|
|
|
|
|
|
| |
the name the function will have when the new ARM_INTRNG code is integrated,
and doing this rename first will make it easier to toggle the new interrupt
handling code on/off with a config option for debugging.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Make it clearer what each one means in the comments that define them.
IIC_BUSBSY was used in many places to mean two different things, either
"someone else has reserved the bus so you have to wait until they're done"
or "the signal level on the bus was not in the state I expected before/after
issuing some command".
Now IIC_BUSERR is used consistantly to refer to protocol/signaling errors,
and IIC_BUSBSY refers to ownership/reservation of the bus.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
initial thread stack is not adjusted by the tunable, the stack is
allocated too early to get access to the kernel environment. See
TD0_KSTACK_PAGES for the thread0 stack sizing on i386.
The tunable was tested on x86 only. From the visual inspection, it
seems that it might work on arm and powerpc. The arm
USPACE_SVC_STACK_TOP and powerpc USPACE macros seems to be already
incorrect for the threads with non-default kstack size. I only
changed the macros to use variable instead of constant, since I cannot
test.
On arm64, mips and sparc64, some static data structures are sized by
KSTACK_PAGES, so the tunable is disabled.
Sponsored by: The FreeBSD Foundation
MFC after: 2 week
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If KSTACK_PAGES was changed to anything alse than the default,
the value from param.h was taken instead in some places and
the value from KENRCONF in some others. This resulted in
inconsistency which caused corruption in SMP envorinment.
Ensure all places where KSTACK_PAGES are used the opt_kstack_pages.h
is included.
The file opt_kstack_pages.h could not be included in param.h
because was breaking the toolchain compilation.
Reviewed by: kib
Obtained from: Semihalf
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D3094
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
This is needed with the pl011 driver. Before this change it would default
to a shift of 0, however the hardware places the registers at 4-byte
addresses meaning the value should be 2.
This patch fixes this for the pl011 when configured using the fdt. The
other drivers have a default value of 0 to keep this a no-op.
MFC after: 1 week
|
| |
|
|
|
|
| |
we happen to be building.
|
| |
|
|
|
|
| |
empty string or NULL to the setup functions that called into it.
|
| |
|
|
|
|
|
|
|
| |
uart implementations, and export them using the new linker-set mechanism.
Differential Revision: https://reviews.freebsd.org/D1993
Submitted by: Michal Meloun
|
|
|
|
|
| |
Requested by: Gary Jennejohn <gljennjohn@gmail.com>
MFC after: 3 days
|
|
|
|
| |
MFC after: 3 days
|
|
|
|
|
| |
Add helper routines to deal with attach and detach of gpiobus and gpioc
devices that are common to all drivers.
|
|
|
|
|
|
| |
drivers.
This paves the way for upcoming work.
|
|
|
|
| |
arm/bus_space_base.c).
|
| |
|
|
|
|
|
| |
and now some v5 Marvell systems are using it. Only define fdt_bus_tag
if option FDT is defined.
|
|
|
|
|
| |
values have armv4 in the name. There's nothing armv4-special about them,
so just use the same sort of names as all the other functions.
|
|
|
|
| |
Submitted by: Michal Meloun <meloun@miracle.cz>
|
|
|
|
| |
of the arm_intrng project branch.
|
|
|
|
|
|
|
| |
- Fix some comments and whitespace while at it.
MFC after: 1 month
Submitted by: marius@
|
|
|
|
| |
and apparently isn't needed now that we're using the integrated assembler.
|
|
|
|
| |
Submitted by: Michal Meloun <meloun@miracle.cz>
|
|
|
|
|
| |
Verify for invalid modes and unwanted flags before pass the new flags to
driver.
|