#
331722 |
|
29-Mar-2018 |
eadler |
Revert r330897:
This was intended to be a non-functional change. It wasn't. The commit message was thus wrong. In addition it broke arm, and merged crypto related code.
Revert with prejudice.
This revert skips files touched in r316370 since that commit was since MFCed. This revert also skips files that require $FreeBSD$ property changes.
Thank you to those who helped me get out of this mess including but not limited to gonzo, kevans, rgrimes.
Requested by: gjb (re)
|
#
330897 |
|
14-Mar-2018 |
eadler |
Partial merge of the SPDX changes
These changes are incomplete but are making it difficult to determine what other changes can/should be merged.
No objections from: pfg
|
#
307575 |
|
18-Oct-2016 |
gonzo |
MFC r307067, r307068, r307087, r307088, r307089, r307091, r307092, r307093, r307095, r307098, r307115:
r307067: Make intc driver compatible with upstream DTS
- Fix compatibility strings - Properly decode upstream's two-cell interrupt specs. Our home-made dts does not have two-cell interrupts so no need to preserve backward compatibility
r307068: Make Rapsberry Pi watchdog driver compatible with upstream DTS
- Fix compatibility strings - Compensate the difference in base address for our custom DTS and upstream one (for backward compatibility)
r307087: Make sure intc is attached before interrupt consumers
If pass order is not specified devices are attached in the order they are defined in dts. Some interrupt consumers may be defined before intc. Also make sure intc interrupt-parent local_intc is attached before intc itself.
r307088: Add compatible strings used in upstream dts files
r307089: Make framebuffer driver compatible with upstream DT
- Add compatibility string - Add simplebus as possible parent bus
r307091: Add compatibility string from upstream DT
r307092: Make BCM2835 GPIO driver compatible with upstream DT
- Add compatibility string - Make reserverd and read-only properties optional
r307093: Make BCM283x USB driver compatible with upstream DT
- Make resource allocation logic depend on compatibility string to check what format of DTS node should be used - FreeBSD's or upstream
r307095: Make VCHI driver compatible with upstream DT
- Add compatibility string - Compensate difference in base address between our custom DTB and upstream one
r307098: Make BCM28x USB driver compatible with upstream device tree
This should have been committed in r307093: resource allocation depends on source of the device tree. upstream dts has extra interrupt that we can ignore
r307115: Fix typo in comment
Spotted by: loos
|
#
302408 |
|
07-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 |
#
298428 |
|
21-Apr-2016 |
gonzo |
Use proper type of tag in bcm2835_mbox_fb_init
bcm2835_mbox_fb_init sets configuration so SET_VIRTUAL_OFFSET should be used instead of GET_VIRTUAL_OFFSET
Submitted by: Sylvain Garrigues <sylvain@sylvaingarrigues.com>
|
#
298383 |
|
20-Apr-2016 |
gonzo |
Force framebuffer virtual viewport to be the same as physical
VideoCore reports garbage in viewport geometry fields unless viewport was set previously by earlier stage boot loader. So when booting FreeBSD kernel directly from VideoCore's start.elf framebuffer intialization fails due to invalid vxres, vyres values. Make sure we request viewport to be equal to physical resolution
Submitted by: Sylvain Garrigues <sylvain@sylvaingarrigues.com>
|
#
290666 |
|
10-Nov-2015 |
gonzo |
- Set have_message in interrupt to handle "response before READ" case - Serialize access to property channel when using bcm2835_mbox_property
|
#
290533 |
|
08-Nov-2015 |
gonzo |
- Replace semaphore-base locking with sleep/wait synchronization: sema_trywait/sema_timedwait can't be used while holding non-sleepable mutex
- Fix infinite loop if response from VideoCore never received
|
#
290381 |
|
05-Nov-2015 |
gonzo |
Refactor mailbox property API to make it usable for /dev/vcio driver:
- Add bcm2835_mbox_property for generic property request, it accepts pointer to prepared property chan message and its size, forwards it to MBOX and copies result back - Make all bcm2835_mbox_XXX functions that use property channel go through bcm2835_mbox_property path. Do not accept device_t as an argument, it's not required: all DMA operatiosn should go through mbox device, and all API consumers should report errors on their side.
|
#
290171 |
|
29-Oct-2015 |
gonzo |
Fix framebuffer compatibility with new RPi firmware. Framebuffer driver receives video memory address from VideoCore through property mailbox channel. Older versions of firmware (and the one that is currently part of sysutils/u-boot-rpi and sysutils/u-boot-rpi2) returned real physical address, newer one returns VideoCore bus address, so we need to convert it to actual physical address. this version works with both older and newer interface.
|
#
282357 |
|
02-May-2015 |
loos |
Add the routines to query and setup the framebuffer state using the BCM2835_MBOX_CHAN_PROP channel. The old channel (BCM2835_MBOX_CHAN_FB) seems deprecated on recent firmware versions and is causing a freeze on RPi 2.
The actual changes in the framebuffer drivers will follow in subsequent commits.
|
#
282049 |
|
26-Apr-2015 |
loos |
Pass the supplied buffer length instead of a fixed size.
|
#
280294 |
|
20-Mar-2015 |
andrew |
Add a helper function to read clock frequencies from videocore and use this to get the default frequency of the sdhci device.
While here use a u_int to hold the frequency as it may be too large to fit in a 32-bit signed integer. This is the case when we have a 250MHz clock.
|
#
280283 |
|
20-Mar-2015 |
andrew |
Move the code to set the device power to the bcm2835 mailbox driver so it can be reused by other drivers.
|
#
279153 |
|
22-Feb-2015 |
andrew |
Add support to the bcm2835 mailbox driver to work before interrupts are enabled. This will be needed to enable the power on devices early on in the boot process.
|
#
276303 |
|
27-Dec-2014 |
loos |
Removes unused and duplicate headers.
Bring the wait limit on mailbox write to a more sane value.
Fix a off-by-one bug on wait time limit.
Remove extra blank line.
|
#
276298 |
|
27-Dec-2014 |
loos |
Remove the '#undef DEBUG' that should not be committed.
|
#
276297 |
|
27-Dec-2014 |
loos |
On interrupt handler, save the actual data read from mbox. The previous macro wasn't needed and was being used with swapped arguments which always give the same result (0) defeating the overflow check.
On initialization, do not use bcm_mbox_intr() to read the pending messages, with the new semaphore based implementation this will lead to semaphore being incremented on the channels that contain pending data and will make the first read for that channel return stale data.
This fixes the hang that happens on boot while initializing the cpufreq on Raspberry Pi.
|
#
275963 |
|
20-Dec-2014 |
rpaulo |
Driver for CPU frequency/voltage control on the Raspberry Pi.
Differential Revision: https://reviews.freebsd.org/D1025 Submitted by: Daisuke Aoyama aoyama@peach.ne.jp Reviewed by: ian (earlier version), rpaulo MFC after: 1 month Relnotes: yes
|
#
261884 |
|
14-Feb-2014 |
brueffer |
Correct the order of arguments to mtx_init().
PR: 186701 Submitted by: Takanori Sawada <tak.swd at gmail.com> MFC after: 2 weeks
|
#
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.
|
#
257200 |
|
26-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.
|
#
253006 |
|
07-Jul-2013 |
rpaulo |
Convert bcm2835_mbox to the new mbox interface.
Reviewed by: gonzo
|
#
252450 |
|
01-Jul-2013 |
rpaulo |
The mbox driver is actually MP safe, so set the right flag in bus_setup_intr().
|
#
239922 |
|
30-Aug-2012 |
gonzo |
Add barebone Raspberry Pi port. Supported parts: - Interrupts controller - Watchdog - System timer - Framebuffer (hardcoded resolution/bpp)
|