303975 |
11-Aug-2016 |
gjb |
Copy stable/11@r303970 to releng/11.0 as part of the 11.0-RELEASE cycle.
Prune svn:mergeinfo from the new branch, and rename it to RC1.
Update __FreeBSD_version.
Use the quarterly branch for the default FreeBSD.conf pkg(8) repo and the dvd1.iso packages population.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation |
302915 |
15-Jul-2016 |
ian |
MFC r302502, r302505:
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)
|
302408 |
08-Jul-2016 |
gjb |
Copy head@r302406 to stable/11 as part of the 11.0-RELEASE cycle. Prune svn:mergeinfo from the new branch, as nothing has been merged here.
Additional commits post-branch will follow.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation
|
299069 |
04-May-2016 |
pfg |
sys/arm: Minor spelling fixes.
Only affects comments: no functional change.
|
298627 |
26-Apr-2016 |
br |
Move arm's devmap to some generic place, so it can be used by other architectures.
Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D6091 Sponsored by: DARPA, AFRL Sponsored by: HEIF5
|
298068 |
15-Apr-2016 |
andrew |
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
|
297793 |
10-Apr-2016 |
pfg |
Cleanup unnecessary semicolons from the kernel.
Found with devel/coccinelle.
|
296100 |
26-Feb-2016 |
andrew |
Almost all copies of platform_mp_init_secondary just called 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
|
296098 |
26-Feb-2016 |
andrew |
Remove platform_mp_probe as it's almost identical on most ARM SoCs, and 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
|
296066 |
25-Feb-2016 |
andrew |
Remove platform_ipi_send, it's an unneeded as all implementations are identical.
Sponsored by: ABT Systems Ltd
|
295885 |
22-Feb-2016 |
skra |
Move ARM_L2_PIPT option to std.armv6 for all armv6 platforms. 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.
|
295509 |
11-Feb-2016 |
andrew |
Stop defining fdt_pic_table when building for ARM_INTRNG.
|
295319 |
05-Feb-2016 |
mmel |
ARM: Use new ARMv6 naming conventions for cache and TLB functions 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.
|
292426 |
18-Dec-2015 |
adrian |
[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.
|
291405 |
27-Nov-2015 |
zbb |
Add support for exynos5_ehci in loader
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
|
291135 |
21-Nov-2015 |
andrew |
Create device options for the two common ARM timers.
Sponsored by: ABT Systems Ltd
|
291133 |
21-Nov-2015 |
andrew |
Move more bus_space_* files to be built by files.arm. This leaves the 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
|
291110 |
20-Nov-2015 |
imp |
Makeoption ARM_LITLE_ENDIAN does nothing. Remove it since it isn't consistently used. It was a carry over from NetBSD that FreeBSD doesn't use.
|
291108 |
20-Nov-2015 |
andrew |
Remove bus_space_asm_generic.S from the per-SoC files.* files, it's already in files.arm.
Sponsored by: ABT Systems Ltd
|
291102 |
20-Nov-2015 |
andrew |
Stop setting {KERN,}PHYSADDR on armv6, it's unneeded.
Sponsored by: ABT Systems Ltd
|
290977 |
17-Nov-2015 |
zbb |
Fix buffer overflow in exynos5_ehci
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
|
290106 |
28-Oct-2015 |
andrew |
Remove the s3c2xx0 code, it's no longer used. As far as I know I as the main user of this code, however I haven't used it in over two years, and don't expect to in the future.
|
289522 |
18-Oct-2015 |
ian |
Rename arm_init_secondary_ic() -> arm_pic_init_secondary(). The latter is 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.
|
289093 |
09-Oct-2015 |
ian |
Use IIC_EBUSBSY and IIC_BUSERR status values consistantly across all drivers. 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.
|
286584 |
10-Aug-2015 |
kib |
Make kstack_pages a tunable on arm, x86, and powepc. On i386, the 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
|
285627 |
16-Jul-2015 |
zbb |
Fix KSTACK_PAGES issue when the default value was changed in KERNCONF
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
|
282723 |
10-May-2015 |
andrew |
Use the new gic option on all configs that need it.
|
281438 |
11-Apr-2015 |
andrew |
Add support for the uart classes to set their default register shift value. 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
|
281092 |
04-Apr-2015 |
andrew |
Include vm/pmap.h for pmap_kextract.
|
280831 |
29-Mar-2015 |
andrew |
Build the cpufunc_asm_* files based on the cpu type, not which config file we happen to be building.
|
280826 |
29-Mar-2015 |
andrew |
Remove cpufunc_asm_arm11.S from the ARMv7 configs, it's not used.
|
280823 |
29-Mar-2015 |
andrew |
Remove the bootconfig parsing. We never used it and always passed either an empty string or NULL to the setup functions that called into it.
|
280810 |
29-Mar-2015 |
andrew |
Stop building unused cpuvunc_* files, we don't need anything from these.
|
279724 |
07-Mar-2015 |
ian |
Move the uart_class definitions and fdt compat data into the individual uart implementations, and export them using the new linker-set mechanism.
Differential Revision: https://reviews.freebsd.org/D1993 Submitted by: Michal Meloun
|
279544 |
02-Mar-2015 |
hselasky |
Add quirk to disable 64-bit XHCI DMA after r276717.
Requested by: Gary Jennejohn <gljennjohn@gmail.com> MFC after: 3 days
|
279542 |
02-Mar-2015 |
hselasky |
Update Exynos5 XHCI attach code after r276717.
MFC after: 3 days
|
277996 |
31-Jan-2015 |
loos |
Implement GPIO_GET_BUS() method for all GPIO drivers.
Add helper routines to deal with attach and detach of gpiobus and gpioc devices that are common to all drivers.
|
277968 |
31-Jan-2015 |
loos |
Clean up and fix the device detach routine and the failure path on GPIO drivers.
This paves the way for upcoming work.
|
277480 |
21-Jan-2015 |
ian |
Remove a couple files that are no longer used (functionality take over by arm/bus_space_base.c).
|
277476 |
21-Jan-2015 |
ian |
Use the base arm bus_space instead of an identical local copy.
|
277472 |
21-Jan-2015 |
ian |
Rename bus_space-v6.c to bus_space_base.c, because it's not v6-specific and now some v5 Marvell systems are using it. Only define fdt_bus_tag if option FDT is defined.
|
277467 |
21-Jan-2015 |
ian |
For some reason, all the arm bus_space functions that work with uint16 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.
|
277132 |
13-Jan-2015 |
br |
Rename Exynos UART driver. No functional change.
Submitted by: Michal Meloun <meloun@miracle.cz>
|
276984 |
11-Jan-2015 |
andrew |
Rename gic_init_secondary to arm_init_secondary_ic to help with the merge of the arm_intrng project branch.
|
276717 |
05-Jan-2015 |
hselasky |
Add 64-bit DMA support in the XHCI controller driver. - Fix some comments and whitespace while at it.
MFC after: 1 month Submitted by: marius@
|
276520 |
01-Jan-2015 |
ian |
Remove -Wa,-march=armv7a from arm kernel configs, it makes clang 3.5 sad and apparently isn't needed now that we're using the integrated assembler.
|
276047 |
21-Dec-2014 |
ian |
Add -march=armv7a to the kernel compile for all ARM systems which are v7a.
Submitted by: Michal Meloun <meloun@miracle.cz>
|
274670 |
18-Nov-2014 |
loos |
Moves all the duplicate code to a single function.
Verify for invalid modes and unwanted flags before pass the new flags to driver.
|
273799 |
28-Oct-2014 |
loos |
Make the GPIO children attach to the first unit available and not only to unit 0.
It seems that this 'simplification' was copied to all GPIO drivers in tree.
This fix a bug where a GPIO controller could fail to attach its children (gpioc and gpiobus) if another GPIO driver attach first.
|
272712 |
07-Oct-2014 |
br |
Add driver for Synopsys DesignWare Mobile Storage Host Controller.
Sponsored by: DARPA, AFRL
|
272103 |
25-Sep-2014 |
gavin |
Move the ARM Samsung s3c2xx0 support files into the samsung directory, to match other platforms.
Discussed with: andrew
|
269703 |
08-Aug-2014 |
nwhitehorn |
Remove unnecessary inclusion of FDT headers.
|
269702 |
08-Aug-2014 |
nwhitehorn |
Use OF_getencprop() in preference to OF_getprop() and manual byte-swapping.
|
269369 |
01-Aug-2014 |
br |
Add support for Chromebook2 -- next-generation 8-core (4 in operation), 4GB ram (3.5 usable) ARM machine.
Support covers device drivers for: - Serial Peripheral Interface (SPI) - Chrome Embedded Controller (EC) - SPI-based version - XHCI and USB 3.0 dual-role device PHY
Also: - Add support for Exynos5420 in Pad module - Move power-related functions to separate driver -- Power Management Unit (PMU) - Enable XHCI for Chromebook1
Special thanks to grehan@ for hardware, and to hselasky@ for r269139.
|
269178 |
28-Jul-2014 |
br |
Add the rest of combined interrupt groups.
|
267388 |
12-Jun-2014 |
br |
Add machine-dependent SMP part for Exynos5420
|
266945 |
01-Jun-2014 |
br |
Fix i2c communication interface to be compatible with vendor tools, e.g. embedded controller tool
Submitted by: Maxim Ignatenko <gelraen.ua@gmail.com>
|
266944 |
01-Jun-2014 |
br |
Rename exynos uart driver filenames.
|
266943 |
01-Jun-2014 |
br |
Add support for Exynos 5420 Octa - 8-core heterogeneous (big.LITTLE) ARM machine (4 x Cortex-A15 @ 1.8Ghz, 4 x Cortex-A7 @ 1Ghz)
Add configuration for Arndale Octa development board
|
266942 |
01-Jun-2014 |
br |
Do only receive chars if there are some data in the buffer. This fixes operation on newer Exynos boards.
|
266875 |
30-May-2014 |
br |
Reset HSIC hub during EHCI initialization. This makes devices connected to external USB ports available to the system.
Submitted by: Maxim Ignatenko <gelraen.ua@gmail.com>
|
266874 |
30-May-2014 |
br |
Fix off-by-one error that makes 0-th pins of each bank unreachable.
Submitted by: Maxim Ignatenko <gelraen.ua@gmail.com>
|
266872 |
30-May-2014 |
br |
o Make keyboard-related properties to be compatible with vendor standard o Allow setting keymap in FDT, use hardcoded one by default o Represent fallback keymap as a list rather than directly usable M*N array
Submitted by: Maxim Ignatenko <gelraen.ua@gmail.com>
|
266787 |
28-May-2014 |
br |
Add simple polling mechanism that works for KDB.
Submitted by: Maxim Ignatenko <gelraen.ua@gmail.com>
|
266785 |
28-May-2014 |
br |
Describe I2C arbitrator device in DTS and use it for Chromebook Snow only.
Submitted by: Maxim Ignatenko <gelraen.ua@gmail.com>
|
266301 |
17-May-2014 |
andrew |
Add the start of the ARM platform code. This is based on the PowerPC platform code, it is expected these will be merged in the future when the ARM code is more complete.
Until more boards can be tested only use this with the Raspberry Pi and rrename the functions on the other SoCs.
Reviewed by: ian@
|
264150 |
05-Apr-2014 |
br |
Correct the end address of the video frame buffer. This fixes problem that sometimes display suddenly goes blank.
|
264103 |
04-Apr-2014 |
br |
Remove unused prototype.
|
263981 |
01-Apr-2014 |
br |
Release i2c bus on detach.
|
263936 |
30-Mar-2014 |
br |
Add support for keyboard used in Samsung Chromebook (ARM machine)
Support covers device drivers for: - Interrupt Combiner - gpio/pad, External Interrupts Controller (pad) - I2C Interface - Chrome Embedded Controller - Chrome Keyboard
Also: - Use new gpio dev class in EHCI driver - Expand device tree information
|
263934 |
30-Mar-2014 |
br |
Directly call kmem_alloc_contig to allocate framebuffer memory and pass VM_MEMATTR_UNCACHEABLE (no-cache, no-buffer). This fixes screen refreshing problem when data is updated too slowly.
Discussed with: ian
|
263431 |
20-Mar-2014 |
br |
Rename mct and ehci drivers files to match common naming.
|
263430 |
20-Mar-2014 |
br |
Remove printf's.
|
263426 |
20-Mar-2014 |
br |
Add driver for Display Controller.
|
263425 |
20-Mar-2014 |
br |
- Add display-related and clk devices to the tree - Prevent resources intersection with EHCI driver
|
262979 |
10-Mar-2014 |
ian |
Eliminate irq_dispatch.S. Move the data items it contained into arm/intr.c and the functionality it provided into arm/exception.S. Rename the main irq handling routine from arm_handler_execute() to arm_irq_handler() to make it more congruent with how other exception handlers are named, and also update its signature to reflect what has long been reality: it is passed just a trapframe pointer, no interrupt number argument.
|
262916 |
08-Mar-2014 |
imp |
Move all the files named foo/common.c to foo/foo_common.c, as appropriate for each of the 'foo' in the tree. This will allow us to compile them together (although symbol conflicts prevent us from doing that today, this just fixes the file name collision).
|
262409 |
23-Feb-2014 |
ian |
Move the declaration for mpentry() into a header file instead of pasting it into a bunch of different .c files. Remove declarations for the unused mptramp() function from everywhere except AramadaXP (and I think it's really not used there either, because the code that references it appears to be insanely does-nothing in nature).
|
261410 |
02-Feb-2014 |
ian |
Follow r261352 by updating all drivers which are children of simplebus to check the status property in their probe routines.
Simplebus used to only instantiate its children whose status="okay" but that was improper behavior, fixed in r261352. Now that it doesn't check anymore and probes all its children; the children all have to do the check because really only the children know how to properly interpret their status property strings.
Right now all existing drivers only understand "okay" versus something- that's-not-okay, so they all use the new ofw_bus_status_okay() helper.
|
261227 |
28-Jan-2014 |
andrew |
Remove STARTUP_PAGETABLE_ADDR from the ARM configs and replace it with memory at the end of the kernel.
This helps reduce the SoC and board specific configuration required.
Reviewed by: bsdimp Tested by: jmg (armeb), br
|
258780 |
30-Nov-2013 |
eadler |
Fix undefined behavior: (1 << 31) is not defined as 1 is an int and this shifts into the sign bit. Instead use (1U << 31) which gets the expected result.
This fix is not ideal as it assumes a 32 bit int, but does fix the issue for most cases.
A similar change was made in OpenBSD.
Discussed with: -arch, rdivacky Reviewed by: cperciva
|
258096 |
13-Nov-2013 |
br |
o Use common ARMv6/v7 bus_space tag. o Use new helper routines for arm static device mapping. o style(9) tweaks.
|
257669 |
05-Nov-2013 |
ian |
Call initarm_lastaddr() later in the init sequence, after establishing static device mappings, rather than as the first of the initializations that a platform can hook into. This allows a platform to allocate KVA from the top of the address space downwards for things like static device mapping, and return the final "last usable address" result after that and other early init work is done.
Because some platforms were doing work in initarm_lastaddr() that needs to be done early, add a new initarm_early_init() routine and move the early init code to that routine on those platforms.
Rename platform_devmap_init() to initarm_devmap_init() to match all the other init routines called from initarm() that are designed to be implemented by platform code.
Add a comment block that explains when these routines are called and the type of work expected to be done in each of them.
|
257660 |
04-Nov-2013 |
ian |
Move remaining code and data related to static device mapping into the new devmap.[ch] files. Emphasize the MD nature of these things by using the prefix arm_devmap_ on the function and type names (already a few of these things found their way into MI code, hopefully it will be harder to do by accident in the future).
|
257201 |
27-Oct-2013 |
ian |
Retire arm_remap_nocache() and the data and constants associated with it.
The only remaining user was the code that allocates bounce pages for armv4 busdma. It's not clear why bounce pages would need uncached memory, but if that ever changes, kmem_alloc_attr() would be the way to get it.
|
257200 |
27-Oct-2013 |
ian |
Remove #include <machine/frame.h> from all the arm code that doesn't really need it. That would be almost everywhere it was included. Add it in a couple files that really do need it and were previously getting it by accident via another header.
|
257199 |
27-Oct-2013 |
ian |
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.
|
255967 |
01-Oct-2013 |
br |
- Enable unmapped buffers on Exynos5 again, because board now able to see all the 2GB ram it has - Also unbreak gcc build
Approved by: cognet (mentor) Approved by: re (marius)
|
254495 |
18-Aug-2013 |
cognet |
Increase the max KVA available for general consumption on the Exynos 5.
Submitted by: Ruslan Bukin <br@bsdpad.com>
|
252391 |
29-Jun-2013 |
ray |
Import basic support for Samsung Exynos 5 support.
Submitted by: Ruslan Bukin <br@bsdpad.com> Reviewed by: gonzo
|