mirror of
https://github.com/openwrt/openwrt.git
synced 2026-10-14 06:38:29 +04:00
bcm27xx: refresh patches
Refresh patches Signed-off-by: Joshua Covington <joshuacov@gmail.com> Link: https://github.com/openwrt/openwrt/pull/23703 Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
This commit is contained in:
1 parent
348fe4f652
commit
41ab1ae610
779 files changed
+2655
-9839
No files matched your search
+1
-6
@@ -9,11 +9,9 @@ This reverts commit 83b2a8fe43bda0c11981ad6afa5dd0104d78be28.
|
||||
drivers/spi/spidev.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/spi/spidev.c b/drivers/spi/spidev.c
|
||||
index 4d53c394101a..461d3a0009a8 100644
|
||||
--- a/drivers/spi/spidev.c
|
||||
+++ b/drivers/spi/spidev.c
|
||||
@@ -415,7 +415,7 @@ spidev_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
|
||||
@@ -415,7 +415,7 @@ spidev_ioctl(struct file *filp, unsigned
|
||||
}
|
||||
|
||||
if (ctlr->use_gpio_descriptors && spi_get_csgpiod(spi, 0))
|
||||
@@ -22,6 +20,3 @@ index 4d53c394101a..461d3a0009a8 100644
|
||||
|
||||
tmp |= spi->mode & ~SPI_MODE_MASK;
|
||||
spi->mode = tmp & SPI_MODE_USER_MASK;
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+1
-6
@@ -8,11 +8,9 @@ This reverts commit 522c35e08b53f157ad3e51848caa861b258001e4.
|
||||
arch/arm/boot/dts/broadcom/bcm2711.dtsi | 15 ---------------
|
||||
1 file changed, 15 deletions(-)
|
||||
|
||||
diff --git a/arch/arm/boot/dts/broadcom/bcm2711.dtsi b/arch/arm/boot/dts/broadcom/bcm2711.dtsi
|
||||
index c06d9f5e53c8..561851182672 100644
|
||||
--- a/arch/arm/boot/dts/broadcom/bcm2711.dtsi
|
||||
+++ b/arch/arm/boot/dts/broadcom/bcm2711.dtsi
|
||||
@@ -602,21 +602,6 @@ genet_mdio: mdio@e14 {
|
||||
@@ -602,21 +602,6 @@
|
||||
};
|
||||
};
|
||||
|
||||
@@ -34,6 +32,3 @@ index c06d9f5e53c8..561851182672 100644
|
||||
v3d: gpu@7ec00000 {
|
||||
compatible = "brcm,2711-v3d";
|
||||
reg = <0x0 0x7ec00000 0x4000>,
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+1
-6
@@ -8,11 +8,9 @@ This reverts commit 03e607cbb2931374db1825f371e9c7f28526d3f4.
|
||||
drivers/usb/phy/phy-generic.c | 7 -------
|
||||
1 file changed, 7 deletions(-)
|
||||
|
||||
diff --git a/drivers/usb/phy/phy-generic.c b/drivers/usb/phy/phy-generic.c
|
||||
index 8423be59ec0f..c31ac36dcfa9 100644
|
||||
--- a/drivers/usb/phy/phy-generic.c
|
||||
+++ b/drivers/usb/phy/phy-generic.c
|
||||
@@ -256,13 +256,6 @@ int usb_phy_gen_create_phy(struct device *dev, struct usb_phy_generic *nop)
|
||||
@@ -256,13 +256,6 @@ int usb_phy_gen_create_phy(struct device
|
||||
return dev_err_probe(dev, PTR_ERR(nop->vcc),
|
||||
"could not get vcc regulator\n");
|
||||
|
||||
@@ -26,6 +24,3 @@ index 8423be59ec0f..c31ac36dcfa9 100644
|
||||
nop->dev = dev;
|
||||
nop->phy.dev = nop->dev;
|
||||
nop->phy.label = "nop-xceiv";
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+1
-6
@@ -10,11 +10,9 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
drivers/pci/probe.c | 3 ---
|
||||
1 file changed, 3 deletions(-)
|
||||
|
||||
diff --git a/drivers/pci/probe.c b/drivers/pci/probe.c
|
||||
index 23833fd7265e..c12dadaba357 100644
|
||||
--- a/drivers/pci/probe.c
|
||||
+++ b/drivers/pci/probe.c
|
||||
@@ -1057,9 +1057,6 @@ static int pci_register_host_bridge(struct pci_host_bridge *bridge)
|
||||
@@ -1057,9 +1057,6 @@ static int pci_register_host_bridge(stru
|
||||
else
|
||||
pr_info("PCI host bridge to bus %s\n", name);
|
||||
|
||||
@@ -24,6 +22,3 @@ index 23833fd7265e..c12dadaba357 100644
|
||||
/* Check if the boot configuration by FW needs to be preserved */
|
||||
bridge->preserve_config = pci_preserve_config(bridge);
|
||||
|
||||
--
|
||||
2.54.0
|
||||
|
||||
@@ -24,11 +24,9 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
drivers/of/overlay.c | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/drivers/of/overlay.c b/drivers/of/overlay.c
|
||||
index 255e8362f600..d57bff53551e 100644
|
||||
--- a/drivers/of/overlay.c
|
||||
+++ b/drivers/of/overlay.c
|
||||
@@ -247,6 +247,8 @@ static struct property *dup_and_fixup_symbol_prop(
|
||||
@@ -247,6 +247,8 @@ static struct property *dup_and_fixup_sy
|
||||
if (!target_path)
|
||||
return NULL;
|
||||
target_path_len = strlen(target_path);
|
||||
@@ -37,6 +35,3 @@ index 255e8362f600..d57bff53551e 100644
|
||||
|
||||
new_prop = kzalloc(sizeof(*new_prop), GFP_KERNEL);
|
||||
if (!new_prop)
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+1
-6
@@ -12,11 +12,9 @@ Define these members unconditionally, so that there is no ABI change.
|
||||
include/linux/module.h | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/include/linux/module.h b/include/linux/module.h
|
||||
index 4decae2b1675..53def2266388 100644
|
||||
--- a/include/linux/module.h
|
||||
+++ b/include/linux/module.h
|
||||
@@ -507,7 +507,7 @@ struct module {
|
||||
@@ -509,7 +509,7 @@ struct module {
|
||||
unsigned int num_bpf_raw_events;
|
||||
struct bpf_raw_event_map *bpf_raw_events;
|
||||
#endif
|
||||
@@ -25,6 +23,3 @@ index 4decae2b1675..53def2266388 100644
|
||||
unsigned int btf_data_size;
|
||||
unsigned int btf_base_data_size;
|
||||
void *btf_data;
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+1
-6
@@ -17,11 +17,9 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
kernel/dma/direct.h | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/kernel/dma/direct.h b/kernel/dma/direct.h
|
||||
index 62f0d9d0ba02..06594cc8966e 100644
|
||||
--- a/kernel/dma/direct.h
|
||||
+++ b/kernel/dma/direct.h
|
||||
@@ -94,7 +94,7 @@ static inline dma_addr_t dma_direct_map_phys(struct device *dev,
|
||||
@@ -94,7 +94,7 @@ static inline dma_addr_t dma_direct_map_
|
||||
}
|
||||
|
||||
if (attrs & DMA_ATTR_MMIO) {
|
||||
@@ -30,6 +28,3 @@ index 62f0d9d0ba02..06594cc8966e 100644
|
||||
if (unlikely(!dma_capable(dev, dma_addr, size, false)))
|
||||
goto err_overflow;
|
||||
} else {
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+1
-6
@@ -8,11 +8,9 @@ Signed-off-by: Dom Cobley <popcornmix@gmail.com>
|
||||
include/soc/bcm2835/raspberrypi-firmware.h | 30 +++++++++++++++++++++-
|
||||
1 file changed, 29 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/include/soc/bcm2835/raspberrypi-firmware.h b/include/soc/bcm2835/raspberrypi-firmware.h
|
||||
index e1f87fbfe554..3e71d45477a4 100644
|
||||
--- a/include/soc/bcm2835/raspberrypi-firmware.h
|
||||
+++ b/include/soc/bcm2835/raspberrypi-firmware.h
|
||||
@@ -36,6 +36,8 @@ struct rpi_firmware_property_tag_header {
|
||||
@@ -36,6 +36,8 @@ struct rpi_firmware_property_tag_header
|
||||
enum rpi_firmware_property_tag {
|
||||
RPI_FIRMWARE_PROPERTY_END = 0,
|
||||
RPI_FIRMWARE_GET_FIRMWARE_REVISION = 0x00000001,
|
||||
@@ -105,6 +103,3 @@ index e1f87fbfe554..3e71d45477a4 100644
|
||||
/**
|
||||
* struct rpi_firmware_clk_rate_request - Firmware Request for a rate
|
||||
* @id: ID of the clock being queried
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+1
-6
@@ -8,11 +8,9 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||
drivers/gpu/drm/drm_atomic_helper.c | 5 +++++
|
||||
1 file changed, 5 insertions(+)
|
||||
|
||||
diff --git a/drivers/gpu/drm/drm_atomic_helper.c b/drivers/gpu/drm/drm_atomic_helper.c
|
||||
index bbec1c184f65..241e560357ec 100644
|
||||
--- a/drivers/gpu/drm/drm_atomic_helper.c
|
||||
+++ b/drivers/gpu/drm/drm_atomic_helper.c
|
||||
@@ -445,6 +445,11 @@ mode_fixup(struct drm_atomic_state *state)
|
||||
@@ -445,6 +445,11 @@ mode_fixup(struct drm_atomic_state *stat
|
||||
new_crtc_state =
|
||||
drm_atomic_get_new_crtc_state(state, new_conn_state->crtc);
|
||||
|
||||
@@ -24,6 +22,3 @@ index bbec1c184f65..241e560357ec 100644
|
||||
/*
|
||||
* Each encoder has at most one connector (since we always steal
|
||||
* it away), so we won't call ->mode_fixup twice.
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+1
-6
@@ -14,11 +14,9 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||
drivers/gpu/drm/drm_color_mgmt.c | 4 +++-
|
||||
1 file changed, 3 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/gpu/drm/drm_color_mgmt.c b/drivers/gpu/drm/drm_color_mgmt.c
|
||||
index 131c1c9ae92f..988d4b6781ad 100644
|
||||
--- a/drivers/gpu/drm/drm_color_mgmt.c
|
||||
+++ b/drivers/gpu/drm/drm_color_mgmt.c
|
||||
@@ -332,7 +332,9 @@ static int drm_crtc_legacy_gamma_set(struct drm_crtc *crtc,
|
||||
@@ -332,7 +332,9 @@ static int drm_crtc_legacy_gamma_set(str
|
||||
replaced = drm_property_replace_blob(&crtc_state->degamma_lut,
|
||||
use_gamma_lut ? NULL : blob);
|
||||
replaced |= drm_property_replace_blob(&crtc_state->ctm, NULL);
|
||||
@@ -29,6 +27,3 @@ index 131c1c9ae92f..988d4b6781ad 100644
|
||||
use_gamma_lut ? blob : NULL);
|
||||
crtc_state->color_mgmt_changed |= replaced;
|
||||
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+1
-6
@@ -16,11 +16,9 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||
include/drm/drm_mipi_dsi.h | 36 +++++++++++++++++++++++++-----------
|
||||
1 file changed, 25 insertions(+), 11 deletions(-)
|
||||
|
||||
diff --git a/include/drm/drm_mipi_dsi.h b/include/drm/drm_mipi_dsi.h
|
||||
index 3aba7b380c8d..d7588f189a59 100644
|
||||
--- a/include/drm/drm_mipi_dsi.h
|
||||
+++ b/include/drm/drm_mipi_dsi.h
|
||||
@@ -114,27 +114,41 @@ struct mipi_dsi_host *of_find_mipi_dsi_host_by_node(struct device_node *node);
|
||||
@@ -114,27 +114,41 @@ struct mipi_dsi_host *of_find_mipi_dsi_h
|
||||
|
||||
/* DSI mode flags */
|
||||
|
||||
@@ -73,6 +71,3 @@ index 3aba7b380c8d..d7588f189a59 100644
|
||||
#define MIPI_DSI_MODE_LPM BIT(11)
|
||||
/* transmit data ending at the same time for all lanes within one hsync */
|
||||
#define MIPI_DSI_HS_PKT_END_ALIGNED BIT(12)
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+1
-6
@@ -11,11 +11,9 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||
drivers/gpu/drm/bridge/tc358762.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/gpu/drm/bridge/tc358762.c b/drivers/gpu/drm/bridge/tc358762.c
|
||||
index 98df3e667d4a..68eec9718595 100644
|
||||
--- a/drivers/gpu/drm/bridge/tc358762.c
|
||||
+++ b/drivers/gpu/drm/bridge/tc358762.c
|
||||
@@ -298,7 +298,7 @@ static int tc358762_probe(struct mipi_dsi_device *dsi)
|
||||
@@ -298,7 +298,7 @@ static int tc358762_probe(struct mipi_ds
|
||||
ret = mipi_dsi_attach(dsi);
|
||||
if (ret < 0) {
|
||||
drm_bridge_remove(&ctx->bridge);
|
||||
@@ -24,6 +22,3 @@ index 98df3e667d4a..68eec9718595 100644
|
||||
}
|
||||
|
||||
return ret;
|
||||
--
|
||||
2.54.0
|
||||
|
||||
@@ -12,11 +12,9 @@ Signed-off-by: Dom Cobley <popcornmix@gmail.com>
|
||||
include/drm/drm_plane.h | 36 +++++++++++++++++++++++
|
||||
5 files changed, 97 insertions(+)
|
||||
|
||||
diff --git a/drivers/gpu/drm/drm_atomic_state_helper.c b/drivers/gpu/drm/drm_atomic_state_helper.c
|
||||
index 7142e163e618..a6414a2c488e 100644
|
||||
--- a/drivers/gpu/drm/drm_atomic_state_helper.c
|
||||
+++ b/drivers/gpu/drm/drm_atomic_state_helper.c
|
||||
@@ -268,6 +268,20 @@ void __drm_atomic_helper_plane_state_reset(struct drm_plane_state *plane_state,
|
||||
@@ -268,6 +268,20 @@ void __drm_atomic_helper_plane_state_res
|
||||
plane_state->color_range = val;
|
||||
}
|
||||
|
||||
@@ -37,11 +35,9 @@ index 7142e163e618..a6414a2c488e 100644
|
||||
if (plane->zpos_property) {
|
||||
if (!drm_object_property_get_default_value(&plane->base,
|
||||
plane->zpos_property,
|
||||
diff --git a/drivers/gpu/drm/drm_atomic_uapi.c b/drivers/gpu/drm/drm_atomic_uapi.c
|
||||
index 85dbdaa4a2e2..8111efb2974b 100644
|
||||
--- a/drivers/gpu/drm/drm_atomic_uapi.c
|
||||
+++ b/drivers/gpu/drm/drm_atomic_uapi.c
|
||||
@@ -540,6 +540,10 @@ static int drm_atomic_plane_set_property(struct drm_plane *plane,
|
||||
@@ -540,6 +540,10 @@ static int drm_atomic_plane_set_property
|
||||
state->color_encoding = val;
|
||||
} else if (property == plane->color_range_property) {
|
||||
state->color_range = val;
|
||||
@@ -52,7 +48,7 @@ index 85dbdaa4a2e2..8111efb2974b 100644
|
||||
} else if (property == config->prop_fb_damage_clips) {
|
||||
ret = drm_property_replace_blob_from_id(dev,
|
||||
&state->fb_damage_clips,
|
||||
@@ -622,6 +626,10 @@ drm_atomic_plane_get_property(struct drm_plane *plane,
|
||||
@@ -622,6 +626,10 @@ drm_atomic_plane_get_property(struct drm
|
||||
*val = state->color_encoding;
|
||||
} else if (property == plane->color_range_property) {
|
||||
*val = state->color_range;
|
||||
@@ -63,15 +59,12 @@ index 85dbdaa4a2e2..8111efb2974b 100644
|
||||
} else if (property == config->prop_fb_damage_clips) {
|
||||
*val = (state->fb_damage_clips) ?
|
||||
state->fb_damage_clips->base.id : 0;
|
||||
diff --git a/drivers/gpu/drm/drm_color_mgmt.c b/drivers/gpu/drm/drm_color_mgmt.c
|
||||
index 988d4b6781ad..acfce7963bdd 100644
|
||||
--- a/drivers/gpu/drm/drm_color_mgmt.c
|
||||
+++ b/drivers/gpu/drm/drm_color_mgmt.c
|
||||
@@ -594,6 +594,42 @@ int drm_plane_create_color_properties(struct drm_plane *plane,
|
||||
}
|
||||
@@ -595,6 +595,42 @@ int drm_plane_create_color_properties(st
|
||||
EXPORT_SYMBOL(drm_plane_create_color_properties);
|
||||
|
||||
+/**
|
||||
/**
|
||||
+ * drm_plane_create_chroma_siting_properties - chroma siting related plane properties
|
||||
+ * @plane: plane object
|
||||
+ *
|
||||
@@ -107,14 +100,13 @@ index 988d4b6781ad..acfce7963bdd 100644
|
||||
+}
|
||||
+EXPORT_SYMBOL(drm_plane_create_chroma_siting_properties);
|
||||
+
|
||||
/**
|
||||
+/**
|
||||
* drm_color_lut_check - check validity of lookup table
|
||||
* @lut: property blob containing LUT to check
|
||||
diff --git a/include/drm/drm_color_mgmt.h b/include/drm/drm_color_mgmt.h
|
||||
index eccb71ab335a..2d9a96c22801 100644
|
||||
* @tests: bitmask of tests to run
|
||||
--- a/include/drm/drm_color_mgmt.h
|
||||
+++ b/include/drm/drm_color_mgmt.h
|
||||
@@ -91,6 +91,9 @@ int drm_plane_create_color_properties(struct drm_plane *plane,
|
||||
@@ -91,6 +91,9 @@ int drm_plane_create_color_properties(st
|
||||
enum drm_color_encoding default_encoding,
|
||||
enum drm_color_range default_range);
|
||||
|
||||
@@ -124,15 +116,12 @@ index eccb71ab335a..2d9a96c22801 100644
|
||||
/**
|
||||
* enum drm_color_lut_tests - hw-specific LUT tests to perform
|
||||
*
|
||||
diff --git a/include/drm/drm_plane.h b/include/drm/drm_plane.h
|
||||
index 01479dd94e76..744d6b7bfe9b 100644
|
||||
--- a/include/drm/drm_plane.h
|
||||
+++ b/include/drm/drm_plane.h
|
||||
@@ -183,6 +183,24 @@ struct drm_plane_state {
|
||||
*/
|
||||
@@ -184,6 +184,24 @@ struct drm_plane_state {
|
||||
enum drm_color_range color_range;
|
||||
|
||||
+ /**
|
||||
/**
|
||||
+ * @chroma_siting_h:
|
||||
+ *
|
||||
+ * Location of chroma samples horizontally compared to luma
|
||||
@@ -150,9 +139,10 @@ index 01479dd94e76..744d6b7bfe9b 100644
|
||||
+ */
|
||||
+ int32_t chroma_siting_v;
|
||||
+
|
||||
/**
|
||||
+ /**
|
||||
* @fb_damage_clips:
|
||||
*
|
||||
* Blob representing damage (area in plane framebuffer that changed
|
||||
@@ -803,6 +821,24 @@ struct drm_plane {
|
||||
* @kmsg_panic: Used to register a panic notifier for this plane
|
||||
*/
|
||||
@@ -178,6 +168,3 @@ index 01479dd94e76..744d6b7bfe9b 100644
|
||||
};
|
||||
|
||||
#define obj_to_plane(x) container_of(x, struct drm_plane, base)
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+7
-16
@@ -57,11 +57,9 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
||||
drivers/gpu/drm/msm/msm_atomic.c | 2 ++
|
||||
3 files changed, 15 insertions(+), 13 deletions(-)
|
||||
|
||||
diff --git a/drivers/gpu/drm/drm_atomic_helper.c b/drivers/gpu/drm/drm_atomic_helper.c
|
||||
index 241e560357ec..46a3c24561c2 100644
|
||||
--- a/drivers/gpu/drm/drm_atomic_helper.c
|
||||
+++ b/drivers/gpu/drm/drm_atomic_helper.c
|
||||
@@ -1892,13 +1892,6 @@ drm_atomic_helper_wait_for_vblanks(struct drm_device *dev,
|
||||
@@ -1892,13 +1892,6 @@ drm_atomic_helper_wait_for_vblanks(struc
|
||||
int i, ret;
|
||||
unsigned int crtc_mask = 0;
|
||||
|
||||
@@ -75,24 +73,22 @@ index 241e560357ec..46a3c24561c2 100644
|
||||
for_each_oldnew_crtc_in_state(state, crtc, old_crtc_state, new_crtc_state, i) {
|
||||
if (!new_crtc_state->active)
|
||||
continue;
|
||||
@@ -2548,12 +2541,6 @@ int drm_atomic_helper_setup_commit(struct drm_atomic_state *state,
|
||||
@@ -2547,12 +2540,6 @@ int drm_atomic_helper_setup_commit(struc
|
||||
complete_all(&commit->flip_done);
|
||||
continue;
|
||||
}
|
||||
|
||||
-
|
||||
- /* Legacy cursor updates are fully unsynced. */
|
||||
- if (state->legacy_cursor_update) {
|
||||
- complete_all(&commit->flip_done);
|
||||
- continue;
|
||||
- }
|
||||
-
|
||||
|
||||
if (!new_crtc_state->event) {
|
||||
commit->event = kzalloc(sizeof(*commit->event),
|
||||
GFP_KERNEL);
|
||||
diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
|
||||
index 3f40028e79cf..fac9f65a6948 100644
|
||||
--- a/drivers/gpu/drm/i915/display/intel_display.c
|
||||
+++ b/drivers/gpu/drm/i915/display/intel_display.c
|
||||
@@ -7653,6 +7653,19 @@ int intel_atomic_commit(struct drm_device *dev, struct drm_atomic_state *_state,
|
||||
@@ -7653,6 +7653,19 @@ int intel_atomic_commit(struct drm_devic
|
||||
state->base.legacy_cursor_update = false;
|
||||
}
|
||||
|
||||
@@ -112,11 +108,9 @@ index 3f40028e79cf..fac9f65a6948 100644
|
||||
ret = intel_atomic_prepare_commit(state);
|
||||
if (ret) {
|
||||
drm_dbg_atomic(display->drm,
|
||||
diff --git a/drivers/gpu/drm/msm/msm_atomic.c b/drivers/gpu/drm/msm/msm_atomic.c
|
||||
index 87a91148a731..26841fd080b1 100644
|
||||
--- a/drivers/gpu/drm/msm/msm_atomic.c
|
||||
+++ b/drivers/gpu/drm/msm/msm_atomic.c
|
||||
@@ -255,6 +255,8 @@ void msm_atomic_commit_tail(struct drm_atomic_state *state)
|
||||
@@ -255,6 +255,8 @@ void msm_atomic_commit_tail(struct drm_a
|
||||
/* async updates are limited to single-crtc updates: */
|
||||
WARN_ON(crtc_mask != drm_crtc_mask(async_crtc));
|
||||
|
||||
@@ -125,6 +119,3 @@ index 87a91148a731..26841fd080b1 100644
|
||||
/*
|
||||
* Start timer if we don't already have an update pending
|
||||
* on this crtc:
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+3
-8
@@ -17,11 +17,9 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||
drivers/gpu/drm/drm_atomic_uapi.c | 11 +++++++++++
|
||||
1 file changed, 11 insertions(+)
|
||||
|
||||
diff --git a/drivers/gpu/drm/drm_atomic_uapi.c b/drivers/gpu/drm/drm_atomic_uapi.c
|
||||
index 8111efb2974b..67b330dbf628 100644
|
||||
--- a/drivers/gpu/drm/drm_atomic_uapi.c
|
||||
+++ b/drivers/gpu/drm/drm_atomic_uapi.c
|
||||
@@ -681,6 +681,7 @@ static int drm_atomic_connector_set_property(struct drm_connector *connector,
|
||||
@@ -681,6 +681,7 @@ static int drm_atomic_connector_set_prop
|
||||
{
|
||||
struct drm_device *dev = connector->dev;
|
||||
struct drm_mode_config *config = &dev->mode_config;
|
||||
@@ -29,7 +27,7 @@ index 8111efb2974b..67b330dbf628 100644
|
||||
bool replaced = false;
|
||||
int ret;
|
||||
|
||||
@@ -709,12 +710,16 @@ static int drm_atomic_connector_set_property(struct drm_connector *connector,
|
||||
@@ -709,12 +710,16 @@ static int drm_atomic_connector_set_prop
|
||||
state->tv.subconnector = val;
|
||||
} else if (property == config->tv_left_margin_property) {
|
||||
state->tv.margins.left = val;
|
||||
@@ -46,7 +44,7 @@ index 8111efb2974b..67b330dbf628 100644
|
||||
} else if (property == config->legacy_tv_mode_property) {
|
||||
state->tv.legacy_mode = val;
|
||||
} else if (property == config->tv_mode_property) {
|
||||
@@ -799,6 +804,12 @@ static int drm_atomic_connector_set_property(struct drm_connector *connector,
|
||||
@@ -799,6 +804,12 @@ static int drm_atomic_connector_set_prop
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
@@ -59,6 +57,3 @@ index 8111efb2974b..67b330dbf628 100644
|
||||
return 0;
|
||||
}
|
||||
|
||||
--
|
||||
2.54.0
|
||||
|
||||
@@ -8,11 +8,9 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
||||
arch/arm64/kernel/setup.c | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/arch/arm64/kernel/setup.c b/arch/arm64/kernel/setup.c
|
||||
index 23c05dc7a8f2..25644f0c0fe5 100644
|
||||
--- a/arch/arm64/kernel/setup.c
|
||||
+++ b/arch/arm64/kernel/setup.c
|
||||
@@ -215,9 +215,9 @@ static void __init request_standard_resources(void)
|
||||
@@ -215,9 +215,9 @@ static void __init request_standard_reso
|
||||
size_t res_size;
|
||||
|
||||
kernel_code.start = __pa_symbol(_text);
|
||||
@@ -24,6 +22,3 @@ index 23c05dc7a8f2..25644f0c0fe5 100644
|
||||
insert_resource(&iomem_resource, &kernel_code);
|
||||
insert_resource(&iomem_resource, &kernel_data);
|
||||
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+25
-1397
File diff suppressed because it is too large.
Load diff
+2
-7
@@ -45,11 +45,9 @@ Signed-off-by: Alberto Solavagione <albertosolavagione30@gmail.com>
|
||||
drivers/clk/bcm/clk-bcm2835.c | 19 +++++++++++++++++--
|
||||
1 file changed, 17 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/drivers/clk/bcm/clk-bcm2835.c b/drivers/clk/bcm/clk-bcm2835.c
|
||||
index 02215ea79403..3e1568938681 100644
|
||||
--- a/drivers/clk/bcm/clk-bcm2835.c
|
||||
+++ b/drivers/clk/bcm/clk-bcm2835.c
|
||||
@@ -2324,8 +2324,15 @@ static int bcm2835_clk_probe(struct platform_device *pdev)
|
||||
@@ -2324,8 +2324,15 @@ static int bcm2835_clk_probe(struct plat
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
@@ -66,7 +64,7 @@ index 02215ea79403..3e1568938681 100644
|
||||
}
|
||||
|
||||
static const struct cprman_plat_data cprman_bcm2835_plat_data = {
|
||||
@@ -2351,7 +2358,15 @@ static struct platform_driver bcm2835_clk_driver = {
|
||||
@@ -2351,7 +2358,15 @@ static struct platform_driver bcm2835_cl
|
||||
.probe = bcm2835_clk_probe,
|
||||
};
|
||||
|
||||
@@ -83,6 +81,3 @@ index 02215ea79403..3e1568938681 100644
|
||||
|
||||
MODULE_AUTHOR("Eric Anholt <eric@anholt.net>");
|
||||
MODULE_DESCRIPTION("BCM2835 clock driver");
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+1
-6
@@ -12,11 +12,9 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
||||
drivers/clk/bcm/clk-bcm2835.c | 5 +++++
|
||||
1 file changed, 5 insertions(+)
|
||||
|
||||
diff --git a/drivers/clk/bcm/clk-bcm2835.c b/drivers/clk/bcm/clk-bcm2835.c
|
||||
index 3e1568938681..3a28bb531c78 100644
|
||||
--- a/drivers/clk/bcm/clk-bcm2835.c
|
||||
+++ b/drivers/clk/bcm/clk-bcm2835.c
|
||||
@@ -1412,6 +1412,11 @@ bcm2835_register_pll_divider(struct bcm2835_cprman *cprman,
|
||||
@@ -1412,6 +1412,11 @@ bcm2835_register_pll_divider(struct bcm2
|
||||
divider->div.hw.init = &init;
|
||||
divider->div.table = NULL;
|
||||
|
||||
@@ -28,6 +26,3 @@ index 3e1568938681..3a28bb531c78 100644
|
||||
divider->cprman = cprman;
|
||||
divider->data = divider_data;
|
||||
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+11
-16
@@ -15,11 +15,9 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
||||
drivers/clk/bcm/clk-bcm2835.c | 43 +++++++++++++++++++++++++++++++++--
|
||||
1 file changed, 41 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/drivers/clk/bcm/clk-bcm2835.c b/drivers/clk/bcm/clk-bcm2835.c
|
||||
index 3a28bb531c78..785df427de58 100644
|
||||
--- a/drivers/clk/bcm/clk-bcm2835.c
|
||||
+++ b/drivers/clk/bcm/clk-bcm2835.c
|
||||
@@ -1340,6 +1340,8 @@ static const struct clk_ops bcm2835_vpu_clock_clk_ops = {
|
||||
@@ -1340,6 +1340,8 @@ static const struct clk_ops bcm2835_vpu_
|
||||
.debug_init = bcm2835_clock_debug_init,
|
||||
};
|
||||
|
||||
@@ -28,7 +26,7 @@ index 3a28bb531c78..785df427de58 100644
|
||||
static struct clk_hw *bcm2835_register_pll(struct bcm2835_cprman *cprman,
|
||||
const void *data)
|
||||
{
|
||||
@@ -1357,6 +1359,9 @@ static struct clk_hw *bcm2835_register_pll(struct bcm2835_cprman *cprman,
|
||||
@@ -1357,6 +1359,9 @@ static struct clk_hw *bcm2835_register_p
|
||||
init.ops = &bcm2835_pll_clk_ops;
|
||||
init.flags = pll_data->flags | CLK_IGNORE_UNUSED;
|
||||
|
||||
@@ -38,7 +36,7 @@ index 3a28bb531c78..785df427de58 100644
|
||||
pll = kzalloc(sizeof(*pll), GFP_KERNEL);
|
||||
if (!pll)
|
||||
return NULL;
|
||||
@@ -1413,8 +1418,10 @@ bcm2835_register_pll_divider(struct bcm2835_cprman *cprman,
|
||||
@@ -1413,8 +1418,10 @@ bcm2835_register_pll_divider(struct bcm2
|
||||
divider->div.table = NULL;
|
||||
|
||||
if (!(cprman_read(cprman, divider_data->cm_reg) & divider_data->hold_mask)) {
|
||||
@@ -51,11 +49,10 @@ index 3a28bb531c78..785df427de58 100644
|
||||
}
|
||||
|
||||
divider->cprman = cprman;
|
||||
@@ -1470,6 +1477,15 @@ static struct clk_hw *bcm2835_register_clock(struct bcm2835_cprman *cprman,
|
||||
init.name = clock_data->name;
|
||||
@@ -1471,6 +1478,15 @@ static struct clk_hw *bcm2835_register_c
|
||||
init.flags = clock_data->flags | CLK_IGNORE_UNUSED;
|
||||
|
||||
+ /*
|
||||
/*
|
||||
+ * Some GPIO clocks for ethernet/wifi PLLs are marked as
|
||||
+ * critical (since some platforms use them), but if the
|
||||
+ * firmware didn't have them turned on then they clearly
|
||||
@@ -64,10 +61,11 @@ index 3a28bb531c78..785df427de58 100644
|
||||
+ if ((cprman_read(cprman, clock_data->ctl_reg) & CM_ENABLE) == 0)
|
||||
+ init.flags &= ~CLK_IS_CRITICAL;
|
||||
+
|
||||
/*
|
||||
+ /*
|
||||
* Pass the CLK_SET_RATE_PARENT flag if we are allowed to propagate
|
||||
* rate changes on at least of the parents.
|
||||
@@ -2250,6 +2266,8 @@ static const struct bcm2835_clk_desc clk_desc_array[] = {
|
||||
*/
|
||||
@@ -2250,6 +2266,8 @@ static const struct bcm2835_clk_desc clk
|
||||
.ctl_reg = CM_PERIICTL),
|
||||
};
|
||||
|
||||
@@ -76,7 +74,7 @@ index 3a28bb531c78..785df427de58 100644
|
||||
/*
|
||||
* Permanently take a reference on the parent of the SDRAM clock.
|
||||
*
|
||||
@@ -2269,6 +2287,19 @@ static int bcm2835_mark_sdc_parent_critical(struct clk *sdc)
|
||||
@@ -2269,6 +2287,19 @@ static int bcm2835_mark_sdc_parent_criti
|
||||
return clk_prepare_enable(parent);
|
||||
}
|
||||
|
||||
@@ -96,7 +94,7 @@ index 3a28bb531c78..785df427de58 100644
|
||||
static int bcm2835_clk_probe(struct platform_device *pdev)
|
||||
{
|
||||
struct device *dev = &pdev->dev;
|
||||
@@ -2278,6 +2309,7 @@ static int bcm2835_clk_probe(struct platform_device *pdev)
|
||||
@@ -2278,6 +2309,7 @@ static int bcm2835_clk_probe(struct plat
|
||||
const size_t asize = ARRAY_SIZE(clk_desc_array);
|
||||
const struct cprman_plat_data *pdata;
|
||||
size_t i;
|
||||
@@ -104,7 +102,7 @@ index 3a28bb531c78..785df427de58 100644
|
||||
int ret;
|
||||
|
||||
pdata = of_device_get_match_data(&pdev->dev);
|
||||
@@ -2296,6 +2328,13 @@ static int bcm2835_clk_probe(struct platform_device *pdev)
|
||||
@@ -2296,6 +2328,13 @@ static int bcm2835_clk_probe(struct plat
|
||||
if (IS_ERR(cprman->regs))
|
||||
return PTR_ERR(cprman->regs);
|
||||
|
||||
@@ -118,6 +116,3 @@ index 3a28bb531c78..785df427de58 100644
|
||||
memcpy(cprman->real_parent_names, cprman_parent_names,
|
||||
sizeof(cprman_parent_names));
|
||||
of_clk_parent_fill(dev->of_node, cprman->real_parent_names,
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+5
-10
@@ -30,8 +30,6 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
drivers/clk/bcm/clk-bcm2835.c | 39 ++++++++++++++++++++++++++++++++++-
|
||||
1 file changed, 38 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/clk/bcm/clk-bcm2835.c b/drivers/clk/bcm/clk-bcm2835.c
|
||||
index 785df427de58..504fcae4114c 100644
|
||||
--- a/drivers/clk/bcm/clk-bcm2835.c
|
||||
+++ b/drivers/clk/bcm/clk-bcm2835.c
|
||||
@@ -36,6 +36,7 @@
|
||||
@@ -51,7 +49,7 @@ index 785df427de58..504fcae4114c 100644
|
||||
/*
|
||||
* Names of clocks used within the driver that need to be replaced
|
||||
* with an external parent's name. This array is in the order that
|
||||
@@ -314,6 +317,7 @@ static const char *const cprman_parent_names[] = {
|
||||
@@ -314,6 +317,7 @@ static const char *const cprman_parent_n
|
||||
struct bcm2835_cprman {
|
||||
struct device *dev;
|
||||
void __iomem *regs;
|
||||
@@ -59,7 +57,7 @@ index 785df427de58..504fcae4114c 100644
|
||||
spinlock_t regs_lock; /* spinlock for all clocks */
|
||||
unsigned int soc;
|
||||
|
||||
@@ -1044,6 +1048,30 @@ static unsigned long bcm2835_clock_get_rate(struct clk_hw *hw,
|
||||
@@ -1044,6 +1048,30 @@ static unsigned long bcm2835_clock_get_r
|
||||
return rate;
|
||||
}
|
||||
|
||||
@@ -90,7 +88,7 @@ index 785df427de58..504fcae4114c 100644
|
||||
static void bcm2835_clock_wait_busy(struct bcm2835_clock *clock)
|
||||
{
|
||||
struct bcm2835_cprman *cprman = clock->cprman;
|
||||
@@ -1332,7 +1360,7 @@ static int bcm2835_vpu_clock_is_on(struct clk_hw *hw)
|
||||
@@ -1332,7 +1360,7 @@ static int bcm2835_vpu_clock_is_on(struc
|
||||
*/
|
||||
static const struct clk_ops bcm2835_vpu_clock_clk_ops = {
|
||||
.is_prepared = bcm2835_vpu_clock_is_on,
|
||||
@@ -99,7 +97,7 @@ index 785df427de58..504fcae4114c 100644
|
||||
.set_rate = bcm2835_clock_set_rate,
|
||||
.determine_rate = bcm2835_clock_determine_rate,
|
||||
.set_parent = bcm2835_clock_set_parent,
|
||||
@@ -2308,6 +2336,7 @@ static int bcm2835_clk_probe(struct platform_device *pdev)
|
||||
@@ -2308,6 +2336,7 @@ static int bcm2835_clk_probe(struct plat
|
||||
const struct bcm2835_clk_desc *desc;
|
||||
const size_t asize = ARRAY_SIZE(clk_desc_array);
|
||||
const struct cprman_plat_data *pdata;
|
||||
@@ -107,7 +105,7 @@ index 785df427de58..504fcae4114c 100644
|
||||
size_t i;
|
||||
u32 clk_id;
|
||||
int ret;
|
||||
@@ -2328,6 +2357,14 @@ static int bcm2835_clk_probe(struct platform_device *pdev)
|
||||
@@ -2328,6 +2357,14 @@ static int bcm2835_clk_probe(struct plat
|
||||
if (IS_ERR(cprman->regs))
|
||||
return PTR_ERR(cprman->regs);
|
||||
|
||||
@@ -122,6 +120,3 @@ index 785df427de58..504fcae4114c 100644
|
||||
memset(bcm2835_clk_claimed, 0, sizeof(bcm2835_clk_claimed));
|
||||
for (i = 0;
|
||||
!of_property_read_u32_index(pdev->dev.of_node, "claim-clocks",
|
||||
--
|
||||
2.54.0
|
||||
|
||||
@@ -8,11 +8,9 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
||||
drivers/clk/bcm/clk-bcm2835.c | 18 ++++++++++--------
|
||||
1 file changed, 10 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/drivers/clk/bcm/clk-bcm2835.c b/drivers/clk/bcm/clk-bcm2835.c
|
||||
index 504fcae4114c..aa729951d22b 100644
|
||||
--- a/drivers/clk/bcm/clk-bcm2835.c
|
||||
+++ b/drivers/clk/bcm/clk-bcm2835.c
|
||||
@@ -652,15 +652,17 @@ static int bcm2835_pll_on(struct clk_hw *hw)
|
||||
@@ -652,15 +652,17 @@ static int bcm2835_pll_on(struct clk_hw
|
||||
spin_unlock(&cprman->regs_lock);
|
||||
|
||||
/* Wait for the PLL to lock. */
|
||||
@@ -22,6 +20,7 @@ index 504fcae4114c..aa729951d22b 100644
|
||||
- dev_err(cprman->dev, "%s: couldn't lock PLL\n",
|
||||
- clk_hw_get_name(hw));
|
||||
- return -ETIMEDOUT;
|
||||
- }
|
||||
+ if (strcmp(data->name, "pllh")) {
|
||||
+ timeout = ktime_add_ns(ktime_get(), LOCK_TIMEOUT_NS);
|
||||
+ while (!(cprman_read(cprman, CM_LOCK) & data->lock_mask)) {
|
||||
@@ -30,14 +29,10 @@ index 504fcae4114c..aa729951d22b 100644
|
||||
+ clk_hw_get_name(hw));
|
||||
+ return -ETIMEDOUT;
|
||||
+ }
|
||||
+
|
||||
+ cpu_relax();
|
||||
}
|
||||
-
|
||||
|
||||
- cpu_relax();
|
||||
+ cpu_relax();
|
||||
+ }
|
||||
}
|
||||
|
||||
cprman_write(cprman, data->a2w_ctrl_reg,
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+2
-7
@@ -12,11 +12,9 @@ Signed-off-by: Eric Anholt <eric@anholt.net>
|
||||
drivers/clk/bcm/clk-bcm2835.c | 22 +++++++++++++---------
|
||||
1 file changed, 13 insertions(+), 9 deletions(-)
|
||||
|
||||
diff --git a/drivers/clk/bcm/clk-bcm2835.c b/drivers/clk/bcm/clk-bcm2835.c
|
||||
index aa729951d22b..dd76a43dcd05 100644
|
||||
--- a/drivers/clk/bcm/clk-bcm2835.c
|
||||
+++ b/drivers/clk/bcm/clk-bcm2835.c
|
||||
@@ -1143,15 +1143,19 @@ static int bcm2835_clock_set_rate(struct clk_hw *hw,
|
||||
@@ -1143,15 +1143,19 @@ static int bcm2835_clock_set_rate(struct
|
||||
|
||||
spin_lock(&cprman->regs_lock);
|
||||
|
||||
@@ -44,7 +42,7 @@ index aa729951d22b..dd76a43dcd05 100644
|
||||
ctl |= (div & CM_DIV_FRAC_MASK) ? CM_FRAC : 0;
|
||||
cprman_write(cprman, data->ctl_reg, ctl);
|
||||
|
||||
@@ -1527,7 +1531,7 @@ static struct clk_hw *bcm2835_register_clock(struct bcm2835_cprman *cprman,
|
||||
@@ -1527,7 +1531,7 @@ static struct clk_hw *bcm2835_register_c
|
||||
init.ops = &bcm2835_vpu_clock_clk_ops;
|
||||
} else {
|
||||
init.ops = &bcm2835_clock_clk_ops;
|
||||
@@ -53,6 +51,3 @@ index aa729951d22b..dd76a43dcd05 100644
|
||||
|
||||
/* If the clock wasn't actually enabled at boot, it's not
|
||||
* critical.
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+5
-10
@@ -13,11 +13,9 @@ Signed-off-by: Eric Anholt <eric@anholt.net>
|
||||
drivers/clk/bcm/clk-bcm2835.c | 19 ++++++++++++++++---
|
||||
1 file changed, 16 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/drivers/clk/bcm/clk-bcm2835.c b/drivers/clk/bcm/clk-bcm2835.c
|
||||
index dd76a43dcd05..915edad0f3b3 100644
|
||||
--- a/drivers/clk/bcm/clk-bcm2835.c
|
||||
+++ b/drivers/clk/bcm/clk-bcm2835.c
|
||||
@@ -1132,8 +1132,10 @@ static int bcm2835_clock_on(struct clk_hw *hw)
|
||||
@@ -1132,8 +1132,10 @@ static int bcm2835_clock_on(struct clk_h
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -30,7 +28,7 @@ index dd76a43dcd05..915edad0f3b3 100644
|
||||
{
|
||||
struct bcm2835_clock *clock = bcm2835_clock_from_hw(hw);
|
||||
struct bcm2835_cprman *cprman = clock->cprman;
|
||||
@@ -1155,6 +1157,11 @@ static int bcm2835_clock_set_rate(struct clk_hw *hw,
|
||||
@@ -1155,6 +1157,11 @@ static int bcm2835_clock_set_rate(struct
|
||||
bcm2835_clock_wait_busy(clock);
|
||||
}
|
||||
|
||||
@@ -42,7 +40,7 @@ index dd76a43dcd05..915edad0f3b3 100644
|
||||
ctl &= ~CM_FRAC;
|
||||
ctl |= (div & CM_DIV_FRAC_MASK) ? CM_FRAC : 0;
|
||||
cprman_write(cprman, data->ctl_reg, ctl);
|
||||
@@ -1166,6 +1173,12 @@ static int bcm2835_clock_set_rate(struct clk_hw *hw,
|
||||
@@ -1166,6 +1173,12 @@ static int bcm2835_clock_set_rate(struct
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -55,7 +53,7 @@ index dd76a43dcd05..915edad0f3b3 100644
|
||||
static bool
|
||||
bcm2835_clk_is_pllc(struct clk_hw *hw)
|
||||
{
|
||||
@@ -1349,6 +1362,7 @@ static const struct clk_ops bcm2835_clock_clk_ops = {
|
||||
@@ -1349,6 +1362,7 @@ static const struct clk_ops bcm2835_cloc
|
||||
.unprepare = bcm2835_clock_off,
|
||||
.recalc_rate = bcm2835_clock_get_rate,
|
||||
.set_rate = bcm2835_clock_set_rate,
|
||||
@@ -63,7 +61,7 @@ index dd76a43dcd05..915edad0f3b3 100644
|
||||
.determine_rate = bcm2835_clock_determine_rate,
|
||||
.set_parent = bcm2835_clock_set_parent,
|
||||
.get_parent = bcm2835_clock_get_parent,
|
||||
@@ -1531,7 +1545,6 @@ static struct clk_hw *bcm2835_register_clock(struct bcm2835_cprman *cprman,
|
||||
@@ -1531,7 +1545,6 @@ static struct clk_hw *bcm2835_register_c
|
||||
init.ops = &bcm2835_vpu_clock_clk_ops;
|
||||
} else {
|
||||
init.ops = &bcm2835_clock_clk_ops;
|
||||
@@ -71,6 +69,3 @@ index dd76a43dcd05..915edad0f3b3 100644
|
||||
|
||||
/* If the clock wasn't actually enabled at boot, it's not
|
||||
* critical.
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+1
-6
@@ -10,11 +10,9 @@ Signed-off-by: popcornmix <popcornmix@gmail.com>
|
||||
drivers/clk/bcm/clk-bcm2835.c | 8 +++++---
|
||||
1 file changed, 5 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/drivers/clk/bcm/clk-bcm2835.c b/drivers/clk/bcm/clk-bcm2835.c
|
||||
index 915edad0f3b3..4478288bc586 100644
|
||||
--- a/drivers/clk/bcm/clk-bcm2835.c
|
||||
+++ b/drivers/clk/bcm/clk-bcm2835.c
|
||||
@@ -2339,9 +2339,11 @@ static bool bcm2835_clk_is_claimed(const char *name)
|
||||
@@ -2339,9 +2339,11 @@ static bool bcm2835_clk_is_claimed(const
|
||||
int i;
|
||||
|
||||
for (i = 0; i < ARRAY_SIZE(clk_desc_array); i++) {
|
||||
@@ -29,6 +27,3 @@ index 915edad0f3b3..4478288bc586 100644
|
||||
}
|
||||
|
||||
return false;
|
||||
--
|
||||
2.54.0
|
||||
|
||||
@@ -14,11 +14,9 @@ Signed-off-by: Dom Cobley <popcornmix@gmail.com>
|
||||
drivers/clk/bcm/clk-bcm2835.c | 45 ++++++++++-------------------------
|
||||
1 file changed, 12 insertions(+), 33 deletions(-)
|
||||
|
||||
diff --git a/drivers/clk/bcm/clk-bcm2835.c b/drivers/clk/bcm/clk-bcm2835.c
|
||||
index 4478288bc586..56fb1e5db2f9 100644
|
||||
--- a/drivers/clk/bcm/clk-bcm2835.c
|
||||
+++ b/drivers/clk/bcm/clk-bcm2835.c
|
||||
@@ -1769,16 +1769,12 @@ static const struct bcm2835_clk_desc clk_desc_array[] = {
|
||||
@@ -1769,16 +1769,12 @@ static const struct bcm2835_clk_desc clk
|
||||
.hold_mask = CM_PLLA_HOLDCORE,
|
||||
.fixed_divider = 1,
|
||||
.flags = CLK_SET_RATE_PARENT),
|
||||
@@ -41,7 +39,7 @@ index 4478288bc586..56fb1e5db2f9 100644
|
||||
[BCM2835_PLLA_DSI0] = REGISTER_PLL_DIV(
|
||||
SOC_ALL,
|
||||
.name = "plla_dsi0",
|
||||
@@ -2079,14 +2075,12 @@ static const struct bcm2835_clk_desc clk_desc_array[] = {
|
||||
@@ -2079,14 +2075,12 @@ static const struct bcm2835_clk_desc clk
|
||||
.int_bits = 6,
|
||||
.frac_bits = 0,
|
||||
.tcnt_mux = 3),
|
||||
@@ -62,7 +60,7 @@ index 4478288bc586..56fb1e5db2f9 100644
|
||||
/*
|
||||
* VPU clock. This doesn't have an enable bit, since it drives
|
||||
* the bus for everything else, and is special so it doesn't need
|
||||
@@ -2249,21 +2243,6 @@ static const struct bcm2835_clk_desc clk_desc_array[] = {
|
||||
@@ -2249,21 +2243,6 @@ static const struct bcm2835_clk_desc clk
|
||||
.tcnt_mux = 28,
|
||||
.round_up = true),
|
||||
|
||||
@@ -84,6 +82,3 @@ index 4478288bc586..56fb1e5db2f9 100644
|
||||
/* dsi clocks */
|
||||
[BCM2835_CLOCK_DSI0E] = REGISTER_PER_CLK(
|
||||
SOC_ALL,
|
||||
--
|
||||
2.54.0
|
||||
|
||||
@@ -13,8 +13,6 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||
drivers/clk/bcm/clk-bcm2835.c | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/drivers/clk/bcm/clk-bcm2835.c b/drivers/clk/bcm/clk-bcm2835.c
|
||||
index 56fb1e5db2f9..9ba61a9d9890 100644
|
||||
--- a/drivers/clk/bcm/clk-bcm2835.c
|
||||
+++ b/drivers/clk/bcm/clk-bcm2835.c
|
||||
@@ -107,6 +107,7 @@
|
||||
@@ -25,7 +23,7 @@ index 56fb1e5db2f9..9ba61a9d9890 100644
|
||||
#define CM_PULSECTL 0x190
|
||||
#define CM_PULSEDIV 0x194
|
||||
#define CM_SDCCTL 0x1a8
|
||||
@@ -2357,6 +2358,9 @@ static int bcm2835_clk_probe(struct platform_device *pdev)
|
||||
@@ -2357,6 +2358,9 @@ static int bcm2835_clk_probe(struct plat
|
||||
if (IS_ERR(cprman->regs))
|
||||
return PTR_ERR(cprman->regs);
|
||||
|
||||
@@ -35,6 +33,3 @@ index 56fb1e5db2f9..9ba61a9d9890 100644
|
||||
fw_node = of_parse_phandle(dev->of_node, "firmware", 0);
|
||||
if (fw_node) {
|
||||
struct rpi_firmware *fw = rpi_firmware_get(fw_node);
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+1
-6
@@ -9,8 +9,6 @@ See: http://forum.kodi.tv/showthread.php?tid=285288
|
||||
drivers/net/usb/smsc95xx.c | 14 +++++++++-----
|
||||
1 file changed, 9 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/drivers/net/usb/smsc95xx.c b/drivers/net/usb/smsc95xx.c
|
||||
index de733e0488bf..14eb4b6b41e3 100644
|
||||
--- a/drivers/net/usb/smsc95xx.c
|
||||
+++ b/drivers/net/usb/smsc95xx.c
|
||||
@@ -82,6 +82,10 @@ static bool turbo_mode = true;
|
||||
@@ -24,7 +22,7 @@ index de733e0488bf..14eb4b6b41e3 100644
|
||||
static int __must_check smsc95xx_read_reg(struct usbnet *dev, u32 index,
|
||||
u32 *data)
|
||||
{
|
||||
@@ -993,13 +997,13 @@ static int smsc95xx_reset(struct usbnet *dev)
|
||||
@@ -993,13 +997,13 @@ static int smsc95xx_reset(struct usbnet
|
||||
|
||||
if (!turbo_mode) {
|
||||
burst_cap = 0;
|
||||
@@ -43,6 +41,3 @@ index de733e0488bf..14eb4b6b41e3 100644
|
||||
}
|
||||
|
||||
netif_dbg(dev, ifup, dev->net, "rx_urb_size=%ld\n",
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+5
-10
@@ -20,8 +20,6 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
drivers/net/usb/smsc95xx.c | 27 +++++++++++++++++++++++++++
|
||||
1 file changed, 27 insertions(+)
|
||||
|
||||
diff --git a/drivers/net/usb/smsc95xx.c b/drivers/net/usb/smsc95xx.c
|
||||
index 14eb4b6b41e3..b83a9840e3c6 100644
|
||||
--- a/drivers/net/usb/smsc95xx.c
|
||||
+++ b/drivers/net/usb/smsc95xx.c
|
||||
@@ -86,6 +86,10 @@ static int packetsize = 2560;
|
||||
@@ -35,7 +33,7 @@ index 14eb4b6b41e3..b83a9840e3c6 100644
|
||||
static int __must_check smsc95xx_read_reg(struct usbnet *dev, u32 index,
|
||||
u32 *data)
|
||||
{
|
||||
@@ -866,6 +870,21 @@ static int smsc95xx_ioctl(struct net_device *netdev, struct ifreq *rq, int cmd)
|
||||
@@ -866,6 +870,21 @@ static int smsc95xx_ioctl(struct net_dev
|
||||
return phy_mii_ioctl(netdev->phydev, rq, cmd);
|
||||
}
|
||||
|
||||
@@ -57,10 +55,11 @@ index 14eb4b6b41e3..b83a9840e3c6 100644
|
||||
static void smsc95xx_init_mac_address(struct usbnet *dev)
|
||||
{
|
||||
u8 addr[ETH_ALEN];
|
||||
@@ -889,6 +908,14 @@ static void smsc95xx_init_mac_address(struct usbnet *dev)
|
||||
@@ -888,6 +907,14 @@ static void smsc95xx_init_mac_address(st
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
+
|
||||
+ /* Check module parameters */
|
||||
+ if (smsc95xx_macaddr_param(dev, dev->net) == 0) {
|
||||
+ if (is_valid_ether_addr(dev->net->dev_addr)) {
|
||||
@@ -68,10 +67,6 @@ index 14eb4b6b41e3..b83a9840e3c6 100644
|
||||
+ return;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
|
||||
/* no useful static MAC address found. generate a random one */
|
||||
eth_hw_addr_random(dev->net);
|
||||
netif_dbg(dev, ifup, dev->net, "MAC address set to eth_random_addr\n");
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+1
-6
@@ -10,11 +10,9 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
||||
kernel/resource.c | 6 ++++++
|
||||
1 file changed, 6 insertions(+)
|
||||
|
||||
diff --git a/kernel/resource.c b/kernel/resource.c
|
||||
index e4e9bac12e6e..edbe8ef7e8ef 100644
|
||||
--- a/kernel/resource.c
|
||||
+++ b/kernel/resource.c
|
||||
@@ -210,6 +210,12 @@ static int __release_resource(struct resource *old, bool release_child)
|
||||
@@ -210,6 +210,12 @@ static int __release_resource(struct res
|
||||
{
|
||||
struct resource *tmp, **p, *chd;
|
||||
|
||||
@@ -27,6 +25,3 @@ index e4e9bac12e6e..edbe8ef7e8ef 100644
|
||||
p = &old->parent->child;
|
||||
for (;;) {
|
||||
tmp = *p;
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+1
-6
@@ -11,11 +11,9 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
||||
drivers/irqchip/irq-bcm2836.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/irqchip/irq-bcm2836.c b/drivers/irqchip/irq-bcm2836.c
|
||||
index fafd1f71348e..067027467113 100644
|
||||
--- a/drivers/irqchip/irq-bcm2836.c
|
||||
+++ b/drivers/irqchip/irq-bcm2836.c
|
||||
@@ -131,7 +131,7 @@ static int bcm2836_map(struct irq_domain *d, unsigned int irq,
|
||||
@@ -131,7 +131,7 @@ static int bcm2836_map(struct irq_domain
|
||||
irq_set_percpu_devid(irq);
|
||||
irq_domain_set_info(d, irq, hw, chip, d->host_data,
|
||||
handle_percpu_devid_irq, NULL, NULL);
|
||||
@@ -24,6 +22,3 @@ index fafd1f71348e..067027467113 100644
|
||||
|
||||
return 0;
|
||||
}
|
||||
--
|
||||
2.54.0
|
||||
|
||||
@@ -18,8 +18,6 @@ Acked-by: Stephen Warren <swarren@wwwdotorg.org>
|
||||
drivers/irqchip/irq-bcm2835.c | 49 ++++++++++++++++++++++++++++++++---
|
||||
2 files changed, 46 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/arch/arm/mach-bcm/Kconfig b/arch/arm/mach-bcm/Kconfig
|
||||
index 24bc6e18d806..882a8dc508f2 100644
|
||||
--- a/arch/arm/mach-bcm/Kconfig
|
||||
+++ b/arch/arm/mach-bcm/Kconfig
|
||||
@@ -158,6 +158,7 @@ config ARCH_BCM2835
|
||||
@@ -30,8 +28,6 @@ index 24bc6e18d806..882a8dc508f2 100644
|
||||
select PINCTRL
|
||||
select PINCTRL_BCM2835
|
||||
select MFD_CORE
|
||||
diff --git a/drivers/irqchip/irq-bcm2835.c b/drivers/irqchip/irq-bcm2835.c
|
||||
index 1e384c870350..34003a61702c 100644
|
||||
--- a/drivers/irqchip/irq-bcm2835.c
|
||||
+++ b/drivers/irqchip/irq-bcm2835.c
|
||||
@@ -45,7 +45,7 @@
|
||||
@@ -57,7 +53,7 @@ index 1e384c870350..34003a61702c 100644
|
||||
|
||||
static const int reg_pending[] __initconst = { 0x00, 0x04, 0x08 };
|
||||
static const int reg_enable[] __initconst = { 0x18, 0x10, 0x14 };
|
||||
@@ -89,14 +93,38 @@ static void __exception_irq_entry bcm2835_handle_irq(
|
||||
@@ -89,14 +93,38 @@ static void __exception_irq_entry bcm283
|
||||
struct pt_regs *regs);
|
||||
static void bcm2836_chained_handle_irq(struct irq_desc *desc);
|
||||
|
||||
@@ -98,7 +94,7 @@ index 1e384c870350..34003a61702c 100644
|
||||
}
|
||||
|
||||
static struct irq_chip armctrl_chip = {
|
||||
@@ -144,7 +172,8 @@ static int __init armctrl_of_init(struct device_node *node,
|
||||
@@ -144,7 +172,8 @@ static int __init armctrl_of_init(struct
|
||||
if (!base)
|
||||
panic("%pOF: unable to map IC registers\n", node);
|
||||
|
||||
@@ -108,7 +104,7 @@ index 1e384c870350..34003a61702c 100644
|
||||
&armctrl_ops, NULL);
|
||||
if (!intc.domain)
|
||||
panic("%pOF: unable to create IRQ domain\n", node);
|
||||
@@ -188,6 +217,18 @@ static int __init armctrl_of_init(struct device_node *node,
|
||||
@@ -188,6 +217,18 @@ static int __init armctrl_of_init(struct
|
||||
set_handle_irq(bcm2835_handle_irq);
|
||||
}
|
||||
|
||||
@@ -127,6 +123,3 @@ index 1e384c870350..34003a61702c 100644
|
||||
return 0;
|
||||
}
|
||||
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+2
-7
@@ -11,8 +11,6 @@ Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
|
||||
drivers/irqchip/irq-bcm2835.c | 43 +++++++++++++++++++++++++++++++++--
|
||||
1 file changed, 41 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/drivers/irqchip/irq-bcm2835.c b/drivers/irqchip/irq-bcm2835.c
|
||||
index 34003a61702c..3bfb4a5b23c2 100644
|
||||
--- a/drivers/irqchip/irq-bcm2835.c
|
||||
+++ b/drivers/irqchip/irq-bcm2835.c
|
||||
@@ -41,8 +41,11 @@
|
||||
@@ -45,7 +43,7 @@ index 34003a61702c..3bfb4a5b23c2 100644
|
||||
};
|
||||
|
||||
static struct armctrl_ic intc __read_mostly;
|
||||
@@ -119,12 +126,35 @@ static void armctrl_mask_irq(struct irq_data *d)
|
||||
@@ -119,12 +126,35 @@ static void armctrl_mask_irq(struct irq_
|
||||
|
||||
static void armctrl_unmask_irq(struct irq_data *d)
|
||||
{
|
||||
@@ -83,7 +81,7 @@ index 34003a61702c..3bfb4a5b23c2 100644
|
||||
}
|
||||
|
||||
static struct irq_chip armctrl_chip = {
|
||||
@@ -217,6 +247,15 @@ static int __init armctrl_of_init(struct device_node *node,
|
||||
@@ -217,6 +247,15 @@ static int __init armctrl_of_init(struct
|
||||
set_handle_irq(bcm2835_handle_irq);
|
||||
}
|
||||
|
||||
@@ -99,6 +97,3 @@ index 34003a61702c..3bfb4a5b23c2 100644
|
||||
/* Make a duplicate irq range which is used to enable FIQ */
|
||||
for (b = 0; b < NR_BANKS; b++) {
|
||||
for (i = 0; i < bank_irqs[b]; i++) {
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+1
-6
@@ -11,11 +11,9 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
||||
drivers/spi/spidev.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/spi/spidev.c b/drivers/spi/spidev.c
|
||||
index 461d3a0009a8..3b9045e656ce 100644
|
||||
--- a/drivers/spi/spidev.c
|
||||
+++ b/drivers/spi/spidev.c
|
||||
@@ -710,7 +710,7 @@ MODULE_DEVICE_TABLE(spi, spidev_spi_ids);
|
||||
@@ -710,7 +710,7 @@ MODULE_DEVICE_TABLE(spi, spidev_spi_ids)
|
||||
*/
|
||||
static int spidev_of_check(struct device *dev)
|
||||
{
|
||||
@@ -24,6 +22,3 @@ index 461d3a0009a8..3b9045e656ce 100644
|
||||
return 0;
|
||||
|
||||
dev_err(dev, "spidev listed directly in DT is not supported\n");
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+62
-67
@@ -168,8 +168,6 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
drivers/dma/bcm2835-dma.c | 668 +++++++++++++++++++++++++++++++-------
|
||||
2 files changed, 556 insertions(+), 114 deletions(-)
|
||||
|
||||
diff --git a/drivers/dma/Kconfig b/drivers/dma/Kconfig
|
||||
index b8a74b1798ba..cab445e9b9a0 100644
|
||||
--- a/drivers/dma/Kconfig
|
||||
+++ b/drivers/dma/Kconfig
|
||||
@@ -143,7 +143,7 @@ config BCM_SBA_RAID
|
||||
@@ -181,8 +179,6 @@ index b8a74b1798ba..cab445e9b9a0 100644
|
||||
select DMA_ENGINE
|
||||
select DMA_VIRTUAL_CHANNELS
|
||||
|
||||
diff --git a/drivers/dma/bcm2835-dma.c b/drivers/dma/bcm2835-dma.c
|
||||
index 0117bb2e8591..dcc77ed986bb 100644
|
||||
--- a/drivers/dma/bcm2835-dma.c
|
||||
+++ b/drivers/dma/bcm2835-dma.c
|
||||
@@ -25,6 +25,7 @@
|
||||
@@ -406,7 +402,7 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
static inline size_t bcm2835_dma_max_frame_length(struct bcm2835_chan *c)
|
||||
{
|
||||
/* lite and normal channels have different max frame length */
|
||||
@@ -201,6 +359,36 @@ static inline struct bcm2835_desc *to_bcm2835_dma_desc(
|
||||
@@ -201,6 +359,36 @@ static inline struct bcm2835_desc *to_bc
|
||||
return container_of(t, struct bcm2835_desc, vd.tx);
|
||||
}
|
||||
|
||||
@@ -443,7 +439,7 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
static void bcm2835_dma_free_cb_chain(struct bcm2835_desc *desc)
|
||||
{
|
||||
size_t i;
|
||||
@@ -219,45 +407,53 @@ static void bcm2835_dma_desc_free(struct virt_dma_desc *vd)
|
||||
@@ -219,45 +407,53 @@ static void bcm2835_dma_desc_free(struct
|
||||
}
|
||||
|
||||
static void bcm2835_dma_create_cb_set_length(
|
||||
@@ -502,15 +498,16 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
|
||||
- /* calculate the length that remains to reach period_length */
|
||||
- control_block->length = period_len - *total_len;
|
||||
+ if (c->is_40bit_channel) {
|
||||
+ struct bcm2711_dma40_scb *scb =
|
||||
+ (struct bcm2711_dma40_scb *)control_block;
|
||||
|
||||
-
|
||||
- /* reset total_length for next period */
|
||||
- *total_len = 0;
|
||||
-
|
||||
- /* add extrainfo bits in info */
|
||||
- control_block->info |= finalextrainfo;
|
||||
+ if (c->is_40bit_channel) {
|
||||
+ struct bcm2711_dma40_scb *scb =
|
||||
+ (struct bcm2711_dma40_scb *)control_block;
|
||||
+
|
||||
+ scb->len = cb_len;
|
||||
+ /* add extrainfo bits to ti */
|
||||
+ scb->ti |= to_bcm2711_ti(finalextrainfo);
|
||||
@@ -522,7 +519,7 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
}
|
||||
|
||||
static inline size_t bcm2835_dma_count_frames_for_sg(
|
||||
@@ -280,7 +476,7 @@ static inline size_t bcm2835_dma_count_frames_for_sg(
|
||||
@@ -280,7 +476,7 @@ static inline size_t bcm2835_dma_count_f
|
||||
/**
|
||||
* bcm2835_dma_create_cb_chain - create a control block and fills data in
|
||||
*
|
||||
@@ -531,7 +528,7 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
* @direction: the direction in which we transfer
|
||||
* @cyclic: it is a cyclic transfer
|
||||
* @info: the default info bits to apply per controlblock
|
||||
@@ -298,12 +494,11 @@ static inline size_t bcm2835_dma_count_frames_for_sg(
|
||||
@@ -298,12 +494,11 @@ static inline size_t bcm2835_dma_count_f
|
||||
* @gfp: the GFP flag to use for allocation
|
||||
*/
|
||||
static struct bcm2835_desc *bcm2835_dma_create_cb_chain(
|
||||
@@ -545,7 +542,7 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
size_t len = buf_len, total_len;
|
||||
size_t frame;
|
||||
struct bcm2835_desc *d;
|
||||
@@ -335,11 +530,23 @@ static struct bcm2835_desc *bcm2835_dma_create_cb_chain(
|
||||
@@ -335,11 +530,23 @@ static struct bcm2835_desc *bcm2835_dma_
|
||||
|
||||
/* fill in the control block */
|
||||
control_block = cb_entry->cb;
|
||||
@@ -574,7 +571,7 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
/* set up length in control_block if requested */
|
||||
if (buf_len) {
|
||||
/* calculate length honoring period_length */
|
||||
@@ -349,25 +556,51 @@ static struct bcm2835_desc *bcm2835_dma_create_cb_chain(
|
||||
@@ -349,25 +556,51 @@ static struct bcm2835_desc *bcm2835_dma_
|
||||
cyclic ? finalextrainfo : 0);
|
||||
|
||||
/* calculate new remaining length */
|
||||
@@ -634,7 +631,7 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
|
||||
/* detect a size mismatch */
|
||||
if (buf_len && (d->size != buf_len))
|
||||
@@ -381,13 +614,12 @@ static struct bcm2835_desc *bcm2835_dma_create_cb_chain(
|
||||
@@ -381,13 +614,12 @@ error_cb:
|
||||
}
|
||||
|
||||
static void bcm2835_dma_fill_cb_chain_with_sg(
|
||||
@@ -649,7 +646,7 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
size_t len, max_len;
|
||||
unsigned int i;
|
||||
dma_addr_t addr;
|
||||
@@ -395,14 +627,35 @@ static void bcm2835_dma_fill_cb_chain_with_sg(
|
||||
@@ -395,14 +627,35 @@ static void bcm2835_dma_fill_cb_chain_wi
|
||||
|
||||
max_len = bcm2835_dma_max_frame_length(c);
|
||||
for_each_sg(sgl, sgent, sg_len, i) {
|
||||
@@ -693,7 +690,7 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -410,29 +663,74 @@ static void bcm2835_dma_fill_cb_chain_with_sg(
|
||||
@@ -410,29 +663,74 @@ static void bcm2835_dma_fill_cb_chain_wi
|
||||
static void bcm2835_dma_abort(struct bcm2835_chan *c)
|
||||
{
|
||||
void __iomem *chan_base = c->chan_base;
|
||||
@@ -713,7 +710,9 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
+ */
|
||||
+ if (!readl(chan_base + BCM2711_DMA40_CB))
|
||||
+ return;
|
||||
+
|
||||
|
||||
- /* Write 0 to the active bit - Pause the DMA */
|
||||
- writel(0, chan_base + BCM2835_DMA_CS);
|
||||
+ /* Pause the current DMA */
|
||||
+ writel(readl(chan_base + BCM2711_DMA40_CS) & ~BCM2711_DMA40_ACTIVE,
|
||||
+ chan_base + BCM2711_DMA40_CS);
|
||||
@@ -742,33 +741,32 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
+ */
|
||||
+ if (!readl(chan_base + BCM2835_DMA_ADDR))
|
||||
+ return;
|
||||
+
|
||||
+ /* We need to clear the next DMA block pending */
|
||||
+ writel(0, chan_base + BCM2835_DMA_NEXTCB);
|
||||
|
||||
- /* Write 0 to the active bit - Pause the DMA */
|
||||
- writel(0, chan_base + BCM2835_DMA_CS);
|
||||
+ /* Abort the DMA, which needs to be enabled to complete */
|
||||
+ writel(readl(chan_base + BCM2835_DMA_CS) | BCM2835_DMA_ABORT | BCM2835_DMA_ACTIVE,
|
||||
+ chan_base + BCM2835_DMA_CS);
|
||||
|
||||
- /* Wait for any current AXI transfer to complete */
|
||||
- while ((readl(chan_base + BCM2835_DMA_CS) &
|
||||
- BCM2835_DMA_WAITING_FOR_WRITES) && --timeout)
|
||||
- cpu_relax();
|
||||
+ /* wait for DMA to be aborted */
|
||||
+ while ((readl(chan_base + BCM2835_DMA_CS) & BCM2835_DMA_ABORT) && --timeout)
|
||||
+ cpu_relax();
|
||||
|
||||
-
|
||||
- /* Peripheral might be stuck and fail to signal AXI write responses */
|
||||
- if (!timeout)
|
||||
- dev_err(c->vc.chan.device->dev,
|
||||
- "failed to complete outstanding writes\n");
|
||||
+ /* We need to clear the next DMA block pending */
|
||||
+ writel(0, chan_base + BCM2835_DMA_NEXTCB);
|
||||
|
||||
- writel(BCM2835_DMA_RESET, chan_base + BCM2835_DMA_CS);
|
||||
+ /* Abort the DMA, which needs to be enabled to complete */
|
||||
+ writel(readl(chan_base + BCM2835_DMA_CS) | BCM2835_DMA_ABORT | BCM2835_DMA_ACTIVE,
|
||||
+ chan_base + BCM2835_DMA_CS);
|
||||
+
|
||||
+ /* wait for DMA to be aborted */
|
||||
+ while ((readl(chan_base + BCM2835_DMA_CS) & BCM2835_DMA_ABORT) && --timeout)
|
||||
+ cpu_relax();
|
||||
+
|
||||
+ /* Write 0 to the active bit - Pause the DMA */
|
||||
+ writel(readl(chan_base + BCM2835_DMA_CS) & ~BCM2835_DMA_ACTIVE,
|
||||
+ chan_base + BCM2835_DMA_CS);
|
||||
|
||||
- writel(BCM2835_DMA_RESET, chan_base + BCM2835_DMA_CS);
|
||||
+
|
||||
+ /*
|
||||
+ * Peripheral might be stuck and fail to complete
|
||||
+ * This is expected when dreqs are enabled but not asserted
|
||||
@@ -786,7 +784,7 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
}
|
||||
|
||||
static void bcm2835_dma_start_desc(struct bcm2835_chan *c)
|
||||
@@ -449,8 +747,16 @@ static void bcm2835_dma_start_desc(struct bcm2835_chan *c)
|
||||
@@ -449,8 +747,16 @@ static void bcm2835_dma_start_desc(struc
|
||||
|
||||
c->desc = d = to_bcm2835_dma_desc(&vd->tx);
|
||||
|
||||
@@ -805,7 +803,7 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
}
|
||||
|
||||
static irqreturn_t bcm2835_dma_callback(int irq, void *data)
|
||||
@@ -477,8 +783,13 @@ static irqreturn_t bcm2835_dma_callback(int irq, void *data)
|
||||
@@ -477,8 +783,13 @@ static irqreturn_t bcm2835_dma_callback(
|
||||
* if this IRQ handler is threaded.) If the channel is finished, it
|
||||
* will remain idle despite the ACTIVE flag being set.
|
||||
*/
|
||||
@@ -821,7 +819,7 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
|
||||
d = c->desc;
|
||||
|
||||
@@ -540,20 +851,39 @@ static size_t bcm2835_dma_desc_size_pos(struct bcm2835_desc *d, dma_addr_t addr)
|
||||
@@ -540,20 +851,39 @@ static size_t bcm2835_dma_desc_size_pos(
|
||||
unsigned int i;
|
||||
size_t size;
|
||||
|
||||
@@ -844,7 +842,11 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
+ dma = control_block->dst;
|
||||
+ else
|
||||
+ dma = control_block->src;
|
||||
+
|
||||
|
||||
- if (size)
|
||||
- size += this_size;
|
||||
- else if (addr >= dma && addr < dma + this_size)
|
||||
- size += dma + this_size - addr;
|
||||
+ if (size)
|
||||
+ size += this_size;
|
||||
+ else if (addr >= dma && addr < dma + this_size)
|
||||
@@ -855,11 +857,7 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
+ struct bcm2835_dma_cb *control_block = d->cb_list[i].cb;
|
||||
+ size_t this_size = control_block->length;
|
||||
+ dma_addr_t dma;
|
||||
|
||||
- if (size)
|
||||
- size += this_size;
|
||||
- else if (addr >= dma && addr < dma + this_size)
|
||||
- size += dma + this_size - addr;
|
||||
+
|
||||
+ if (d->dir == DMA_DEV_TO_MEM)
|
||||
+ dma = control_block->dst;
|
||||
+ else
|
||||
@@ -873,7 +871,7 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
}
|
||||
|
||||
return size;
|
||||
@@ -580,12 +910,25 @@ static enum dma_status bcm2835_dma_tx_status(struct dma_chan *chan,
|
||||
@@ -580,12 +910,25 @@ static enum dma_status bcm2835_dma_tx_st
|
||||
struct bcm2835_desc *d = c->desc;
|
||||
dma_addr_t pos;
|
||||
|
||||
@@ -902,7 +900,7 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
|
||||
txstate->residue = bcm2835_dma_desc_size_pos(d, pos);
|
||||
} else {
|
||||
@@ -615,8 +958,10 @@ static struct dma_async_tx_descriptor *bcm2835_dma_prep_dma_memcpy(
|
||||
@@ -615,8 +958,10 @@ static struct dma_async_tx_descriptor *b
|
||||
{
|
||||
struct bcm2835_chan *c = to_bcm2835_dma_chan(chan);
|
||||
struct bcm2835_desc *d;
|
||||
@@ -915,7 +913,7 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
size_t max_len = bcm2835_dma_max_frame_length(c);
|
||||
size_t frames;
|
||||
|
||||
@@ -628,7 +973,7 @@ static struct dma_async_tx_descriptor *bcm2835_dma_prep_dma_memcpy(
|
||||
@@ -628,7 +973,7 @@ static struct dma_async_tx_descriptor *b
|
||||
frames = bcm2835_dma_frames_for_length(len, max_len);
|
||||
|
||||
/* allocate the CB chain - this also fills in the pointers */
|
||||
@@ -924,7 +922,7 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
info, extra, frames,
|
||||
src, dst, len, 0, GFP_KERNEL);
|
||||
if (!d)
|
||||
@@ -646,7 +991,8 @@ static struct dma_async_tx_descriptor *bcm2835_dma_prep_slave_sg(
|
||||
@@ -646,7 +991,8 @@ static struct dma_async_tx_descriptor *b
|
||||
struct bcm2835_chan *c = to_bcm2835_dma_chan(chan);
|
||||
struct bcm2835_desc *d;
|
||||
dma_addr_t src = 0, dst = 0;
|
||||
@@ -934,7 +932,7 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
u32 extra = BCM2835_DMA_INT_EN;
|
||||
size_t frames;
|
||||
|
||||
@@ -662,12 +1008,14 @@ static struct dma_async_tx_descriptor *bcm2835_dma_prep_slave_sg(
|
||||
@@ -662,12 +1008,14 @@ static struct dma_async_tx_descriptor *b
|
||||
if (direction == DMA_DEV_TO_MEM) {
|
||||
if (c->cfg.src_addr_width != DMA_SLAVE_BUSWIDTH_4_BYTES)
|
||||
return NULL;
|
||||
@@ -951,7 +949,7 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
info |= BCM2835_DMA_D_DREQ | BCM2835_DMA_S_INC;
|
||||
}
|
||||
|
||||
@@ -675,7 +1023,7 @@ static struct dma_async_tx_descriptor *bcm2835_dma_prep_slave_sg(
|
||||
@@ -675,7 +1023,7 @@ static struct dma_async_tx_descriptor *b
|
||||
frames = bcm2835_dma_count_frames_for_sg(c, sgl, sg_len);
|
||||
|
||||
/* allocate the CB chain */
|
||||
@@ -960,7 +958,7 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
info, extra,
|
||||
frames, src, dst, 0, 0,
|
||||
GFP_NOWAIT);
|
||||
@@ -683,7 +1031,7 @@ static struct dma_async_tx_descriptor *bcm2835_dma_prep_slave_sg(
|
||||
@@ -683,7 +1031,7 @@ static struct dma_async_tx_descriptor *b
|
||||
return NULL;
|
||||
|
||||
/* fill in frames with scatterlist pointers */
|
||||
@@ -969,7 +967,7 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
sgl, sg_len);
|
||||
|
||||
return vchan_tx_prep(&c->vc, &d->vd, flags);
|
||||
@@ -698,7 +1046,8 @@ static struct dma_async_tx_descriptor *bcm2835_dma_prep_dma_cyclic(
|
||||
@@ -698,7 +1046,8 @@ static struct dma_async_tx_descriptor *b
|
||||
struct bcm2835_chan *c = to_bcm2835_dma_chan(chan);
|
||||
struct bcm2835_desc *d;
|
||||
dma_addr_t src, dst;
|
||||
@@ -979,7 +977,7 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
u32 extra = 0;
|
||||
size_t max_len = bcm2835_dma_max_frame_length(c);
|
||||
size_t frames;
|
||||
@@ -736,13 +1085,15 @@ static struct dma_async_tx_descriptor *bcm2835_dma_prep_dma_cyclic(
|
||||
@@ -736,13 +1085,15 @@ static struct dma_async_tx_descriptor *b
|
||||
if (direction == DMA_DEV_TO_MEM) {
|
||||
if (c->cfg.src_addr_width != DMA_SLAVE_BUSWIDTH_4_BYTES)
|
||||
return NULL;
|
||||
@@ -997,7 +995,7 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
src = buf_addr;
|
||||
info |= BCM2835_DMA_D_DREQ | BCM2835_DMA_S_INC;
|
||||
|
||||
@@ -762,7 +1113,7 @@ static struct dma_async_tx_descriptor *bcm2835_dma_prep_dma_cyclic(
|
||||
@@ -762,7 +1113,7 @@ static struct dma_async_tx_descriptor *b
|
||||
* note that we need to use GFP_NOWAIT, as the ALSA i2s dmaengine
|
||||
* implementation calls prep_dma_cyclic with interrupts disabled.
|
||||
*/
|
||||
@@ -1006,7 +1004,7 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
info, extra,
|
||||
frames, src, dst, buf_len,
|
||||
period_len, GFP_NOWAIT);
|
||||
@@ -770,7 +1121,12 @@ static struct dma_async_tx_descriptor *bcm2835_dma_prep_dma_cyclic(
|
||||
@@ -770,7 +1121,12 @@ static struct dma_async_tx_descriptor *b
|
||||
return NULL;
|
||||
|
||||
/* wrap around into a loop */
|
||||
@@ -1020,7 +1018,7 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
|
||||
return vchan_tx_prep(&c->vc, &d->vd, flags);
|
||||
}
|
||||
@@ -831,9 +1187,11 @@ static int bcm2835_dma_chan_init(struct bcm2835_dmadev *d, int chan_id,
|
||||
@@ -831,9 +1187,11 @@ static int bcm2835_dma_chan_init(struct
|
||||
c->irq_number = irq;
|
||||
c->irq_flags = irq_flags;
|
||||
|
||||
@@ -1035,7 +1033,7 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
c->is_lite_channel = true;
|
||||
|
||||
return 0;
|
||||
@@ -854,7 +1212,8 @@ static void bcm2835_dma_free(struct bcm2835_dmadev *od)
|
||||
@@ -854,7 +1212,8 @@ static void bcm2835_dma_free(struct bcm2
|
||||
}
|
||||
|
||||
static const struct of_device_id bcm2835_dma_of_match[] = {
|
||||
@@ -1045,7 +1043,7 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
{},
|
||||
};
|
||||
MODULE_DEVICE_TABLE(of, bcm2835_dma_of_match);
|
||||
@@ -898,7 +1257,10 @@ static const struct dev_pm_ops bcm2835_dma_pm_ops = {
|
||||
@@ -898,7 +1257,10 @@ static const struct dev_pm_ops bcm2835_d
|
||||
|
||||
static int bcm2835_dma_probe(struct platform_device *pdev)
|
||||
{
|
||||
@@ -1056,7 +1054,7 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
void __iomem *base;
|
||||
int rc;
|
||||
int i, j;
|
||||
@@ -906,11 +1268,20 @@ static int bcm2835_dma_probe(struct platform_device *pdev)
|
||||
@@ -906,11 +1268,20 @@ static int bcm2835_dma_probe(struct plat
|
||||
int irq_flags;
|
||||
uint32_t chans_available;
|
||||
char chan_name[BCM2835_DMA_CHAN_NAME_SIZE];
|
||||
@@ -1078,7 +1076,7 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
if (rc) {
|
||||
dev_err(&pdev->dev, "Unable to set DMA mask\n");
|
||||
return rc;
|
||||
@@ -922,10 +1293,17 @@ static int bcm2835_dma_probe(struct platform_device *pdev)
|
||||
@@ -922,10 +1293,17 @@ static int bcm2835_dma_probe(struct plat
|
||||
|
||||
dma_set_max_seg_size(&pdev->dev, 0x3FFFFFFF);
|
||||
|
||||
@@ -1097,7 +1095,7 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
od->base = base;
|
||||
|
||||
dma_cap_set(DMA_SLAVE, od->ddev.cap_mask);
|
||||
@@ -961,6 +1339,14 @@ static int bcm2835_dma_probe(struct platform_device *pdev)
|
||||
@@ -961,6 +1339,14 @@ static int bcm2835_dma_probe(struct plat
|
||||
return -ENOMEM;
|
||||
}
|
||||
|
||||
@@ -1112,7 +1110,7 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
/* Request DMA channel mask from device tree */
|
||||
if (of_property_read_u32(pdev->dev.of_node,
|
||||
"brcm,dma-channel-mask",
|
||||
@@ -970,8 +1356,36 @@ static int bcm2835_dma_probe(struct platform_device *pdev)
|
||||
@@ -970,8 +1356,36 @@ static int bcm2835_dma_probe(struct plat
|
||||
goto err_no_dma;
|
||||
}
|
||||
|
||||
@@ -1150,7 +1148,7 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
/* skip masked out channels */
|
||||
if (!(chans_available & (1 << i))) {
|
||||
irq[i] = -1;
|
||||
@@ -994,13 +1408,17 @@ static int bcm2835_dma_probe(struct platform_device *pdev)
|
||||
@@ -994,13 +1408,17 @@ static int bcm2835_dma_probe(struct plat
|
||||
irq[i] = platform_get_irq(pdev, i < 11 ? i : 11);
|
||||
}
|
||||
|
||||
@@ -1169,7 +1167,7 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
irq_flags = 0;
|
||||
for (j = 0; j <= BCM2835_DMA_MAX_DMA_CHAN_SUPPORTED; j++)
|
||||
if ((i != j) && (irq[j] == irq[i])) {
|
||||
@@ -1012,9 +1430,10 @@ static int bcm2835_dma_probe(struct platform_device *pdev)
|
||||
@@ -1012,9 +1430,10 @@ static int bcm2835_dma_probe(struct plat
|
||||
rc = bcm2835_dma_chan_init(od, i, irq[i], irq_flags);
|
||||
if (rc)
|
||||
goto err_no_dma;
|
||||
@@ -1181,7 +1179,7 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
|
||||
/* Device-tree DMA controller registration */
|
||||
rc = of_dma_controller_register(pdev->dev.of_node,
|
||||
@@ -1044,7 +1463,15 @@ static void bcm2835_dma_remove(struct platform_device *pdev)
|
||||
@@ -1044,7 +1463,15 @@ static void bcm2835_dma_remove(struct pl
|
||||
{
|
||||
struct bcm2835_dmadev *od = platform_get_drvdata(pdev);
|
||||
|
||||
@@ -1197,7 +1195,7 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
bcm2835_dma_free(od);
|
||||
}
|
||||
|
||||
@@ -1058,7 +1485,22 @@ static struct platform_driver bcm2835_dma_driver = {
|
||||
@@ -1058,7 +1485,22 @@ static struct platform_driver bcm2835_dm
|
||||
},
|
||||
};
|
||||
|
||||
@@ -1221,6 +1219,3 @@ index 0117bb2e8591..dcc77ed986bb 100644
|
||||
|
||||
MODULE_ALIAS("platform:bcm2835-dma");
|
||||
MODULE_DESCRIPTION("BCM2835 DMA engine driver");
|
||||
--
|
||||
2.54.0
|
||||
|
||||
@@ -11,8 +11,6 @@ See: https://github.com/raspberrypi/linux/pull/1510
|
||||
drivers/rtc/rtc-pcf2123.c | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/drivers/rtc/rtc-pcf2123.c b/drivers/rtc/rtc-pcf2123.c
|
||||
index e714661e61a9..89cda4dea7f8 100644
|
||||
--- a/drivers/rtc/rtc-pcf2123.c
|
||||
+++ b/drivers/rtc/rtc-pcf2123.c
|
||||
@@ -479,3 +479,4 @@ module_spi_driver(pcf2123_driver);
|
||||
@@ -20,6 +18,3 @@ index e714661e61a9..89cda4dea7f8 100644
|
||||
MODULE_DESCRIPTION("NXP PCF2123 RTC driver");
|
||||
MODULE_LICENSE("GPL");
|
||||
+MODULE_ALIAS("spi:rtc-pcf2123");
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+3
-8
@@ -19,8 +19,6 @@ Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
|
||||
drivers/watchdog/bcm2835_wdt.c | 49 +++++++++++++++++++---------------
|
||||
1 file changed, 27 insertions(+), 22 deletions(-)
|
||||
|
||||
diff --git a/drivers/watchdog/bcm2835_wdt.c b/drivers/watchdog/bcm2835_wdt.c
|
||||
index 9fcfee63905b..b2960f67d8a8 100644
|
||||
--- a/drivers/watchdog/bcm2835_wdt.c
|
||||
+++ b/drivers/watchdog/bcm2835_wdt.c
|
||||
@@ -32,13 +32,7 @@
|
||||
@@ -38,7 +36,7 @@ index 9fcfee63905b..b2960f67d8a8 100644
|
||||
|
||||
#define SECS_TO_WDOG_TICKS(x) ((x) << 16)
|
||||
#define WDOG_TICKS_TO_SECS(x) ((x) >> 16)
|
||||
@@ -98,9 +92,24 @@ static unsigned int bcm2835_wdt_get_timeleft(struct watchdog_device *wdog)
|
||||
@@ -98,9 +92,24 @@ static unsigned int bcm2835_wdt_get_time
|
||||
return WDOG_TICKS_TO_SECS(ret & PM_WDOG_TIME_SET);
|
||||
}
|
||||
|
||||
@@ -65,7 +63,7 @@ index 9fcfee63905b..b2960f67d8a8 100644
|
||||
|
||||
/* use a timeout of 10 ticks (~150us) */
|
||||
writel_relaxed(10 | PM_PASSWORD, wdt->base + PM_WDOG);
|
||||
@@ -118,7 +127,13 @@ static int bcm2835_restart(struct watchdog_device *wdog,
|
||||
@@ -118,7 +127,13 @@ static int bcm2835_restart(struct watchd
|
||||
{
|
||||
struct bcm2835_wdt *wdt = watchdog_get_drvdata(wdog);
|
||||
|
||||
@@ -80,7 +78,7 @@ index 9fcfee63905b..b2960f67d8a8 100644
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -153,19 +168,9 @@ static struct watchdog_device bcm2835_wdt_wdd = {
|
||||
@@ -153,19 +168,9 @@ static struct watchdog_device bcm2835_wd
|
||||
static void bcm2835_power_off(void)
|
||||
{
|
||||
struct bcm2835_wdt *wdt = bcm2835_power_off_wdt;
|
||||
@@ -102,6 +100,3 @@ index 9fcfee63905b..b2960f67d8a8 100644
|
||||
}
|
||||
|
||||
static int bcm2835_wdt_probe(struct platform_device *pdev)
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+1
-8
@@ -21,8 +21,6 @@ Signed-off-by: Dom Cobley <popcornmix@gmail.com>
|
||||
arch/arm64/kernel/process.c | 4 +---
|
||||
2 files changed, 2 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/arch/arm/kernel/reboot.c b/arch/arm/kernel/reboot.c
|
||||
index 3f0d5c3dae11..cfdbcc9826c0 100644
|
||||
--- a/arch/arm/kernel/reboot.c
|
||||
+++ b/arch/arm/kernel/reboot.c
|
||||
@@ -102,9 +102,7 @@ void machine_shutdown(void)
|
||||
@@ -36,11 +34,9 @@ index 3f0d5c3dae11..cfdbcc9826c0 100644
|
||||
}
|
||||
|
||||
/*
|
||||
diff --git a/arch/arm64/kernel/process.c b/arch/arm64/kernel/process.c
|
||||
index 489554931231..811f9063ab19 100644
|
||||
--- a/arch/arm64/kernel/process.c
|
||||
+++ b/arch/arm64/kernel/process.c
|
||||
@@ -98,9 +98,7 @@ void machine_shutdown(void)
|
||||
@@ -99,9 +99,7 @@ void machine_shutdown(void)
|
||||
*/
|
||||
void machine_halt(void)
|
||||
{
|
||||
@@ -51,6 +47,3 @@ index 489554931231..811f9063ab19 100644
|
||||
}
|
||||
|
||||
/*
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+1
-6
@@ -8,11 +8,9 @@ Avoids the 0x40000 cycles of warmup again if firmware has already used it
|
||||
drivers/char/hw_random/bcm2835-rng.c | 6 ++++--
|
||||
1 file changed, 4 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/drivers/char/hw_random/bcm2835-rng.c b/drivers/char/hw_random/bcm2835-rng.c
|
||||
index aa2b135e3ee2..d74b2c593033 100644
|
||||
--- a/drivers/char/hw_random/bcm2835-rng.c
|
||||
+++ b/drivers/char/hw_random/bcm2835-rng.c
|
||||
@@ -107,8 +107,10 @@ static int bcm2835_rng_init(struct hwrng *rng)
|
||||
@@ -107,8 +107,10 @@ static int bcm2835_rng_init(struct hwrng
|
||||
}
|
||||
|
||||
/* set warm-up count & enable */
|
||||
@@ -25,6 +23,3 @@ index aa2b135e3ee2..d74b2c593033 100644
|
||||
|
||||
return ret;
|
||||
}
|
||||
--
|
||||
2.54.0
|
||||
|
||||
@@ -59,11 +59,9 @@ Signed-off-by: Christopher Alexander Tobias Schulze <cat.schulze@alice-dsl.net>
|
||||
arch/arm/vfp/vfpmodule.c | 25 +++++++++++++++++++------
|
||||
1 file changed, 19 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/arch/arm/vfp/vfpmodule.c b/arch/arm/vfp/vfpmodule.c
|
||||
index e559ad3cd148..4d26e72b009e 100644
|
||||
--- a/arch/arm/vfp/vfpmodule.c
|
||||
+++ b/arch/arm/vfp/vfpmodule.c
|
||||
@@ -204,8 +204,11 @@ static int vfp_notifier(struct notifier_block *self, unsigned long cmd, void *v)
|
||||
@@ -204,8 +204,11 @@ static int vfp_notifier(struct notifier_
|
||||
* case the thread migrates to a different CPU. The
|
||||
* restoring is done lazily.
|
||||
*/
|
||||
@@ -94,7 +92,7 @@ index e559ad3cd148..4d26e72b009e 100644
|
||||
vfp_save_state(vfp_current_hw_state[ti->cpu], fpexc);
|
||||
fmxr(FPEXC, fpexc);
|
||||
#endif
|
||||
@@ -554,7 +560,8 @@ void vfp_sync_hwstate(struct thread_info *thread)
|
||||
@@ -554,7 +560,8 @@ void vfp_sync_hwstate(struct thread_info
|
||||
/*
|
||||
* Save the last VFP state on this CPU.
|
||||
*/
|
||||
@@ -104,7 +102,7 @@ index e559ad3cd148..4d26e72b009e 100644
|
||||
vfp_save_state(&thread->vfpstate, fpexc | FPEXC_EN);
|
||||
fmxr(FPEXC, fpexc);
|
||||
}
|
||||
@@ -620,6 +627,7 @@ int vfp_restore_user_hwstate(struct user_vfp *ufp, struct user_vfp_exc *ufp_exc)
|
||||
@@ -620,6 +627,7 @@ int vfp_restore_user_hwstate(struct user
|
||||
struct thread_info *thread = current_thread_info();
|
||||
struct vfp_hard_struct *hwstate = &thread->vfpstate.hard;
|
||||
unsigned long fpexc;
|
||||
@@ -112,7 +110,7 @@ index e559ad3cd148..4d26e72b009e 100644
|
||||
|
||||
/* Disable VFP to avoid corrupting the new thread state. */
|
||||
vfp_flush_hwstate(thread);
|
||||
@@ -642,8 +650,12 @@ int vfp_restore_user_hwstate(struct user_vfp *ufp, struct user_vfp_exc *ufp_exc)
|
||||
@@ -642,8 +650,12 @@ int vfp_restore_user_hwstate(struct user
|
||||
/* Ensure the VFP is enabled. */
|
||||
fpexc |= FPEXC_EN;
|
||||
|
||||
@@ -137,6 +135,3 @@ index e559ad3cd148..4d26e72b009e 100644
|
||||
|
||||
/*
|
||||
* Save the userland NEON/VFP state. Under UP,
|
||||
--
|
||||
2.54.0
|
||||
|
||||
@@ -35,8 +35,6 @@ Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
|
||||
drivers/i2c/busses/i2c-bcm2835.c | 99 +++++++++++++++++++++++++++++++-
|
||||
1 file changed, 98 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/i2c/busses/i2c-bcm2835.c b/drivers/i2c/busses/i2c-bcm2835.c
|
||||
index 8554e790f8e3..e56349228c14 100644
|
||||
--- a/drivers/i2c/busses/i2c-bcm2835.c
|
||||
+++ b/drivers/i2c/busses/i2c-bcm2835.c
|
||||
@@ -56,6 +56,18 @@
|
||||
@@ -137,7 +135,7 @@ index 8554e790f8e3..e56349228c14 100644
|
||||
static inline void bcm2835_i2c_writel(struct bcm2835_i2c_dev *i2c_dev,
|
||||
u32 reg, u32 val)
|
||||
{
|
||||
@@ -257,6 +339,7 @@ static void bcm2835_i2c_start_transfer(struct bcm2835_i2c_dev *i2c_dev)
|
||||
@@ -257,6 +339,7 @@ static void bcm2835_i2c_start_transfer(s
|
||||
bcm2835_i2c_writel(i2c_dev, BCM2835_I2C_A, msg->addr);
|
||||
bcm2835_i2c_writel(i2c_dev, BCM2835_I2C_DLEN, msg->len);
|
||||
bcm2835_i2c_writel(i2c_dev, BCM2835_I2C_C, c);
|
||||
@@ -145,7 +143,7 @@ index 8554e790f8e3..e56349228c14 100644
|
||||
}
|
||||
|
||||
static void bcm2835_i2c_finish_transfer(struct bcm2835_i2c_dev *i2c_dev)
|
||||
@@ -283,6 +366,7 @@ static irqreturn_t bcm2835_i2c_isr(int this_irq, void *data)
|
||||
@@ -283,6 +366,7 @@ static irqreturn_t bcm2835_i2c_isr(int t
|
||||
u32 val, err;
|
||||
|
||||
val = bcm2835_i2c_readl(i2c_dev, BCM2835_I2C_S);
|
||||
@@ -153,7 +151,7 @@ index 8554e790f8e3..e56349228c14 100644
|
||||
|
||||
err = val & (BCM2835_I2C_S_CLKT | BCM2835_I2C_S_ERR);
|
||||
if (err) {
|
||||
@@ -349,6 +433,13 @@ static int bcm2835_i2c_xfer(struct i2c_adapter *adap, struct i2c_msg msgs[],
|
||||
@@ -349,6 +433,13 @@ static int bcm2835_i2c_xfer(struct i2c_a
|
||||
unsigned long time_left;
|
||||
int i;
|
||||
|
||||
@@ -167,7 +165,7 @@ index 8554e790f8e3..e56349228c14 100644
|
||||
for (i = 0; i < (num - 1); i++)
|
||||
if (msgs[i].flags & I2C_M_RD) {
|
||||
dev_warn_once(i2c_dev->dev,
|
||||
@@ -367,6 +458,10 @@ static int bcm2835_i2c_xfer(struct i2c_adapter *adap, struct i2c_msg msgs[],
|
||||
@@ -367,6 +458,10 @@ static int bcm2835_i2c_xfer(struct i2c_a
|
||||
|
||||
bcm2835_i2c_finish_transfer(i2c_dev);
|
||||
|
||||
@@ -178,7 +176,7 @@ index 8554e790f8e3..e56349228c14 100644
|
||||
if (!time_left) {
|
||||
bcm2835_i2c_writel(i2c_dev, BCM2835_I2C_C,
|
||||
BCM2835_I2C_C_CLEAR);
|
||||
@@ -376,7 +471,9 @@ static int bcm2835_i2c_xfer(struct i2c_adapter *adap, struct i2c_msg msgs[],
|
||||
@@ -376,7 +471,9 @@ static int bcm2835_i2c_xfer(struct i2c_a
|
||||
if (!i2c_dev->msg_err)
|
||||
return num;
|
||||
|
||||
@@ -189,6 +187,3 @@ index 8554e790f8e3..e56349228c14 100644
|
||||
|
||||
if (i2c_dev->msg_err & BCM2835_I2C_S_ERR)
|
||||
return -EREMOTEIO;
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+3
-10
@@ -20,8 +20,6 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
||||
drivers/irqchip/irq-bcm2836.c | 5 +++++
|
||||
2 files changed, 17 insertions(+), 20 deletions(-)
|
||||
|
||||
diff --git a/drivers/irqchip/irq-bcm2835.c b/drivers/irqchip/irq-bcm2835.c
|
||||
index 3bfb4a5b23c2..9b60e4223399 100644
|
||||
--- a/drivers/irqchip/irq-bcm2835.c
|
||||
+++ b/drivers/irqchip/irq-bcm2835.c
|
||||
@@ -41,8 +41,6 @@
|
||||
@@ -42,7 +40,7 @@ index 3bfb4a5b23c2..9b60e4223399 100644
|
||||
};
|
||||
|
||||
static struct armctrl_ic intc __read_mostly;
|
||||
@@ -129,24 +127,20 @@ static void armctrl_unmask_irq(struct irq_data *d)
|
||||
@@ -129,24 +127,20 @@ static void armctrl_unmask_irq(struct ir
|
||||
if (d->hwirq >= NUMBER_IRQS) {
|
||||
if (num_online_cpus() > 1) {
|
||||
unsigned int data;
|
||||
@@ -74,7 +72,7 @@ index 3bfb4a5b23c2..9b60e4223399 100644
|
||||
}
|
||||
|
||||
writel_relaxed(REG_FIQ_ENABLE | hwirq_to_fiq(d->hwirq),
|
||||
@@ -248,12 +242,10 @@ static int __init armctrl_of_init(struct device_node *node,
|
||||
@@ -248,12 +242,10 @@ static int __init armctrl_of_init(struct
|
||||
}
|
||||
|
||||
if (is_2836) {
|
||||
@@ -91,8 +89,6 @@ index 3bfb4a5b23c2..9b60e4223399 100644
|
||||
}
|
||||
|
||||
/* Make a duplicate irq range which is used to enable FIQ */
|
||||
diff --git a/drivers/irqchip/irq-bcm2836.c b/drivers/irqchip/irq-bcm2836.c
|
||||
index 067027467113..22519f3f4f66 100644
|
||||
--- a/drivers/irqchip/irq-bcm2836.c
|
||||
+++ b/drivers/irqchip/irq-bcm2836.c
|
||||
@@ -22,6 +22,9 @@ struct bcm2836_arm_irqchip_intc {
|
||||
@@ -105,7 +101,7 @@ index 067027467113..22519f3f4f66 100644
|
||||
static void bcm2836_arm_irqchip_mask_per_cpu_irq(unsigned int reg_offset,
|
||||
unsigned int bit,
|
||||
int cpu)
|
||||
@@ -323,6 +326,8 @@ static int __init bcm2836_arm_irqchip_l1_intc_of_init(struct device_node *node,
|
||||
@@ -323,6 +326,8 @@ static int __init bcm2836_arm_irqchip_l1
|
||||
panic("%pOF: unable to map local interrupt registers\n", node);
|
||||
}
|
||||
|
||||
@@ -114,6 +110,3 @@ index 067027467113..22519f3f4f66 100644
|
||||
bcm2835_init_local_timer_frequency();
|
||||
|
||||
intc.domain = irq_domain_create_linear(of_fwnode_handle(node), LAST_IRQ + 1,
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+1
-6
@@ -15,11 +15,9 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
||||
drivers/tty/serial/amba-pl011.c | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/drivers/tty/serial/amba-pl011.c b/drivers/tty/serial/amba-pl011.c
|
||||
index 7f17d288c807..f9bbfe065ba9 100644
|
||||
--- a/drivers/tty/serial/amba-pl011.c
|
||||
+++ b/drivers/tty/serial/amba-pl011.c
|
||||
@@ -1495,6 +1495,7 @@ static bool pl011_tx_char(struct uart_amba_port *uap, unsigned char c,
|
||||
@@ -1495,6 +1495,7 @@ static bool pl011_tx_char(struct uart_am
|
||||
return false; /* unable to transmit character */
|
||||
|
||||
pl011_write(c, uap, REG_DR);
|
||||
@@ -27,6 +25,3 @@ index 7f17d288c807..f9bbfe065ba9 100644
|
||||
uap->port.icount.tx++;
|
||||
|
||||
return true;
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+1
-8
@@ -19,8 +19,6 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
||||
drivers/tty/serial/amba-pl011.c | 5 +++++
|
||||
2 files changed, 11 insertions(+)
|
||||
|
||||
diff --git a/Documentation/devicetree/bindings/serial/pl011.yaml b/Documentation/devicetree/bindings/serial/pl011.yaml
|
||||
index 3fcf2d042372..e7472ef4e193 100644
|
||||
--- a/Documentation/devicetree/bindings/serial/pl011.yaml
|
||||
+++ b/Documentation/devicetree/bindings/serial/pl011.yaml
|
||||
@@ -104,6 +104,12 @@ properties:
|
||||
@@ -36,11 +34,9 @@ index 3fcf2d042372..e7472ef4e193 100644
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
diff --git a/drivers/tty/serial/amba-pl011.c b/drivers/tty/serial/amba-pl011.c
|
||||
index f9bbfe065ba9..898504443644 100644
|
||||
--- a/drivers/tty/serial/amba-pl011.c
|
||||
+++ b/drivers/tty/serial/amba-pl011.c
|
||||
@@ -2895,6 +2895,11 @@ static int pl011_probe(struct amba_device *dev, const struct amba_id *id)
|
||||
@@ -2895,6 +2895,11 @@ static int pl011_probe(struct amba_devic
|
||||
if (IS_ERR(uap->clk))
|
||||
return PTR_ERR(uap->clk);
|
||||
|
||||
@@ -52,6 +48,3 @@ index f9bbfe065ba9..898504443644 100644
|
||||
uap->reg_offset = vendor->reg_offset;
|
||||
uap->vendor = vendor;
|
||||
uap->fifosize = vendor->get_fifosize(dev);
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+1
-6
@@ -27,11 +27,9 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
||||
drivers/tty/serial/amba-pl011.c | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/drivers/tty/serial/amba-pl011.c b/drivers/tty/serial/amba-pl011.c
|
||||
index 898504443644..2273ffccd2c9 100644
|
||||
--- a/drivers/tty/serial/amba-pl011.c
|
||||
+++ b/drivers/tty/serial/amba-pl011.c
|
||||
@@ -1528,6 +1528,10 @@ static bool pl011_tx_chars(struct uart_amba_port *uap, bool from_irq)
|
||||
@@ -1528,6 +1528,10 @@ static bool pl011_tx_chars(struct uart_a
|
||||
if (likely(from_irq) && count-- == 0)
|
||||
break;
|
||||
|
||||
@@ -42,6 +40,3 @@ index 898504443644..2273ffccd2c9 100644
|
||||
if (!kfifo_peek(&tport->xmit_fifo, &c))
|
||||
break;
|
||||
|
||||
--
|
||||
2.54.0
|
||||
|
||||
@@ -32,8 +32,6 @@ board_bcm2835: Remove coherent dma pool increase - API has gone
|
||||
drivers/mailbox/bcm2835-mailbox.c | 18 ++++++++++++++++--
|
||||
4 files changed, 35 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/arch/arm/mach-bcm/Kconfig b/arch/arm/mach-bcm/Kconfig
|
||||
index 882a8dc508f2..653a909c5ecd 100644
|
||||
--- a/arch/arm/mach-bcm/Kconfig
|
||||
+++ b/arch/arm/mach-bcm/Kconfig
|
||||
@@ -162,6 +162,7 @@ config ARCH_BCM2835
|
||||
@@ -44,8 +42,6 @@ index 882a8dc508f2..653a909c5ecd 100644
|
||||
help
|
||||
This enables support for the Broadcom BCM2711 and BCM283x SoCs.
|
||||
This SoC is used in the Raspberry Pi and Roku 2 devices.
|
||||
diff --git a/arch/arm/mm/proc-v6.S b/arch/arm/mm/proc-v6.S
|
||||
index 90a01f5950b9..3ff019fb1f43 100644
|
||||
--- a/arch/arm/mm/proc-v6.S
|
||||
+++ b/arch/arm/mm/proc-v6.S
|
||||
@@ -75,10 +75,19 @@ SYM_FUNC_END(cpu_v6_reset)
|
||||
@@ -71,8 +67,6 @@ index 90a01f5950b9..3ff019fb1f43 100644
|
||||
ret lr
|
||||
SYM_FUNC_END(cpu_v6_do_idle)
|
||||
|
||||
diff --git a/drivers/irqchip/irq-bcm2835.c b/drivers/irqchip/irq-bcm2835.c
|
||||
index 9b60e4223399..527cc962d6fd 100644
|
||||
--- a/drivers/irqchip/irq-bcm2835.c
|
||||
+++ b/drivers/irqchip/irq-bcm2835.c
|
||||
@@ -43,7 +43,9 @@
|
||||
@@ -93,7 +87,7 @@ index 9b60e4223399..527cc962d6fd 100644
|
||||
#define FIQ_START (NR_IRQS_BANK0 + MAKE_HWIRQ(NR_BANKS - 1, 0))
|
||||
|
||||
static const int reg_pending[] __initconst = { 0x00, 0x04, 0x08 };
|
||||
@@ -255,10 +258,12 @@ static int __init armctrl_of_init(struct device_node *node,
|
||||
@@ -255,10 +258,12 @@ static int __init armctrl_of_init(struct
|
||||
MAKE_HWIRQ(b, i) + NUMBER_IRQS);
|
||||
BUG_ON(irq <= 0);
|
||||
irq_set_chip(irq, &armctrl_chip);
|
||||
@@ -107,8 +101,6 @@ index 9b60e4223399..527cc962d6fd 100644
|
||||
|
||||
return 0;
|
||||
}
|
||||
diff --git a/drivers/mailbox/bcm2835-mailbox.c b/drivers/mailbox/bcm2835-mailbox.c
|
||||
index ea12fb8d2401..8c54980b4b7e 100644
|
||||
--- a/drivers/mailbox/bcm2835-mailbox.c
|
||||
+++ b/drivers/mailbox/bcm2835-mailbox.c
|
||||
@@ -45,12 +45,15 @@
|
||||
@@ -127,7 +119,7 @@ index ea12fb8d2401..8c54980b4b7e 100644
|
||||
|
||||
struct bcm2835_mbox {
|
||||
void __iomem *regs;
|
||||
@@ -144,7 +147,7 @@ static int bcm2835_mbox_probe(struct platform_device *pdev)
|
||||
@@ -144,7 +147,7 @@ static int bcm2835_mbox_probe(struct pla
|
||||
return -ENOMEM;
|
||||
spin_lock_init(&mbox->lock);
|
||||
|
||||
@@ -136,7 +128,7 @@ index ea12fb8d2401..8c54980b4b7e 100644
|
||||
bcm2835_mbox_irq, IRQF_NO_SUSPEND, dev_name(dev),
|
||||
mbox);
|
||||
if (ret) {
|
||||
@@ -193,7 +196,18 @@ static struct platform_driver bcm2835_mbox_driver = {
|
||||
@@ -193,7 +196,18 @@ static struct platform_driver bcm2835_mb
|
||||
},
|
||||
.probe = bcm2835_mbox_probe,
|
||||
};
|
||||
@@ -156,6 +148,3 @@ index ea12fb8d2401..8c54980b4b7e 100644
|
||||
|
||||
MODULE_AUTHOR("Lubomir Rintel <lkundrak@v3.sk>");
|
||||
MODULE_DESCRIPTION("BCM2835 mailbox IPC driver");
|
||||
--
|
||||
2.54.0
|
||||
|
||||
@@ -1222,11 +1222,9 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
create mode 100644 drivers/usb/host/dwc_otg/test/test_mod_param.pl
|
||||
create mode 100644 drivers/usb/host/dwc_otg/test/test_sysfs.pl
|
||||
|
||||
diff --git a/arch/arm/include/asm/irqflags.h b/arch/arm/include/asm/irqflags.h
|
||||
index aeec7f24eb75..a3b186608c60 100644
|
||||
--- a/arch/arm/include/asm/irqflags.h
|
||||
+++ b/arch/arm/include/asm/irqflags.h
|
||||
@@ -163,13 +163,23 @@ static inline unsigned long arch_local_save_flags(void)
|
||||
@@ -163,13 +163,23 @@ static inline unsigned long arch_local_s
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -1253,8 +1251,6 @@ index aeec7f24eb75..a3b186608c60 100644
|
||||
:
|
||||
: "r" (flags)
|
||||
: "memory", "cc");
|
||||
diff --git a/arch/arm/kernel/fiqasm.S b/arch/arm/kernel/fiqasm.S
|
||||
index 8dd26e1a9bd6..eef484756af2 100644
|
||||
--- a/arch/arm/kernel/fiqasm.S
|
||||
+++ b/arch/arm/kernel/fiqasm.S
|
||||
@@ -47,3 +47,7 @@ ENTRY(__get_fiq_regs)
|
||||
@@ -1265,8 +1261,6 @@ index 8dd26e1a9bd6..eef484756af2 100644
|
||||
+ENTRY(__FIQ_Branch)
|
||||
+ mov pc, r8
|
||||
+ENDPROC(__FIQ_Branch)
|
||||
diff --git a/drivers/usb/Makefile b/drivers/usb/Makefile
|
||||
index 949eca0adebe..80af388baede 100644
|
||||
--- a/drivers/usb/Makefile
|
||||
+++ b/drivers/usb/Makefile
|
||||
@@ -9,6 +9,7 @@ obj-$(CONFIG_USB_COMMON) += common/
|
||||
@@ -1277,11 +1271,9 @@ index 949eca0adebe..80af388baede 100644
|
||||
obj-$(CONFIG_USB_DWC3) += dwc3/
|
||||
obj-$(CONFIG_USB_DWC2) += dwc2/
|
||||
obj-$(CONFIG_USB_ISP1760) += isp1760/
|
||||
diff --git a/drivers/usb/core/generic.c b/drivers/usb/core/generic.c
|
||||
index a48994e11ef3..88723aea8488 100644
|
||||
--- a/drivers/usb/core/generic.c
|
||||
+++ b/drivers/usb/core/generic.c
|
||||
@@ -202,6 +202,7 @@ int usb_choose_configuration(struct usb_device *udev)
|
||||
@@ -202,6 +202,7 @@ int usb_choose_configuration(struct usb_
|
||||
dev_warn(&udev->dev,
|
||||
"no configuration chosen from %d choice%s\n",
|
||||
num_configs, str_plural(num_configs));
|
||||
@@ -1289,11 +1281,9 @@ index a48994e11ef3..88723aea8488 100644
|
||||
}
|
||||
return i;
|
||||
}
|
||||
diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c
|
||||
index 256fe8c86828..49107595caa8 100644
|
||||
--- a/drivers/usb/core/hub.c
|
||||
+++ b/drivers/usb/core/hub.c
|
||||
@@ -5788,7 +5788,7 @@ static void port_event(struct usb_hub *hub, int port1)
|
||||
@@ -5788,7 +5788,7 @@ static void port_event(struct usb_hub *h
|
||||
port_dev->over_current_count++;
|
||||
port_over_current_notify(port_dev);
|
||||
|
||||
@@ -1302,11 +1292,9 @@ index 256fe8c86828..49107595caa8 100644
|
||||
port_dev->over_current_count);
|
||||
usb_clear_port_feature(hdev, port1,
|
||||
USB_PORT_FEAT_C_OVER_CURRENT);
|
||||
diff --git a/drivers/usb/core/message.c b/drivers/usb/core/message.c
|
||||
index 43522f1d6b2b..d25022abdbdc 100644
|
||||
--- a/drivers/usb/core/message.c
|
||||
+++ b/drivers/usb/core/message.c
|
||||
@@ -2238,6 +2238,85 @@ int usb_set_configuration(struct usb_device *dev, int configuration)
|
||||
@@ -2238,6 +2238,85 @@ free_interfaces:
|
||||
if (cp->string == NULL &&
|
||||
!(dev->quirks & USB_QUIRK_CONFIG_INTF_STRINGS))
|
||||
cp->string = usb_cache_string(dev, cp->desc.iConfiguration);
|
||||
@@ -1392,8 +1380,6 @@ index 43522f1d6b2b..d25022abdbdc 100644
|
||||
|
||||
/* Now that the interfaces are installed, re-enable LPM. */
|
||||
usb_unlocked_enable_lpm(dev);
|
||||
diff --git a/drivers/usb/core/otg_productlist.h b/drivers/usb/core/otg_productlist.h
|
||||
index db67df29fb2b..b16e528859a8 100644
|
||||
--- a/drivers/usb/core/otg_productlist.h
|
||||
+++ b/drivers/usb/core/otg_productlist.h
|
||||
@@ -11,33 +11,82 @@
|
||||
@@ -1485,7 +1471,7 @@ index db67df29fb2b..b16e528859a8 100644
|
||||
static int is_targeted(struct usb_device *dev)
|
||||
{
|
||||
struct usb_device_id *id = productlist_table;
|
||||
@@ -87,16 +136,57 @@ static int is_targeted(struct usb_device *dev)
|
||||
@@ -87,16 +136,57 @@ static int is_targeted(struct usb_device
|
||||
continue;
|
||||
|
||||
return 1;
|
||||
@@ -1508,15 +1494,11 @@ index db67df29fb2b..b16e528859a8 100644
|
||||
+ if ((id->match_flags & USB_DEVICE_ID_MATCH_VENDOR) &&
|
||||
+ id->idVendor != le16_to_cpu(dev->descriptor.idVendor))
|
||||
+ continue;
|
||||
|
||||
+
|
||||
+ if ((id->match_flags & USB_DEVICE_ID_MATCH_PRODUCT) &&
|
||||
+ id->idProduct != le16_to_cpu(dev->descriptor.idProduct))
|
||||
+ continue;
|
||||
|
||||
- /* OTG MESSAGE: report errors here, customize to match your product */
|
||||
- dev_err(&dev->dev, "device v%04x p%04x is not supported\n",
|
||||
- le16_to_cpu(dev->descriptor.idVendor),
|
||||
- le16_to_cpu(dev->descriptor.idProduct));
|
||||
+
|
||||
+ /* No need to test id->bcdDevice_lo != 0, since 0 is never
|
||||
+ greater than any unsigned number. */
|
||||
+ if ((id->match_flags & USB_DEVICE_ID_MATCH_DEV_LO) &&
|
||||
@@ -1538,20 +1520,21 @@ index db67df29fb2b..b16e528859a8 100644
|
||||
+ if ((id->match_flags & USB_DEVICE_ID_MATCH_DEV_PROTOCOL) &&
|
||||
+ (id->bDeviceProtocol != dev->descriptor.bDeviceProtocol))
|
||||
+ continue;
|
||||
+
|
||||
|
||||
+ return 1;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
|
||||
- /* OTG MESSAGE: report errors here, customize to match your product */
|
||||
- dev_err(&dev->dev, "device v%04x p%04x is not supported\n",
|
||||
- le16_to_cpu(dev->descriptor.idVendor),
|
||||
- le16_to_cpu(dev->descriptor.idProduct));
|
||||
+ /* add other match criteria here ... */
|
||||
|
||||
+ report_errors(dev);
|
||||
return 0;
|
||||
}
|
||||
|
||||
diff --git a/drivers/usb/gadget/file_storage.c b/drivers/usb/gadget/file_storage.c
|
||||
new file mode 100644
|
||||
index 000000000000..a896d73f7a93
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/gadget/file_storage.c
|
||||
@@ -0,0 +1,3676 @@
|
||||
@@ -5231,8 +5214,6 @@ index 000000000000..a896d73f7a93
|
||||
+ kref_put(&fsg->ref, fsg_release);
|
||||
+}
|
||||
+module_exit(fsg_cleanup);
|
||||
diff --git a/drivers/usb/host/Kconfig b/drivers/usb/host/Kconfig
|
||||
index c4f17ce5c77b..08e80deee437 100644
|
||||
--- a/drivers/usb/host/Kconfig
|
||||
+++ b/drivers/usb/host/Kconfig
|
||||
@@ -687,6 +687,16 @@ config USB_RENESAS_USBHS_HCD
|
||||
@@ -5252,11 +5233,9 @@ index c4f17ce5c77b..08e80deee437 100644
|
||||
config USB_HCD_BCMA
|
||||
tristate "BCMA usb host driver"
|
||||
depends on BCMA
|
||||
diff --git a/drivers/usb/host/Makefile b/drivers/usb/host/Makefile
|
||||
index 4df946c05ba0..ca260ef6df90 100644
|
||||
--- a/drivers/usb/host/Makefile
|
||||
+++ b/drivers/usb/host/Makefile
|
||||
@@ -81,6 +81,7 @@ obj-$(CONFIG_USB_XHCI_TEGRA) += xhci-tegra.o
|
||||
@@ -81,6 +81,7 @@ obj-$(CONFIG_USB_XHCI_TEGRA) += xhci-teg
|
||||
obj-$(CONFIG_USB_SL811_HCD) += sl811-hcd.o
|
||||
obj-$(CONFIG_USB_SL811_CS) += sl811_cs.o
|
||||
obj-$(CONFIG_USB_R8A66597_HCD) += r8a66597-hcd.o
|
||||
@@ -5264,9 +5243,6 @@ index 4df946c05ba0..ca260ef6df90 100644
|
||||
obj-$(CONFIG_USB_FSL_USB2) += fsl-mph-dr-of.o
|
||||
obj-$(CONFIG_USB_EHCI_FSL) += fsl-mph-dr-of.o
|
||||
obj-$(CONFIG_USB_EHCI_FSL) += ehci-fsl.o
|
||||
diff --git a/drivers/usb/host/dwc_common_port/Makefile b/drivers/usb/host/dwc_common_port/Makefile
|
||||
new file mode 100644
|
||||
index 000000000000..f10d466d1aea
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_common_port/Makefile
|
||||
@@ -0,0 +1,58 @@
|
||||
@@ -5328,9 +5304,6 @@ index 000000000000..f10d466d1aea
|
||||
+
|
||||
+clean:
|
||||
+ rm -rf *.o *.ko .*.cmd *.mod.c .*.o.d .*.o.tmp modules.order Module.markers Module.symvers .tmp_versions/
|
||||
diff --git a/drivers/usb/host/dwc_common_port/Makefile.fbsd b/drivers/usb/host/dwc_common_port/Makefile.fbsd
|
||||
new file mode 100644
|
||||
index 000000000000..45db9915b9d3
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_common_port/Makefile.fbsd
|
||||
@@ -0,0 +1,17 @@
|
||||
@@ -5351,9 +5324,6 @@ index 000000000000..45db9915b9d3
|
||||
+ dwc_common_fbsd.c dwc_mem.c
|
||||
+
|
||||
+.include <bsd.kmod.mk>
|
||||
diff --git a/drivers/usb/host/dwc_common_port/Makefile.linux b/drivers/usb/host/dwc_common_port/Makefile.linux
|
||||
new file mode 100644
|
||||
index 000000000000..0cef7b461bd5
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_common_port/Makefile.linux
|
||||
@@ -0,0 +1,49 @@
|
||||
@@ -5406,9 +5376,6 @@ index 000000000000..0cef7b461bd5
|
||||
+
|
||||
+clean:
|
||||
+ rm -rf *.o *.ko .*.cmd *.mod.c .*.o.d .*.o.tmp modules.order Module.markers Module.symvers .tmp_versions/
|
||||
diff --git a/drivers/usb/host/dwc_common_port/changes.txt b/drivers/usb/host/dwc_common_port/changes.txt
|
||||
new file mode 100644
|
||||
index 000000000000..f6839f92c276
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_common_port/changes.txt
|
||||
@@ -0,0 +1,174 @@
|
||||
@@ -5586,9 +5553,6 @@ index 000000000000..f6839f92c276
|
||||
+A DWC_LIBMODULE #define has also been added. If this is not defined, then the
|
||||
+module code in dwc_common_linux.c is not compiled in. This allows linking the
|
||||
+library code directly into a driver module, instead of as a standalone module.
|
||||
diff --git a/drivers/usb/host/dwc_common_port/doc/doxygen.cfg b/drivers/usb/host/dwc_common_port/doc/doxygen.cfg
|
||||
new file mode 100644
|
||||
index 000000000000..89aa887af29d
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_common_port/doc/doxygen.cfg
|
||||
@@ -0,0 +1,270 @@
|
||||
@@ -5862,9 +5826,6 @@ index 000000000000..89aa887af29d
|
||||
+# Configuration::additions related to the search engine
|
||||
+#---------------------------------------------------------------------------
|
||||
+SEARCHENGINE = NO
|
||||
diff --git a/drivers/usb/host/dwc_common_port/dwc_cc.c b/drivers/usb/host/dwc_common_port/dwc_cc.c
|
||||
new file mode 100644
|
||||
index 000000000000..5ec2ae28698c
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_common_port/dwc_cc.c
|
||||
@@ -0,0 +1,532 @@
|
||||
@@ -6400,9 +6361,6 @@ index 000000000000..5ec2ae28698c
|
||||
+}
|
||||
+
|
||||
+#endif /* DWC_CCLIB */
|
||||
diff --git a/drivers/usb/host/dwc_common_port/dwc_cc.h b/drivers/usb/host/dwc_common_port/dwc_cc.h
|
||||
new file mode 100644
|
||||
index 000000000000..f86e6f21792b
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_common_port/dwc_cc.h
|
||||
@@ -0,0 +1,224 @@
|
||||
@@ -6630,9 +6588,6 @@ index 000000000000..f86e6f21792b
|
||||
+#endif
|
||||
+
|
||||
+#endif /* _DWC_CC_H_ */
|
||||
diff --git a/drivers/usb/host/dwc_common_port/dwc_common_fbsd.c b/drivers/usb/host/dwc_common_port/dwc_common_fbsd.c
|
||||
new file mode 100644
|
||||
index 000000000000..6dd04b58f8f6
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_common_port/dwc_common_fbsd.c
|
||||
@@ -0,0 +1,1308 @@
|
||||
@@ -7944,9 +7899,6 @@ index 000000000000..6dd04b58f8f6
|
||||
+{
|
||||
+ return wq->pending;
|
||||
+}
|
||||
diff --git a/drivers/usb/host/dwc_common_port/dwc_common_linux.c b/drivers/usb/host/dwc_common_port/dwc_common_linux.c
|
||||
new file mode 100644
|
||||
index 000000000000..43a2c60c2b5f
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_common_port/dwc_common_linux.c
|
||||
@@ -0,0 +1,1409 @@
|
||||
@@ -9359,9 +9311,6 @@ index 000000000000..43a2c60c2b5f
|
||||
+MODULE_LICENSE ("GPL");
|
||||
+
|
||||
+#endif /* DWC_LIBMODULE */
|
||||
diff --git a/drivers/usb/host/dwc_common_port/dwc_common_nbsd.c b/drivers/usb/host/dwc_common_port/dwc_common_nbsd.c
|
||||
new file mode 100644
|
||||
index 000000000000..49b07e172264
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_common_port/dwc_common_nbsd.c
|
||||
@@ -0,0 +1,1275 @@
|
||||
@@ -10640,9 +10589,6 @@ index 000000000000..49b07e172264
|
||||
+{
|
||||
+ return wq->pending;
|
||||
+}
|
||||
diff --git a/drivers/usb/host/dwc_common_port/dwc_crypto.c b/drivers/usb/host/dwc_common_port/dwc_crypto.c
|
||||
new file mode 100644
|
||||
index 000000000000..3b0353296148
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_common_port/dwc_crypto.c
|
||||
@@ -0,0 +1,308 @@
|
||||
@@ -10954,9 +10900,6 @@ index 000000000000..3b0353296148
|
||||
+}
|
||||
+
|
||||
+#endif /* DWC_CRYPTOLIB */
|
||||
diff --git a/drivers/usb/host/dwc_common_port/dwc_crypto.h b/drivers/usb/host/dwc_common_port/dwc_crypto.h
|
||||
new file mode 100644
|
||||
index 000000000000..26fcddcfe9ba
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_common_port/dwc_crypto.h
|
||||
@@ -0,0 +1,111 @@
|
||||
@@ -11071,9 +11014,6 @@ index 000000000000..26fcddcfe9ba
|
||||
+#endif
|
||||
+
|
||||
+#endif /* _DWC_CRYPTO_H_ */
|
||||
diff --git a/drivers/usb/host/dwc_common_port/dwc_dh.c b/drivers/usb/host/dwc_common_port/dwc_dh.c
|
||||
new file mode 100644
|
||||
index 000000000000..2b429a32aaf0
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_common_port/dwc_dh.c
|
||||
@@ -0,0 +1,291 @@
|
||||
@@ -11368,9 +11308,6 @@ index 000000000000..2b429a32aaf0
|
||||
+#endif /* !CONFIG_MACH_IPMATE */
|
||||
+
|
||||
+#endif /* DWC_CRYPTOLIB */
|
||||
diff --git a/drivers/usb/host/dwc_common_port/dwc_dh.h b/drivers/usb/host/dwc_common_port/dwc_dh.h
|
||||
new file mode 100644
|
||||
index 000000000000..25c1cc0d588a
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_common_port/dwc_dh.h
|
||||
@@ -0,0 +1,106 @@
|
||||
@@ -11480,9 +11417,6 @@ index 000000000000..25c1cc0d588a
|
||||
+#endif
|
||||
+
|
||||
+#endif /* _DWC_DH_H_ */
|
||||
diff --git a/drivers/usb/host/dwc_common_port/dwc_list.h b/drivers/usb/host/dwc_common_port/dwc_list.h
|
||||
new file mode 100644
|
||||
index 000000000000..4ce560df0cae
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_common_port/dwc_list.h
|
||||
@@ -0,0 +1,594 @@
|
||||
@@ -12080,9 +12014,6 @@ index 000000000000..4ce560df0cae
|
||||
+#endif
|
||||
+
|
||||
+#endif /* _DWC_LIST_H_ */
|
||||
diff --git a/drivers/usb/host/dwc_common_port/dwc_mem.c b/drivers/usb/host/dwc_common_port/dwc_mem.c
|
||||
new file mode 100644
|
||||
index 000000000000..ad645ff1ba7e
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_common_port/dwc_mem.c
|
||||
@@ -0,0 +1,245 @@
|
||||
@@ -12331,9 +12262,6 @@ index 000000000000..ad645ff1ba7e
|
||||
+}
|
||||
+
|
||||
+#endif /* DWC_DEBUG_MEMORY */
|
||||
diff --git a/drivers/usb/host/dwc_common_port/dwc_modpow.c b/drivers/usb/host/dwc_common_port/dwc_modpow.c
|
||||
new file mode 100644
|
||||
index 000000000000..20045381208a
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_common_port/dwc_modpow.c
|
||||
@@ -0,0 +1,636 @@
|
||||
@@ -12973,9 +12901,6 @@ index 000000000000..20045381208a
|
||||
+#endif /* CONFIG_MACH_IPMATE */
|
||||
+
|
||||
+#endif /*DWC_CRYPTOLIB */
|
||||
diff --git a/drivers/usb/host/dwc_common_port/dwc_modpow.h b/drivers/usb/host/dwc_common_port/dwc_modpow.h
|
||||
new file mode 100644
|
||||
index 000000000000..64f00c276e71
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_common_port/dwc_modpow.h
|
||||
@@ -0,0 +1,34 @@
|
||||
@@ -13013,9 +12938,6 @@ index 000000000000..64f00c276e71
|
||||
+#endif
|
||||
+
|
||||
+#endif /* _LINUX_BIGNUM_H */
|
||||
diff --git a/drivers/usb/host/dwc_common_port/dwc_notifier.c b/drivers/usb/host/dwc_common_port/dwc_notifier.c
|
||||
new file mode 100644
|
||||
index 000000000000..8b3772afe11d
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_common_port/dwc_notifier.c
|
||||
@@ -0,0 +1,319 @@
|
||||
@@ -13338,9 +13260,6 @@ index 000000000000..8b3772afe11d
|
||||
+}
|
||||
+
|
||||
+#endif /* DWC_NOTIFYLIB */
|
||||
diff --git a/drivers/usb/host/dwc_common_port/dwc_notifier.h b/drivers/usb/host/dwc_common_port/dwc_notifier.h
|
||||
new file mode 100644
|
||||
index 000000000000..4a8cdfe565b1
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_common_port/dwc_notifier.h
|
||||
@@ -0,0 +1,122 @@
|
||||
@@ -13466,9 +13385,6 @@ index 000000000000..4a8cdfe565b1
|
||||
+#endif
|
||||
+
|
||||
+#endif /* __DWC_NOTIFIER_H__ */
|
||||
diff --git a/drivers/usb/host/dwc_common_port/dwc_os.h b/drivers/usb/host/dwc_common_port/dwc_os.h
|
||||
new file mode 100644
|
||||
index 000000000000..7a4052964e95
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_common_port/dwc_os.h
|
||||
@@ -0,0 +1,1275 @@
|
||||
@@ -14747,9 +14663,6 @@ index 000000000000..7a4052964e95
|
||||
+#endif
|
||||
+
|
||||
+#endif /* _DWC_OS_H_ */
|
||||
diff --git a/drivers/usb/host/dwc_common_port/usb.h b/drivers/usb/host/dwc_common_port/usb.h
|
||||
new file mode 100644
|
||||
index 000000000000..b1cedb1876b7
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_common_port/usb.h
|
||||
@@ -0,0 +1,275 @@
|
||||
@@ -15028,9 +14941,6 @@ index 000000000000..b1cedb1876b7
|
||||
+#endif
|
||||
+
|
||||
+#endif /* _USB_H_ */
|
||||
diff --git a/drivers/usb/host/dwc_otg/Makefile b/drivers/usb/host/dwc_otg/Makefile
|
||||
new file mode 100644
|
||||
index 000000000000..8cbe3e684f26
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_otg/Makefile
|
||||
@@ -0,0 +1,86 @@
|
||||
@@ -15120,9 +15030,6 @@ index 000000000000..8cbe3e684f26
|
||||
+ rm -rf *.o *.ko .*cmd *.mod.c .tmp_versions Module.symvers
|
||||
+
|
||||
+endif
|
||||
diff --git a/drivers/usb/host/dwc_otg/doc/doxygen.cfg b/drivers/usb/host/dwc_otg/doc/doxygen.cfg
|
||||
new file mode 100644
|
||||
index 000000000000..712b057ef7c2
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_otg/doc/doxygen.cfg
|
||||
@@ -0,0 +1,224 @@
|
||||
@@ -15350,9 +15257,6 @@ index 000000000000..712b057ef7c2
|
||||
+# Configuration::additions related to the search engine
|
||||
+#---------------------------------------------------------------------------
|
||||
+SEARCHENGINE = NO
|
||||
diff --git a/drivers/usb/host/dwc_otg/dummy_audio.c b/drivers/usb/host/dwc_otg/dummy_audio.c
|
||||
new file mode 100644
|
||||
index 000000000000..7cf69282abce
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_otg/dummy_audio.c
|
||||
@@ -0,0 +1,1574 @@
|
||||
@@ -16930,9 +16834,6 @@ index 000000000000..7cf69282abce
|
||||
+ remove_proc_entry("isoc_test", NULL);
|
||||
+}
|
||||
+module_exit (cleanup);
|
||||
diff --git a/drivers/usb/host/dwc_otg/dwc_cfi_common.h b/drivers/usb/host/dwc_otg/dwc_cfi_common.h
|
||||
new file mode 100644
|
||||
index 000000000000..7770e201ad3b
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_otg/dwc_cfi_common.h
|
||||
@@ -0,0 +1,142 @@
|
||||
@@ -17078,9 +16979,6 @@ index 000000000000..7770e201ad3b
|
||||
+typedef struct cfi_string cfi_string_t;
|
||||
+
|
||||
+#endif
|
||||
diff --git a/drivers/usb/host/dwc_otg/dwc_otg_adp.c b/drivers/usb/host/dwc_otg/dwc_otg_adp.c
|
||||
new file mode 100644
|
||||
index 000000000000..cb49aedd51f6
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_otg/dwc_otg_adp.c
|
||||
@@ -0,0 +1,842 @@
|
||||
@@ -17926,9 +17824,6 @@ index 000000000000..cb49aedd51f6
|
||||
+#endif
|
||||
+ return 1;
|
||||
+}
|
||||
diff --git a/drivers/usb/host/dwc_otg/dwc_otg_adp.h b/drivers/usb/host/dwc_otg/dwc_otg_adp.h
|
||||
new file mode 100644
|
||||
index 000000000000..4110b25d2002
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_otg/dwc_otg_adp.h
|
||||
@@ -0,0 +1,80 @@
|
||||
@@ -18012,9 +17907,6 @@ index 000000000000..4110b25d2002
|
||||
+extern int32_t dwc_otg_adp_handle_srp_intr(dwc_otg_core_if_t * core_if);
|
||||
+
|
||||
+#endif //__DWC_OTG_ADP_H__
|
||||
diff --git a/drivers/usb/host/dwc_otg/dwc_otg_attr.c b/drivers/usb/host/dwc_otg/dwc_otg_attr.c
|
||||
new file mode 100644
|
||||
index 000000000000..2f8ea77c3892
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_otg/dwc_otg_attr.c
|
||||
@@ -0,0 +1,1212 @@
|
||||
@@ -19230,9 +19122,6 @@ index 000000000000..2f8ea77c3892
|
||||
+ device_remove_file(&dev->dev, &dev_attr_sleep_status);
|
||||
+#endif
|
||||
+}
|
||||
diff --git a/drivers/usb/host/dwc_otg/dwc_otg_attr.h b/drivers/usb/host/dwc_otg/dwc_otg_attr.h
|
||||
new file mode 100644
|
||||
index 000000000000..e10b67f97c52
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_otg/dwc_otg_attr.h
|
||||
@@ -0,0 +1,89 @@
|
||||
@@ -19325,9 +19214,6 @@ index 000000000000..e10b67f97c52
|
||||
+#endif
|
||||
+ );
|
||||
+#endif
|
||||
diff --git a/drivers/usb/host/dwc_otg/dwc_otg_cfi.c b/drivers/usb/host/dwc_otg/dwc_otg_cfi.c
|
||||
new file mode 100644
|
||||
index 000000000000..e73016ef863d
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_otg/dwc_otg_cfi.c
|
||||
@@ -0,0 +1,1874 @@
|
||||
@@ -21205,9 +21091,6 @@ index 000000000000..e73016ef863d
|
||||
+}
|
||||
+
|
||||
+#endif //DWC_UTE_CFI
|
||||
diff --git a/drivers/usb/host/dwc_otg/dwc_otg_cfi.h b/drivers/usb/host/dwc_otg/dwc_otg_cfi.h
|
||||
new file mode 100644
|
||||
index 000000000000..55fd337a283c
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_otg/dwc_otg_cfi.h
|
||||
@@ -0,0 +1,320 @@
|
||||
@@ -21531,9 +21414,6 @@ index 000000000000..55fd337a283c
|
||||
+int cfi_setup(struct dwc_otg_pcd *pcd, struct cfi_usb_ctrlrequest *ctrl);
|
||||
+
|
||||
+#endif /* (__DWC_OTG_CFI_H__) */
|
||||
diff --git a/drivers/usb/host/dwc_otg/dwc_otg_cil.c b/drivers/usb/host/dwc_otg/dwc_otg_cil.c
|
||||
new file mode 100644
|
||||
index 000000000000..b3dd2ad5237c
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_otg/dwc_otg_cil.c
|
||||
@@ -0,0 +1,7121 @@
|
||||
@@ -28658,9 +28538,6 @@ index 000000000000..b3dd2ad5237c
|
||||
+ dwc_otg_pcd_start_srp_timer(core_if);
|
||||
+ return;
|
||||
+}
|
||||
diff --git a/drivers/usb/host/dwc_otg/dwc_otg_cil.h b/drivers/usb/host/dwc_otg/dwc_otg_cil.h
|
||||
new file mode 100644
|
||||
index 000000000000..79dbf8374f02
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_otg/dwc_otg_cil.h
|
||||
@@ -0,0 +1,1464 @@
|
||||
@@ -30128,9 +30005,6 @@ index 000000000000..79dbf8374f02
|
||||
+//////////////////////////////////////////////////////////////////////
|
||||
+
|
||||
+#endif
|
||||
diff --git a/drivers/usb/host/dwc_otg/dwc_otg_cil_intr.c b/drivers/usb/host/dwc_otg/dwc_otg_cil_intr.c
|
||||
new file mode 100644
|
||||
index 000000000000..57a9fe4e5ee0
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_otg/dwc_otg_cil_intr.c
|
||||
@@ -0,0 +1,1578 @@
|
||||
@@ -31712,9 +31586,6 @@ index 000000000000..57a9fe4e5ee0
|
||||
+ DWC_SPINUNLOCK(core_if->lock);
|
||||
+ return retval;
|
||||
+}
|
||||
diff --git a/drivers/usb/host/dwc_otg/dwc_otg_core_if.h b/drivers/usb/host/dwc_otg/dwc_otg_core_if.h
|
||||
new file mode 100644
|
||||
index 000000000000..4138fd173337
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_otg/dwc_otg_core_if.h
|
||||
@@ -0,0 +1,705 @@
|
||||
@@ -32423,9 +32294,6 @@ index 000000000000..4138fd173337
|
||||
+/** @} */
|
||||
+
|
||||
+#endif /* __DWC_CORE_IF_H__ */
|
||||
diff --git a/drivers/usb/host/dwc_otg/dwc_otg_dbg.h b/drivers/usb/host/dwc_otg/dwc_otg_dbg.h
|
||||
new file mode 100644
|
||||
index 000000000000..ccc24e010e44
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_otg/dwc_otg_dbg.h
|
||||
@@ -0,0 +1,117 @@
|
||||
@@ -32546,9 +32414,6 @@ index 000000000000..ccc24e010e44
|
||||
+
|
||||
+#endif /*DEBUG*/
|
||||
+#endif
|
||||
diff --git a/drivers/usb/host/dwc_otg/dwc_otg_driver.c b/drivers/usb/host/dwc_otg/dwc_otg_driver.c
|
||||
new file mode 100644
|
||||
index 000000000000..b3e72bffafa1
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_otg/dwc_otg_driver.c
|
||||
@@ -0,0 +1,1725 @@
|
||||
@@ -34277,9 +34142,6 @@ index 000000000000..b3e72bffafa1
|
||||
+ </td></tr>
|
||||
+
|
||||
+*/
|
||||
diff --git a/drivers/usb/host/dwc_otg/dwc_otg_driver.h b/drivers/usb/host/dwc_otg/dwc_otg_driver.h
|
||||
new file mode 100644
|
||||
index 000000000000..6a8be63a0ab2
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_otg/dwc_otg_driver.h
|
||||
@@ -0,0 +1,86 @@
|
||||
@@ -34369,9 +34231,6 @@ index 000000000000..6a8be63a0ab2
|
||||
+#endif
|
||||
+
|
||||
+#endif
|
||||
diff --git a/drivers/usb/host/dwc_otg/dwc_otg_fiq_fsm.c b/drivers/usb/host/dwc_otg/dwc_otg_fiq_fsm.c
|
||||
new file mode 100644
|
||||
index 000000000000..98e4563fee02
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_otg/dwc_otg_fiq_fsm.c
|
||||
@@ -0,0 +1,1370 @@
|
||||
@@ -35745,9 +35604,6 @@ index 000000000000..98e4563fee02
|
||||
+ mb();
|
||||
+ fiq_fsm_spin_unlock(&state->lock);
|
||||
+}
|
||||
diff --git a/drivers/usb/host/dwc_otg/dwc_otg_fiq_fsm.h b/drivers/usb/host/dwc_otg/dwc_otg_fiq_fsm.h
|
||||
new file mode 100644
|
||||
index 000000000000..1399d579eb58
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_otg/dwc_otg_fiq_fsm.h
|
||||
@@ -0,0 +1,476 @@
|
||||
@@ -36227,9 +36083,6 @@ index 000000000000..1399d579eb58
|
||||
+extern void dwc_otg_fiq_nop(struct fiq_state *state);
|
||||
+
|
||||
+#endif /* DWC_OTG_FIQ_FSM_H_ */
|
||||
diff --git a/drivers/usb/host/dwc_otg/dwc_otg_fiq_stub.S b/drivers/usb/host/dwc_otg/dwc_otg_fiq_stub.S
|
||||
new file mode 100644
|
||||
index 000000000000..ffa8d21bc61e
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_otg/dwc_otg_fiq_stub.S
|
||||
@@ -0,0 +1,80 @@
|
||||
@@ -36313,9 +36166,6 @@ index 000000000000..ffa8d21bc61e
|
||||
+ subs pc, lr, #4;
|
||||
+_dwc_otg_fiq_stub_end:
|
||||
+END(_dwc_otg_fiq_stub)
|
||||
diff --git a/drivers/usb/host/dwc_otg/dwc_otg_hcd.c b/drivers/usb/host/dwc_otg/dwc_otg_hcd.c
|
||||
new file mode 100644
|
||||
index 000000000000..9e05e075172b
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_otg/dwc_otg_hcd.c
|
||||
@@ -0,0 +1,4362 @@
|
||||
@@ -40681,9 +40531,6 @@ index 000000000000..9e05e075172b
|
||||
+}
|
||||
+
|
||||
+#endif /* DWC_DEVICE_ONLY */
|
||||
diff --git a/drivers/usb/host/dwc_otg/dwc_otg_hcd.h b/drivers/usb/host/dwc_otg/dwc_otg_hcd.h
|
||||
new file mode 100644
|
||||
index 000000000000..e0611c1592b1
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_otg/dwc_otg_hcd.h
|
||||
@@ -0,0 +1,870 @@
|
||||
@@ -41557,9 +41404,6 @@ index 000000000000..e0611c1592b1
|
||||
+#endif
|
||||
+#endif
|
||||
+#endif /* DWC_DEVICE_ONLY */
|
||||
diff --git a/drivers/usb/host/dwc_otg/dwc_otg_hcd_ddma.c b/drivers/usb/host/dwc_otg/dwc_otg_hcd_ddma.c
|
||||
new file mode 100644
|
||||
index 000000000000..0cf505019090
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_otg/dwc_otg_hcd_ddma.c
|
||||
@@ -0,0 +1,1135 @@
|
||||
@@ -42698,9 +42542,6 @@ index 000000000000..0cf505019090
|
||||
+}
|
||||
+
|
||||
+#endif /* DWC_DEVICE_ONLY */
|
||||
diff --git a/drivers/usb/host/dwc_otg/dwc_otg_hcd_if.h b/drivers/usb/host/dwc_otg/dwc_otg_hcd_if.h
|
||||
new file mode 100644
|
||||
index 000000000000..847c547d7ebb
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_otg/dwc_otg_hcd_if.h
|
||||
@@ -0,0 +1,441 @@
|
||||
@@ -43145,9 +42986,6 @@ index 000000000000..847c547d7ebb
|
||||
+
|
||||
+#endif /* __DWC_HCD_IF_H__ */
|
||||
+#endif /* DWC_DEVICE_ONLY */
|
||||
diff --git a/drivers/usb/host/dwc_otg/dwc_otg_hcd_intr.c b/drivers/usb/host/dwc_otg/dwc_otg_hcd_intr.c
|
||||
new file mode 100644
|
||||
index 000000000000..2a1617b475fc
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_otg/dwc_otg_hcd_intr.c
|
||||
@@ -0,0 +1,2757 @@
|
||||
@@ -45908,9 +45746,6 @@ index 000000000000..2a1617b475fc
|
||||
+ return retval;
|
||||
+}
|
||||
+#endif /* DWC_DEVICE_ONLY */
|
||||
diff --git a/drivers/usb/host/dwc_otg/dwc_otg_hcd_linux.c b/drivers/usb/host/dwc_otg/dwc_otg_hcd_linux.c
|
||||
new file mode 100644
|
||||
index 000000000000..430a1a510295
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_otg/dwc_otg_hcd_linux.c
|
||||
@@ -0,0 +1,1081 @@
|
||||
@@ -46995,9 +46830,6 @@ index 000000000000..430a1a510295
|
||||
+}
|
||||
+
|
||||
+#endif /* DWC_DEVICE_ONLY */
|
||||
diff --git a/drivers/usb/host/dwc_otg/dwc_otg_hcd_queue.c b/drivers/usb/host/dwc_otg/dwc_otg_hcd_queue.c
|
||||
new file mode 100644
|
||||
index 000000000000..d8a49a8568f2
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_otg/dwc_otg_hcd_queue.c
|
||||
@@ -0,0 +1,974 @@
|
||||
@@ -47975,9 +47807,6 @@ index 000000000000..d8a49a8568f2
|
||||
+}
|
||||
+
|
||||
+#endif /* DWC_DEVICE_ONLY */
|
||||
diff --git a/drivers/usb/host/dwc_otg/dwc_otg_os_dep.h b/drivers/usb/host/dwc_otg/dwc_otg_os_dep.h
|
||||
new file mode 100644
|
||||
index 000000000000..0bfa98157169
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_otg/dwc_otg_os_dep.h
|
||||
@@ -0,0 +1,200 @@
|
||||
@@ -48181,9 +48010,6 @@ index 000000000000..0bfa98157169
|
||||
+
|
||||
+
|
||||
+#endif /* _DWC_OS_DEP_H_ */
|
||||
diff --git a/drivers/usb/host/dwc_otg/dwc_otg_pcd.c b/drivers/usb/host/dwc_otg/dwc_otg_pcd.c
|
||||
new file mode 100644
|
||||
index 000000000000..ec2d45167a0f
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_otg/dwc_otg_pcd.c
|
||||
@@ -0,0 +1,2723 @@
|
||||
@@ -50910,9 +50736,6 @@ index 000000000000..ec2d45167a0f
|
||||
+}
|
||||
+
|
||||
+#endif /* DWC_HOST_ONLY */
|
||||
diff --git a/drivers/usb/host/dwc_otg/dwc_otg_pcd.h b/drivers/usb/host/dwc_otg/dwc_otg_pcd.h
|
||||
new file mode 100644
|
||||
index 000000000000..fffc4c9d8bc6
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_otg/dwc_otg_pcd.h
|
||||
@@ -0,0 +1,277 @@
|
||||
@@ -51193,9 +51016,6 @@ index 000000000000..fffc4c9d8bc6
|
||||
+extern void do_test_mode(void *data);
|
||||
+#endif
|
||||
+#endif /* DWC_HOST_ONLY */
|
||||
diff --git a/drivers/usb/host/dwc_otg/dwc_otg_pcd_if.h b/drivers/usb/host/dwc_otg/dwc_otg_pcd_if.h
|
||||
new file mode 100644
|
||||
index 000000000000..badc93a41c38
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_otg/dwc_otg_pcd_if.h
|
||||
@@ -0,0 +1,381 @@
|
||||
@@ -51580,9 +51400,6 @@ index 000000000000..badc93a41c38
|
||||
+#endif /* __DWC_PCD_IF_H__ */
|
||||
+
|
||||
+#endif /* DWC_HOST_ONLY */
|
||||
diff --git a/drivers/usb/host/dwc_otg/dwc_otg_pcd_intr.c b/drivers/usb/host/dwc_otg/dwc_otg_pcd_intr.c
|
||||
new file mode 100644
|
||||
index 000000000000..9a255a96c209
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_otg/dwc_otg_pcd_intr.c
|
||||
@@ -0,0 +1,5148 @@
|
||||
@@ -56734,9 +56551,6 @@ index 000000000000..9a255a96c209
|
||||
+}
|
||||
+
|
||||
+#endif /* DWC_HOST_ONLY */
|
||||
diff --git a/drivers/usb/host/dwc_otg/dwc_otg_pcd_linux.c b/drivers/usb/host/dwc_otg/dwc_otg_pcd_linux.c
|
||||
new file mode 100644
|
||||
index 000000000000..e214955d6914
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_otg/dwc_otg_pcd_linux.c
|
||||
@@ -0,0 +1,1262 @@
|
||||
@@ -58002,9 +57816,6 @@ index 000000000000..e214955d6914
|
||||
+}
|
||||
+
|
||||
+#endif /* DWC_HOST_ONLY */
|
||||
diff --git a/drivers/usb/host/dwc_otg/dwc_otg_regs.h b/drivers/usb/host/dwc_otg/dwc_otg_regs.h
|
||||
new file mode 100644
|
||||
index 000000000000..8e0e7b569f1a
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_otg/dwc_otg_regs.h
|
||||
@@ -0,0 +1,2550 @@
|
||||
@@ -60558,9 +60369,6 @@ index 000000000000..8e0e7b569f1a
|
||||
+} gpwrdn_data_t;
|
||||
+
|
||||
+#endif
|
||||
diff --git a/drivers/usb/host/dwc_otg/test/Makefile b/drivers/usb/host/dwc_otg/test/Makefile
|
||||
new file mode 100644
|
||||
index 000000000000..fc453759dea3
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_otg/test/Makefile
|
||||
@@ -0,0 +1,16 @@
|
||||
@@ -60580,9 +60388,6 @@ index 000000000000..fc453759dea3
|
||||
+ else echo "=======> $$test, FAILED" ; \
|
||||
+ fi \
|
||||
+ done
|
||||
diff --git a/drivers/usb/host/dwc_otg/test/dwc_otg_test.pm b/drivers/usb/host/dwc_otg/test/dwc_otg_test.pm
|
||||
new file mode 100644
|
||||
index 000000000000..85e55fd6ddbc
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_otg/test/dwc_otg_test.pm
|
||||
@@ -0,0 +1,337 @@
|
||||
@@ -60923,9 +60728,6 @@ index 000000000000..85e55fd6ddbc
|
||||
+);
|
||||
+
|
||||
+1;
|
||||
diff --git a/drivers/usb/host/dwc_otg/test/test_mod_param.pl b/drivers/usb/host/dwc_otg/test/test_mod_param.pl
|
||||
new file mode 100644
|
||||
index 000000000000..dc3820df577b
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_otg/test/test_mod_param.pl
|
||||
@@ -0,0 +1,133 @@
|
||||
@@ -61062,9 +60864,6 @@ index 000000000000..dc3820df577b
|
||||
+
|
||||
+test_main();
|
||||
+0;
|
||||
diff --git a/drivers/usb/host/dwc_otg/test/test_sysfs.pl b/drivers/usb/host/dwc_otg/test/test_sysfs.pl
|
||||
new file mode 100644
|
||||
index 000000000000..cdc9963176e5
|
||||
--- /dev/null
|
||||
+++ b/drivers/usb/host/dwc_otg/test/test_sysfs.pl
|
||||
@@ -0,0 +1,193 @@
|
||||
@@ -61261,6 +61060,3 @@ index 000000000000..cdc9963176e5
|
||||
+
|
||||
+test_main();
|
||||
+0;
|
||||
--
|
||||
2.54.0
|
||||
|
||||
@@ -164,8 +164,6 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
6 files changed, 2204 insertions(+), 1602 deletions(-)
|
||||
create mode 100644 drivers/video/fbdev/bcm2708_fb.c
|
||||
|
||||
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
|
||||
index a257b739188d..9353d51f38d3 100644
|
||||
--- a/drivers/video/fbdev/Kconfig
|
||||
+++ b/drivers/video/fbdev/Kconfig
|
||||
@@ -61,6 +61,19 @@ config FB_MACMODES
|
||||
@@ -188,11 +186,9 @@ index a257b739188d..9353d51f38d3 100644
|
||||
config FB_GRVGA
|
||||
tristate "Aeroflex Gaisler framebuffer support"
|
||||
depends on FB && SPARC
|
||||
diff --git a/drivers/video/fbdev/Makefile b/drivers/video/fbdev/Makefile
|
||||
index b3d12f977c06..ee9b2c3c7206 100644
|
||||
--- a/drivers/video/fbdev/Makefile
|
||||
+++ b/drivers/video/fbdev/Makefile
|
||||
@@ -12,6 +12,7 @@ obj-$(CONFIG_FB_SBUS) += sbuslib.o
|
||||
@@ -12,6 +12,7 @@ obj-$(CONFIG_FB_SBUS) += sbusli
|
||||
obj-$(CONFIG_FB_WMT_GE_ROPS) += wmt_ge_rops.o
|
||||
|
||||
# Hardware specific drivers go first
|
||||
@@ -200,9 +196,6 @@ index b3d12f977c06..ee9b2c3c7206 100644
|
||||
obj-$(CONFIG_FB_AMIGA) += amifb.o c2p_planar.o
|
||||
obj-$(CONFIG_FB_ARC) += arcfb.o
|
||||
obj-$(CONFIG_FB_CLPS711X) += clps711x-fb.o
|
||||
diff --git a/drivers/video/fbdev/bcm2708_fb.c b/drivers/video/fbdev/bcm2708_fb.c
|
||||
new file mode 100644
|
||||
index 000000000000..91f3e55538bf
|
||||
--- /dev/null
|
||||
+++ b/drivers/video/fbdev/bcm2708_fb.c
|
||||
@@ -0,0 +1,1262 @@
|
||||
@@ -1468,11 +1461,9 @@ index 000000000000..91f3e55538bf
|
||||
+MODULE_PARM_DESC(fbheight, "Height of ARM Framebuffer");
|
||||
+MODULE_PARM_DESC(fbdepth, "Bit depth of ARM Framebuffer");
|
||||
+MODULE_PARM_DESC(fbswap, "Swap order of red and blue in 24 and 32 bit modes");
|
||||
diff --git a/drivers/video/fbdev/core/fb_chrdev.c b/drivers/video/fbdev/core/fb_chrdev.c
|
||||
index 4ebd16b7e3b8..e3dd94bb7ef5 100644
|
||||
--- a/drivers/video/fbdev/core/fb_chrdev.c
|
||||
+++ b/drivers/video/fbdev/core/fb_chrdev.c
|
||||
@@ -59,6 +59,30 @@ static ssize_t fb_write(struct file *file, const char __user *buf, size_t count,
|
||||
@@ -59,6 +59,30 @@ static ssize_t fb_write(struct file *fil
|
||||
return info->fbops->fb_write(info, buf, count, ppos);
|
||||
}
|
||||
|
||||
@@ -1503,7 +1494,7 @@ index 4ebd16b7e3b8..e3dd94bb7ef5 100644
|
||||
static long do_fb_ioctl(struct fb_info *info, unsigned int cmd,
|
||||
unsigned long arg)
|
||||
{
|
||||
@@ -67,6 +91,7 @@ static long do_fb_ioctl(struct fb_info *info, unsigned int cmd,
|
||||
@@ -67,6 +91,7 @@ static long do_fb_ioctl(struct fb_info *
|
||||
struct fb_fix_screeninfo fix;
|
||||
struct fb_cmap cmap_from;
|
||||
struct fb_cmap_user cmap;
|
||||
@@ -1511,7 +1502,7 @@ index 4ebd16b7e3b8..e3dd94bb7ef5 100644
|
||||
void __user *argp = (void __user *)arg;
|
||||
long ret = 0;
|
||||
|
||||
@@ -148,6 +173,15 @@ static long do_fb_ioctl(struct fb_info *info, unsigned int cmd,
|
||||
@@ -148,6 +173,15 @@ static long do_fb_ioctl(struct fb_info *
|
||||
unlock_fb_info(info);
|
||||
console_unlock();
|
||||
break;
|
||||
@@ -1527,7 +1518,7 @@ index 4ebd16b7e3b8..e3dd94bb7ef5 100644
|
||||
default:
|
||||
lock_fb_info(info);
|
||||
fb = info->fbops;
|
||||
@@ -287,6 +321,7 @@ static long fb_compat_ioctl(struct file *file, unsigned int cmd,
|
||||
@@ -287,6 +321,7 @@ static long fb_compat_ioctl(struct file
|
||||
case FBIOPAN_DISPLAY:
|
||||
case FBIOGET_CON2FBMAP:
|
||||
case FBIOPUT_CON2FBMAP:
|
||||
@@ -1535,8 +1526,6 @@ index 4ebd16b7e3b8..e3dd94bb7ef5 100644
|
||||
arg = (unsigned long) compat_ptr(arg);
|
||||
fallthrough;
|
||||
case FBIOBLANK:
|
||||
diff --git a/drivers/video/logo/logo_linux_clut224.ppm b/drivers/video/logo/logo_linux_clut224.ppm
|
||||
index 3c14e43b82fe..7626beb6a5bb 100644
|
||||
--- a/drivers/video/logo/logo_linux_clut224.ppm
|
||||
+++ b/drivers/video/logo/logo_linux_clut224.ppm
|
||||
@@ -1,1604 +1,883 @@
|
||||
@@ -4025,8 +4014,6 @@ index 3c14e43b82fe..7626beb6a5bb 100644
|
||||
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
|
||||
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
|
||||
+0 0 0 0 0 0 0 0 0
|
||||
diff --git a/include/uapi/linux/fb.h b/include/uapi/linux/fb.h
|
||||
index 22acaaec7b1c..eab4c7f3d833 100644
|
||||
--- a/include/uapi/linux/fb.h
|
||||
+++ b/include/uapi/linux/fb.h
|
||||
@@ -36,6 +36,12 @@
|
||||
@@ -4055,6 +4042,3 @@ index 22acaaec7b1c..eab4c7f3d833 100644
|
||||
struct fb_fillrect {
|
||||
__u32 dx; /* screen-relative */
|
||||
__u32 dy;
|
||||
--
|
||||
2.54.0
|
||||
|
||||
@@ -188,8 +188,6 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
create mode 100644 drivers/dma/bcm2708-dmaengine.c
|
||||
create mode 100644 include/linux/platform_data/dma-bcm2708.h
|
||||
|
||||
diff --git a/drivers/dma/Kconfig b/drivers/dma/Kconfig
|
||||
index cab445e9b9a0..4ddb58fb0959 100644
|
||||
--- a/drivers/dma/Kconfig
|
||||
+++ b/drivers/dma/Kconfig
|
||||
@@ -143,7 +143,7 @@ config BCM_SBA_RAID
|
||||
@@ -212,8 +210,6 @@ index cab445e9b9a0..4ddb58fb0959 100644
|
||||
config XGENE_DMA
|
||||
tristate "APM X-Gene DMA support"
|
||||
depends on ARCH_XGENE || COMPILE_TEST
|
||||
diff --git a/drivers/dma/Makefile b/drivers/dma/Makefile
|
||||
index a54d7688392b..d45d964899b4 100644
|
||||
--- a/drivers/dma/Makefile
|
||||
+++ b/drivers/dma/Makefile
|
||||
@@ -22,6 +22,7 @@ obj-$(CONFIG_AT_HDMAC) += at_hdmac.o
|
||||
@@ -224,9 +220,6 @@ index a54d7688392b..d45d964899b4 100644
|
||||
obj-$(CONFIG_DMA_BCM2835) += bcm2835-dma.o
|
||||
obj-$(CONFIG_DMA_JZ4780) += dma-jz4780.o
|
||||
obj-$(CONFIG_DMA_SA11X0) += sa11x0-dma.o
|
||||
diff --git a/drivers/dma/bcm2708-dmaengine.c b/drivers/dma/bcm2708-dmaengine.c
|
||||
new file mode 100644
|
||||
index 000000000000..a9a7f92584c8
|
||||
--- /dev/null
|
||||
+++ b/drivers/dma/bcm2708-dmaengine.c
|
||||
@@ -0,0 +1,281 @@
|
||||
@@ -511,9 +504,6 @@ index 000000000000..a9a7f92584c8
|
||||
+EXPORT_SYMBOL(bcm_dmaman_remove);
|
||||
+
|
||||
+MODULE_LICENSE("GPL");
|
||||
diff --git a/include/linux/platform_data/dma-bcm2708.h b/include/linux/platform_data/dma-bcm2708.h
|
||||
new file mode 100644
|
||||
index 000000000000..6ca874d332a8
|
||||
--- /dev/null
|
||||
+++ b/include/linux/platform_data/dma-bcm2708.h
|
||||
@@ -0,0 +1,143 @@
|
||||
@@ -660,6 +650,3 @@ index 000000000000..6ca874d332a8
|
||||
+#endif /* CONFIG_DMA_BCM2708 || CONFIG_DMA_BCM2708_MODULE */
|
||||
+
|
||||
+#endif /* _PLAT_BCM2708_DMA_H */
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+13
-35
@@ -280,8 +280,6 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
9 files changed, 1641 insertions(+), 5 deletions(-)
|
||||
create mode 100644 drivers/mmc/host/bcm2835-mmc.c
|
||||
|
||||
diff --git a/drivers/mmc/core/block.c b/drivers/mmc/core/block.c
|
||||
index c0ffe0817fd4..b90bbd28acc8 100644
|
||||
--- a/drivers/mmc/core/block.c
|
||||
+++ b/drivers/mmc/core/block.c
|
||||
@@ -180,6 +180,13 @@ static DEFINE_MUTEX(open_lock);
|
||||
@@ -298,7 +296,7 @@ index c0ffe0817fd4..b90bbd28acc8 100644
|
||||
static inline int mmc_blk_part_switch(struct mmc_card *card,
|
||||
unsigned int part_type);
|
||||
static void mmc_blk_rw_rq_prep(struct mmc_queue_req *mqrq,
|
||||
@@ -3265,6 +3272,8 @@ static int mmc_blk_probe(struct mmc_card *card)
|
||||
@@ -3278,6 +3285,8 @@ static int mmc_blk_probe(struct mmc_card
|
||||
{
|
||||
struct mmc_blk_data *md;
|
||||
int ret = 0;
|
||||
@@ -307,7 +305,7 @@ index c0ffe0817fd4..b90bbd28acc8 100644
|
||||
|
||||
/*
|
||||
* Check that the card supports the command class(es) we need.
|
||||
@@ -3272,7 +3281,16 @@ static int mmc_blk_probe(struct mmc_card *card)
|
||||
@@ -3285,7 +3294,16 @@ static int mmc_blk_probe(struct mmc_card
|
||||
if (!(card->csd.cmdclass & CCC_BLOCK_READ))
|
||||
return -ENODEV;
|
||||
|
||||
@@ -325,7 +323,7 @@ index c0ffe0817fd4..b90bbd28acc8 100644
|
||||
|
||||
card->complete_wq = alloc_workqueue("mmc_complete",
|
||||
WQ_MEM_RECLAIM | WQ_HIGHPRI, 0);
|
||||
@@ -3287,6 +3305,17 @@ static int mmc_blk_probe(struct mmc_card *card)
|
||||
@@ -3300,6 +3318,17 @@ static int mmc_blk_probe(struct mmc_card
|
||||
goto out_free;
|
||||
}
|
||||
|
||||
@@ -343,8 +341,6 @@ index c0ffe0817fd4..b90bbd28acc8 100644
|
||||
ret = mmc_blk_alloc_parts(card, md);
|
||||
if (ret)
|
||||
goto out;
|
||||
diff --git a/drivers/mmc/core/core.c b/drivers/mmc/core/core.c
|
||||
index 860378bea557..0c51f3df9537 100644
|
||||
--- a/drivers/mmc/core/core.c
|
||||
+++ b/drivers/mmc/core/core.c
|
||||
@@ -1861,7 +1861,8 @@ EXPORT_SYMBOL(mmc_erase);
|
||||
@@ -357,13 +353,11 @@ index 860378bea557..0c51f3df9537 100644
|
||||
}
|
||||
EXPORT_SYMBOL(mmc_card_can_erase);
|
||||
|
||||
diff --git a/drivers/mmc/core/quirks.h b/drivers/mmc/core/quirks.h
|
||||
index c417ed34c057..832ddaffa9ef 100644
|
||||
--- a/drivers/mmc/core/quirks.h
|
||||
+++ b/drivers/mmc/core/quirks.h
|
||||
@@ -153,6 +153,20 @@ static const struct mmc_fixup __maybe_unused mmc_blk_fixups[] = {
|
||||
MMC_FIXUP("M62704", CID_MANFID_KINGSTON, 0x0100, add_quirk_mmc,
|
||||
MMC_QUIRK_TRIM_BROKEN),
|
||||
@@ -162,6 +162,20 @@ static const struct mmc_fixup __maybe_un
|
||||
MMC_FIXUP("IB2932", CID_MANFID_KINGSTON, 0x0100, add_quirk_mmc,
|
||||
MMC_QUIRK_FIXED_SECURE_ERASE_TRIM_TIME),
|
||||
|
||||
+ /*
|
||||
+ * Some SD cards reports discard support while they don't
|
||||
@@ -382,8 +376,6 @@ index c417ed34c057..832ddaffa9ef 100644
|
||||
END_FIXUP
|
||||
};
|
||||
|
||||
diff --git a/drivers/mmc/host/Kconfig b/drivers/mmc/host/Kconfig
|
||||
index c94ae4794545..85e418954f20 100644
|
||||
--- a/drivers/mmc/host/Kconfig
|
||||
+++ b/drivers/mmc/host/Kconfig
|
||||
@@ -5,6 +5,35 @@
|
||||
@@ -422,11 +414,9 @@ index c94ae4794545..85e418954f20 100644
|
||||
config MMC_DEBUG
|
||||
bool "MMC host drivers debugging"
|
||||
depends on MMC != n
|
||||
diff --git a/drivers/mmc/host/Makefile b/drivers/mmc/host/Makefile
|
||||
index 5057fea8afb6..f0cb916d248f 100644
|
||||
--- a/drivers/mmc/host/Makefile
|
||||
+++ b/drivers/mmc/host/Makefile
|
||||
@@ -23,6 +23,7 @@ obj-$(CONFIG_MMC_SDHCI_F_SDH30) += sdhci_f_sdh30.o
|
||||
@@ -23,6 +23,7 @@ obj-$(CONFIG_MMC_SDHCI_F_SDH30) += sdhci
|
||||
obj-$(CONFIG_MMC_SDHCI_MILBEAUT) += sdhci-milbeaut.o
|
||||
obj-$(CONFIG_MMC_SDHCI_SPEAR) += sdhci-spear.o
|
||||
obj-$(CONFIG_MMC_SDHCI_AM654) += sdhci_am654.o
|
||||
@@ -434,9 +424,6 @@ index 5057fea8afb6..f0cb916d248f 100644
|
||||
obj-$(CONFIG_MMC_WBSD) += wbsd.o
|
||||
obj-$(CONFIG_MMC_AU1X) += au1xmmc.o
|
||||
obj-$(CONFIG_MMC_ALCOR) += alcor.o
|
||||
diff --git a/drivers/mmc/host/bcm2835-mmc.c b/drivers/mmc/host/bcm2835-mmc.c
|
||||
new file mode 100644
|
||||
index 000000000000..c0d25994b166
|
||||
--- /dev/null
|
||||
+++ b/drivers/mmc/host/bcm2835-mmc.c
|
||||
@@ -0,0 +1,1560 @@
|
||||
@@ -2000,11 +1987,9 @@ index 000000000000..c0d25994b166
|
||||
+MODULE_DESCRIPTION("BCM2835 SDHCI driver");
|
||||
+MODULE_LICENSE("GPL v2");
|
||||
+MODULE_AUTHOR("Gellert Weisz");
|
||||
diff --git a/drivers/mmc/host/sdhci-iproc.c b/drivers/mmc/host/sdhci-iproc.c
|
||||
index 35ef5c5f5146..a2c5e886bd35 100644
|
||||
--- a/drivers/mmc/host/sdhci-iproc.c
|
||||
+++ b/drivers/mmc/host/sdhci-iproc.c
|
||||
@@ -198,6 +198,7 @@ static const struct sdhci_ops sdhci_iproc_32only_ops = {
|
||||
@@ -198,6 +198,7 @@ static const struct sdhci_ops sdhci_ipro
|
||||
.write_b = sdhci_iproc_writeb,
|
||||
.set_clock = sdhci_set_clock,
|
||||
.get_max_clock = sdhci_iproc_get_max_clock,
|
||||
@@ -2012,8 +1997,6 @@ index 35ef5c5f5146..a2c5e886bd35 100644
|
||||
.set_bus_width = sdhci_set_bus_width,
|
||||
.reset = sdhci_reset,
|
||||
.set_uhs_signaling = sdhci_set_uhs_signaling,
|
||||
diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c
|
||||
index fec9329e1edb..6e6efe8d419b 100644
|
||||
--- a/drivers/mmc/host/sdhci.c
|
||||
+++ b/drivers/mmc/host/sdhci.c
|
||||
@@ -40,7 +40,7 @@
|
||||
@@ -2025,7 +2008,7 @@ index fec9329e1edb..6e6efe8d419b 100644
|
||||
|
||||
#define MAX_TUNING_LOOP 40
|
||||
|
||||
@@ -3245,7 +3245,7 @@ static void sdhci_timeout_timer(struct timer_list *t)
|
||||
@@ -3245,7 +3245,7 @@ static void sdhci_timeout_timer(struct t
|
||||
spin_lock_irqsave(&host->lock, flags);
|
||||
|
||||
if (host->cmd && !sdhci_data_line_cmd(host->cmd)) {
|
||||
@@ -2034,7 +2017,7 @@ index fec9329e1edb..6e6efe8d419b 100644
|
||||
mmc_hostname(host->mmc));
|
||||
sdhci_err_stats_inc(host, REQ_TIMEOUT);
|
||||
sdhci_dumpregs(host);
|
||||
@@ -3268,7 +3268,7 @@ static void sdhci_timeout_data_timer(struct timer_list *t)
|
||||
@@ -3268,7 +3268,7 @@ static void sdhci_timeout_data_timer(str
|
||||
|
||||
if (host->data || host->data_cmd ||
|
||||
(host->cmd && sdhci_data_line_cmd(host->cmd))) {
|
||||
@@ -2043,18 +2026,13 @@ index fec9329e1edb..6e6efe8d419b 100644
|
||||
mmc_hostname(host->mmc));
|
||||
sdhci_err_stats_inc(host, REQ_TIMEOUT);
|
||||
sdhci_dumpregs(host);
|
||||
diff --git a/include/linux/mmc/card.h b/include/linux/mmc/card.h
|
||||
index ddcdf23d731c..b1ad2c63ca59 100644
|
||||
--- a/include/linux/mmc/card.h
|
||||
+++ b/include/linux/mmc/card.h
|
||||
@@ -330,6 +330,7 @@ struct mmc_card {
|
||||
#define MMC_QUIRK_BROKEN_CACHE_FLUSH (1<<16) /* Don't flush cache until the write has occurred */
|
||||
#define MMC_QUIRK_BROKEN_SD_POWEROFF_NOTIFY (1<<17) /* Disable broken SD poweroff notify support */
|
||||
@@ -332,6 +332,7 @@ struct mmc_card {
|
||||
#define MMC_QUIRK_NO_UHS_DDR50_TUNING (1<<18) /* Disable DDR50 tuning */
|
||||
#define MMC_QUIRK_BROKEN_MDT (1<<19) /* Wrong manufacturing year */
|
||||
#define MMC_QUIRK_FIXED_SECURE_ERASE_TRIM_TIME (1<<20) /* Secure erase/trim time is fixed regardless of size */
|
||||
+#define MMC_QUIRK_ERASE_BROKEN (1<<31) /* Skip erase */
|
||||
|
||||
bool written_flag; /* Indicates eMMC has been written since power on */
|
||||
bool reenable_cmdq; /* Re-enable Command Queue */
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+1
-6
@@ -20,11 +20,9 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
drivers/mmc/core/block.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/mmc/core/block.c b/drivers/mmc/core/block.c
|
||||
index b90bbd28acc8..f6262101198a 100644
|
||||
--- a/drivers/mmc/core/block.c
|
||||
+++ b/drivers/mmc/core/block.c
|
||||
@@ -1979,7 +1979,7 @@ static void mmc_blk_mq_rw_recovery(struct mmc_queue *mq, struct request *req)
|
||||
@@ -1985,7 +1985,7 @@ static void mmc_blk_mq_rw_recovery(struc
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -33,6 +31,3 @@ index b90bbd28acc8..f6262101198a 100644
|
||||
queue_physical_block_size(mq->queue) >> 9) {
|
||||
/* Read one (native) sector at a time */
|
||||
mmc_blk_read_single(mq, req);
|
||||
--
|
||||
2.54.0
|
||||
|
||||
-15
@@ -64,9 +64,6 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
create mode 100644 drivers/char/broadcom/vc_mem.c
|
||||
create mode 100644 include/linux/broadcom/vc_mem.h
|
||||
|
||||
diff --git a/drivers/char/broadcom/Kconfig b/drivers/char/broadcom/Kconfig
|
||||
new file mode 100644
|
||||
index 000000000000..fc1315209dab
|
||||
--- /dev/null
|
||||
+++ b/drivers/char/broadcom/Kconfig
|
||||
@@ -0,0 +1,18 @@
|
||||
@@ -88,16 +85,10 @@ index 000000000000..fc1315209dab
|
||||
+ Helper for videocore memory access and total size allocation.
|
||||
+
|
||||
+endif
|
||||
diff --git a/drivers/char/broadcom/Makefile b/drivers/char/broadcom/Makefile
|
||||
new file mode 100644
|
||||
index 000000000000..06c5c8ad00e7
|
||||
--- /dev/null
|
||||
+++ b/drivers/char/broadcom/Makefile
|
||||
@@ -0,0 +1 @@
|
||||
+obj-$(CONFIG_BCM2708_VCMEM) += vc_mem.o
|
||||
diff --git a/drivers/char/broadcom/vc_mem.c b/drivers/char/broadcom/vc_mem.c
|
||||
new file mode 100644
|
||||
index 000000000000..4b7faf084e0c
|
||||
--- /dev/null
|
||||
+++ b/drivers/char/broadcom/vc_mem.c
|
||||
@@ -0,0 +1,635 @@
|
||||
@@ -736,9 +727,6 @@ index 000000000000..4b7faf084e0c
|
||||
+module_param(phys_addr, uint, 0644);
|
||||
+module_param(mem_size, uint, 0644);
|
||||
+module_param(mem_base, uint, 0644);
|
||||
diff --git a/include/linux/broadcom/vc_mem.h b/include/linux/broadcom/vc_mem.h
|
||||
new file mode 100644
|
||||
index 000000000000..3c7079237496
|
||||
--- /dev/null
|
||||
+++ b/include/linux/broadcom/vc_mem.h
|
||||
@@ -0,0 +1,39 @@
|
||||
@@ -781,6 +769,3 @@ index 000000000000..3c7079237496
|
||||
+#endif
|
||||
+
|
||||
+#endif /* _VC_MEM_H */
|
||||
--
|
||||
2.54.0
|
||||
|
||||
@@ -90,9 +90,6 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
create mode 100644 drivers/misc/bcm2835_smi.c
|
||||
create mode 100644 include/linux/broadcom/bcm2835_smi.h
|
||||
|
||||
diff --git a/Documentation/devicetree/bindings/misc/brcm,bcm2835-smi-dev.txt b/Documentation/devicetree/bindings/misc/brcm,bcm2835-smi-dev.txt
|
||||
new file mode 100644
|
||||
index 000000000000..68cc8ebc3392
|
||||
--- /dev/null
|
||||
+++ b/Documentation/devicetree/bindings/misc/brcm,bcm2835-smi-dev.txt
|
||||
@@ -0,0 +1,17 @@
|
||||
@@ -113,9 +110,6 @@ index 000000000000..68cc8ebc3392
|
||||
+- None.
|
||||
+
|
||||
+
|
||||
diff --git a/Documentation/devicetree/bindings/misc/brcm,bcm2835-smi.txt b/Documentation/devicetree/bindings/misc/brcm,bcm2835-smi.txt
|
||||
new file mode 100644
|
||||
index 000000000000..b76dc694f1ac
|
||||
--- /dev/null
|
||||
+++ b/Documentation/devicetree/bindings/misc/brcm,bcm2835-smi.txt
|
||||
@@ -0,0 +1,48 @@
|
||||
@@ -167,8 +161,6 @@ index 000000000000..b76dc694f1ac
|
||||
+ brcm,pull = <2 2 2 2 2 2 0 0 0 0 0 0 0 0>;
|
||||
+};
|
||||
+
|
||||
diff --git a/drivers/char/broadcom/Kconfig b/drivers/char/broadcom/Kconfig
|
||||
index fc1315209dab..875429161b9a 100644
|
||||
--- a/drivers/char/broadcom/Kconfig
|
||||
+++ b/drivers/char/broadcom/Kconfig
|
||||
@@ -16,3 +16,12 @@ config BCM2708_VCMEM
|
||||
@@ -184,16 +176,11 @@ index fc1315209dab..875429161b9a 100644
|
||||
+ This driver provides a character device interface (ioctl + read/write) to
|
||||
+ Broadcom's Secondary Memory interface. The low-level functionality is provided
|
||||
+ by the SMI driver itself.
|
||||
diff --git a/drivers/char/broadcom/Makefile b/drivers/char/broadcom/Makefile
|
||||
index 06c5c8ad00e7..a1f3da49e5f1 100644
|
||||
--- a/drivers/char/broadcom/Makefile
|
||||
+++ b/drivers/char/broadcom/Makefile
|
||||
@@ -1 +1,2 @@
|
||||
obj-$(CONFIG_BCM2708_VCMEM) += vc_mem.o
|
||||
+obj-$(CONFIG_BCM2835_SMI_DEV) += bcm2835_smi_dev.o
|
||||
diff --git a/drivers/char/broadcom/bcm2835_smi_dev.c b/drivers/char/broadcom/bcm2835_smi_dev.c
|
||||
new file mode 100644
|
||||
index 000000000000..ae0c0d24fad9
|
||||
--- /dev/null
|
||||
+++ b/drivers/char/broadcom/bcm2835_smi_dev.c
|
||||
@@ -0,0 +1,408 @@
|
||||
@@ -605,8 +592,6 @@ index 000000000000..ae0c0d24fad9
|
||||
+MODULE_DESCRIPTION(
|
||||
+ "Character device driver for BCM2835's secondary memory interface");
|
||||
+MODULE_AUTHOR("Luke Wren <luke@raspberrypi.org>");
|
||||
diff --git a/drivers/misc/Kconfig b/drivers/misc/Kconfig
|
||||
index b9c11f67315f..c59f251c7aa4 100644
|
||||
--- a/drivers/misc/Kconfig
|
||||
+++ b/drivers/misc/Kconfig
|
||||
@@ -9,6 +9,14 @@ config SENSORS_LIS3LV02D
|
||||
@@ -624,11 +609,9 @@ index b9c11f67315f..c59f251c7aa4 100644
|
||||
config AD525X_DPOT
|
||||
tristate "Analog Devices Digital Potentiometers"
|
||||
depends on (I2C || SPI) && SYSFS
|
||||
diff --git a/drivers/misc/Makefile b/drivers/misc/Makefile
|
||||
index b32a2597d246..fcbf09dfee39 100644
|
||||
--- a/drivers/misc/Makefile
|
||||
+++ b/drivers/misc/Makefile
|
||||
@@ -9,6 +9,7 @@ obj-$(CONFIG_AD525X_DPOT) += ad525x_dpot.o
|
||||
@@ -9,6 +9,7 @@ obj-$(CONFIG_AD525X_DPOT) += ad525x_dpot
|
||||
obj-$(CONFIG_AD525X_DPOT_I2C) += ad525x_dpot-i2c.o
|
||||
obj-$(CONFIG_AD525X_DPOT_SPI) += ad525x_dpot-spi.o
|
||||
obj-$(CONFIG_ATMEL_SSC) += atmel-ssc.o
|
||||
@@ -636,9 +619,6 @@ index b32a2597d246..fcbf09dfee39 100644
|
||||
obj-$(CONFIG_DUMMY_IRQ) += dummy-irq.o
|
||||
obj-$(CONFIG_ICS932S401) += ics932s401.o
|
||||
obj-$(CONFIG_LKDTM) += lkdtm/
|
||||
diff --git a/drivers/misc/bcm2835_smi.c b/drivers/misc/bcm2835_smi.c
|
||||
new file mode 100644
|
||||
index 000000000000..09246d5ea7d0
|
||||
--- /dev/null
|
||||
+++ b/drivers/misc/bcm2835_smi.c
|
||||
@@ -0,0 +1,952 @@
|
||||
@@ -1594,9 +1574,6 @@ index 000000000000..09246d5ea7d0
|
||||
+MODULE_LICENSE("GPL");
|
||||
+MODULE_DESCRIPTION("Device driver for BCM2835's secondary memory interface");
|
||||
+MODULE_AUTHOR("Luke Wren <luke@raspberrypi.org>");
|
||||
diff --git a/include/linux/broadcom/bcm2835_smi.h b/include/linux/broadcom/bcm2835_smi.h
|
||||
new file mode 100644
|
||||
index 000000000000..ee3a75edfc03
|
||||
--- /dev/null
|
||||
+++ b/include/linux/broadcom/bcm2835_smi.h
|
||||
@@ -0,0 +1,391 @@
|
||||
@@ -1991,6 +1968,3 @@ index 000000000000..ee3a75edfc03
|
||||
+#endif /* BCM2835_SMI_IMPLEMENTATION */
|
||||
+
|
||||
+#endif /* BCM2835_SMI_H */
|
||||
--
|
||||
2.54.0
|
||||
|
||||
@@ -104,8 +104,6 @@ both bcm2708_bsc_fifo_fill and ~drain are changed as well.
|
||||
3 files changed, 531 insertions(+)
|
||||
create mode 100644 drivers/i2c/busses/i2c-bcm2708.c
|
||||
|
||||
diff --git a/drivers/i2c/busses/Kconfig b/drivers/i2c/busses/Kconfig
|
||||
index 4515ded4338c..aa18e6bd7399 100644
|
||||
--- a/drivers/i2c/busses/Kconfig
|
||||
+++ b/drivers/i2c/busses/Kconfig
|
||||
@@ -16,6 +16,25 @@ config I2C_CCGX_UCSI
|
||||
@@ -134,8 +132,6 @@ index 4515ded4338c..aa18e6bd7399 100644
|
||||
config I2C_ALI1535
|
||||
tristate "ALI 1535"
|
||||
depends on PCI && HAS_IOPORT
|
||||
diff --git a/drivers/i2c/busses/Makefile b/drivers/i2c/busses/Makefile
|
||||
index fb985769f5ff..86b29cbfc42d 100644
|
||||
--- a/drivers/i2c/busses/Makefile
|
||||
+++ b/drivers/i2c/busses/Makefile
|
||||
@@ -3,6 +3,8 @@
|
||||
@@ -147,9 +143,6 @@ index fb985769f5ff..86b29cbfc42d 100644
|
||||
# ACPI drivers
|
||||
obj-$(CONFIG_I2C_SCMI) += i2c-scmi.o
|
||||
|
||||
diff --git a/drivers/i2c/busses/i2c-bcm2708.c b/drivers/i2c/busses/i2c-bcm2708.c
|
||||
new file mode 100644
|
||||
index 000000000000..09907b5c2540
|
||||
--- /dev/null
|
||||
+++ b/drivers/i2c/busses/i2c-bcm2708.c
|
||||
@@ -0,0 +1,510 @@
|
||||
@@ -663,6 +656,3 @@ index 000000000000..09907b5c2540
|
||||
+MODULE_AUTHOR("Chris Boot <bootc@bootc.net>");
|
||||
+MODULE_LICENSE("GPL v2");
|
||||
+MODULE_ALIAS("platform:" DRV_NAME);
|
||||
--
|
||||
2.54.0
|
||||
|
||||
-7
@@ -10,8 +10,6 @@ Signed-off-by: popcornmix <popcornmix@gmail.com>
|
||||
drivers/char/Makefile | 1 +
|
||||
2 files changed, 3 insertions(+)
|
||||
|
||||
diff --git a/drivers/char/Kconfig b/drivers/char/Kconfig
|
||||
index d2cfc584e202..57442c5c8f63 100644
|
||||
--- a/drivers/char/Kconfig
|
||||
+++ b/drivers/char/Kconfig
|
||||
@@ -5,6 +5,8 @@
|
||||
@@ -23,8 +21,6 @@ index d2cfc584e202..57442c5c8f63 100644
|
||||
source "drivers/tty/Kconfig"
|
||||
|
||||
config TTY_PRINTK
|
||||
diff --git a/drivers/char/Makefile b/drivers/char/Makefile
|
||||
index 1291369b9126..da45158c075e 100644
|
||||
--- a/drivers/char/Makefile
|
||||
+++ b/drivers/char/Makefile
|
||||
@@ -44,3 +44,4 @@ obj-$(CONFIG_PS3_FLASH) += ps3flash.o
|
||||
@@ -32,6 +28,3 @@ index 1291369b9126..da45158c075e 100644
|
||||
obj-$(CONFIG_POWERNV_OP_PANEL) += powernv-op-panel.o
|
||||
obj-$(CONFIG_ADI) += adi.o
|
||||
+obj-$(CONFIG_BRCM_CHAR_DRIVERS) += broadcom/
|
||||
--
|
||||
2.54.0
|
||||
|
||||
@@ -60,8 +60,6 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
3 files changed, 194 insertions(+)
|
||||
create mode 100644 drivers/char/broadcom/vcio.c
|
||||
|
||||
diff --git a/drivers/char/broadcom/Kconfig b/drivers/char/broadcom/Kconfig
|
||||
index 875429161b9a..29d880d47282 100644
|
||||
--- a/drivers/char/broadcom/Kconfig
|
||||
+++ b/drivers/char/broadcom/Kconfig
|
||||
@@ -15,6 +15,12 @@ config BCM2708_VCMEM
|
||||
@@ -77,17 +75,12 @@ index 875429161b9a..29d880d47282 100644
|
||||
endif
|
||||
|
||||
config BCM2835_SMI_DEV
|
||||
diff --git a/drivers/char/broadcom/Makefile b/drivers/char/broadcom/Makefile
|
||||
index a1f3da49e5f1..2ae3e9d411e9 100644
|
||||
--- a/drivers/char/broadcom/Makefile
|
||||
+++ b/drivers/char/broadcom/Makefile
|
||||
@@ -1,2 +1,3 @@
|
||||
obj-$(CONFIG_BCM2708_VCMEM) += vc_mem.o
|
||||
+obj-$(CONFIG_BCM_VCIO) += vcio.o
|
||||
obj-$(CONFIG_BCM2835_SMI_DEV) += bcm2835_smi_dev.o
|
||||
diff --git a/drivers/char/broadcom/vcio.c b/drivers/char/broadcom/vcio.c
|
||||
new file mode 100644
|
||||
index 000000000000..9db2408c781a
|
||||
--- /dev/null
|
||||
+++ b/drivers/char/broadcom/vcio.c
|
||||
@@ -0,0 +1,187 @@
|
||||
@@ -278,6 +271,3 @@ index 000000000000..9db2408c781a
|
||||
+MODULE_DESCRIPTION("Mailbox userspace access");
|
||||
+MODULE_LICENSE("GPL");
|
||||
+MODULE_ALIAS("platform:rpi-vcio");
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+1
-11
@@ -25,8 +25,6 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
||||
3 files changed, 284 insertions(+)
|
||||
create mode 100644 drivers/char/raspberrypi-gpiomem.c
|
||||
|
||||
diff --git a/drivers/char/Kconfig b/drivers/char/Kconfig
|
||||
index 57442c5c8f63..ff87476d945a 100644
|
||||
--- a/drivers/char/Kconfig
|
||||
+++ b/drivers/char/Kconfig
|
||||
@@ -425,4 +425,12 @@ config ADI
|
||||
@@ -42,18 +40,13 @@ index 57442c5c8f63..ff87476d945a 100644
|
||||
+ register page to the user's pointer.
|
||||
+
|
||||
endmenu
|
||||
diff --git a/drivers/char/Makefile b/drivers/char/Makefile
|
||||
index da45158c075e..2c5ea59dfec6 100644
|
||||
--- a/drivers/char/Makefile
|
||||
+++ b/drivers/char/Makefile
|
||||
@@ -45,3 +45,4 @@ obj-$(CONFIG_XILLYBUS_CLASS) += xillybus/
|
||||
@@ -45,3 +45,4 @@ obj-$(CONFIG_XILLYBUS_CLASS) += xillybus
|
||||
obj-$(CONFIG_POWERNV_OP_PANEL) += powernv-op-panel.o
|
||||
obj-$(CONFIG_ADI) += adi.o
|
||||
obj-$(CONFIG_BRCM_CHAR_DRIVERS) += broadcom/
|
||||
+obj-$(CONFIG_RASPBERRYPI_GPIOMEM) += raspberrypi-gpiomem.o
|
||||
diff --git a/drivers/char/raspberrypi-gpiomem.c b/drivers/char/raspberrypi-gpiomem.c
|
||||
new file mode 100644
|
||||
index 000000000000..0f9b15bc14a8
|
||||
--- /dev/null
|
||||
+++ b/drivers/char/raspberrypi-gpiomem.c
|
||||
@@ -0,0 +1,275 @@
|
||||
@@ -332,6 +325,3 @@ index 000000000000..0f9b15bc14a8
|
||||
+MODULE_LICENSE("Dual BSD/GPL");
|
||||
+MODULE_DESCRIPTION("Driver for accessing GPIOs from userspace");
|
||||
+MODULE_AUTHOR("Jonathan Bell <jonathan@raspberrypi.com>");
|
||||
--
|
||||
2.54.0
|
||||
|
||||
@@ -25,8 +25,6 @@ Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
|
||||
drivers/firmware/raspberrypi.c | 17 ++++++++++++++++-
|
||||
1 file changed, 16 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/firmware/raspberrypi.c b/drivers/firmware/raspberrypi.c
|
||||
index 7ecde6921a0a..3ce22dac1786 100644
|
||||
--- a/drivers/firmware/raspberrypi.c
|
||||
+++ b/drivers/firmware/raspberrypi.c
|
||||
@@ -34,6 +34,8 @@ struct rpi_firmware {
|
||||
@@ -38,7 +36,7 @@ index 7ecde6921a0a..3ce22dac1786 100644
|
||||
static DEFINE_MUTEX(transaction_lock);
|
||||
|
||||
static void response_callback(struct mbox_client *cl, void *msg)
|
||||
@@ -301,6 +303,7 @@ static int rpi_firmware_probe(struct platform_device *pdev)
|
||||
@@ -301,6 +303,7 @@ static int rpi_firmware_probe(struct pla
|
||||
kref_init(&fw->consumers);
|
||||
|
||||
platform_set_drvdata(pdev, fw);
|
||||
@@ -46,7 +44,7 @@ index 7ecde6921a0a..3ce22dac1786 100644
|
||||
|
||||
rpi_firmware_print_firmware_revision(fw);
|
||||
rpi_register_hwmon_driver(dev, fw);
|
||||
@@ -329,6 +332,7 @@ static void rpi_firmware_remove(struct platform_device *pdev)
|
||||
@@ -329,6 +332,7 @@ static void rpi_firmware_remove(struct p
|
||||
rpi_clk = NULL;
|
||||
|
||||
rpi_firmware_put(fw);
|
||||
@@ -54,7 +52,7 @@ index 7ecde6921a0a..3ce22dac1786 100644
|
||||
}
|
||||
|
||||
static const struct of_device_id rpi_firmware_of_match[] = {
|
||||
@@ -408,7 +412,18 @@ static struct platform_driver rpi_firmware_driver = {
|
||||
@@ -408,7 +412,18 @@ static struct platform_driver rpi_firmwa
|
||||
.shutdown = rpi_firmware_shutdown,
|
||||
.remove = rpi_firmware_remove,
|
||||
};
|
||||
@@ -74,6 +72,3 @@ index 7ecde6921a0a..3ce22dac1786 100644
|
||||
|
||||
MODULE_AUTHOR("Eric Anholt <eric@anholt.net>");
|
||||
MODULE_DESCRIPTION("Raspberry Pi firmware driver");
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+4
-18
@@ -29,11 +29,9 @@ See: https://github.com/raspberrypi/linux/issues/1064
|
||||
5 files changed, 82 insertions(+), 1 deletion(-)
|
||||
create mode 100644 drivers/leds/trigger/ledtrig-input.c
|
||||
|
||||
diff --git a/drivers/leds/leds-gpio.c b/drivers/leds/leds-gpio.c
|
||||
index a3428b22de3a..c4e0ceda70a7 100644
|
||||
--- a/drivers/leds/leds-gpio.c
|
||||
+++ b/drivers/leds/leds-gpio.c
|
||||
@@ -50,8 +50,15 @@ static void gpio_led_set(struct led_classdev *led_cdev,
|
||||
@@ -50,8 +50,15 @@ static void gpio_led_set(struct led_clas
|
||||
led_dat->platform_gpio_blink_set(led_dat->gpiod, level,
|
||||
NULL, NULL);
|
||||
led_dat->blinking = 0;
|
||||
@@ -50,7 +48,7 @@ index a3428b22de3a..c4e0ceda70a7 100644
|
||||
gpiod_set_value_cansleep(led_dat->gpiod, level);
|
||||
else
|
||||
gpiod_set_value(led_dat->gpiod, level);
|
||||
@@ -65,6 +72,13 @@ static int gpio_led_set_blocking(struct led_classdev *led_cdev,
|
||||
@@ -65,6 +72,13 @@ static int gpio_led_set_blocking(struct
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -64,7 +62,7 @@ index a3428b22de3a..c4e0ceda70a7 100644
|
||||
static int gpio_blink_set(struct led_classdev *led_cdev,
|
||||
unsigned long *delay_on, unsigned long *delay_off)
|
||||
{
|
||||
@@ -94,6 +108,7 @@ static int create_gpio_led(const struct gpio_led *template,
|
||||
@@ -94,6 +108,7 @@ static int create_gpio_led(const struct
|
||||
led_dat->platform_gpio_blink_set = blink_set;
|
||||
led_dat->cdev.blink_set = gpio_blink_set;
|
||||
}
|
||||
@@ -72,8 +70,6 @@ index a3428b22de3a..c4e0ceda70a7 100644
|
||||
if (template->default_state == LEDS_GPIO_DEFSTATE_KEEP) {
|
||||
state = gpiod_get_value_cansleep(led_dat->gpiod);
|
||||
if (state < 0)
|
||||
diff --git a/drivers/leds/trigger/Kconfig b/drivers/leds/trigger/Kconfig
|
||||
index c11282a74b5a..011b27ef30ec 100644
|
||||
--- a/drivers/leds/trigger/Kconfig
|
||||
+++ b/drivers/leds/trigger/Kconfig
|
||||
@@ -113,6 +113,13 @@ config LEDS_TRIGGER_CAMERA
|
||||
@@ -90,11 +86,9 @@ index c11282a74b5a..011b27ef30ec 100644
|
||||
config LEDS_TRIGGER_PANIC
|
||||
bool "LED Panic Trigger"
|
||||
help
|
||||
diff --git a/drivers/leds/trigger/Makefile b/drivers/leds/trigger/Makefile
|
||||
index 3b3628889f68..5c4653d7f4de 100644
|
||||
--- a/drivers/leds/trigger/Makefile
|
||||
+++ b/drivers/leds/trigger/Makefile
|
||||
@@ -11,6 +11,7 @@ obj-$(CONFIG_LEDS_TRIGGER_ACTIVITY) += ledtrig-activity.o
|
||||
@@ -11,6 +11,7 @@ obj-$(CONFIG_LEDS_TRIGGER_ACTIVITY) += l
|
||||
obj-$(CONFIG_LEDS_TRIGGER_DEFAULT_ON) += ledtrig-default-on.o
|
||||
obj-$(CONFIG_LEDS_TRIGGER_TRANSIENT) += ledtrig-transient.o
|
||||
obj-$(CONFIG_LEDS_TRIGGER_CAMERA) += ledtrig-camera.o
|
||||
@@ -102,9 +96,6 @@ index 3b3628889f68..5c4653d7f4de 100644
|
||||
obj-$(CONFIG_LEDS_TRIGGER_PANIC) += ledtrig-panic.o
|
||||
obj-$(CONFIG_LEDS_TRIGGER_NETDEV) += ledtrig-netdev.o
|
||||
obj-$(CONFIG_LEDS_TRIGGER_PATTERN) += ledtrig-pattern.o
|
||||
diff --git a/drivers/leds/trigger/ledtrig-input.c b/drivers/leds/trigger/ledtrig-input.c
|
||||
new file mode 100644
|
||||
index 000000000000..8a974a355656
|
||||
--- /dev/null
|
||||
+++ b/drivers/leds/trigger/ledtrig-input.c
|
||||
@@ -0,0 +1,55 @@
|
||||
@@ -163,8 +154,6 @@ index 000000000000..8a974a355656
|
||||
+MODULE_AUTHOR("Phil Elwell <phil@raspberrypi.org>");
|
||||
+MODULE_DESCRIPTION("Set LED GPIO to Input \"trigger\"");
|
||||
+MODULE_LICENSE("GPL");
|
||||
diff --git a/include/linux/leds.h b/include/linux/leds.h
|
||||
index b16b803cc1ac..4dff7add72ce 100644
|
||||
--- a/include/linux/leds.h
|
||||
+++ b/include/linux/leds.h
|
||||
@@ -109,6 +109,9 @@ struct led_classdev {
|
||||
@@ -177,6 +166,3 @@ index b16b803cc1ac..4dff7add72ce 100644
|
||||
|
||||
/* set_brightness_work / blink_timer flags, atomic, private. */
|
||||
unsigned long work_flags;
|
||||
--
|
||||
2.54.0
|
||||
|
||||
@@ -7,11 +7,9 @@ Subject: [PATCH] Added Device IDs for August DVB-T 205
|
||||
drivers/media/usb/dvb-usb-v2/rtl28xxu.c | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/drivers/media/usb/dvb-usb-v2/rtl28xxu.c b/drivers/media/usb/dvb-usb-v2/rtl28xxu.c
|
||||
index 487c6ab784ab..62dc688f0ac7 100644
|
||||
--- a/drivers/media/usb/dvb-usb-v2/rtl28xxu.c
|
||||
+++ b/drivers/media/usb/dvb-usb-v2/rtl28xxu.c
|
||||
@@ -1964,6 +1964,10 @@ static const struct usb_device_id rtl28xxu_id_table[] = {
|
||||
@@ -1964,6 +1964,10 @@ static const struct usb_device_id rtl28x
|
||||
&rtl28xxu_props, "Compro VideoMate U650F", NULL) },
|
||||
{ DVB_USB_DEVICE(USB_VID_KWORLD_2, 0xd394,
|
||||
&rtl28xxu_props, "MaxMedia HU394-T", NULL) },
|
||||
@@ -22,6 +20,3 @@ index 487c6ab784ab..62dc688f0ac7 100644
|
||||
{ DVB_USB_DEVICE(USB_VID_LEADTEK, 0x6a03,
|
||||
&rtl28xxu_props, "Leadtek WinFast DTV Dongle mini", NULL) },
|
||||
{ DVB_USB_DEVICE(USB_VID_GTEK, USB_PID_CPYTO_REDI_PC50A,
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+6
-42
@@ -84,11 +84,9 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
create mode 100644 arch/arm/lib/memmove_rpi.S
|
||||
create mode 100644 arch/arm/lib/memset_rpi.S
|
||||
|
||||
diff --git a/arch/arm/include/asm/string.h b/arch/arm/include/asm/string.h
|
||||
index 96fc6cf460ec..94f1abb48d49 100644
|
||||
--- a/arch/arm/include/asm/string.h
|
||||
+++ b/arch/arm/include/asm/string.h
|
||||
@@ -72,4 +72,9 @@ static inline void *memset64(uint64_t *p, uint64_t v, __kernel_size_t n)
|
||||
@@ -72,4 +72,9 @@ static inline void *memset64(uint64_t *p
|
||||
|
||||
#endif
|
||||
|
||||
@@ -98,8 +96,6 @@ index 96fc6cf460ec..94f1abb48d49 100644
|
||||
+#endif
|
||||
+
|
||||
#endif
|
||||
diff --git a/arch/arm/include/asm/uaccess.h b/arch/arm/include/asm/uaccess.h
|
||||
index f90be312418e..4fe53e1a647c 100644
|
||||
--- a/arch/arm/include/asm/uaccess.h
|
||||
+++ b/arch/arm/include/asm/uaccess.h
|
||||
@@ -533,6 +533,9 @@ do { \
|
||||
@@ -112,8 +108,6 @@ index f90be312418e..4fe53e1a647c 100644
|
||||
static inline unsigned long __must_check
|
||||
raw_copy_from_user(void *to, const void __user *from, unsigned long n)
|
||||
{
|
||||
diff --git a/arch/arm/lib/Makefile b/arch/arm/lib/Makefile
|
||||
index 0ca5aae1bcc3..c3a0c40550ee 100644
|
||||
--- a/arch/arm/lib/Makefile
|
||||
+++ b/arch/arm/lib/Makefile
|
||||
@@ -7,8 +7,8 @@
|
||||
@@ -144,9 +138,6 @@ index 0ca5aae1bcc3..c3a0c40550ee 100644
|
||||
# using lib_ here won't override already available weak symbols
|
||||
obj-$(CONFIG_UACCESS_WITH_MEMCPY) += uaccess_with_memcpy.o
|
||||
|
||||
diff --git a/arch/arm/lib/arm-mem.h b/arch/arm/lib/arm-mem.h
|
||||
new file mode 100644
|
||||
index 000000000000..5d4bda19ad20
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/lib/arm-mem.h
|
||||
@@ -0,0 +1,159 @@
|
||||
@@ -309,8 +300,6 @@ index 000000000000..5d4bda19ad20
|
||||
+ .endif
|
||||
+92:
|
||||
+.endm
|
||||
diff --git a/arch/arm/lib/copy_from_user.S b/arch/arm/lib/copy_from_user.S
|
||||
index 270de7debd0f..2eda93fc22e6 100644
|
||||
--- a/arch/arm/lib/copy_from_user.S
|
||||
+++ b/arch/arm/lib/copy_from_user.S
|
||||
@@ -104,7 +104,8 @@ UNWIND( .save {r0, r2, r3, \regs} )
|
||||
@@ -331,9 +320,6 @@ index 270de7debd0f..2eda93fc22e6 100644
|
||||
|
||||
.pushsection .text.fixup,"ax"
|
||||
.align 0
|
||||
diff --git a/arch/arm/lib/exports_rpi.c b/arch/arm/lib/exports_rpi.c
|
||||
new file mode 100644
|
||||
index 000000000000..1f826047db75
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/lib/exports_rpi.c
|
||||
@@ -0,0 +1,37 @@
|
||||
@@ -374,9 +360,6 @@ index 000000000000..1f826047db75
|
||||
+#include <linux/module.h>
|
||||
+
|
||||
+EXPORT_SYMBOL(memcmp);
|
||||
diff --git a/arch/arm/lib/memcmp_rpi.S b/arch/arm/lib/memcmp_rpi.S
|
||||
new file mode 100644
|
||||
index 000000000000..bf6e4edfc9d3
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/lib/memcmp_rpi.S
|
||||
@@ -0,0 +1,285 @@
|
||||
@@ -665,9 +648,6 @@ index 000000000000..bf6e4edfc9d3
|
||||
+ .unreq DAT7
|
||||
+ .unreq OFF
|
||||
+ENDPROC(memcmp)
|
||||
diff --git a/arch/arm/lib/memcpy_rpi.S b/arch/arm/lib/memcpy_rpi.S
|
||||
new file mode 100644
|
||||
index 000000000000..d246f9f3903a
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/lib/memcpy_rpi.S
|
||||
@@ -0,0 +1,65 @@
|
||||
@@ -736,9 +716,6 @@ index 000000000000..d246f9f3903a
|
||||
+ENDPROC(__memcpy)
|
||||
+ENDPROC(memcpy)
|
||||
+ENDPROC(mmiocpy)
|
||||
diff --git a/arch/arm/lib/memcpymove.h b/arch/arm/lib/memcpymove.h
|
||||
new file mode 100644
|
||||
index 000000000000..65a6e065a7f2
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/lib/memcpymove.h
|
||||
@@ -0,0 +1,488 @@
|
||||
@@ -1230,9 +1207,6 @@ index 000000000000..65a6e065a7f2
|
||||
+ .unreq LAST
|
||||
+ .unreq OFF
|
||||
+.endm
|
||||
diff --git a/arch/arm/lib/memmove_rpi.S b/arch/arm/lib/memmove_rpi.S
|
||||
new file mode 100644
|
||||
index 000000000000..5715dfd95859
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/lib/memmove_rpi.S
|
||||
@@ -0,0 +1,63 @@
|
||||
@@ -1299,9 +1273,6 @@ index 000000000000..5715dfd95859
|
||||
+ bpl memcpy /* pl works even over -1 - 0 and 0x7fffffff - 0x80000000 boundaries */
|
||||
+ memcpy 1
|
||||
+ENDPROC(memmove)
|
||||
diff --git a/arch/arm/lib/memset_rpi.S b/arch/arm/lib/memset_rpi.S
|
||||
new file mode 100644
|
||||
index 000000000000..087d68ea5d18
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/lib/memset_rpi.S
|
||||
@@ -0,0 +1,132 @@
|
||||
@@ -1437,8 +1408,6 @@ index 000000000000..087d68ea5d18
|
||||
+ENDPROC(__memset)
|
||||
+ENDPROC(memset)
|
||||
+ENDPROC(mmioset)
|
||||
diff --git a/arch/arm/lib/uaccess_with_memcpy.c b/arch/arm/lib/uaccess_with_memcpy.c
|
||||
index c0ac7796d775..c416c7d3242f 100644
|
||||
--- a/arch/arm/lib/uaccess_with_memcpy.c
|
||||
+++ b/arch/arm/lib/uaccess_with_memcpy.c
|
||||
@@ -19,6 +19,14 @@
|
||||
@@ -1456,7 +1425,7 @@ index c0ac7796d775..c416c7d3242f 100644
|
||||
static int
|
||||
pin_page_for_write(const void __user *_addr, pte_t **ptep, spinlock_t **ptlp)
|
||||
{
|
||||
@@ -43,7 +51,7 @@ pin_page_for_write(const void __user *_addr, pte_t **ptep, spinlock_t **ptlp)
|
||||
@@ -43,7 +51,7 @@ pin_page_for_write(const void __user *_a
|
||||
return 0;
|
||||
|
||||
pmd = pmd_offset(pud, addr);
|
||||
@@ -1465,7 +1434,7 @@ index c0ac7796d775..c416c7d3242f 100644
|
||||
return 0;
|
||||
|
||||
/*
|
||||
@@ -89,6 +97,47 @@ pin_page_for_write(const void __user *_addr, pte_t **ptep, spinlock_t **ptlp)
|
||||
@@ -89,6 +97,47 @@ pin_page_for_write(const void __user *_a
|
||||
return 1;
|
||||
}
|
||||
|
||||
@@ -1513,7 +1482,7 @@ index c0ac7796d775..c416c7d3242f 100644
|
||||
static unsigned long noinline
|
||||
__copy_to_user_memcpy(void __user *to, const void *from, unsigned long n)
|
||||
{
|
||||
@@ -137,6 +186,54 @@ __copy_to_user_memcpy(void __user *to, const void *from, unsigned long n)
|
||||
@@ -137,6 +186,54 @@ out:
|
||||
return n;
|
||||
}
|
||||
|
||||
@@ -1568,7 +1537,7 @@ index c0ac7796d775..c416c7d3242f 100644
|
||||
unsigned long
|
||||
arm_copy_to_user(void __user *to, const void *from, unsigned long n)
|
||||
{
|
||||
@@ -147,7 +244,7 @@ arm_copy_to_user(void __user *to, const void *from, unsigned long n)
|
||||
@@ -147,7 +244,7 @@ arm_copy_to_user(void __user *to, const
|
||||
* With frame pointer disabled, tail call optimization kicks in
|
||||
* as well making this test almost invisible.
|
||||
*/
|
||||
@@ -1577,7 +1546,7 @@ index c0ac7796d775..c416c7d3242f 100644
|
||||
unsigned long ua_flags = uaccess_save_and_enable();
|
||||
n = __copy_to_user_std(to, from, n);
|
||||
uaccess_restore(ua_flags);
|
||||
@@ -157,6 +254,32 @@ arm_copy_to_user(void __user *to, const void *from, unsigned long n)
|
||||
@@ -157,6 +254,32 @@ arm_copy_to_user(void __user *to, const
|
||||
}
|
||||
return n;
|
||||
}
|
||||
@@ -1610,8 +1579,6 @@ index c0ac7796d775..c416c7d3242f 100644
|
||||
|
||||
static unsigned long noinline
|
||||
__clear_user_memset(void __user *addr, unsigned long n)
|
||||
diff --git a/arch/arm/mach-bcm/Kconfig b/arch/arm/mach-bcm/Kconfig
|
||||
index 653a909c5ecd..203be91af9eb 100644
|
||||
--- a/arch/arm/mach-bcm/Kconfig
|
||||
+++ b/arch/arm/mach-bcm/Kconfig
|
||||
@@ -181,6 +181,13 @@ config ARCH_BCM_53573
|
||||
@@ -1628,6 +1595,3 @@ index 653a909c5ecd..203be91af9eb 100644
|
||||
config ARCH_BRCMSTB
|
||||
bool "Broadcom BCM7XXX based boards"
|
||||
depends on ARCH_MULTI_V7
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+1
-14
@@ -38,8 +38,6 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||
create mode 100644 drivers/video/fbdev/rpisense-fb.c
|
||||
create mode 100644 include/linux/mfd/rpisense/framebuffer.h
|
||||
|
||||
diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
|
||||
index 9353d51f38d3..062bf7338c54 100644
|
||||
--- a/drivers/video/fbdev/Kconfig
|
||||
+++ b/drivers/video/fbdev/Kconfig
|
||||
@@ -1833,6 +1833,19 @@ config FB_SM712
|
||||
@@ -62,11 +60,9 @@ index 9353d51f38d3..062bf7338c54 100644
|
||||
source "drivers/video/fbdev/omap/Kconfig"
|
||||
source "drivers/video/fbdev/omap2/Kconfig"
|
||||
source "drivers/video/fbdev/mmp/Kconfig"
|
||||
diff --git a/drivers/video/fbdev/Makefile b/drivers/video/fbdev/Makefile
|
||||
index ee9b2c3c7206..ea305adc3f3c 100644
|
||||
--- a/drivers/video/fbdev/Makefile
|
||||
+++ b/drivers/video/fbdev/Makefile
|
||||
@@ -124,6 +124,7 @@ obj-$(CONFIG_FB_VGA16) += vga16fb.o
|
||||
@@ -124,6 +124,7 @@ obj-$(CONFIG_FB_VGA16) += vga
|
||||
obj-$(CONFIG_FB_OF) += offb.o
|
||||
obj-$(CONFIG_FB_SSD1307) += ssd1307fb.o
|
||||
obj-$(CONFIG_FB_SIMPLE) += simplefb.o
|
||||
@@ -74,9 +70,6 @@ index ee9b2c3c7206..ea305adc3f3c 100644
|
||||
|
||||
# the test framebuffer is last
|
||||
obj-$(CONFIG_FB_VIRTUAL) += vfb.o
|
||||
diff --git a/drivers/video/fbdev/rpisense-fb.c b/drivers/video/fbdev/rpisense-fb.c
|
||||
new file mode 100644
|
||||
index 000000000000..a2a63ddbe012
|
||||
--- /dev/null
|
||||
+++ b/drivers/video/fbdev/rpisense-fb.c
|
||||
@@ -0,0 +1,295 @@
|
||||
@@ -375,9 +368,6 @@ index 000000000000..a2a63ddbe012
|
||||
+MODULE_AUTHOR("Serge Schneider <serge@raspberrypi.org>");
|
||||
+MODULE_LICENSE("GPL");
|
||||
+
|
||||
diff --git a/include/linux/mfd/rpisense/framebuffer.h b/include/linux/mfd/rpisense/framebuffer.h
|
||||
new file mode 100644
|
||||
index 000000000000..621f24386bb0
|
||||
--- /dev/null
|
||||
+++ b/include/linux/mfd/rpisense/framebuffer.h
|
||||
@@ -0,0 +1,35 @@
|
||||
@@ -416,6 +406,3 @@ index 000000000000..621f24386bb0
|
||||
+};
|
||||
+
|
||||
+#endif
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+1
-6
@@ -17,11 +17,9 @@ Signed-off-by: Charles Mirabile <cmirabil@redhat.com>
|
||||
drivers/mfd/simple-mfd-i2c.c | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/drivers/mfd/simple-mfd-i2c.c b/drivers/mfd/simple-mfd-i2c.c
|
||||
index 9f911afafc25..28675b53cbc4 100644
|
||||
--- a/drivers/mfd/simple-mfd-i2c.c
|
||||
+++ b/drivers/mfd/simple-mfd-i2c.c
|
||||
@@ -118,6 +118,7 @@ static const struct of_device_id simple_mfd_i2c_of_match[] = {
|
||||
@@ -118,6 +118,7 @@ static const struct of_device_id simple_
|
||||
{ .compatible = "maxim,max5970", .data = &maxim_max5970},
|
||||
{ .compatible = "maxim,max5978", .data = &maxim_max5970},
|
||||
{ .compatible = "maxim,max77705-battery", .data = &maxim_mon_max77705},
|
||||
@@ -29,6 +27,3 @@ index 9f911afafc25..28675b53cbc4 100644
|
||||
{ .compatible = "silergy,sy7636a", .data = &silergy_sy7636a},
|
||||
{ .compatible = "spacemit,p1", .data = &spacemit_p1, },
|
||||
{}
|
||||
--
|
||||
2.54.0
|
||||
|
||||
-5
@@ -14,8 +14,6 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
||||
drivers/input/joystick/sensehat-joystick.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/input/joystick/sensehat-joystick.c b/drivers/input/joystick/sensehat-joystick.c
|
||||
index a84df39d3b2f..f24beb98e444 100644
|
||||
--- a/drivers/input/joystick/sensehat-joystick.c
|
||||
+++ b/drivers/input/joystick/sensehat-joystick.c
|
||||
@@ -28,7 +28,7 @@ struct sensehat_joystick {
|
||||
@@ -27,6 +25,3 @@ index a84df39d3b2f..f24beb98e444 100644
|
||||
};
|
||||
|
||||
static irqreturn_t sensehat_joystick_report(int irq, void *cookie)
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+40
-301
File diff suppressed because it is too large.
Load diff
+1
-11
@@ -22,8 +22,6 @@ Signed-off-by: Alex Riesen <alexander.riesen@cetitec.com>
|
||||
3 files changed, 126 insertions(+)
|
||||
create mode 100644 drivers/video/backlight/rpi_backlight.c
|
||||
|
||||
diff --git a/drivers/video/backlight/Kconfig b/drivers/video/backlight/Kconfig
|
||||
index d9374d208cee..7b836f9adf91 100644
|
||||
--- a/drivers/video/backlight/Kconfig
|
||||
+++ b/drivers/video/backlight/Kconfig
|
||||
@@ -249,6 +249,13 @@ config BACKLIGHT_PWM
|
||||
@@ -40,11 +38,9 @@ index d9374d208cee..7b836f9adf91 100644
|
||||
config BACKLIGHT_DA903X
|
||||
tristate "Backlight Driver for DA9030/DA9034 using WLED"
|
||||
depends on PMIC_DA903X
|
||||
diff --git a/drivers/video/backlight/Makefile b/drivers/video/backlight/Makefile
|
||||
index dfbb169bf6ea..bcb568afe5d4 100644
|
||||
--- a/drivers/video/backlight/Makefile
|
||||
+++ b/drivers/video/backlight/Makefile
|
||||
@@ -52,6 +52,7 @@ obj-$(CONFIG_BACKLIGHT_OMAP1) += omap1_bl.o
|
||||
@@ -52,6 +52,7 @@ obj-$(CONFIG_BACKLIGHT_OMAP1) += omap1_
|
||||
obj-$(CONFIG_BACKLIGHT_PANDORA) += pandora_bl.o
|
||||
obj-$(CONFIG_BACKLIGHT_PWM) += pwm_bl.o
|
||||
obj-$(CONFIG_BACKLIGHT_QCOM_WLED) += qcom-wled.o
|
||||
@@ -52,9 +48,6 @@ index dfbb169bf6ea..bcb568afe5d4 100644
|
||||
obj-$(CONFIG_BACKLIGHT_RT4831) += rt4831-backlight.o
|
||||
obj-$(CONFIG_BACKLIGHT_SAHARA) += kb3886_bl.o
|
||||
obj-$(CONFIG_BACKLIGHT_SKY81452) += sky81452-backlight.o
|
||||
diff --git a/drivers/video/backlight/rpi_backlight.c b/drivers/video/backlight/rpi_backlight.c
|
||||
new file mode 100644
|
||||
index 000000000000..877f29f1d7b0
|
||||
--- /dev/null
|
||||
+++ b/drivers/video/backlight/rpi_backlight.c
|
||||
@@ -0,0 +1,118 @@
|
||||
@@ -176,6 +169,3 @@ index 000000000000..877f29f1d7b0
|
||||
+MODULE_AUTHOR("Gordon Hollingworth <gordon@raspberrypi.org>");
|
||||
+MODULE_DESCRIPTION("Raspberry Pi mailbox based Backlight Driver");
|
||||
+MODULE_LICENSE("GPL");
|
||||
--
|
||||
2.54.0
|
||||
|
||||
@@ -33,8 +33,6 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
3 files changed, 220 insertions(+)
|
||||
create mode 100644 drivers/gpio/gpio-bcm-virt.c
|
||||
|
||||
diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig
|
||||
index 4d644dcecad9..8ce7a57de297 100644
|
||||
--- a/drivers/gpio/Kconfig
|
||||
+++ b/drivers/gpio/Kconfig
|
||||
@@ -237,6 +237,12 @@ config GPIO_BLZP1600
|
||||
@@ -50,11 +48,9 @@ index 4d644dcecad9..8ce7a57de297 100644
|
||||
config GPIO_BRCMSTB
|
||||
tristate "BRCMSTB GPIO support"
|
||||
default y if (ARCH_BRCMSTB || BMIPS_GENERIC)
|
||||
diff --git a/drivers/gpio/Makefile b/drivers/gpio/Makefile
|
||||
index ec296fa14bfd..75dbe47f4a32 100644
|
||||
--- a/drivers/gpio/Makefile
|
||||
+++ b/drivers/gpio/Makefile
|
||||
@@ -43,6 +43,7 @@ obj-$(CONFIG_GPIO_ASPEED_SGPIO) += gpio-aspeed-sgpio.o
|
||||
@@ -43,6 +43,7 @@ obj-$(CONFIG_GPIO_ASPEED_SGPIO) += gpio
|
||||
obj-$(CONFIG_GPIO_ATH79) += gpio-ath79.o
|
||||
obj-$(CONFIG_GPIO_BCM_KONA) += gpio-bcm-kona.o
|
||||
obj-$(CONFIG_GPIO_BCM_XGS_IPROC) += gpio-xgs-iproc.o
|
||||
@@ -62,9 +58,6 @@ index ec296fa14bfd..75dbe47f4a32 100644
|
||||
obj-$(CONFIG_GPIO_BD71815) += gpio-bd71815.o
|
||||
obj-$(CONFIG_GPIO_BD71828) += gpio-bd71828.o
|
||||
obj-$(CONFIG_GPIO_BD9571MWV) += gpio-bd9571mwv.o
|
||||
diff --git a/drivers/gpio/gpio-bcm-virt.c b/drivers/gpio/gpio-bcm-virt.c
|
||||
new file mode 100644
|
||||
index 000000000000..037bd7a3f64e
|
||||
--- /dev/null
|
||||
+++ b/drivers/gpio/gpio-bcm-virt.c
|
||||
@@ -0,0 +1,213 @@
|
||||
@@ -281,6 +274,3 @@ index 000000000000..037bd7a3f64e
|
||||
+MODULE_AUTHOR("Dom Cobley <popcornmix@gmail.com>");
|
||||
+MODULE_DESCRIPTION("brcmvirt GPIO driver");
|
||||
+MODULE_ALIAS("platform:brcmvirt-gpio");
|
||||
--
|
||||
2.54.0
|
||||
|
||||
@@ -64,9 +64,6 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
||||
create mode 100644 Documentation/devicetree/configfs-overlays.txt
|
||||
create mode 100644 drivers/of/configfs.c
|
||||
|
||||
diff --git a/Documentation/devicetree/configfs-overlays.txt b/Documentation/devicetree/configfs-overlays.txt
|
||||
new file mode 100644
|
||||
index 000000000000..5fa43e064307
|
||||
--- /dev/null
|
||||
+++ b/Documentation/devicetree/configfs-overlays.txt
|
||||
@@ -0,0 +1,31 @@
|
||||
@@ -101,8 +98,6 @@ index 000000000000..5fa43e064307
|
||||
+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).
|
||||
diff --git a/drivers/of/Kconfig b/drivers/of/Kconfig
|
||||
index 50697cc3b07e..9c1af8445ec7 100644
|
||||
--- a/drivers/of/Kconfig
|
||||
+++ b/drivers/of/Kconfig
|
||||
@@ -126,4 +126,15 @@ config OF_OVERLAY_KUNIT_TEST
|
||||
@@ -121,8 +116,6 @@ index 50697cc3b07e..9c1af8445ec7 100644
|
||||
+ Enable a simple user-space driven DT overlay interface.
|
||||
+
|
||||
endif # OF
|
||||
diff --git a/drivers/of/Makefile b/drivers/of/Makefile
|
||||
index 379a0afcbdc0..f294b36207f8 100644
|
||||
--- a/drivers/of/Makefile
|
||||
+++ b/drivers/of/Makefile
|
||||
@@ -1,6 +1,7 @@
|
||||
@@ -133,9 +126,6 @@ index 379a0afcbdc0..f294b36207f8 100644
|
||||
obj-$(CONFIG_OF_DYNAMIC) += dynamic.o
|
||||
obj-$(CONFIG_OF_FLATTREE) += fdt.o empty_root.dtb.o
|
||||
obj-$(CONFIG_OF_EARLY_FLATTREE) += fdt_address.o
|
||||
diff --git a/drivers/of/configfs.c b/drivers/of/configfs.c
|
||||
new file mode 100644
|
||||
index 000000000000..0e6bccb8ff2e
|
||||
--- /dev/null
|
||||
+++ b/drivers/of/configfs.c
|
||||
@@ -0,0 +1,277 @@
|
||||
@@ -416,6 +406,3 @@ index 000000000000..0e6bccb8ff2e
|
||||
+ return ret;
|
||||
+}
|
||||
+late_initcall(of_cfs_init);
|
||||
--
|
||||
2.54.0
|
||||
|
||||
@@ -8,8 +8,6 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c
|
||||
index 4e6ed02c1591..b3c4ac025e91 100644
|
||||
--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c
|
||||
+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c
|
||||
@@ -609,6 +609,7 @@ BRCMF_FW_DEF(4329, "brcmfmac4329-sdio");
|
||||
@@ -20,7 +18,7 @@ index 4e6ed02c1591..b3c4ac025e91 100644
|
||||
BRCMF_FW_DEF(4335, "brcmfmac4335-sdio");
|
||||
BRCMF_FW_DEF(43362, "brcmfmac43362-sdio");
|
||||
BRCMF_FW_DEF(4339, "brcmfmac4339-sdio");
|
||||
@@ -641,7 +642,7 @@ static const struct brcmf_firmware_mapping brcmf_sdio_fwnames[] = {
|
||||
@@ -641,7 +642,7 @@ static const struct brcmf_firmware_mappi
|
||||
BRCMF_FW_ENTRY(BRCM_CC_4330_CHIP_ID, 0xFFFFFFFF, 4330),
|
||||
BRCMF_FW_ENTRY(BRCM_CC_4334_CHIP_ID, 0xFFFFFFFF, 4334),
|
||||
BRCMF_FW_ENTRY(BRCM_CC_43340_CHIP_ID, 0xFFFFFFFF, 43340),
|
||||
@@ -29,6 +27,3 @@ index 4e6ed02c1591..b3c4ac025e91 100644
|
||||
BRCMF_FW_ENTRY(BRCM_CC_4335_CHIP_ID, 0xFFFFFFFF, 4335),
|
||||
BRCMF_FW_ENTRY(BRCM_CC_43362_CHIP_ID, 0xFFFFFFFE, 43362),
|
||||
BRCMF_FW_ENTRY(BRCM_CC_4339_CHIP_ID, 0xFFFFFFFF, 4339),
|
||||
--
|
||||
2.54.0
|
||||
|
||||
@@ -9,11 +9,9 @@ other with conf_req and conf_rsp messages, in a demented game of tag.
|
||||
drivers/bluetooth/hci_h5.c | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/bluetooth/hci_h5.c b/drivers/bluetooth/hci_h5.c
|
||||
index d0d4420c1a0f..c6bf30801b49 100644
|
||||
--- a/drivers/bluetooth/hci_h5.c
|
||||
+++ b/drivers/bluetooth/hci_h5.c
|
||||
@@ -358,7 +358,8 @@ static void h5_handle_internal_rx(struct hci_uart *hu)
|
||||
@@ -358,7 +358,8 @@ static void h5_handle_internal_rx(struct
|
||||
h5_link_control(hu, conf_req, 3);
|
||||
} else if (memcmp(data, conf_req, 2) == 0) {
|
||||
h5_link_control(hu, conf_rsp, 2);
|
||||
@@ -23,6 +21,3 @@ index d0d4420c1a0f..c6bf30801b49 100644
|
||||
} else if (memcmp(data, conf_rsp, 2) == 0) {
|
||||
if (H5_HDR_LEN(hdr) > 2)
|
||||
h5->tx_win = (data[2] & 0x07);
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+3
-12
@@ -53,8 +53,6 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||||
include/linux/irqchip/irq-bcm2836.h | 2 ++
|
||||
3 files changed, 38 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/irqchip/irq-bcm2835.c b/drivers/irqchip/irq-bcm2835.c
|
||||
index 527cc962d6fd..176c487505af 100644
|
||||
--- a/drivers/irqchip/irq-bcm2835.c
|
||||
+++ b/drivers/irqchip/irq-bcm2835.c
|
||||
@@ -40,6 +40,7 @@
|
||||
@@ -65,7 +63,7 @@ index 527cc962d6fd..176c487505af 100644
|
||||
#include <linux/irqdomain.h>
|
||||
|
||||
#include <asm/exception.h>
|
||||
@@ -154,12 +155,24 @@ static void armctrl_unmask_irq(struct irq_data *d)
|
||||
@@ -154,12 +155,24 @@ static void armctrl_unmask_irq(struct ir
|
||||
}
|
||||
}
|
||||
|
||||
@@ -90,7 +88,7 @@ index 527cc962d6fd..176c487505af 100644
|
||||
};
|
||||
|
||||
static int armctrl_xlate(struct irq_domain *d, struct device_node *ctrlr,
|
||||
@@ -332,7 +345,8 @@ static void bcm2836_chained_handle_irq(struct irq_desc *desc)
|
||||
@@ -332,7 +345,8 @@ static void bcm2836_chained_handle_irq(s
|
||||
{
|
||||
u32 hwirq;
|
||||
|
||||
@@ -100,11 +98,9 @@ index 527cc962d6fd..176c487505af 100644
|
||||
generic_handle_domain_irq(intc.domain, hwirq);
|
||||
}
|
||||
|
||||
diff --git a/drivers/irqchip/irq-bcm2836.c b/drivers/irqchip/irq-bcm2836.c
|
||||
index 22519f3f4f66..85f16f308bcd 100644
|
||||
--- a/drivers/irqchip/irq-bcm2836.c
|
||||
+++ b/drivers/irqchip/irq-bcm2836.c
|
||||
@@ -89,6 +89,27 @@ static void bcm2836_arm_irqchip_unmask_gpu_irq(struct irq_data *d)
|
||||
@@ -89,6 +89,27 @@ static void bcm2836_arm_irqchip_unmask_g
|
||||
{
|
||||
}
|
||||
|
||||
@@ -132,8 +128,6 @@ index 22519f3f4f66..85f16f308bcd 100644
|
||||
static struct irq_chip bcm2836_arm_irqchip_gpu = {
|
||||
.name = "bcm2836-gpu",
|
||||
.irq_mask = bcm2836_arm_irqchip_mask_gpu_irq,
|
||||
diff --git a/include/linux/irqchip/irq-bcm2836.h b/include/linux/irqchip/irq-bcm2836.h
|
||||
index ac5719d8f56b..6fe053486447 100644
|
||||
--- a/include/linux/irqchip/irq-bcm2836.h
|
||||
+++ b/include/linux/irqchip/irq-bcm2836.h
|
||||
@@ -59,3 +59,5 @@
|
||||
@@ -142,6 +136,3 @@ index ac5719d8f56b..6fe053486447 100644
|
||||
#define LAST_IRQ LOCAL_IRQ_PMU_FAST
|
||||
+
|
||||
+void bcm2836_arm_irqchip_spin_gpu_irq(void);
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+1
-6
@@ -7,11 +7,9 @@ Subject: [PATCH] ARM64: Force hardware emulation of deprecated instructions.
|
||||
arch/arm64/kernel/armv8_deprecated.c | 5 +++++
|
||||
1 file changed, 5 insertions(+)
|
||||
|
||||
diff --git a/arch/arm64/kernel/armv8_deprecated.c b/arch/arm64/kernel/armv8_deprecated.c
|
||||
index e737c6295ec7..abb590819ac0 100644
|
||||
--- a/arch/arm64/kernel/armv8_deprecated.c
|
||||
+++ b/arch/arm64/kernel/armv8_deprecated.c
|
||||
@@ -540,9 +540,14 @@ static void __init register_insn_emulation(struct insn_emulation *insn)
|
||||
@@ -540,9 +540,14 @@ static void __init register_insn_emulati
|
||||
|
||||
switch (insn->status) {
|
||||
case INSN_DEPRECATED:
|
||||
@@ -26,6 +24,3 @@ index e737c6295ec7..abb590819ac0 100644
|
||||
insn->max = INSN_HW;
|
||||
break;
|
||||
case INSN_OBSOLETE:
|
||||
--
|
||||
2.54.0
|
||||
|
||||
@@ -32,8 +32,6 @@ Signed-off-by: Dom Cobley <popcornmix@gmail.com>
|
||||
3 files changed, 835 insertions(+)
|
||||
create mode 100644 drivers/perf/raspberrypi_axi_monitor.c
|
||||
|
||||
diff --git a/drivers/perf/Kconfig b/drivers/perf/Kconfig
|
||||
index 638321fc9800..e882f75e7a7a 100644
|
||||
--- a/drivers/perf/Kconfig
|
||||
+++ b/drivers/perf/Kconfig
|
||||
@@ -271,6 +271,14 @@ config ALIBABA_UNCORE_DRW_PMU
|
||||
@@ -51,18 +49,13 @@ index 638321fc9800..e882f75e7a7a 100644
|
||||
source "drivers/perf/hisilicon/Kconfig"
|
||||
|
||||
config MARVELL_CN10K_DDR_PMU
|
||||
diff --git a/drivers/perf/Makefile b/drivers/perf/Makefile
|
||||
index ea52711a87e3..1ab73aa986d4 100644
|
||||
--- a/drivers/perf/Makefile
|
||||
+++ b/drivers/perf/Makefile
|
||||
@@ -35,3 +35,4 @@ obj-$(CONFIG_DWC_PCIE_PMU) += dwc_pcie_pmu.o
|
||||
@@ -35,3 +35,4 @@ obj-$(CONFIG_DWC_PCIE_PMU) += dwc_pcie_p
|
||||
obj-$(CONFIG_ARM_CORESIGHT_PMU_ARCH_SYSTEM_PMU) += arm_cspmu/
|
||||
obj-$(CONFIG_MESON_DDR_PMU) += amlogic/
|
||||
obj-$(CONFIG_CXL_PMU) += cxl_pmu.o
|
||||
+obj-$(CONFIG_RPI_AXIPERF) += raspberrypi_axi_monitor.o
|
||||
diff --git a/drivers/perf/raspberrypi_axi_monitor.c b/drivers/perf/raspberrypi_axi_monitor.c
|
||||
new file mode 100644
|
||||
index 000000000000..b5ad12a2a9ab
|
||||
--- /dev/null
|
||||
+++ b/drivers/perf/raspberrypi_axi_monitor.c
|
||||
@@ -0,0 +1,826 @@
|
||||
@@ -892,6 +885,3 @@ index 000000000000..b5ad12a2a9ab
|
||||
+MODULE_DESCRIPTION("RPI AXI Performance monitor driver");
|
||||
+MODULE_LICENSE("GPL");
|
||||
+
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+1
-6
@@ -25,8 +25,6 @@ Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
|
||||
arch/arm/mach-bcm/board_bcm2835.c | 14 ++++++++++++++
|
||||
1 file changed, 14 insertions(+)
|
||||
|
||||
diff --git a/arch/arm/mach-bcm/board_bcm2835.c b/arch/arm/mach-bcm/board_bcm2835.c
|
||||
index bfc556f76720..73ec2427fbcf 100644
|
||||
--- a/arch/arm/mach-bcm/board_bcm2835.c
|
||||
+++ b/arch/arm/mach-bcm/board_bcm2835.c
|
||||
@@ -6,12 +6,25 @@
|
||||
@@ -55,7 +53,7 @@ index bfc556f76720..73ec2427fbcf 100644
|
||||
static const char * const bcm2835_compat[] = {
|
||||
#ifdef CONFIG_ARCH_MULTI_V6
|
||||
"brcm,bcm2835",
|
||||
@@ -24,6 +37,7 @@ static const char * const bcm2835_compat[] = {
|
||||
@@ -24,6 +37,7 @@ static const char * const bcm2835_compat
|
||||
};
|
||||
|
||||
DT_MACHINE_START(BCM2835, "BCM2835")
|
||||
@@ -63,6 +61,3 @@ index bfc556f76720..73ec2427fbcf 100644
|
||||
.dt_compat = bcm2835_compat,
|
||||
.smp = smp_ops(bcm2836_smp_ops),
|
||||
MACHINE_END
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+1
-6
@@ -15,8 +15,6 @@ Signed-off-by: Floris Bos <bos@je-eigen-domein.nl>
|
||||
arch/arm/mach-bcm/board_bcm2835.c | 69 +++++++++++++++++++++++++++++++
|
||||
1 file changed, 69 insertions(+)
|
||||
|
||||
diff --git a/arch/arm/mach-bcm/board_bcm2835.c b/arch/arm/mach-bcm/board_bcm2835.c
|
||||
index 73ec2427fbcf..9b6c921106b5 100644
|
||||
--- a/arch/arm/mach-bcm/board_bcm2835.c
|
||||
+++ b/arch/arm/mach-bcm/board_bcm2835.c
|
||||
@@ -6,6 +6,7 @@
|
||||
@@ -108,7 +106,7 @@ index 73ec2427fbcf..9b6c921106b5 100644
|
||||
static const char * const bcm2835_compat[] = {
|
||||
#ifdef CONFIG_ARCH_MULTI_V6
|
||||
"brcm,bcm2835",
|
||||
@@ -37,6 +105,7 @@ static const char * const bcm2835_compat[] = {
|
||||
@@ -37,6 +105,7 @@ static const char * const bcm2835_compat
|
||||
};
|
||||
|
||||
DT_MACHINE_START(BCM2835, "BCM2835")
|
||||
@@ -116,6 +114,3 @@ index 73ec2427fbcf..9b6c921106b5 100644
|
||||
.init_machine = bcm2835_init,
|
||||
.dt_compat = bcm2835_compat,
|
||||
.smp = smp_ops(bcm2836_smp_ops),
|
||||
--
|
||||
2.54.0
|
||||
|
||||
-5
@@ -14,8 +14,6 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
||||
arch/arm/kernel/fiq.c | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/arch/arm/kernel/fiq.c b/arch/arm/kernel/fiq.c
|
||||
index d2c8e5313539..bb320f08ad2f 100644
|
||||
--- a/arch/arm/kernel/fiq.c
|
||||
+++ b/arch/arm/kernel/fiq.c
|
||||
@@ -57,6 +57,8 @@
|
||||
@@ -36,6 +34,3 @@ index d2c8e5313539..bb320f08ad2f 100644
|
||||
enable_irq(fiq + fiq_start);
|
||||
}
|
||||
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+1
-6
@@ -20,11 +20,9 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
||||
drivers/i2c/busses/i2c-gpio.c | 4 +++-
|
||||
1 file changed, 3 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/i2c/busses/i2c-gpio.c b/drivers/i2c/busses/i2c-gpio.c
|
||||
index f4355b17bfbf..d83b19a37fd6 100644
|
||||
--- a/drivers/i2c/busses/i2c-gpio.c
|
||||
+++ b/drivers/i2c/busses/i2c-gpio.c
|
||||
@@ -428,7 +428,9 @@ static int i2c_gpio_probe(struct platform_device *pdev)
|
||||
@@ -428,7 +428,9 @@ static int i2c_gpio_probe(struct platfor
|
||||
adap->dev.parent = dev;
|
||||
device_set_node(&adap->dev, fwnode);
|
||||
|
||||
@@ -35,6 +33,3 @@ index f4355b17bfbf..d83b19a37fd6 100644
|
||||
ret = i2c_bit_add_numbered_bus(adap);
|
||||
if (ret)
|
||||
return ret;
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+1
-6
@@ -7,11 +7,9 @@ Subject: [PATCH] added capture_clear option to pps-gpio via dtoverlay (#2433)
|
||||
drivers/pps/clients/pps-gpio.c | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/drivers/pps/clients/pps-gpio.c b/drivers/pps/clients/pps-gpio.c
|
||||
index 935da68610c7..65d17781ddb7 100644
|
||||
--- a/drivers/pps/clients/pps-gpio.c
|
||||
+++ b/drivers/pps/clients/pps-gpio.c
|
||||
@@ -117,6 +117,9 @@ static int pps_gpio_setup(struct device *dev)
|
||||
@@ -117,6 +117,9 @@ static int pps_gpio_setup(struct device
|
||||
data->assert_falling_edge =
|
||||
device_property_read_bool(dev, "assert-falling-edge");
|
||||
|
||||
@@ -21,6 +19,3 @@ index 935da68610c7..65d17781ddb7 100644
|
||||
data->echo_pin = devm_gpiod_get_optional(dev, "echo", GPIOD_OUT_LOW);
|
||||
if (IS_ERR(data->echo_pin))
|
||||
return dev_err_probe(dev, PTR_ERR(data->echo_pin),
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+2
-7
@@ -14,8 +14,6 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
|
||||
drivers/hid/usbhid/hid-core.c | 7 +++++--
|
||||
1 file changed, 5 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/drivers/hid/usbhid/hid-core.c b/drivers/hid/usbhid/hid-core.c
|
||||
index 758eb21430cd..7e59ae6faf7f 100644
|
||||
--- a/drivers/hid/usbhid/hid-core.c
|
||||
+++ b/drivers/hid/usbhid/hid-core.c
|
||||
@@ -47,7 +47,7 @@
|
||||
@@ -27,7 +25,7 @@ index 758eb21430cd..7e59ae6faf7f 100644
|
||||
module_param_named(mousepoll, hid_mousepoll_interval, uint, 0644);
|
||||
MODULE_PARM_DESC(mousepoll, "Polling interval of mice");
|
||||
|
||||
@@ -1132,7 +1132,9 @@ static int usbhid_start(struct hid_device *hid)
|
||||
@@ -1133,7 +1133,9 @@ static int usbhid_start(struct hid_devic
|
||||
*/
|
||||
switch (hid->collection->usage) {
|
||||
case HID_GD_MOUSE:
|
||||
@@ -38,7 +36,7 @@ index 758eb21430cd..7e59ae6faf7f 100644
|
||||
interval = hid_mousepoll_interval;
|
||||
break;
|
||||
case HID_GD_JOYSTICK:
|
||||
@@ -1144,6 +1146,7 @@ static int usbhid_start(struct hid_device *hid)
|
||||
@@ -1145,6 +1147,7 @@ static int usbhid_start(struct hid_devic
|
||||
interval = hid_kbpoll_interval;
|
||||
break;
|
||||
}
|
||||
@@ -46,6 +44,3 @@ index 758eb21430cd..7e59ae6faf7f 100644
|
||||
|
||||
ret = -ENOMEM;
|
||||
if (usb_endpoint_dir_in(endpoint)) {
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+2
-7
@@ -11,8 +11,6 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
||||
drivers/firmware/raspberrypi.c | 40 +++++++++++++++++++++++++++++++++-
|
||||
1 file changed, 39 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/firmware/raspberrypi.c b/drivers/firmware/raspberrypi.c
|
||||
index 3ce22dac1786..01e356de79eb 100644
|
||||
--- a/drivers/firmware/raspberrypi.c
|
||||
+++ b/drivers/firmware/raspberrypi.c
|
||||
@@ -14,6 +14,7 @@
|
||||
@@ -23,7 +21,7 @@ index 3ce22dac1786..01e356de79eb 100644
|
||||
#include <linux/slab.h>
|
||||
#include <soc/bcm2835/raspberrypi-firmware.h>
|
||||
|
||||
@@ -182,6 +183,26 @@ int rpi_firmware_property(struct rpi_firmware *fw,
|
||||
@@ -182,6 +183,26 @@ int rpi_firmware_property(struct rpi_fir
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(rpi_firmware_property);
|
||||
|
||||
@@ -50,7 +48,7 @@ index 3ce22dac1786..01e356de79eb 100644
|
||||
static void
|
||||
rpi_firmware_print_firmware_revision(struct rpi_firmware *fw)
|
||||
{
|
||||
@@ -413,15 +434,32 @@ static struct platform_driver rpi_firmware_driver = {
|
||||
@@ -413,15 +434,32 @@ static struct platform_driver rpi_firmwa
|
||||
.remove = rpi_firmware_remove,
|
||||
};
|
||||
|
||||
@@ -84,6 +82,3 @@ index 3ce22dac1786..01e356de79eb 100644
|
||||
}
|
||||
module_exit(rpi_firmware_exit);
|
||||
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+3
-8
@@ -26,8 +26,6 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
||||
drivers/irqchip/irq-bcm2835.c | 8 ++++----
|
||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/drivers/irqchip/irq-bcm2835.c b/drivers/irqchip/irq-bcm2835.c
|
||||
index 176c487505af..a9a4ec9cdc94 100644
|
||||
--- a/drivers/irqchip/irq-bcm2835.c
|
||||
+++ b/drivers/irqchip/irq-bcm2835.c
|
||||
@@ -75,8 +75,6 @@
|
||||
@@ -39,7 +37,7 @@ index 176c487505af..a9a4ec9cdc94 100644
|
||||
|
||||
static const int reg_pending[] __initconst = { 0x00, 0x04, 0x08 };
|
||||
static const int reg_enable[] __initconst = { 0x18, 0x10, 0x14 };
|
||||
@@ -205,7 +203,7 @@ static int __init armctrl_of_init(struct device_node *node,
|
||||
@@ -205,7 +203,7 @@ static int __init armctrl_of_init(struct
|
||||
bool is_2836)
|
||||
{
|
||||
void __iomem *base;
|
||||
@@ -48,7 +46,7 @@ index 176c487505af..a9a4ec9cdc94 100644
|
||||
u32 reg;
|
||||
|
||||
base = of_iomap(node, 0);
|
||||
@@ -245,6 +243,8 @@ static int __init armctrl_of_init(struct device_node *node,
|
||||
@@ -245,6 +243,8 @@ static int __init armctrl_of_init(struct
|
||||
pr_err(FW_BUG "Bootloader left fiq enabled\n");
|
||||
}
|
||||
|
||||
@@ -57,7 +55,7 @@ index 176c487505af..a9a4ec9cdc94 100644
|
||||
if (is_2836) {
|
||||
int parent_irq = irq_of_parse_and_map(node, 0);
|
||||
|
||||
@@ -275,7 +275,7 @@ static int __init armctrl_of_init(struct device_node *node,
|
||||
@@ -275,7 +275,7 @@ static int __init armctrl_of_init(struct
|
||||
}
|
||||
}
|
||||
#ifndef CONFIG_ARM64
|
||||
@@ -66,6 +64,3 @@ index 176c487505af..a9a4ec9cdc94 100644
|
||||
#endif
|
||||
|
||||
return 0;
|
||||
--
|
||||
2.54.0
|
||||
|
||||
-5
@@ -8,8 +8,6 @@ Subject: [PATCH] cxd2880: CXD2880_SPI_DRV should select DVB_CXD2880 with
|
||||
drivers/media/spi/Kconfig | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/drivers/media/spi/Kconfig b/drivers/media/spi/Kconfig
|
||||
index 4656afae5bb4..328ea94d14f9 100644
|
||||
--- a/drivers/media/spi/Kconfig
|
||||
+++ b/drivers/media/spi/Kconfig
|
||||
@@ -9,6 +9,7 @@ menu "Media SPI Adapters"
|
||||
@@ -20,6 +18,3 @@ index 4656afae5bb4..328ea94d14f9 100644
|
||||
default m if !MEDIA_SUBDRV_AUTOSELECT
|
||||
help
|
||||
Choose if you would like to have SPI interface support for Sony CXD2880.
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+3
-8
@@ -23,11 +23,9 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
|
||||
drivers/firmware/raspberrypi.c | 40 +++++++++++++++++++++++++++++++++-
|
||||
1 file changed, 39 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/firmware/raspberrypi.c b/drivers/firmware/raspberrypi.c
|
||||
index 01e356de79eb..be4d1d45a993 100644
|
||||
--- a/drivers/firmware/raspberrypi.c
|
||||
+++ b/drivers/firmware/raspberrypi.c
|
||||
@@ -208,6 +208,15 @@ rpi_firmware_print_firmware_revision(struct rpi_firmware *fw)
|
||||
@@ -208,6 +208,15 @@ rpi_firmware_print_firmware_revision(str
|
||||
{
|
||||
time64_t date_and_time;
|
||||
u32 packet;
|
||||
@@ -43,7 +41,7 @@ index 01e356de79eb..be4d1d45a993 100644
|
||||
int ret = rpi_firmware_property(fw,
|
||||
RPI_FIRMWARE_GET_FIRMWARE_REVISION,
|
||||
&packet, sizeof(packet));
|
||||
@@ -217,7 +226,35 @@ rpi_firmware_print_firmware_revision(struct rpi_firmware *fw)
|
||||
@@ -217,7 +226,35 @@ rpi_firmware_print_firmware_revision(str
|
||||
|
||||
/* This is not compatible with y2038 */
|
||||
date_and_time = packet;
|
||||
@@ -80,7 +78,7 @@ index 01e356de79eb..be4d1d45a993 100644
|
||||
}
|
||||
|
||||
static void
|
||||
@@ -327,6 +364,7 @@ static int rpi_firmware_probe(struct platform_device *pdev)
|
||||
@@ -327,6 +364,7 @@ static int rpi_firmware_probe(struct pla
|
||||
g_pdev = pdev;
|
||||
|
||||
rpi_firmware_print_firmware_revision(fw);
|
||||
@@ -88,6 +86,3 @@ index 01e356de79eb..be4d1d45a993 100644
|
||||
rpi_register_hwmon_driver(dev, fw);
|
||||
rpi_register_clk_driver(dev);
|
||||
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+2
-7
@@ -19,11 +19,9 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
|
||||
drivers/net/usb/lan78xx.c | 19 +++++++++++++++++--
|
||||
1 file changed, 17 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/drivers/net/usb/lan78xx.c b/drivers/net/usb/lan78xx.c
|
||||
index 858a442d6996..5c1d742cd718 100644
|
||||
--- a/drivers/net/usb/lan78xx.c
|
||||
+++ b/drivers/net/usb/lan78xx.c
|
||||
@@ -596,6 +596,15 @@ static int lan78xx_alloc_tx_resources(struct lan78xx_net *dev)
|
||||
@@ -596,6 +596,15 @@ static int lan78xx_alloc_tx_resources(st
|
||||
dev->n_tx_urbs, dev->tx_urb_size, dev);
|
||||
}
|
||||
|
||||
@@ -39,7 +37,7 @@ index 858a442d6996..5c1d742cd718 100644
|
||||
static int lan78xx_read_reg(struct lan78xx_net *dev, u32 index, u32 *data)
|
||||
{
|
||||
u32 *buf;
|
||||
@@ -3758,8 +3767,14 @@ static int lan78xx_bind(struct lan78xx_net *dev, struct usb_interface *intf)
|
||||
@@ -3758,8 +3767,14 @@ static int lan78xx_bind(struct lan78xx_n
|
||||
if (DEFAULT_RX_CSUM_ENABLE)
|
||||
dev->net->features |= NETIF_F_RXCSUM;
|
||||
|
||||
@@ -56,6 +54,3 @@ index 858a442d6996..5c1d742cd718 100644
|
||||
|
||||
if (DEFAULT_VLAN_RX_OFFLOAD)
|
||||
dev->net->features |= NETIF_F_HW_VLAN_CTAG_RX;
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+2
-11
@@ -17,8 +17,6 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
||||
include/linux/microchipphy.h | 8 ++++++
|
||||
3 files changed, 38 insertions(+)
|
||||
|
||||
diff --git a/Documentation/devicetree/bindings/net/microchip,lan78xx.txt b/Documentation/devicetree/bindings/net/microchip,lan78xx.txt
|
||||
index 11a679530ae6..104768b85bbc 100644
|
||||
--- a/Documentation/devicetree/bindings/net/microchip,lan78xx.txt
|
||||
+++ b/Documentation/devicetree/bindings/net/microchip,lan78xx.txt
|
||||
@@ -14,6 +14,9 @@ Optional properties of the embedded PHY:
|
||||
@@ -31,11 +29,9 @@ index 11a679530ae6..104768b85bbc 100644
|
||||
|
||||
Example:
|
||||
|
||||
diff --git a/drivers/net/phy/microchip.c b/drivers/net/phy/microchip.c
|
||||
index dc8634e7bcbe..53f6f7c89237 100644
|
||||
--- a/drivers/net/phy/microchip.c
|
||||
+++ b/drivers/net/phy/microchip.c
|
||||
@@ -198,6 +198,7 @@ static int lan88xx_probe(struct phy_device *phydev)
|
||||
@@ -198,6 +198,7 @@ static int lan88xx_probe(struct phy_devi
|
||||
struct device *dev = &phydev->mdio.dev;
|
||||
struct lan88xx_priv *priv;
|
||||
u32 led_modes[4];
|
||||
@@ -43,7 +39,7 @@ index dc8634e7bcbe..53f6f7c89237 100644
|
||||
int len;
|
||||
|
||||
priv = devm_kzalloc(dev, sizeof(*priv), GFP_KERNEL);
|
||||
@@ -227,6 +228,32 @@ static int lan88xx_probe(struct phy_device *phydev)
|
||||
@@ -227,6 +228,32 @@ static int lan88xx_probe(struct phy_devi
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
@@ -76,8 +72,6 @@ index dc8634e7bcbe..53f6f7c89237 100644
|
||||
/* these values can be used to identify internal PHY */
|
||||
priv->chip_id = phy_read_mmd(phydev, 3, LAN88XX_MMD3_CHIP_ID);
|
||||
priv->chip_rev = phy_read_mmd(phydev, 3, LAN88XX_MMD3_CHIP_REV);
|
||||
diff --git a/include/linux/microchipphy.h b/include/linux/microchipphy.h
|
||||
index 517288da19fd..626c450d71f4 100644
|
||||
--- a/include/linux/microchipphy.h
|
||||
+++ b/include/linux/microchipphy.h
|
||||
@@ -61,6 +61,14 @@
|
||||
@@ -95,6 +89,3 @@ index 517288da19fd..626c450d71f4 100644
|
||||
/* DSP registers */
|
||||
#define PHY_ARDENNES_MMD_DEV_3_PHY_CFG (0x806A)
|
||||
#define PHY_ARDENNES_MMD_DEV_3_PHY_CFG_ZD_DLY_EN_ (0x2000)
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+1
-6
@@ -14,8 +14,6 @@ See: https://github.com/raspberrypi/linux/issues/2447
|
||||
drivers/net/usb/lan78xx.c | 13 ++++++++++++-
|
||||
1 file changed, 12 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/net/usb/lan78xx.c b/drivers/net/usb/lan78xx.c
|
||||
index 5c1d742cd718..05f6e51d5027 100644
|
||||
--- a/drivers/net/usb/lan78xx.c
|
||||
+++ b/drivers/net/usb/lan78xx.c
|
||||
@@ -605,6 +605,11 @@ static bool enable_tso;
|
||||
@@ -30,7 +28,7 @@ index 5c1d742cd718..05f6e51d5027 100644
|
||||
static int lan78xx_read_reg(struct lan78xx_net *dev, u32 index, u32 *data)
|
||||
{
|
||||
u32 *buf;
|
||||
@@ -4737,7 +4742,13 @@ static int lan78xx_probe(struct usb_interface *intf,
|
||||
@@ -4737,7 +4742,13 @@ static int lan78xx_probe(struct usb_inte
|
||||
if (ret < 0)
|
||||
goto out4;
|
||||
|
||||
@@ -45,6 +43,3 @@ index 5c1d742cd718..05f6e51d5027 100644
|
||||
maxp = usb_maxpacket(dev->udev, dev->pipe_intr);
|
||||
|
||||
dev->urb_intr = usb_alloc_urb(0, GFP_KERNEL);
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+1
-6
@@ -7,11 +7,9 @@ Subject: [PATCH] Patching lan78xx for SOF_TIMESTAMPING_TX_SOFTWARE support
|
||||
drivers/net/usb/lan78xx.c | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/drivers/net/usb/lan78xx.c b/drivers/net/usb/lan78xx.c
|
||||
index 05f6e51d5027..21b99bfc9725 100644
|
||||
--- a/drivers/net/usb/lan78xx.c
|
||||
+++ b/drivers/net/usb/lan78xx.c
|
||||
@@ -1932,6 +1932,7 @@ static const struct ethtool_ops lan78xx_ethtool_ops = {
|
||||
@@ -1932,6 +1932,7 @@ static const struct ethtool_ops lan78xx_
|
||||
.set_link_ksettings = lan78xx_set_link_ksettings,
|
||||
.get_regs_len = lan78xx_get_regs_len,
|
||||
.get_regs = lan78xx_get_regs,
|
||||
@@ -19,6 +17,3 @@ index 05f6e51d5027..21b99bfc9725 100644
|
||||
};
|
||||
|
||||
static int lan78xx_init_mac_address(struct lan78xx_net *dev)
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+3
-8
@@ -14,11 +14,9 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
|
||||
drivers/media/i2c/adv7180.c | 12 ++++++++++++
|
||||
1 file changed, 12 insertions(+)
|
||||
|
||||
diff --git a/drivers/media/i2c/adv7180.c b/drivers/media/i2c/adv7180.c
|
||||
index 5cbc973df684..6a6a676eb3d6 100644
|
||||
--- a/drivers/media/i2c/adv7180.c
|
||||
+++ b/drivers/media/i2c/adv7180.c
|
||||
@@ -859,6 +859,9 @@ static int init_device(struct adv7180_state *state)
|
||||
@@ -859,6 +859,9 @@ static int init_device(struct adv7180_st
|
||||
return ret;
|
||||
|
||||
adv7180_set_field_mode(state);
|
||||
@@ -28,7 +26,7 @@ index 5cbc973df684..6a6a676eb3d6 100644
|
||||
|
||||
__v4l2_ctrl_handler_setup(&state->ctrl_hdl);
|
||||
|
||||
@@ -1415,6 +1418,7 @@ static int adv7180_probe(struct i2c_client *client)
|
||||
@@ -1415,6 +1418,7 @@ static int adv7180_probe(struct i2c_clie
|
||||
struct device_node *np = client->dev.of_node;
|
||||
struct adv7180_state *state;
|
||||
struct v4l2_subdev *sd;
|
||||
@@ -36,7 +34,7 @@ index 5cbc973df684..6a6a676eb3d6 100644
|
||||
int ret;
|
||||
|
||||
/* Check if the adapter supports the needed features */
|
||||
@@ -1470,6 +1474,14 @@ static int adv7180_probe(struct i2c_client *client)
|
||||
@@ -1470,6 +1474,14 @@ static int adv7180_probe(struct i2c_clie
|
||||
state->curr_norm = V4L2_STD_NTSC;
|
||||
|
||||
state->input = 0;
|
||||
@@ -51,6 +49,3 @@ index 5cbc973df684..6a6a676eb3d6 100644
|
||||
sd = &state->sd;
|
||||
v4l2_i2c_subdev_init(sd, client, &adv7180_ops);
|
||||
sd->internal_ops = &adv7180_internal_ops;
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+1
-6
@@ -12,11 +12,9 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
|
||||
drivers/media/i2c/adv7180.c | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/drivers/media/i2c/adv7180.c b/drivers/media/i2c/adv7180.c
|
||||
index 6a6a676eb3d6..101ab60ed665 100644
|
||||
--- a/drivers/media/i2c/adv7180.c
|
||||
+++ b/drivers/media/i2c/adv7180.c
|
||||
@@ -1405,6 +1405,7 @@ static const struct adv7180_chip_info adv7282_m_info = {
|
||||
@@ -1405,6 +1405,7 @@ static const struct adv7180_chip_info ad
|
||||
BIT(ADV7182_INPUT_SVIDEO_AIN1_AIN2) |
|
||||
BIT(ADV7182_INPUT_SVIDEO_AIN3_AIN4) |
|
||||
BIT(ADV7182_INPUT_SVIDEO_AIN7_AIN8) |
|
||||
@@ -24,6 +22,3 @@ index 6a6a676eb3d6..101ab60ed665 100644
|
||||
BIT(ADV7182_INPUT_DIFF_CVBS_AIN1_AIN2) |
|
||||
BIT(ADV7182_INPUT_DIFF_CVBS_AIN3_AIN4) |
|
||||
BIT(ADV7182_INPUT_DIFF_CVBS_AIN7_AIN8),
|
||||
--
|
||||
2.54.0
|
||||
|
||||
-5
@@ -11,8 +11,6 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
|
||||
include/uapi/linux/videodev2.h | 5 +++++
|
||||
1 file changed, 5 insertions(+)
|
||||
|
||||
diff --git a/include/uapi/linux/videodev2.h b/include/uapi/linux/videodev2.h
|
||||
index becd08fdbddb..30f9ba7f4816 100644
|
||||
--- a/include/uapi/linux/videodev2.h
|
||||
+++ b/include/uapi/linux/videodev2.h
|
||||
@@ -82,6 +82,11 @@
|
||||
@@ -27,6 +25,3 @@ index becd08fdbddb..30f9ba7f4816 100644
|
||||
/*
|
||||
* E N U M S
|
||||
*/
|
||||
--
|
||||
2.54.0
|
||||
|
||||
-6
@@ -20,9 +20,6 @@ Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
|
||||
1 file changed, 85 insertions(+)
|
||||
create mode 100644 Documentation/devicetree/bindings/media/bcm2835-unicam.txt
|
||||
|
||||
diff --git a/Documentation/devicetree/bindings/media/bcm2835-unicam.txt b/Documentation/devicetree/bindings/media/bcm2835-unicam.txt
|
||||
new file mode 100644
|
||||
index 000000000000..164d0377dcd2
|
||||
--- /dev/null
|
||||
+++ b/Documentation/devicetree/bindings/media/bcm2835-unicam.txt
|
||||
@@ -0,0 +1,85 @@
|
||||
@@ -111,6 +108,3 @@ index 000000000000..164d0377dcd2
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+1
-6
@@ -11,11 +11,9 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
|
||||
drivers/staging/vc04_services/vchiq-mmal/mmal-vchiq.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/staging/vc04_services/vchiq-mmal/mmal-vchiq.c b/drivers/staging/vc04_services/vchiq-mmal/mmal-vchiq.c
|
||||
index c2b5a37915f2..0a62ba4a6189 100644
|
||||
--- a/drivers/staging/vc04_services/vchiq-mmal/mmal-vchiq.c
|
||||
+++ b/drivers/staging/vc04_services/vchiq-mmal/mmal-vchiq.c
|
||||
@@ -1775,7 +1775,7 @@ int vchiq_mmal_component_enable(struct vchiq_mmal_instance *instance,
|
||||
@@ -1775,7 +1775,7 @@ int vchiq_mmal_component_enable(struct v
|
||||
|
||||
ret = enable_component(instance, component);
|
||||
if (ret == 0)
|
||||
@@ -24,6 +22,3 @@ index c2b5a37915f2..0a62ba4a6189 100644
|
||||
|
||||
mutex_unlock(&instance->vchiq_mutex);
|
||||
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+13
-24
@@ -18,8 +18,6 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
|
||||
.../vc04_services/vchiq-mmal/mmal-vchiq.h | 4 +
|
||||
4 files changed, 196 insertions(+), 14 deletions(-)
|
||||
|
||||
diff --git a/drivers/staging/vc04_services/vchiq-mmal/mmal-common.h b/drivers/staging/vc04_services/vchiq-mmal/mmal-common.h
|
||||
index b33129403a30..0443be8198ea 100644
|
||||
--- a/drivers/staging/vc04_services/vchiq-mmal/mmal-common.h
|
||||
+++ b/drivers/staging/vc04_services/vchiq-mmal/mmal-common.h
|
||||
@@ -50,6 +50,7 @@ struct mmal_buffer {
|
||||
@@ -30,11 +28,9 @@ index b33129403a30..0443be8198ea 100644
|
||||
unsigned long length;
|
||||
u32 mmal_flags;
|
||||
s64 dts;
|
||||
diff --git a/drivers/staging/vc04_services/vchiq-mmal/mmal-msg.h b/drivers/staging/vc04_services/vchiq-mmal/mmal-msg.h
|
||||
index 1889494425eb..7cccd5ee9a9e 100644
|
||||
--- a/drivers/staging/vc04_services/vchiq-mmal/mmal-msg.h
|
||||
+++ b/drivers/staging/vc04_services/vchiq-mmal/mmal-msg.h
|
||||
@@ -346,6 +346,41 @@ struct mmal_msg_port_parameter_get_reply {
|
||||
@@ -346,6 +346,41 @@ struct mmal_msg_port_parameter_get_reply
|
||||
/* event messages */
|
||||
#define MMAL_WORKER_EVENT_SPACE 256
|
||||
|
||||
@@ -76,8 +72,6 @@ index 1889494425eb..7cccd5ee9a9e 100644
|
||||
struct mmal_msg_event_to_host {
|
||||
u32 client_component; /* component context */
|
||||
|
||||
diff --git a/drivers/staging/vc04_services/vchiq-mmal/mmal-vchiq.c b/drivers/staging/vc04_services/vchiq-mmal/mmal-vchiq.c
|
||||
index 0a62ba4a6189..1b96dd21a3f3 100644
|
||||
--- a/drivers/staging/vc04_services/vchiq-mmal/mmal-vchiq.c
|
||||
+++ b/drivers/staging/vc04_services/vchiq-mmal/mmal-vchiq.c
|
||||
@@ -144,6 +144,8 @@ struct mmal_msg_context {
|
||||
@@ -89,7 +83,7 @@ index 0a62ba4a6189..1b96dd21a3f3 100644
|
||||
|
||||
int status; /* context status */
|
||||
|
||||
@@ -231,18 +233,6 @@ release_msg_context(struct mmal_msg_context *msg_context)
|
||||
@@ -231,18 +233,6 @@ release_msg_context(struct mmal_msg_cont
|
||||
kfree(msg_context);
|
||||
}
|
||||
|
||||
@@ -108,7 +102,7 @@ index 0a62ba4a6189..1b96dd21a3f3 100644
|
||||
/* workqueue scheduled callback
|
||||
*
|
||||
* we do this because it is important we do not call any other vchiq
|
||||
@@ -264,13 +254,18 @@ static void buffer_work_cb(struct work_struct *work)
|
||||
@@ -264,13 +254,18 @@ static void buffer_work_cb(struct work_s
|
||||
buffer->mmal_flags = msg_context->u.bulk.mmal_flags;
|
||||
buffer->dts = msg_context->u.bulk.dts;
|
||||
buffer->pts = msg_context->u.bulk.pts;
|
||||
@@ -128,7 +122,7 @@ index 0a62ba4a6189..1b96dd21a3f3 100644
|
||||
}
|
||||
|
||||
/* workqueue scheduled callback to handle receiving buffers
|
||||
@@ -348,6 +343,7 @@ static int bulk_receive(struct vchiq_mmal_instance *instance,
|
||||
@@ -348,6 +343,7 @@ static int bulk_receive(struct vchiq_mma
|
||||
msg_context->u.bulk.buffer_used = rd_len;
|
||||
msg_context->u.bulk.dts = msg->u.buffer_from_host.buffer_header.dts;
|
||||
msg_context->u.bulk.pts = msg->u.buffer_from_host.buffer_header.pts;
|
||||
@@ -136,7 +130,7 @@ index 0a62ba4a6189..1b96dd21a3f3 100644
|
||||
|
||||
queue_work(msg_context->instance->bulk_wq,
|
||||
&msg_context->u.bulk.buffer_to_host_work);
|
||||
@@ -450,6 +446,103 @@ buffer_from_host(struct vchiq_mmal_instance *instance,
|
||||
@@ -450,6 +446,103 @@ buffer_from_host(struct vchiq_mmal_insta
|
||||
return ret;
|
||||
}
|
||||
|
||||
@@ -240,7 +234,7 @@ index 0a62ba4a6189..1b96dd21a3f3 100644
|
||||
/* deals with receipt of buffer to host message */
|
||||
static void buffer_to_host_cb(struct vchiq_mmal_instance *instance,
|
||||
struct mmal_msg *msg, u32 msg_len)
|
||||
@@ -1332,6 +1425,7 @@ static int port_disable(struct vchiq_mmal_instance *instance,
|
||||
@@ -1332,6 +1425,7 @@ static int port_disable(struct vchiq_mma
|
||||
mmalbuf->mmal_flags = 0;
|
||||
mmalbuf->dts = MMAL_TIME_UNKNOWN;
|
||||
mmalbuf->pts = MMAL_TIME_UNKNOWN;
|
||||
@@ -248,7 +242,7 @@ index 0a62ba4a6189..1b96dd21a3f3 100644
|
||||
port->buffer_cb(instance,
|
||||
port, 0, mmalbuf);
|
||||
}
|
||||
@@ -1633,6 +1727,43 @@ int mmal_vchi_buffer_cleanup(struct mmal_buffer *buf)
|
||||
@@ -1633,6 +1727,43 @@ int mmal_vchi_buffer_cleanup(struct mmal
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(mmal_vchi_buffer_cleanup);
|
||||
|
||||
@@ -292,7 +286,7 @@ index 0a62ba4a6189..1b96dd21a3f3 100644
|
||||
/* Initialise a mmal component and its ports
|
||||
*
|
||||
*/
|
||||
@@ -1682,6 +1813,7 @@ int vchiq_mmal_component_init(struct vchiq_mmal_instance *instance,
|
||||
@@ -1682,6 +1813,7 @@ int vchiq_mmal_component_init(struct vch
|
||||
ret = port_info_get(instance, &component->control);
|
||||
if (ret < 0)
|
||||
goto release_component;
|
||||
@@ -300,7 +294,7 @@ index 0a62ba4a6189..1b96dd21a3f3 100644
|
||||
|
||||
for (idx = 0; idx < component->inputs; idx++) {
|
||||
component->input[idx].type = MMAL_PORT_TYPE_INPUT;
|
||||
@@ -1692,6 +1824,7 @@ int vchiq_mmal_component_init(struct vchiq_mmal_instance *instance,
|
||||
@@ -1692,6 +1824,7 @@ int vchiq_mmal_component_init(struct vch
|
||||
ret = port_info_get(instance, &component->input[idx]);
|
||||
if (ret < 0)
|
||||
goto release_component;
|
||||
@@ -308,7 +302,7 @@ index 0a62ba4a6189..1b96dd21a3f3 100644
|
||||
}
|
||||
|
||||
for (idx = 0; idx < component->outputs; idx++) {
|
||||
@@ -1703,6 +1836,7 @@ int vchiq_mmal_component_init(struct vchiq_mmal_instance *instance,
|
||||
@@ -1703,6 +1836,7 @@ int vchiq_mmal_component_init(struct vch
|
||||
ret = port_info_get(instance, &component->output[idx]);
|
||||
if (ret < 0)
|
||||
goto release_component;
|
||||
@@ -316,7 +310,7 @@ index 0a62ba4a6189..1b96dd21a3f3 100644
|
||||
}
|
||||
|
||||
for (idx = 0; idx < component->clocks; idx++) {
|
||||
@@ -1714,6 +1848,7 @@ int vchiq_mmal_component_init(struct vchiq_mmal_instance *instance,
|
||||
@@ -1714,6 +1848,7 @@ int vchiq_mmal_component_init(struct vch
|
||||
ret = port_info_get(instance, &component->clock[idx]);
|
||||
if (ret < 0)
|
||||
goto release_component;
|
||||
@@ -324,7 +318,7 @@ index 0a62ba4a6189..1b96dd21a3f3 100644
|
||||
}
|
||||
|
||||
*component_out = component;
|
||||
@@ -1739,7 +1874,7 @@ EXPORT_SYMBOL_GPL(vchiq_mmal_component_init);
|
||||
@@ -1739,7 +1874,7 @@ EXPORT_SYMBOL_GPL(vchiq_mmal_component_i
|
||||
int vchiq_mmal_component_finalise(struct vchiq_mmal_instance *instance,
|
||||
struct vchiq_mmal_component *component)
|
||||
{
|
||||
@@ -333,7 +327,7 @@ index 0a62ba4a6189..1b96dd21a3f3 100644
|
||||
|
||||
if (mutex_lock_interruptible(&instance->vchiq_mutex))
|
||||
return -EINTR;
|
||||
@@ -1751,6 +1886,13 @@ int vchiq_mmal_component_finalise(struct vchiq_mmal_instance *instance,
|
||||
@@ -1751,6 +1886,13 @@ int vchiq_mmal_component_finalise(struct
|
||||
|
||||
component->in_use = false;
|
||||
|
||||
@@ -347,8 +341,6 @@ index 0a62ba4a6189..1b96dd21a3f3 100644
|
||||
mutex_unlock(&instance->vchiq_mutex);
|
||||
|
||||
return ret;
|
||||
diff --git a/drivers/staging/vc04_services/vchiq-mmal/mmal-vchiq.h b/drivers/staging/vc04_services/vchiq-mmal/mmal-vchiq.h
|
||||
index 8c3959f6f97f..190a0f42bd6b 100644
|
||||
--- a/drivers/staging/vc04_services/vchiq-mmal/mmal-vchiq.h
|
||||
+++ b/drivers/staging/vc04_services/vchiq-mmal/mmal-vchiq.h
|
||||
@@ -79,6 +79,10 @@ struct vchiq_mmal_port {
|
||||
@@ -362,6 +354,3 @@ index 8c3959f6f97f..190a0f42bd6b 100644
|
||||
};
|
||||
|
||||
struct vchiq_mmal_component {
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+1
-6
@@ -12,11 +12,9 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
|
||||
.../vc04_services/vchiq-mmal/mmal-vchiq.c | 18 +++++++++++++-----
|
||||
1 file changed, 13 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/drivers/staging/vc04_services/vchiq-mmal/mmal-vchiq.c b/drivers/staging/vc04_services/vchiq-mmal/mmal-vchiq.c
|
||||
index 1b96dd21a3f3..7bee3fb08f02 100644
|
||||
--- a/drivers/staging/vc04_services/vchiq-mmal/mmal-vchiq.c
|
||||
+++ b/drivers/staging/vc04_services/vchiq-mmal/mmal-vchiq.c
|
||||
@@ -420,11 +420,19 @@ buffer_from_host(struct vchiq_mmal_instance *instance,
|
||||
@@ -420,11 +420,19 @@ buffer_from_host(struct vchiq_mmal_insta
|
||||
m.u.buffer_from_host.buffer_header.data =
|
||||
(u32)(unsigned long)buf->buffer;
|
||||
m.u.buffer_from_host.buffer_header.alloc_size = buf->buffer_size;
|
||||
@@ -41,6 +39,3 @@ index 1b96dd21a3f3..7bee3fb08f02 100644
|
||||
|
||||
/* clear buffer type specific data */
|
||||
memset(&m.u.buffer_from_host.buffer_header_type_specific, 0,
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+6
-13
@@ -17,11 +17,9 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
|
||||
include/media/videobuf2-core.h | 15 +++++++++++++
|
||||
2 files changed, 33 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/drivers/media/common/videobuf2/videobuf2-core.c b/drivers/media/common/videobuf2/videobuf2-core.c
|
||||
index 2df566f409b6..f316864d99fc 100644
|
||||
--- a/drivers/media/common/videobuf2/videobuf2-core.c
|
||||
+++ b/drivers/media/common/videobuf2/videobuf2-core.c
|
||||
@@ -2431,11 +2431,11 @@ static int __find_plane_by_offset(struct vb2_queue *q, unsigned long offset,
|
||||
@@ -2431,11 +2431,11 @@ static int __find_plane_by_offset(struct
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -36,7 +34,7 @@ index 2df566f409b6..f316864d99fc 100644
|
||||
struct dma_buf *dbuf;
|
||||
|
||||
if (q->memory != VB2_MEMORY_MMAP) {
|
||||
@@ -2480,6 +2480,21 @@ int vb2_core_expbuf(struct vb2_queue *q, int *fd, unsigned int type,
|
||||
@@ -2480,6 +2480,21 @@ int vb2_core_expbuf(struct vb2_queue *q,
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
@@ -58,15 +56,12 @@ index 2df566f409b6..f316864d99fc 100644
|
||||
ret = dma_buf_fd(dbuf, flags & ~O_ACCMODE);
|
||||
if (ret < 0) {
|
||||
dprintk(q, 3, "buffer %d, plane %d failed to export (%d)\n",
|
||||
diff --git a/include/media/videobuf2-core.h b/include/media/videobuf2-core.h
|
||||
index 9b02aeba4108..c75b4f14581a 100644
|
||||
--- a/include/media/videobuf2-core.h
|
||||
+++ b/include/media/videobuf2-core.h
|
||||
@@ -967,6 +967,21 @@ int vb2_core_streamon(struct vb2_queue *q, unsigned int type);
|
||||
*/
|
||||
@@ -968,6 +968,21 @@ int vb2_core_streamon(struct vb2_queue *
|
||||
int vb2_core_streamoff(struct vb2_queue *q, unsigned int type);
|
||||
|
||||
+/**
|
||||
/**
|
||||
+ * vb2_core_expbuf_dmabuf() - Export a buffer as a dma_buf structure
|
||||
+ * @q: videobuf2 queue
|
||||
+ * @type: buffer type
|
||||
@@ -81,9 +76,7 @@ index 9b02aeba4108..c75b4f14581a 100644
|
||||
+ struct vb2_buffer *vb, unsigned int plane,
|
||||
+ unsigned int flags, struct dma_buf **dmabuf);
|
||||
+
|
||||
/**
|
||||
+/**
|
||||
* vb2_core_expbuf() - Export a buffer as a file descriptor.
|
||||
* @q: pointer to &struct vb2_queue with videobuf2 queue.
|
||||
--
|
||||
2.54.0
|
||||
|
||||
* @fd: pointer to the file descriptor associated with DMABUF
|
||||
+1
-6
@@ -18,11 +18,9 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
|
||||
drivers/staging/vc04_services/vchiq-mmal/mmal-vchiq.c | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/drivers/staging/vc04_services/vchiq-mmal/mmal-vchiq.c b/drivers/staging/vc04_services/vchiq-mmal/mmal-vchiq.c
|
||||
index 7bee3fb08f02..e7b69260aea3 100644
|
||||
--- a/drivers/staging/vc04_services/vchiq-mmal/mmal-vchiq.c
|
||||
+++ b/drivers/staging/vc04_services/vchiq-mmal/mmal-vchiq.c
|
||||
@@ -458,9 +458,9 @@ buffer_from_host(struct vchiq_mmal_instance *instance,
|
||||
@@ -458,9 +458,9 @@ buffer_from_host(struct vchiq_mmal_insta
|
||||
static void event_to_host_cb(struct vchiq_mmal_instance *instance,
|
||||
struct mmal_msg *msg, u32 msg_len)
|
||||
{
|
||||
@@ -34,6 +32,3 @@ index 7bee3fb08f02..e7b69260aea3 100644
|
||||
struct vchiq_mmal_port *port = NULL;
|
||||
struct mmal_msg_context *msg_context;
|
||||
u32 port_num = msg->u.event_to_host.port_num;
|
||||
--
|
||||
2.54.0
|
||||
|
||||
-5
@@ -12,8 +12,6 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
|
||||
.../vc04_services/vchiq-mmal/mmal-encodings.h | 27 +++++++++++++++++++
|
||||
1 file changed, 27 insertions(+)
|
||||
|
||||
diff --git a/drivers/staging/vc04_services/vchiq-mmal/mmal-encodings.h b/drivers/staging/vc04_services/vchiq-mmal/mmal-encodings.h
|
||||
index e15ae7b24f73..feca1c3d8878 100644
|
||||
--- a/drivers/staging/vc04_services/vchiq-mmal/mmal-encodings.h
|
||||
+++ b/drivers/staging/vc04_services/vchiq-mmal/mmal-encodings.h
|
||||
@@ -69,6 +69,33 @@
|
||||
@@ -50,6 +48,3 @@ index e15ae7b24f73..feca1c3d8878 100644
|
||||
/** An EGL image handle
|
||||
*/
|
||||
#define MMAL_ENCODING_EGL_IMAGE MMAL_FOURCC('E', 'G', 'L', 'I')
|
||||
--
|
||||
2.54.0
|
||||
|
||||
-5
@@ -13,8 +13,6 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
|
||||
.../vchiq-mmal/mmal-parameters.h | 32 ++++++++++++++++++-
|
||||
1 file changed, 31 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/drivers/staging/vc04_services/vchiq-mmal/mmal-parameters.h b/drivers/staging/vc04_services/vchiq-mmal/mmal-parameters.h
|
||||
index a0cdd28101f2..33f4179d7712 100644
|
||||
--- a/drivers/staging/vc04_services/vchiq-mmal/mmal-parameters.h
|
||||
+++ b/drivers/staging/vc04_services/vchiq-mmal/mmal-parameters.h
|
||||
@@ -577,7 +577,37 @@ enum mmal_parameter_video_type {
|
||||
@@ -56,6 +54,3 @@ index a0cdd28101f2..33f4179d7712 100644
|
||||
};
|
||||
|
||||
/** Valid mirror modes */
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+1
-6
@@ -14,11 +14,9 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
|
||||
drivers/staging/vc04_services/vchiq-mmal/mmal-vchiq.c | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/drivers/staging/vc04_services/vchiq-mmal/mmal-vchiq.c b/drivers/staging/vc04_services/vchiq-mmal/mmal-vchiq.c
|
||||
index e7b69260aea3..6ed493308746 100644
|
||||
--- a/drivers/staging/vc04_services/vchiq-mmal/mmal-vchiq.c
|
||||
+++ b/drivers/staging/vc04_services/vchiq-mmal/mmal-vchiq.c
|
||||
@@ -1901,6 +1901,8 @@ int vchiq_mmal_component_finalise(struct vchiq_mmal_instance *instance,
|
||||
@@ -1901,6 +1901,8 @@ int vchiq_mmal_component_finalise(struct
|
||||
for (idx = 0; idx < component->clocks; idx++)
|
||||
free_event_context(&component->clock[idx]);
|
||||
|
||||
@@ -27,6 +25,3 @@ index e7b69260aea3..6ed493308746 100644
|
||||
mutex_unlock(&instance->vchiq_mutex);
|
||||
|
||||
return ret;
|
||||
--
|
||||
2.54.0
|
||||
|
||||
+4
-9
@@ -12,11 +12,9 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
|
||||
.../vc04_services/vchiq-mmal/mmal-vchiq.c | 29 +++++++++++++------
|
||||
1 file changed, 20 insertions(+), 9 deletions(-)
|
||||
|
||||
diff --git a/drivers/staging/vc04_services/vchiq-mmal/mmal-vchiq.c b/drivers/staging/vc04_services/vchiq-mmal/mmal-vchiq.c
|
||||
index 6ed493308746..465b00b33cff 100644
|
||||
--- a/drivers/staging/vc04_services/vchiq-mmal/mmal-vchiq.c
|
||||
+++ b/drivers/staging/vc04_services/vchiq-mmal/mmal-vchiq.c
|
||||
@@ -1767,9 +1767,26 @@ static void free_event_context(struct vchiq_mmal_port *port)
|
||||
@@ -1767,9 +1767,26 @@ static void free_event_context(struct vc
|
||||
{
|
||||
struct mmal_msg_context *ctx = port->event_context;
|
||||
|
||||
@@ -43,7 +41,7 @@ index 6ed493308746..465b00b33cff 100644
|
||||
}
|
||||
|
||||
/* Initialise a mmal component and its ports
|
||||
@@ -1867,6 +1884,7 @@ int vchiq_mmal_component_init(struct vchiq_mmal_instance *instance,
|
||||
@@ -1867,6 +1884,7 @@ int vchiq_mmal_component_init(struct vch
|
||||
|
||||
release_component:
|
||||
destroy_component(instance, component);
|
||||
@@ -51,7 +49,7 @@ index 6ed493308746..465b00b33cff 100644
|
||||
unlock:
|
||||
if (component)
|
||||
component->in_use = false;
|
||||
@@ -1882,7 +1900,7 @@ EXPORT_SYMBOL_GPL(vchiq_mmal_component_init);
|
||||
@@ -1882,7 +1900,7 @@ EXPORT_SYMBOL_GPL(vchiq_mmal_component_i
|
||||
int vchiq_mmal_component_finalise(struct vchiq_mmal_instance *instance,
|
||||
struct vchiq_mmal_component *component)
|
||||
{
|
||||
@@ -60,7 +58,7 @@ index 6ed493308746..465b00b33cff 100644
|
||||
|
||||
if (mutex_lock_interruptible(&instance->vchiq_mutex))
|
||||
return -EINTR;
|
||||
@@ -1894,14 +1912,7 @@ int vchiq_mmal_component_finalise(struct vchiq_mmal_instance *instance,
|
||||
@@ -1894,14 +1912,7 @@ int vchiq_mmal_component_finalise(struct
|
||||
|
||||
component->in_use = false;
|
||||
|
||||
@@ -76,6 +74,3 @@ index 6ed493308746..465b00b33cff 100644
|
||||
|
||||
mutex_unlock(&instance->vchiq_mutex);
|
||||
|
||||
--
|
||||
2.54.0
|
||||
|
||||
Loaded 100 of 779 files, more files were not shown because too many files have changed in this diff.
Show more
Reference in new issue
Block a user