399 Commits

Author SHA1 Message Date
Andrew Duncan
a54a0dbb2b Fix spelling mistake in man file
mainpulate -> manipulate
2024-12-23 07:52:07 +00:00
Phil Elwell
3c97f769ef userland: dtoverlay: /boot/firmware is a valid path 2023-10-18 14:19:43 +01:00
Dom Cobley
eca070c8f4 bcm_host: Update kms/fkms check for pi5 2023-10-18 14:19:43 +01:00
Simon Kadisch
44a3953fd1 raspivid: Also flush PTS file if flush is enabled 2023-09-13 10:54:24 +01:00
Phil Elwell
cc1ca18fb0 userland: dtoverlay: Use os_prefix if set
It's helpful if the dtoverlay and dtparam commands look in the right
place for overlays and the README. Make them check for and use
/proc/device-tree/chosen/os_prefix.
2023-04-20 14:36:13 +01:00
Dom Cobley
df245ea297 tvservice: Update unsupported message to recommend kmsprint 2023-03-22 14:32:03 +00:00
Dom Cobley
b1ee39e50e gencmd: Add a fallback to mailbox interface if vchiq is not available 2023-03-22 14:27:11 +00:00
Dom Cobley
54fd97ae40 hello_pi: Fix some build issues
See: https://github.com/raspberrypi/firmware/issues/1728

Seems to be an issue with library ordering.
I guess it appeared with update to bullseye, or gcc.

Note: these are largely deprectated and several fail to run with kms
(with an error message), but may as well fix build errors
2022-06-16 14:32:08 +01:00
Krawlow
c4fd1b8986 Fix raspicommonsettings_parse_cmdline
Fix raspicommonsettings_parse_cmdline's definition to match declaration
2022-03-24 09:01:46 +00:00
Phil Elwell
a70a7428f7 userland: dtoverlay: Handle parameters in overlay_map 2022-02-02 14:58:54 +00:00
David Plowman
f5404b2fcd raspicam: Check system is running legacy camera stack
If the system is obviously configured for libcamera (for example) by
dint of /dev/video0 being given over to "unicam", complain and abort
immediately. In all other circumstances maintain previous behaviour.

Signed-off-by: David Plowman <david.plowman@raspberrypi.com>
2021-11-23 19:38:47 +00:00
Dom Cobley
bab9bf8790 hello_fft: Remove unused function declaration 2021-11-08 19:33:25 +00:00
Phil Elwell
705ff8ea01 hello_fft: Update outdated link to V3D spec
See: https://github.com/raspberrypi/firmware/pull/1645
2021-11-08 19:33:24 +00:00
Phil Elwell
7f72bc257d userland: Reduce debug_sym error messages
There are several reasons why /dev/fb0 might not exist, none of them
worrying, and the debug_sym library has fallbacks for those cases.
Suppress error messages for the ENOENT case, and only print one
message for other errors (unless the error keeps changing, which is
unlikely).

See: https://forums.raspberrypi.com/viewtopic.php?f=98&t=322238
2021-10-25 15:34:16 +01:00
Tim Gover
fba5ce7d15 vcgencmd: Fix documentation URL
The link was broken during the documentation revamp. Just link
to vcgencmd in the online docs. Related documentation is easy
to find with the online search and reduces the number for links
to update in the future.
2021-09-28 15:12:09 +01:00
popcornmix
ade66719aa tvservice: Add check to warn when running with kms 2021-09-28 15:10:41 +01:00
Phil Elwell
97bc8180ad bcm_host: Recognise all Pi 4 variants, add BCM2711
bcm_host_is_model_pi4 should be equivalent to a test that the processor
type is BCM2711, so implement it as such (having added BCM2711 as a
recognised processor type and deprecating the name BCM2838).

See: https://github.com/raspberrypi/userland/issues/695

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
2021-06-23 14:17:39 +01:00
doe300
d4a960e781 vcsm: properly handle too many CMA allocation attempts
Fixes #690
2021-05-13 18:55:43 +01:00
Dave Jones
45a0022ac6 Add man-pages for most commands
I've spent a little time going through the excellent raspberry pi
documentation site in order to build some man-pages for most of the
utilities in the suite. Note that not all utilities are covered here
(notably vchiq_test, mmal_vc_diag are missing) but I think it covers the
most commonly used utilities.

I've also included some auxilliary man-pages (in section 7) for
information relevant to utilities like vcmailbox (covering things like
the mailbox info from the wiki-page, and the OTP registers from the
documentation site).
2021-04-26 12:33:16 +01:00
Andrew Scheller
3fd8527eef Update board revision codes
...with info from https://www.raspberrypi.org/documentation/hardware/raspberrypi/revision-codes/README.md
2021-03-19 11:21:31 +00:00
Dave Stevenson
093b30bbc2 RaspiCam: Correct rotation param docs to be 0/90/180/270 2020-11-30 14:51:22 +00:00
popcornmix
5828e5b768 host_applications: Install debug_sym.h 2020-08-13 10:58:20 +01:00
Dave Stevenson
3e59217bd9 RaspiStillYUV: Add the equivalent "all manual" patch for faster captures.
Adds the equivalent to "Add option to start in burst mode if AE settings
are manual" patch to RaspiStillYUV so it too can drop straight into
capture mode.

See https://github.com/raspberrypi/userland/issues/640
2020-07-28 11:04:12 +01:00
Dave Stevenson
fdc2102ccf Remove vcfiled and vcfilesys.
Both these libraries/apps were related to the VPU accessing the
host file system over VCHI. This has never been used on the Pi,
and is creating build warnings with the latest versions of gcc.
Remove them from the source tree.
2020-07-28 11:04:12 +01:00
popcornmix
f97b1af1b3 Revert "Add MMAL and MMAL_APPS to 64bit builds"
This reverts commit 7d3c6b9f4c.
2020-05-28 15:02:54 +01:00
RaspberryPiFan
f4bccc38f9 Fix compiler warning 2020-05-28 13:27:08 +01:00
popcornmix
ad8ef597bd raspicam: Fix up whitespace 2020-05-27 15:10:26 +01:00
popcornmix
98c382cd3d raspicam: Allow tainted check to be skipped 2020-05-27 15:01:44 +01:00
Serge Schneider
3689a918fb Link raspicam applications with -lm 2020-05-27 14:56:57 +01:00
popcornmix
598e42e1e5 vc_sm_cma_ioctl.h: Correct licence 2020-05-27 14:29:11 +01:00
James Hughes
a7f6686acd Fix up demo apps to abort when used on Pi4
Added a new library which contains code to read
/proc/cpuinfo and get the Type of device in use.

Demo apps use that to abort as necessary.
2020-05-27 12:43:39 +01:00
popcornmix
c0e5933973 hello_pi: Add top level makefile and enable parallel build 2020-05-27 12:43:17 +01:00
Dave Stevenson
2fe4ca33dc raspistill: Add option to start in burst mode if AE settings are manual
If exposure and analogue gain are set manually, and we run a stats
pass to setup all other control algorithms, then we can skip the
viewfinder phase and jump straight into captures, saving time over
dropped frames.

Add the relevant logic to allow this.
2020-05-20 15:37:07 +01:00
Naushir Patuck
cb852cdd2d raspicam: Adjust framerate limits on long exposures for stills port.
Need to reduce the min fps limit to 0.005 for 200s exposures
available in HQ cam.

commit 27db31a8a8 fixed this for the video
port, but we need to do the same for the stills port as well.
2020-05-09 20:12:32 +01:00
naushir
27db31a8a8 raspistill: Adjust framerate limits on long exposures. (#622)
Need to reduce the min fps limit to 0.005 for 200s exposures
available in HQ cam.
2020-05-08 12:23:36 +01:00
naushir
b671bee987 raspicam: Add option to draw a focus window with FoM value. (#621)
Add a new option (-fw) in the raspicam applications to draw
a Figure of Merit (FoM) value to indicate sharpness in the displayed
region.  A larger value of FoM indicates a sharper image.

This is useful for the HQ camera to help with focussing on a subject.
2020-05-07 11:15:53 +01:00
Joel Winarske
61255e90ad Remove libc++ dependency 2020-05-01 12:56:13 +01:00
Phil Elwell
a246147c21 dtoverlay: Add overlay_map functionality
The overlay_map DTB file provides a way to load different .dtbo
files on different platforms from the same overlay name, e.g.
translating "vc4-kms-v3d" to "vc4-kms-v3d-pi4" on bcm2711.

See: https://github.com/raspberrypi/linux/issues/3520
2020-04-07 18:19:07 +01:00
Phil Elwell
279c93f8ec dtoverlay: Fix whitespace problems 2020-04-07 18:19:07 +01:00
Dave Stevenson
6fb59736b1 debug_sym: Fixup whitespace issues from previous patch.
Fixes up "vcdbg/debugsym: Add option to specify the file size."
for whitespace issues that hadn't been raised during review on
the firmware tree.
2020-03-16 16:18:52 +00:00
Dave Stevenson
e75e59d9e3 vcdbg/debugsym: Add option to specify the file size.
This allows the use of /dev/mem instead of /dev/vc-mem (ie it
should work on mainline kernel builds.
vcdbg needs the offset and size of memory to work.
The firmware should have inserted these into the kernel
command line as vc_mem.mem_base and vc_mem.mem_size, so libdebugsym
tries to extract those values from /proc/cmdline, or you can
provide them on the command line via -l and -s

(/dev/mem couldn't be used previously as libdebugsym tries to do
lseek(SEEK_END) to get the length, and that isn't supported by
/dev/mem).
2020-03-16 16:18:52 +00:00
Phil Elwell
261c39eac2 dtoverlay: Support intra-overlay fragments
The firmware's overlay application code has long supported fragments
that target other fragments, but the kernel's dynamic overlay
mechanism doesn't support them. Avoid the restriction by partially
merging overlays with themselves before handing them over to the
kernel.
2020-02-28 19:33:33 +00:00
Phil Elwell
30ccc9a54d dtoverlay: A dry run needs no config directory
It's useful to be able to perform the dry run on any host, not just
a Raspberry Pi with runtime overlay support, and this works once the
validity check has been removed.
2020-02-28 19:33:33 +00:00
Phil Elwell
3cd0547e38 dtoverlay: Preserve exported labels
Up to now, all labels have been local to overlays. It has been possible
to explicitly add labels to the base DTB, but only in a way that is
ugly and fragile - it requires knowledge of the absolute path to where
the overlay will be applied (which could vary between DTBs), and would
break if the target of a fragment was changed.

Overlay writers can now choose to explicitly export some labels by
listing them as empty properties in a first-level node called
"__exports__". For example, to export a label called "newnode", add
the following node to the overlay:

    __exports__ {
        newnode;
    };

Make use of the new ability by replacing the deletion of the __symbols__
node with a call to dtoverlay_filter_symbols.
2020-02-28 19:33:33 +00:00
Serge Schneider
61203b1cea dtoverlay: remove $EUID != 0 case 2020-01-14 17:28:49 +00:00
Serge Schneider
f594b9b161 dtoverlay: only run lxpanelctl hooks when lxpanel is running 2020-01-14 17:28:49 +00:00
Phil Elwell
2820a38ef0 dtoverlay: Extend DT parameter syntax
Add support for new DT parameter types:

* Inverted booleans:
    enable = <&node>,"disable!";

* Immediate string values:
    mcp3421 = <&mcp342x>,"compatible=microchip,mcp3421";
    mcp3422 = <&mcp342x>,"compatible=microchip,mcp3422";
  ...

* Immedate integer values:
    slow = <&device>,"clock-frequency:0=100000";
    i2c1 = <&fragment_1>,"target:0=", <&i2c1>;

* Byte strings:
    macaddr = <&eth0>,"local-mac-address[";
    mymac = <&eth0>,"local-mac-address[=01:23:45:67:89:ab";

* Lookup tables:
    translate = <&ov0>,"english",
                <&ov0>,"french{hello=bonjour,goodbye='au revoir',weekend,=?}",

    bus = <&fragment_1>,"target:0{0=",<&i2c0>,
                                ",1=",<&i2c1>,
                                ",2=",<&i2c2>,
                                "}";

Signed-off-by: Phil Elwell <phil@raspberrypi.org>
2020-01-14 17:28:49 +00:00
Dave Stevenson
7d3c6b9f4c Add MMAL and MMAL_APPS to 64bit builds
Drops
host_applications/android/apps/vidtex
interface/mmal/openmaxil
interface/mmal/client(/brcmjpeg)
as they aren't directly supported and need further fixup for 64bit.
2019-12-11 14:04:13 +00:00
Dave Stevenson
76c0680083 MMAL and vcsm fixups for 64bit builds
Fixes various casts to/from integer of a different size, and printf
for size_t not using %zu.
2019-12-11 14:04:13 +00:00
Dave Stevenson
4946eb203f raspicam: Fix up so that it doesn't include brclegl libraries on 64 bit 2019-12-11 14:04:13 +00:00