Skip to content

drm/vc4: Backport to 4.9 #1813

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 183 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
183 commits
Select commit Hold shift + click to select a range
3df8aa3
smsx95xx: fix crimes against truesize
Feb 19, 2015
aefca8f
smsc95xx: Experimental: Enable turbo_mode and packetsize=2560 by default
samnazarko Apr 1, 2016
a4774fe
Allow mac address to be set in smsc95xx
popcornmix Mar 26, 2013
0b4480a
Protect __release_resource against resources without parents
Mar 13, 2015
029f649
mm: Remove the PFN busy warning
anholt Dec 19, 2014
3fad099
irq-bcm2836: Prevent spurious interrupts, and trap them early
Dec 4, 2015
0c9c73f
irqchip: bcm2835: Add FIQ support
notro Jun 12, 2015
3b662c4
irqchip: irq-bcm2835: Add 2836 FIQ support
notro Oct 23, 2015
21a313f
spidev: Add "spidev" compatible string to silence warning
Jul 14, 2015
0059a02
serial: 8250: Don't crash when nr_uarts is 0
Jun 30, 2015
c9d0e13
pinctrl-bcm2835: Set base to 0 give expected gpio numbering
notro Jul 10, 2014
c7ab4eb
pinctrl-bcm2835: Fix interrupt handling for GPIOs 28-31 and 46-53
Feb 24, 2015
a5a46d2
pinctrl-bcm2835: Only request the interrupts listed in the DTB
Feb 26, 2015
403ea17
pinctrl-bcm2835: Return pins to inputs when freed
May 6, 2016
d4a8fe9
spi-bcm2835: Support pin groups other than 7-11
Jun 24, 2015
fa79e10
spi-bcm2835: Disable forced software CS
Jul 1, 2016
85bb42a
spi-bcm2835: Remove unused code
Nov 8, 2016
c33ee72
ARM: bcm2835: Set Serial number and Revision
notro Jun 3, 2015
b4e0c1c
dmaengine: bcm2835: Load driver early and support legacy API
notro Oct 3, 2015
05f9e93
firmware: Updated mailbox header
popcornmix Jan 25, 2016
c9cb549
clk: bcm2835: Mark GPIO clocks enabled at boot as critical.
anholt May 10, 2016
6c8399f
rtc: Add SPI alias for pcf2123 driver
Jun 15, 2016
259f169
watchdog: bcm2835: Support setting reboot partition
notro Oct 7, 2016
79d9326
reboot: Use power off rather than busy spinning when halt is requested
popcornmix Apr 5, 2016
9799ea4
bcm: Make RASPBERRYPI_POWER depend on PM
popcornmix Nov 9, 2016
261269c
Register the clocks early during the boot process,
msperl Sep 2, 2016
a195976
bcm2835-rng: Avoid initialising if already enabled
popcornmix Dec 6, 2016
6c52812
kbuild: Ignore dtco targets when filtering symbols
Aug 24, 2016
8ee6fd9
BCM2835_DT: Fix I2S register map
rtiemann Jul 20, 2015
28a1aeb
Main bcm2708/bcm2709 linux port
popcornmix May 12, 2013
4c7d2ae
Add dwc_otg driver
popcornmix May 1, 2013
a5db916
bcm2708 framebuffer driver
popcornmix Jun 17, 2015
5ab3584
dmaengine: Add support for BCM2708
koalo Nov 22, 2013
feab5b6
MMC: added alternative MMC driver
weiszg Aug 15, 2014
3d0f0b3
Adding bcm2835-sdhost driver, and an overlay to enable it
Mar 25, 2015
f6be5bc
mmc: Add MMC_QUIRK_ERASE_BROKEN for some cards
May 11, 2016
a079bbc
cma: Add vc_cma driver to enable use of CMA
popcornmix Jul 2, 2013
340dfdd
bcm2708: alsa sound driver
popcornmix Mar 26, 2012
079c7a4
vc_mem: Add vc_mem driver for querying firmware memory addresses
popcornmix Oct 28, 2016
148da7d
vcsm: VideoCore shared memory service for BCM2835
Jul 22, 2014
f035c53
Add /dev/gpiomem device for rootless user GPIO access
Wren6991 Aug 21, 2015
ddedd1f
Add SMI driver
Wren6991 Sep 5, 2015
6e5058f
MISC: bcm2835: smi: use clock manager and fix reload issues
msperl Apr 26, 2016
8314803
Add SMI NAND driver
Wren6991 Sep 5, 2015
e125174
lirc: added support for RaspberryPi GPIO
Jun 16, 2012
91eeb66
Add cpufreq driver
popcornmix Jul 2, 2013
c83d1bb
Added hwmon/thermal driver for reporting core temperature. Thanks Dorian
popcornmix Mar 26, 2013
d34838c
Add Chris Boot's i2c driver
popcornmix Jun 17, 2015
e826eaf
char: broadcom: Add vcio module
notro Jun 26, 2015
2838aca
firmware: bcm2835: Support ARCH_BCM270x
notro Jun 26, 2015
35fa034
bcm2835: add v4l2 camera device
Jan 30, 2013
5979935
scripts: Add mkknlimg and knlinfo scripts from tools repo
May 11, 2015
913a794
scripts/dtc: Update to upstream version 1.4.1
Aug 10, 2015
2ad7caa
BCM2708: Add core Device Tree support
notro Jul 9, 2014
f760337
BCM270x_DT: Add pwr_led, and the required "input" trigger
Feb 6, 2015
c19ea76
fbdev: add FBIOCOPYAREA ioctl
ssvb Jun 17, 2013
11db806
Speed up console framebuffer imageblit function
hglm Jun 20, 2013
d387edf
enabling the realtime clock 1-wire chip DS1307 and 1-wire on GPIO4 (a…
popcornmix May 8, 2013
c7850d6
Added Device IDs for August DVB-T 205
popcornmix Jul 2, 2013
d8fe940
config: Enable CONFIG_MEMCG, but leave it disabled (due to memory cos…
popcornmix Dec 18, 2013
1697df6
hid: Reduce default mouse polling interval to 60Hz
popcornmix Jul 14, 2014
e7fa4e5
rpi-ft5406: Add touchscreen driver for pi LCD display
ghollingworth May 12, 2015
7734657
Improve __copy_to_user and __copy_from_user performance
popcornmix Nov 28, 2016
da2b729
gpio-poweroff: Allow it to work on Raspberry Pi
Jun 25, 2015
91d2e7c
mfd: Add Raspberry Pi Sense HAT core driver
pelwell Jul 14, 2015
c9f07d6
ASoC: Add support for HifiBerry DAC
koalo Nov 22, 2013
fd63dad
ASoC: Add support for Rpi-DAC
koalo Jan 25, 2016
c137d8f
ASoC: wm8804: Implement MCLK configuration options, add 32bit support…
Jan 15, 2014
8a6178b
ASoC: BCM:Add support for HiFiBerry Digi. Driver is based on the patc…
Jan 15, 2014
db63efa
Add IQaudIO Sound Card support for Raspberry Pi
Mar 8, 2014
bde9a1a
iqaudio-dac: Compile fix - untested
popcornmix Jul 25, 2016
728a454
Added support for HiFiBerry DAC+
Aug 4, 2014
a9a8a11
Added driver for HiFiBerry Amp amplifier add-on board
Aug 4, 2014
321a000
Revert "Added driver for HiFiBerry Amp amplifier add-on board"
popcornmix Dec 12, 2016
682c095
Update ds1307 driver for device-tree support
ryco-dev Feb 1, 2015
001f8b8
Add driver for rpi-proto
Mar 25, 2015
26084a9
RaspiDAC3 support
Aug 24, 2015
16e3f93
Add Support for JustBoom Audio boards
shawaj Apr 7, 2016
55bbfc4
ARM: adau1977-adc: Add basic machine driver for adau1977 codec driver.
andrey2805 May 4, 2016
14502b0
New AudioInjector.net Pi soundcard with low jitter audio in and out.
flatmax May 16, 2016
1b18f3b
Add IQAudIO Digi WM8804 board support
DigitalDreamtime Jun 30, 2016
6daac5c
New driver for RRA DigiDAC1 soundcard using WM8741 + WM8804
escalator2015 May 24, 2016
ce97723
Add support for Dion Audio LOCO DAC-AMP HAT
DigitalDreamtime Jul 2, 2016
203501a
Allo Piano DAC boards: Initial 2 channel (stereo) support (#1645)
clivem Sep 19, 2016
aa46aa9
Support for Blokas Labs pisound board
gtrainavicius Oct 23, 2016
42d919a
rpi_display: add backlight driver and overlay
Oct 21, 2015
1b4e68b
bcm2835-virtgpio: Virtual GPIO driver
popcornmix Feb 23, 2016
0c3101c
amba_pl011: Don't use DT aliases for numbering
Feb 23, 2016
88a3749
net: Add non-mainline source for rtl8192cu wlan
popcornmix Sep 3, 2012
911b758
net: Fix rtl8192cu build errors on other platforms
Mar 23, 2016
af8af73
OF: DT-Overlay configfs interface
pantoniou Dec 3, 2014
2d888be
brcm: adds support for BCM43341 wifi
Cheong2K Feb 26, 2016
63e3b21
hci_h5: Don't send conf_req when ACTIVE
Dec 17, 2015
dcfe6cf
config: Add default configs
popcornmix Apr 13, 2015
24273c6
Add arm64 configuration and device tree differences.
Electron752 Aug 24, 2016
c5a316c
vchiq_arm: Tweak the logging output
Mar 7, 2016
c451a11
vchiq_arm: Access the dequeue_pending flag locked
Mar 23, 2016
db2437c
vchiq_arm: Service callbacks must not fail
Mar 23, 2016
ed2a687
vchiq_arm: Add completion records under the mutex
Apr 21, 2016
59d2abf
vchiq_arm: Avoid use of mutex in add_completion
Jun 20, 2016
d2a51ea
staging/vchi: Convert to current get_user_pages() arguments.
anholt Oct 3, 2016
d47b4b7
staging/vchi: Update for rename of page_cache_release() to put_page().
anholt Oct 3, 2016
b5282b4
drivers/vchi: Remove dependency on CONFIG_BROKEN.
anholt Oct 3, 2016
207c380
raspberrypi-firmware: Export the general transaction function.
anholt Sep 14, 2016
f918546
raspberrypi-firmware: Define the MBOX channel in the header.
anholt Sep 14, 2016
12d493c
drm/vc4: Add a mode for using the closed firmware for display.
anholt Sep 14, 2016
b302b7c
i2c: bcm2835: Fix hang for writing messages larger than 16 bytes
notro Sep 17, 2016
95729fe
i2c: bcm2835: Protect against unexpected TXW/RXR interrupts
notro Sep 23, 2016
3e9e15e
i2c: bcm2835: Use dev_dbg logging on transfer errors
notro Sep 19, 2016
9d8c576
i2c: bcm2835: Can't support I2C_M_IGNORE_NAK
notro Sep 22, 2016
1099ac9
i2c: bcm2835: Add support for Repeated Start Condition
notro Sep 23, 2016
d42e420
i2c: bcm2835: Support i2c-dev ioctl I2C_TIMEOUT
notro Sep 23, 2016
788daf4
i2c: bcm2835: Add support for dynamic clock
notro Sep 26, 2016
133b068
i2c: bcm2835: Add debug support
notro Nov 1, 2016
fbf6217
arm64: Add CONFIG_ARCH_BCM2835
popcornmix Dec 31, 2016
d7a7355
Add support for Silicon Labs Si7013/20/21 humidity/temperature sensor.
ajtucker Dec 13, 2016
e6be13c
Document the si7020 option
pelwell Jan 3, 2017
811d783
pisound improvements:
gtrainavicius Jan 5, 2017
20779ca
Revert "Revert "Added driver for HiFiBerry Amp amplifier add-on board""
Jan 9, 2017
5f73a35
hifiberry-amp: Adjust for ALSA object refactoring
Jan 9, 2017
425ee76
bcm2835-i2s: Changes for allowing asymmetric sample formats.
gtrainavicius Jan 8, 2017
6e7ad27
Add driver_name property
shawaj Jan 10, 2017
d9f5869
Add driver_name paramater
shawaj Jan 10, 2017
11e7774
BCM270X_DT: Add pi3-disable-wifi overlay
Jan 11, 2017
d6fbb7b
ARM64: Make it work again on 4.9 (#1790)
Electron752 Jan 12, 2017
8930b9b
ARM64: Enable Kernel Address Space Randomization (#1792)
Electron752 Jan 14, 2017
d2ab394
ARM64: Fix build break for RTL8187/RTL8192CU wifi
Electron752 Jan 15, 2017
0d1eefa
ARM64: Enable RTL8187/RTL8192CU wifi in build config
Electron752 Jan 15, 2017
efdb964
BCM270X_DT: Add spi0-cs overlay
Jan 16, 2017
2248b18
spi-bcm2835: Disable forced software CS
Jul 1, 2016
7342a6a
config: Add CONFIG_TCP_CONG_BBR
popcornmix Jan 16, 2017
db51b29
Revert "bcm2835-i2s: Changes for allowing asymmetric sample formats."
Jan 16, 2017
074d3a0
BCM270X_DT: Enable UART0 on CM3
Jan 17, 2017
1159cc6
config: Add CONFIG_MD_M25P80 and CONFIG_MD_SPI_NOR
Jan 17, 2017
2f15deb
ARM64/DWC_OTG: Port dwc_otg driver to ARM64
Electron752 Jan 15, 2017
b51f35c
ARM64: Round-Robin dispatch IRQs between CPUs.
Electron752 Jan 15, 2017
b0a66d7
ARM64: Enable DWC_OTG Driver In ARM64 Build Config(bcmrpi3_defconfig)
Electron752 Jan 15, 2017
a81b40b
ARM64: Use dwc_otg driver by default for USB.
Electron752 Jan 15, 2017
719ed1f
BCM270X_DT: Add reference to audio_pins to CM dtb
Jan 23, 2017
6a4bb2c
config: Add additional network scheduling modules
popcornmix Jan 25, 2017
05f8935
ASoC: A simple-card overlay for ADAU7002
plasticchris Jan 22, 2017
86a9b1e
config: Add SND_SOC_ADAU7002 codec module
Jan 25, 2017
ad0138f
Add overlay for mcp3008 adc (#1818)
Jan 27, 2017
7158cd0
usb: dwc2: Avoid suspending if we're in gadget mode (#1825)
ED6E0F17 Feb 3, 2017
fe1a6c3
config: Enable regulator support
HiassofT Jan 22, 2017
d318e9c
BCM270x DT: expose 3.3V and 5V system rails
HiassofT Jan 22, 2017
5de60e0
BCM270x DT: Consolidate audio card overlays
HiassofT Jan 22, 2017
42fef81
ASoC: Add driver for Cirrus Logic Audio Card
HiassofT Jan 22, 2017
1466527
config: enable Cirrus Logic Audio Card
HiassofT Jan 22, 2017
f924918
gpio_mem: Remove unnecessary dev_info output (#1830)
JamesH65 Feb 6, 2017
a5204ea
Merge pull request #1810 from HiassofT/cirrus-rpi
popcornmix Feb 7, 2017
6ba2e29
clk: bcm2835: Fix ->fixed_divider of pllh_aux
Nov 22, 2016
0c9c0f4
clk: bcm: Support rate change propagation on bcm2835 clocks
Dec 1, 2016
7bbf628
clk: bcm: Allow rate change propagation to PLLH_AUX on VEC clock
Dec 1, 2016
7f6c23e
clk: bcm: Fix 'maybe-uninitialized' warning in bcm2835_clock_choose_d…
Dec 12, 2016
acf1733
clk: bcm2835: Don't rate change PLLs on behalf of DSI PLL dividers.
anholt Jan 17, 2017
4b8941f
clk: bcm2835: Register the DSI0/DSI1 pixel clocks.
anholt Jan 17, 2017
6e868e7
clk: bcm2835: Add leaf clock measurement support, disabled by default
anholt Jan 17, 2017
ce34270
drm/panel: Add support for the Raspberry Pi 7" Touchscreen.
anholt Apr 26, 2016
d546608
BCM270X: Add the DSI panel to the defconfig.
anholt Jun 2, 2016
c23a3b1
ARM: bcm2835: dt: Add the DSI module nodes and clocks.
anholt Dec 13, 2016
1beb632
BCM270X: Enable the DSI panel node in the VC4 overlay.
anholt Jun 2, 2016
692a585
drm/vc4: Fix termination of the initial scan for branch targets.
anholt Oct 20, 2016
d5b4ffb
drm/vc4: Add support for rendering with ETC1 textures.
anholt Nov 4, 2016
8ef20d0
drm/vc4: Use runtime autosuspend to avoid thrashing V3D power state.
anholt Nov 4, 2016
daa397e
drm/vc4: Add fragment shader threading support
jonasarrow Nov 7, 2016
5ab807f
drm/vc4: Fix race between page flip completion event and clean-up
Nov 24, 2016
43028ce
drm/vc4: Fix ->clock_select setting for the VEC encoder
Dec 2, 2016
05cb15e
drm: Add TV connector states to drm_connector_state
Dec 2, 2016
f45c84a
drm: Turn DRM_MODE_SUBCONNECTOR_xx definitions into an enum
Dec 2, 2016
542f7b7
drm/vc4: Add support for the VEC (Video Encoder) IP
Dec 2, 2016
4c9174b
drm/vc4: Set up SCALER_DISPCTRL at boot.
anholt Sep 15, 2016
3dcdbdd
drm/vc4: Add support for feeding DSI encoders from the pixel valve.
anholt Feb 11, 2016
1b0a21f
drm/vc4: Add DSI driver
anholt Feb 10, 2016
383480e
ARM: dts: bcm283x: Add VEC node in bcm283x.dtsi
Dec 2, 2016
75d2e3f
ARM: dts: bcm283x: Enable the VEC IP on all RaspberryPi boards
Dec 2, 2016
0ead32f
BCM270X: Disable VEC unless vc4-kms-v3d is present.
anholt Jan 23, 2017
a26eaec
drm/vc4: Name the primary and cursor planes in fkms.
anholt Feb 2, 2017
4a7ba3f
drm/vc4: Add DRM_DEBUG_ATOMIC for the insides of fkms.
anholt Feb 2, 2017
71d4919
drm/vc4: Fix sending of page flip completion events in FKMS mode.
anholt Feb 2, 2017
a5442c1
drm/vc4: Fulfill user BO creation requests from the kernel BO cache.
anholt Feb 8, 2017
bb40db9
drm/vc4: Fix OOPSes from trying to cache a partially constructed BO.
anholt Feb 9, 2017
384a15d
drm/vc4: Verify at boot that CMA doesn't cross a 256MB boundary.
anholt Oct 12, 2015
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
15 changes: 14 additions & 1 deletion Documentation/devicetree/bindings/clock/brcm,bcm2835-cprman.txt
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,20 @@ Required properties:
- #clock-cells: Should be <1>. The permitted clock-specifier values can be
found in include/dt-bindings/clock/bcm2835.h
- reg: Specifies base physical address and size of the registers
- clocks: The external oscillator clock phandle
- clocks: phandles to the parent clocks used as input to the module, in
the following order:

- External oscillator
- DSI0 byte clock
- DSI0 DDR2 clock
- DSI0 DDR clock
- DSI1 byte clock
- DSI1 DDR2 clock
- DSI1 DDR clock

Only external oscillator is required. The DSI clocks may
not be present, in which case their children will be
unusable.

Example:

Expand Down
4 changes: 2 additions & 2 deletions Documentation/devicetree/bindings/dma/brcm,bcm2835-dma.txt
Original file line number Diff line number Diff line change
Expand Up @@ -74,8 +74,8 @@ Example:

bcm2835_i2s: i2s@7e203000 {
compatible = "brcm,bcm2835-i2s";
reg = < 0x7e203000 0x20>,
< 0x7e101098 0x02>;
reg = < 0x7e203000 0x24>,
< 0x7e101098 0x08>;

dmas = <&dma 2>,
<&dma 3>;
Expand Down
17 changes: 17 additions & 0 deletions Documentation/devicetree/bindings/misc/brcm,bcm2835-smi-dev.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
* Broadcom BCM2835 SMI character device driver.

SMI or secondary memory interface is a peripheral specific to certain Broadcom
SOCs, and is helpful for talking to things like parallel-interface displays
and NAND flashes (in fact, most things with a parallel register interface).

This driver adds a character device which provides a user-space interface to
an instance of the SMI driver.

Required properties:
- compatible: "brcm,bcm2835-smi-dev"
- smi_handle: a phandle to the smi node.

Optional properties:
- None.


48 changes: 48 additions & 0 deletions Documentation/devicetree/bindings/misc/brcm,bcm2835-smi.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
* Broadcom BCM2835 SMI driver.

SMI or secondary memory interface is a peripheral specific to certain Broadcom
SOCs, and is helpful for talking to things like parallel-interface displays
and NAND flashes (in fact, most things with a parallel register interface).

Required properties:
- compatible: "brcm,bcm2835-smi"
- reg: Should contain location and length of SMI registers and SMI clkman regs
- interrupts: *the* SMI interrupt.
- pinctrl-names: should be "default".
- pinctrl-0: the phandle of the gpio pin node.
- brcm,smi-clock-source: the clock source for clkman
- brcm,smi-clock-divisor: the integer clock divisor for clkman
- dmas: the dma controller phandle and the DREQ number (4 on a 2835)
- dma-names: the name used by the driver to request its channel.
Should be "rx-tx".

Optional properties:
- None.

Examples:

8 data pin configuration:

smi: smi@7e600000 {
compatible = "brcm,bcm2835-smi";
reg = <0x7e600000 0x44>, <0x7e1010b0 0x8>;
interrupts = <2 16>;
pinctrl-names = "default";
pinctrl-0 = <&smi_pins>;
brcm,smi-clock-source = <6>;
brcm,smi-clock-divisor = <4>;
dmas = <&dma 4>;
dma-names = "rx-tx";

status = "okay";
};

smi_pins: smi_pins {
brcm,pins = <2 3 4 5 6 7 8 9 10 11 12 13 14 15>;
/* Alt 1: SMI */
brcm,function = <5 5 5 5 5 5 5 5 5 5 5 5 5 5>;
/* /CS, /WE and /OE are pulled high, as they are
generally active low signals */
brcm,pull = <2 2 2 2 2 2 0 0 0 0 0 0 0 0>;
};

42 changes: 42 additions & 0 deletions Documentation/devicetree/bindings/mtd/brcm,bcm2835-smi-nand.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
* BCM2835 SMI NAND flash

This driver is a shim between the BCM2835 SMI driver (SMI is a peripheral for
talking to parallel register interfaces) and Linux's MTD layer.

Required properties:
- compatible: "brcm,bcm2835-smi-nand"
- status: "okay"

Optional properties:
- partition@n, where n is an integer from a consecutive sequence starting at 0
- Difficult to store partition table on NAND device - normally put it
in the source code, kernel bootparams, or device tree (the best way!)
- Sub-properties:
- label: the partition name, as shown by mtdinfo /dev/mtd*
- reg: the size and offset of this partition.
- (optional) read-only: an empty property flagging as read only

Example:

nand: flash@0 {
compatible = "brcm,bcm2835-smi-nand";
status = "okay";

partition@0 {
label = "stage2";
// 128k
reg = <0 0x20000>;
read-only;
};
partition@1 {
label = "firmware";
// 16M
reg = <0x20000 0x1000000>;
read-only;
};
partition@2 {
label = "root";
// 2G
reg = <0x1020000 0x80000000>;
};
};
4 changes: 2 additions & 2 deletions Documentation/devicetree/bindings/sound/brcm,bcm2835-i2s.txt
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,8 @@ Example:

bcm2835_i2s: i2s@7e203000 {
compatible = "brcm,bcm2835-i2s";
reg = <0x7e203000 0x20>,
<0x7e101098 0x02>;
reg = <0x7e203000 0x24>,
<0x7e101098 0x08>;

dmas = <&dma 2>,
<&dma 3>;
Expand Down
1 change: 1 addition & 0 deletions Documentation/devicetree/bindings/vendor-prefixes.txt
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@ auvidea Auvidea GmbH
avago Avago Technologies
avic Shanghai AVIC Optoelectronics Co., Ltd.
axis Axis Communications AB
blokaslabs Vilniaus Blokas UAB
boe BOE Technology Group Co., Ltd.
bosch Bosch Sensortec GmbH
boundary Boundary Devices Inc.
Expand Down
31 changes: 31 additions & 0 deletions Documentation/devicetree/configfs-overlays.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
Howto use the configfs overlay interface.

A device-tree configfs entry is created in /config/device-tree/overlays
and and it is manipulated using standard file system I/O.
Note that this is a debug level interface, for use by developers and
not necessarily something accessed by normal users due to the
security implications of having direct access to the kernel's device tree.

* To create an overlay you mkdir the directory:

# mkdir /config/device-tree/overlays/foo

* Either you echo the overlay firmware file to the path property file.

# echo foo.dtbo >/config/device-tree/overlays/foo/path

* Or you cat the contents of the overlay to the dtbo file

# cat foo.dtbo >/config/device-tree/overlays/foo/dtbo

The overlay file will be applied, and devices will be created/destroyed
as required.

To remove it simply rmdir the directory.

# rmdir /config/device-tree/overlays/foo

The rationalle of the dual interface (firmware & direct copy) is that each is
better suited to different use patterns. The firmware interface is what's
intended to be used by hardware managers in the kernel, while the copy interface
make sense for developers (since it avoids problems with namespaces).
60 changes: 60 additions & 0 deletions Documentation/video4linux/bcm2835-v4l2.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@

BCM2835 (aka Raspberry Pi) V4L2 driver
======================================

1. Copyright
============

Copyright © 2013 Raspberry Pi (Trading) Ltd.

2. License
==========

This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

3. Quick Start
==============

You need a version 1.0 or later of v4l2-ctl, available from:
git://git.linuxtv.org/v4l-utils.git

$ sudo modprobe bcm2835-v4l2

Turn on the overlay:

$ v4l2-ctl --overlay=1

Turn off the overlay:

$ v4l2-ctl --overlay=0

Set the capture format for video:

$ v4l2-ctl --set-fmt-video=width=1920,height=1088,pixelformat=4

(Note: 1088 not 1080).

Capture:

$ v4l2-ctl --stream-mmap=3 --stream-count=100 --stream-to=somefile.h264

Stills capture:

$ v4l2-ctl --set-fmt-video=width=2592,height=1944,pixelformat=3
$ v4l2-ctl --stream-mmap=3 --stream-count=1 --stream-to=somefile.jpg

List of available formats:

$ v4l2-ctl --list-formats
2 changes: 2 additions & 0 deletions arch/arm/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -334,6 +334,8 @@ $(INSTALL_TARGETS):

%.dtb: | scripts
$(Q)$(MAKE) $(build)=$(boot)/dts MACHINE=$(MACHINE) $(boot)/dts/$@
%.dtbo: | scripts
$(Q)$(MAKE) $(build)=$(boot)/dts MACHINE=$(MACHINE) $(boot)/dts/$@

PHONY += dtbs dtbs_install

Expand Down
2 changes: 1 addition & 1 deletion arch/arm/boot/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,4 @@ zImage
xipImage
bootpImage
uImage
*.dtb
*.dtb*
19 changes: 19 additions & 0 deletions arch/arm/boot/dts/Makefile
Original file line number Diff line number Diff line change
@@ -1,5 +1,13 @@
ifeq ($(CONFIG_OF),y)

dtb-$(CONFIG_ARCH_BCM2835) += \
bcm2708-rpi-b.dtb \
bcm2708-rpi-b-plus.dtb \
bcm2708-rpi-cm.dtb \
bcm2709-rpi-2-b.dtb \
bcm2710-rpi-3-b.dtb \
bcm2710-rpi-cm3.dtb

dtb-$(CONFIG_ARCH_ALPINE) += \
alpine-db.dtb
dtb-$(CONFIG_MACH_ARTPEC6) += \
Expand Down Expand Up @@ -955,10 +963,21 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += \
dtb-$(CONFIG_ARCH_ZX) += zx296702-ad1.dtb
dtb-$(CONFIG_ARCH_ASPEED) += aspeed-bmc-opp-palmetto.dtb \
aspeed-ast2500-evb.dtb

targets += dtbs dtbs_install
targets += $(dtb-y)

endif

dtstree := $(srctree)/$(src)
dtb-$(CONFIG_OF_ALL_DTBS) := $(patsubst $(dtstree)/%.dts,%.dtb, $(wildcard $(dtstree)/*.dts))

always := $(dtb-y)
subdir-y := overlays
clean-files := *.dtb

# Enable fixups to support overlays on BCM2835 platforms
ifeq ($(CONFIG_ARCH_BCM2835),y)
DTC_FLAGS ?= -@ -H epapr
dts-dirs += overlays
endif
Loading