diff --git a/device/device-nokia-n9/APKBUILD b/device/device-nokia-n9/APKBUILD index 3522c9d66..08a3caeda 100644 --- a/device/device-nokia-n9/APKBUILD +++ b/device/device-nokia-n9/APKBUILD @@ -1,6 +1,6 @@ pkgname=device-nokia-n9 pkgver=1 -pkgrel=5 +pkgrel=6 pkgdesc="Nokia N9" url="https://github.com/postmarketOS" arch="noarch" diff --git a/device/linux-nokia-n9/0001-SREv2.patch b/device/linux-nokia-n9/0001-SREv2.patch index 2cdff0d3f..191b5e300 100644 --- a/device/linux-nokia-n9/0001-SREv2.patch +++ b/device/linux-nokia-n9/0001-SREv2.patch @@ -1,4 +1,4 @@ -From 2c62ef61b0361f6850140832b35bc4f400b9ccfe Mon Sep 17 00:00:00 2001 +From c134a2d3ff1b6cf075b8ba27136087773029513a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Filip=20Matijevi=C4=87?= Date: Sat, 10 Feb 2018 20:33:59 +0100 Subject: [PATCH 01/11] SREv2 @@ -8,22 +8,22 @@ Content-Transfer-Encoding: 8bit Signed-off-by: Filip Matijević --- - .../bindings/display/panel/panel-common.txt | 12 ++ - arch/arm/boot/dts/omap4-droid4-xt894.dts | 3 + - drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c | 13 ++ - drivers/gpu/drm/omapdrm/dss/dispc.c | 36 ++++- - drivers/gpu/drm/omapdrm/dss/omapdss.h | 2 + - drivers/gpu/drm/omapdrm/omap_connector.c | 18 ++- - drivers/gpu/drm/omapdrm/omap_connector.h | 1 + - drivers/gpu/drm/omapdrm/omap_crtc.c | 158 +++++++++++++++++++-- - drivers/gpu/drm/omapdrm/omap_crtc.h | 2 + - drivers/gpu/drm/omapdrm/omap_fb.c | 20 +++ - drivers/gpu/drm/omapdrm/omap_irq.c | 24 ++++ - drivers/gpu/drm/omapdrm/omap_irq.h | 1 + - 12 files changed, 280 insertions(+), 10 deletions(-) + .../bindings/display/panel/panel-common.txt | 12 ++ + arch/arm/boot/dts/omap4-droid4-xt894.dts | 3 + + .../gpu/drm/omapdrm/displays/panel-dsi-cm.c | 13 ++ + drivers/gpu/drm/omapdrm/dss/dispc.c | 37 ++++- + drivers/gpu/drm/omapdrm/dss/omapdss.h | 2 + + drivers/gpu/drm/omapdrm/omap_connector.c | 18 ++- + drivers/gpu/drm/omapdrm/omap_connector.h | 1 + + drivers/gpu/drm/omapdrm/omap_crtc.c | 153 +++++++++++++++++- + drivers/gpu/drm/omapdrm/omap_crtc.h | 2 + + drivers/gpu/drm/omapdrm/omap_fb.c | 20 +++ + drivers/gpu/drm/omapdrm/omap_irq.c | 24 +++ + drivers/gpu/drm/omapdrm/omap_irq.h | 1 + + 12 files changed, 277 insertions(+), 9 deletions(-) diff --git a/Documentation/devicetree/bindings/display/panel/panel-common.txt b/Documentation/devicetree/bindings/display/panel/panel-common.txt -index 557fa765adcb..c646b8908458 100644 +index 5d2519af4bb5..149af74082ba 100644 --- a/Documentation/devicetree/bindings/display/panel/panel-common.txt +++ b/Documentation/devicetree/bindings/display/panel/panel-common.txt @@ -18,6 +18,18 @@ Descriptive Properties @@ -46,7 +46,7 @@ index 557fa765adcb..c646b8908458 100644 string suitable for use by humans. It typically contains a name inscribed on the system (e.g. as an affixed label) or specified in the system's diff --git a/arch/arm/boot/dts/omap4-droid4-xt894.dts b/arch/arm/boot/dts/omap4-droid4-xt894.dts -index b21084da490b..e11a24397163 100644 +index bdf73cbcec3a..42885e7b053c 100644 --- a/arch/arm/boot/dts/omap4-droid4-xt894.dts +++ b/arch/arm/boot/dts/omap4-droid4-xt894.dts @@ -6,6 +6,7 @@ @@ -57,7 +57,7 @@ index b21084da490b..e11a24397163 100644 #include "omap443x.dtsi" #include "motorola-cpcap-mapphone.dtsi" -@@ -181,6 +182,8 @@ +@@ -216,6 +217,8 @@ height-mm = <89>; backlight = <&lcd_backlight>; @@ -67,7 +67,7 @@ index b21084da490b..e11a24397163 100644 clock-frequency = <0>; /* Calculated by dsi */ diff --git a/drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c b/drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c -index 15399a1a666b..7a63d6775a27 100644 +index 428de90fced1..d096185683cb 100644 --- a/drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c +++ b/drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c @@ -68,6 +68,7 @@ struct panel_drv_data { @@ -78,7 +78,7 @@ index 15399a1a666b..7a63d6775a27 100644 struct omap_dsi_pin_config pin_config; -@@ -1198,6 +1199,14 @@ static void dsicm_get_size(struct omap_dss_device *dssdev, +@@ -1210,6 +1211,14 @@ static void dsicm_get_size(struct omap_dss_device *dssdev, *height = ddata->height_mm; } @@ -93,7 +93,7 @@ index 15399a1a666b..7a63d6775a27 100644 static struct omap_dss_driver dsicm_ops = { .connect = dsicm_connect, .disconnect = dsicm_disconnect, -@@ -1211,6 +1220,7 @@ static struct omap_dss_driver dsicm_ops = { +@@ -1223,6 +1232,7 @@ static struct omap_dss_driver dsicm_ops = { .get_timings = dsicm_get_timings, .check_timings = dsicm_check_timings, .get_size = dsicm_get_size, @@ -101,21 +101,21 @@ index 15399a1a666b..7a63d6775a27 100644 .enable_te = dsicm_enable_te, .get_te = dsicm_get_te, -@@ -1259,6 +1269,9 @@ static int dsicm_probe_of(struct platform_device *pdev) +@@ -1270,6 +1280,9 @@ static int dsicm_probe_of(struct platform_device *pdev) ddata->height_mm = 0; of_property_read_u32(node, "height-mm", &ddata->height_mm); + ddata->orientation = DRM_MODE_PANEL_ORIENTATION_UNKNOWN; + of_property_read_u32(node, "orientation", &ddata->orientation); + - in = omapdss_of_find_source_for_first_ep(node); - if (IS_ERR(in)) { - dev_err(&pdev->dev, "failed to find video source\n"); + ddata->vpnl = devm_regulator_get_optional(&pdev->dev, "vpnl"); + if (IS_ERR(ddata->vpnl)) { + err = PTR_ERR(ddata->vpnl); diff --git a/drivers/gpu/drm/omapdrm/dss/dispc.c b/drivers/gpu/drm/omapdrm/dss/dispc.c -index 4e8f68efd169..0904c3201914 100644 +index 7f3ac6b13b56..842941930dfa 100644 --- a/drivers/gpu/drm/omapdrm/dss/dispc.c +++ b/drivers/gpu/drm/omapdrm/dss/dispc.c -@@ -157,6 +157,8 @@ struct dispc_features { +@@ -161,6 +161,8 @@ struct dispc_features { bool has_gamma_table:1; bool has_gamma_i734_bug:1; @@ -124,26 +124,27 @@ index 4e8f68efd169..0904c3201914 100644 }; #define DISPC_MAX_NR_FIFOS 5 -@@ -1489,6 +1491,18 @@ void dispc_ovl_compute_fifo_thresholds(enum omap_plane_id plane, - } +@@ -1593,6 +1595,19 @@ static void dispc_ovl_set_mflag(struct dispc_device *dispc, + REG_FLD_MOD(dispc, DISPC_OVL_ATTRIBUTES(plane), enable, bit, bit); } -+static void dispc_ovl_set_manual_fifo_threshold(enum omap_plane_id plane) ++static void dispc_ovl_set_manual_fifo_threshold(struct dispc_device *dispc, ++ enum omap_plane_id plane) +{ + u32 fifo_low, fifo_high; + bool use_fifo_merge = false; + bool use_manual_update = true; + -+ dispc_ovl_compute_fifo_thresholds(plane, &fifo_low, &fifo_high, ++ dispc_ovl_compute_fifo_thresholds(dispc, plane, &fifo_low, &fifo_high, + use_fifo_merge, use_manual_update); + -+ dispc_ovl_set_fifo_threshold(plane, fifo_low, fifo_high); ++ dispc_ovl_set_fifo_threshold(dispc, plane, fifo_low, fifo_high); +} + - static void dispc_ovl_set_mflag(enum omap_plane_id plane, bool enable) - { - int bit; -@@ -2651,8 +2665,21 @@ static int dispc_ovl_setup(enum omap_plane_id plane, + static void dispc_ovl_set_mflag_threshold(struct dispc_device *dispc, + enum omap_plane_id plane, + int low, int high) +@@ -2802,8 +2817,21 @@ static int dispc_ovl_setup(struct dispc_device *dispc, oi->out_width, oi->out_height, oi->fourcc, oi->rotation, oi->zorder, oi->pre_mult_alpha, oi->global_alpha, oi->rotation_type, replication, vm, mem_to_mem); @@ -156,17 +157,17 @@ index 4e8f68efd169..0904c3201914 100644 + * displays. The issue is not fully understood, but this workaround + * fixes the issue. OMAP4 is known to work with default thresholds. + */ -+ if (mgr_fld_read(channel, DISPC_MGR_FLD_STALLMODE) && -+ dispc.feat->has_fifo_stallmode_bug) { ++ if (mgr_fld_read(dispc, channel, DISPC_MGR_FLD_STALLMODE) && ++ dispc->feat->has_fifo_stallmode_bug) { + DSSDBG("Enable OMAP3 FIFO stallmode bug workaround!\n"); -+ dispc_ovl_set_manual_fifo_threshold(plane); ++ dispc_ovl_set_manual_fifo_threshold(dispc, plane); + } + + return 0; } - int dispc_wb_setup(const struct omap_dss_writeback_info *wi, -@@ -4067,6 +4094,7 @@ static const struct dispc_features omap24xx_dispc_feats = { + static int dispc_wb_setup(struct dispc_device *dispc, +@@ -4286,6 +4314,7 @@ static const struct dispc_features omap24xx_dispc_feats = { .no_framedone_tv = true, .set_max_preload = false, .last_pixel_inc_missing = true, @@ -174,7 +175,7 @@ index 4e8f68efd169..0904c3201914 100644 }; static const struct dispc_features omap34xx_rev1_0_dispc_feats = { -@@ -4101,6 +4129,7 @@ static const struct dispc_features omap34xx_rev1_0_dispc_feats = { +@@ -4320,6 +4349,7 @@ static const struct dispc_features omap34xx_rev1_0_dispc_feats = { .no_framedone_tv = true, .set_max_preload = false, .last_pixel_inc_missing = true, @@ -182,7 +183,7 @@ index 4e8f68efd169..0904c3201914 100644 }; static const struct dispc_features omap34xx_rev3_0_dispc_feats = { -@@ -4135,6 +4164,7 @@ static const struct dispc_features omap34xx_rev3_0_dispc_feats = { +@@ -4354,6 +4384,7 @@ static const struct dispc_features omap34xx_rev3_0_dispc_feats = { .no_framedone_tv = true, .set_max_preload = false, .last_pixel_inc_missing = true, @@ -190,7 +191,7 @@ index 4e8f68efd169..0904c3201914 100644 }; static const struct dispc_features omap36xx_dispc_feats = { -@@ -4169,6 +4199,7 @@ static const struct dispc_features omap36xx_dispc_feats = { +@@ -4388,6 +4419,7 @@ static const struct dispc_features omap36xx_dispc_feats = { .no_framedone_tv = true, .set_max_preload = false, .last_pixel_inc_missing = true, @@ -198,7 +199,7 @@ index 4e8f68efd169..0904c3201914 100644 }; static const struct dispc_features am43xx_dispc_feats = { -@@ -4203,6 +4234,7 @@ static const struct dispc_features am43xx_dispc_feats = { +@@ -4422,6 +4454,7 @@ static const struct dispc_features am43xx_dispc_feats = { .no_framedone_tv = true, .set_max_preload = false, .last_pixel_inc_missing = true, @@ -206,7 +207,7 @@ index 4e8f68efd169..0904c3201914 100644 }; static const struct dispc_features omap44xx_dispc_feats = { -@@ -4242,6 +4274,7 @@ static const struct dispc_features omap44xx_dispc_feats = { +@@ -4461,6 +4494,7 @@ static const struct dispc_features omap44xx_dispc_feats = { .reverse_ilace_field_order = true, .has_gamma_table = true, .has_gamma_i734_bug = true, @@ -214,7 +215,7 @@ index 4e8f68efd169..0904c3201914 100644 }; static const struct dispc_features omap54xx_dispc_feats = { -@@ -4282,6 +4315,7 @@ static const struct dispc_features omap54xx_dispc_feats = { +@@ -4501,6 +4535,7 @@ static const struct dispc_features omap54xx_dispc_feats = { .reverse_ilace_field_order = true, .has_gamma_table = true, .has_gamma_i734_bug = true, @@ -223,10 +224,10 @@ index 4e8f68efd169..0904c3201914 100644 static irqreturn_t dispc_irq_handler(int irq, void *arg) diff --git a/drivers/gpu/drm/omapdrm/dss/omapdss.h b/drivers/gpu/drm/omapdrm/dss/omapdss.h -index f8f83e826a56..72ebd82409d3 100644 +index 14d74adb13fb..0d3b0143a65e 100644 --- a/drivers/gpu/drm/omapdrm/dss/omapdss.h +++ b/drivers/gpu/drm/omapdrm/dss/omapdss.h -@@ -565,6 +565,8 @@ struct omap_dss_driver { +@@ -554,6 +554,8 @@ struct omap_dss_driver { struct videomode *vm); void (*get_size)(struct omap_dss_device *dssdev, unsigned int *width, unsigned int *height); @@ -236,7 +237,7 @@ index f8f83e826a56..72ebd82409d3 100644 int (*set_wss)(struct omap_dss_device *dssdev, u32 wss); u32 (*get_wss)(struct omap_dss_device *dssdev); diff --git a/drivers/gpu/drm/omapdrm/omap_connector.c b/drivers/gpu/drm/omapdrm/omap_connector.c -index a0d7b1d905e8..2f296d29b74b 100644 +index 5cde26ac937b..d936be1f071e 100644 --- a/drivers/gpu/drm/omapdrm/omap_connector.c +++ b/drivers/gpu/drm/omapdrm/omap_connector.c @@ -57,6 +57,14 @@ bool omap_connector_get_hdmi_mode(struct drm_connector *connector) @@ -254,7 +255,7 @@ index a0d7b1d905e8..2f296d29b74b 100644 static enum drm_connector_status omap_connector_detect( struct drm_connector *connector, bool force) { -@@ -241,6 +249,7 @@ struct drm_connector *omap_connector_init(struct drm_device *dev, +@@ -251,6 +259,7 @@ struct drm_connector *omap_connector_init(struct drm_device *dev, struct drm_connector *connector = NULL; struct omap_connector *omap_connector; bool hpd_supported = false; @@ -262,7 +263,7 @@ index a0d7b1d905e8..2f296d29b74b 100644 DBG("%s", dssdev->name); -@@ -259,7 +268,7 @@ struct drm_connector *omap_connector_init(struct drm_device *dev, +@@ -269,7 +278,7 @@ struct drm_connector *omap_connector_init(struct drm_device *dev, drm_connector_helper_add(connector, &omap_connector_helper_funcs); if (dssdev->driver->register_hpd_cb) { @@ -271,7 +272,7 @@ index a0d7b1d905e8..2f296d29b74b 100644 omap_connector_hpd_cb, omap_connector); if (!ret) -@@ -280,6 +289,13 @@ struct drm_connector *omap_connector_init(struct drm_device *dev, +@@ -290,6 +299,13 @@ struct drm_connector *omap_connector_init(struct drm_device *dev, connector->interlace_allowed = 1; connector->doublescan_allowed = 0; @@ -297,7 +298,7 @@ index 98bbc779b302..652136d167f5 100644 #endif /* __OMAPDRM_CONNECTOR_H__ */ diff --git a/drivers/gpu/drm/omapdrm/omap_crtc.c b/drivers/gpu/drm/omapdrm/omap_crtc.c -index 1b8154e58d18..c2defb514b9f 100644 +index 6c4d40b824e4..df746a33756f 100644 --- a/drivers/gpu/drm/omapdrm/omap_crtc.c +++ b/drivers/gpu/drm/omapdrm/omap_crtc.c @@ -51,6 +51,10 @@ struct omap_crtc { @@ -311,14 +312,11 @@ index 1b8154e58d18..c2defb514b9f 100644 }; /* ----------------------------------------------------------------------------- -@@ -139,6 +143,28 @@ static void omap_crtc_dss_disconnect(enum omap_channel channel, - - static void omap_crtc_dss_start_update(enum omap_channel channel) +@@ -143,6 +147,25 @@ static void omap_crtc_dss_disconnect(struct omap_drm_private *priv, + static void omap_crtc_dss_start_update(struct omap_drm_private *priv, + enum omap_channel channel) { -+ struct omap_crtc *omap_crtc = omap_crtcs[channel]; -+ struct omap_drm_private *priv = omap_crtc->base.dev->dev_private; -+ -+ priv->dispc_ops->mgr_enable(channel, true); ++ priv->dispc_ops->mgr_enable(priv->dispc, channel, true); +} + +static bool omap_crtc_is_manually_updated(struct drm_crtc *crtc) @@ -340,35 +338,32 @@ index 1b8154e58d18..c2defb514b9f 100644 } /* Called only from the encoder enable/disable and suspend/resume handlers. */ -@@ -150,12 +176,17 @@ static void omap_crtc_set_enabled(struct drm_crtc *crtc, bool enable) +@@ -154,11 +177,15 @@ static void omap_crtc_set_enabled(struct drm_crtc *crtc, bool enable) enum omap_channel channel = omap_crtc->channel; struct omap_irq_wait *wait; u32 framedone_irq, vsync_irq; + bool is_manual = omap_crtc_is_manually_updated(crtc); -+ enum omap_display_type type = omap_crtc_output[channel]->output_type; int ret; if (WARN_ON(omap_crtc->enabled == enable)) return; -- if (omap_crtc_output[channel]->output_type == OMAP_DISPLAY_TYPE_HDMI) { + if (is_manual) + omap_irq_enable_framedone(crtc, enable); + -+ if (is_manual || type == OMAP_DISPLAY_TYPE_HDMI) { - priv->dispc_ops->mgr_enable(channel, enable); + if (omap_crtc_output[channel]->output_type == OMAP_DISPLAY_TYPE_HDMI) { + priv->dispc_ops->mgr_enable(priv->dispc, channel, enable); omap_crtc->enabled = enable; - return; -@@ -206,7 +237,6 @@ static void omap_crtc_set_enabled(struct drm_crtc *crtc, bool enable) +@@ -211,7 +238,6 @@ static void omap_crtc_set_enabled(struct drm_crtc *crtc, bool enable) } } - - static int omap_crtc_dss_enable(enum omap_channel channel) + static int omap_crtc_dss_enable(struct omap_drm_private *priv, + enum omap_channel channel) { - struct omap_crtc *omap_crtc = omap_crtcs[channel]; -@@ -247,6 +277,17 @@ static int omap_crtc_dss_register_framedone( - enum omap_channel channel, +@@ -256,6 +282,17 @@ static int omap_crtc_dss_register_framedone( + struct omap_drm_private *priv, enum omap_channel channel, void (*handler)(void *), void *data) { + struct omap_crtc *omap_crtc = omap_crtcs[channel]; @@ -385,8 +380,8 @@ index 1b8154e58d18..c2defb514b9f 100644 return 0; } -@@ -254,6 +295,16 @@ static void omap_crtc_dss_unregister_framedone( - enum omap_channel channel, +@@ -263,6 +300,16 @@ static void omap_crtc_dss_unregister_framedone( + struct omap_drm_private *priv, enum omap_channel channel, void (*handler)(void *), void *data) { + struct omap_crtc *omap_crtc = omap_crtcs[channel]; @@ -402,7 +397,7 @@ index 1b8154e58d18..c2defb514b9f 100644 } static const struct dss_mgr_ops mgr_ops = { -@@ -321,6 +372,77 @@ void omap_crtc_vblank_irq(struct drm_crtc *crtc) +@@ -330,6 +377,77 @@ void omap_crtc_vblank_irq(struct drm_crtc *crtc) DBG("%s: apply done", omap_crtc->name); } @@ -480,7 +475,7 @@ index 1b8154e58d18..c2defb514b9f 100644 static void omap_crtc_write_crtc_properties(struct drm_crtc *crtc) { struct omap_drm_private *priv = crtc->dev->dev_private; -@@ -373,6 +495,10 @@ static void omap_crtc_atomic_enable(struct drm_crtc *crtc, +@@ -382,6 +500,10 @@ static void omap_crtc_atomic_enable(struct drm_crtc *crtc, DBG("%s", omap_crtc->name); @@ -491,7 +486,7 @@ index 1b8154e58d18..c2defb514b9f 100644 spin_lock_irq(&crtc->dev->event_lock); drm_crtc_vblank_on(crtc); ret = drm_crtc_vblank_get(crtc); -@@ -386,6 +512,7 @@ static void omap_crtc_atomic_disable(struct drm_crtc *crtc, +@@ -395,6 +517,7 @@ static void omap_crtc_atomic_disable(struct drm_crtc *crtc, struct drm_crtc_state *old_state) { struct omap_crtc *omap_crtc = to_omap_crtc(crtc); @@ -499,7 +494,7 @@ index 1b8154e58d18..c2defb514b9f 100644 DBG("%s", omap_crtc->name); -@@ -396,6 +523,11 @@ static void omap_crtc_atomic_disable(struct drm_crtc *crtc, +@@ -405,6 +528,11 @@ static void omap_crtc_atomic_disable(struct drm_crtc *crtc, } spin_unlock_irq(&crtc->dev->event_lock); @@ -511,7 +506,7 @@ index 1b8154e58d18..c2defb514b9f 100644 drm_crtc_vblank_off(crtc); } -@@ -545,13 +677,20 @@ static void omap_crtc_atomic_flush(struct drm_crtc *crtc, +@@ -555,13 +683,21 @@ static void omap_crtc_atomic_flush(struct drm_crtc *crtc, DBG("%s: GO", omap_crtc->name); @@ -522,13 +517,14 @@ index 1b8154e58d18..c2defb514b9f 100644 + WARN_ON(ret != 0); - spin_lock_irq(&crtc->dev->event_lock); -- priv->dispc_ops->mgr_go(omap_crtc->channel); +- priv->dispc_ops->mgr_go(priv->dispc, omap_crtc->channel); - omap_crtc_arm_event(crtc); - spin_unlock_irq(&crtc->dev->event_lock); + spin_lock_irq(&crtc->dev->event_lock); -+ priv->dispc_ops->mgr_go(omap_crtc->channel); ++ priv->dispc_ops->mgr_go(priv->dispc, omap_crtc->channel); + omap_crtc_arm_event(crtc); + spin_unlock_irq(&crtc->dev->event_lock); ++ spin_unlock_irq(&crtc->dev->event_lock); + } else { + spin_lock_irq(&crtc->dev->event_lock); + omap_crtc_flush(crtc); @@ -538,7 +534,7 @@ index 1b8154e58d18..c2defb514b9f 100644 } static int omap_crtc_atomic_set_property(struct drm_crtc *crtc, -@@ -713,6 +852,9 @@ struct drm_crtc *omap_crtc_init(struct drm_device *dev, +@@ -723,6 +859,9 @@ struct drm_crtc *omap_crtc_init(struct drm_device *dev, omap_crtc->channel = channel; omap_crtc->name = channel_names[channel]; @@ -549,19 +545,19 @@ index 1b8154e58d18..c2defb514b9f 100644 &omap_crtc_funcs, NULL); if (ret < 0) { diff --git a/drivers/gpu/drm/omapdrm/omap_crtc.h b/drivers/gpu/drm/omapdrm/omap_crtc.h -index ad7b007c6174..b61c94b34f04 100644 +index eaab2d7f0324..300b6498d03e 100644 --- a/drivers/gpu/drm/omapdrm/omap_crtc.h +++ b/drivers/gpu/drm/omapdrm/omap_crtc.h @@ -39,5 +39,7 @@ struct drm_crtc *omap_crtc_init(struct drm_device *dev, int omap_crtc_wait_pending(struct drm_crtc *crtc); - void omap_crtc_error_irq(struct drm_crtc *crtc, uint32_t irqstatus); + void omap_crtc_error_irq(struct drm_crtc *crtc, u32 irqstatus); void omap_crtc_vblank_irq(struct drm_crtc *crtc); +void omap_crtc_framedone_irq(struct drm_crtc *crtc, uint32_t irqstatus); +void omap_crtc_flush(struct drm_crtc *crtc); #endif /* __OMAPDRM_CRTC_H__ */ diff --git a/drivers/gpu/drm/omapdrm/omap_fb.c b/drivers/gpu/drm/omapdrm/omap_fb.c -index b2539a90e1a4..57b1767bef09 100644 +index 5fd22ca73913..b65212c9a423 100644 --- a/drivers/gpu/drm/omapdrm/omap_fb.c +++ b/drivers/gpu/drm/omapdrm/omap_fb.c @@ -95,8 +95,28 @@ static void omap_framebuffer_destroy(struct drm_framebuffer *fb) @@ -594,7 +590,7 @@ index b2539a90e1a4..57b1767bef09 100644 }; diff --git a/drivers/gpu/drm/omapdrm/omap_irq.c b/drivers/gpu/drm/omapdrm/omap_irq.c -index 53ba424823b2..354df3583229 100644 +index c85115049f86..99de4b9d04a5 100644 --- a/drivers/gpu/drm/omapdrm/omap_irq.c +++ b/drivers/gpu/drm/omapdrm/omap_irq.c @@ -85,6 +85,27 @@ int omap_irq_wait(struct drm_device *dev, struct omap_irq_wait *wait, @@ -607,7 +603,7 @@ index 53ba424823b2..354df3583229 100644 + struct omap_drm_private *priv = dev->dev_private; + unsigned long flags; + enum omap_channel channel = omap_crtc_channel(crtc); -+ int framedone_irq = priv->dispc_ops->mgr_get_framedone_irq(channel); ++ int framedone_irq = priv->dispc_ops->mgr_get_framedone_irq(priv->dispc, channel); + + DBG("dev=%p, crtc=%u, enable=%d", dev, channel, enable); + @@ -625,18 +621,18 @@ index 53ba424823b2..354df3583229 100644 /** * enable_vblank - enable vblank interrupt events * @dev: DRM device -@@ -215,6 +236,9 @@ static irqreturn_t omap_irq_handler(int irq, void *arg) +@@ -217,6 +238,9 @@ static irqreturn_t omap_irq_handler(int irq, void *arg) - if (irqstatus & priv->dispc_ops->mgr_get_sync_lost_irq(channel)) + if (irqstatus & priv->dispc_ops->mgr_get_sync_lost_irq(priv->dispc, channel)) omap_crtc_error_irq(crtc, irqstatus); + -+ if (irqstatus & priv->dispc_ops->mgr_get_framedone_irq(channel)) ++ if (irqstatus & priv->dispc_ops->mgr_get_framedone_irq(priv->dispc, channel)) + omap_crtc_framedone_irq(crtc, irqstatus); } omap_irq_ocp_error_handler(dev, irqstatus); diff --git a/drivers/gpu/drm/omapdrm/omap_irq.h b/drivers/gpu/drm/omapdrm/omap_irq.h -index 606c09932bc0..69f4ff80a0e4 100644 +index 9d5441468eca..02abb4ed9813 100644 --- a/drivers/gpu/drm/omapdrm/omap_irq.h +++ b/drivers/gpu/drm/omapdrm/omap_irq.h @@ -27,6 +27,7 @@ struct drm_device; @@ -648,5 +644,5 @@ index 606c09932bc0..69f4ff80a0e4 100644 void omap_drm_irq_uninstall(struct drm_device *dev); int omap_drm_irq_install(struct drm_device *dev); -- -2.14.1 +2.17.0 diff --git a/device/linux-nokia-n9/0002-drm-add-rename-MIPI_DCS_SET_PARTIAL_XXX.patch b/device/linux-nokia-n9/0002-drm-add-rename-MIPI_DCS_SET_PARTIAL_XXX.patch index 7b0f073cc..070b558a3 100644 --- a/device/linux-nokia-n9/0002-drm-add-rename-MIPI_DCS_SET_PARTIAL_XXX.patch +++ b/device/linux-nokia-n9/0002-drm-add-rename-MIPI_DCS_SET_PARTIAL_XXX.patch @@ -1,4 +1,4 @@ -From b6faf8e49d3ce7b8b94d56a88e70926fb35de918 Mon Sep 17 00:00:00 2001 +From 37f8d2282c0a8b5c12fd368b6d77e739f759df12 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Filip=20Matijevi=C4=87?= Date: Sat, 28 Oct 2017 09:18:10 +0200 Subject: [PATCH 02/11] drm: add/rename MIPI_DCS_SET_PARTIAL_XXX @@ -29,5 +29,5 @@ index 19aa65a35546..1d9fdd685ded 100644 MIPI_DCS_SET_TEAR_OFF = 0x34, MIPI_DCS_SET_TEAR_ON = 0x35, -- -2.14.1 +2.17.0 diff --git a/device/linux-nokia-n9/0003-drm-omap-panel-dsi-cm-use-defines-from-mipi_display..patch b/device/linux-nokia-n9/0003-drm-omap-panel-dsi-cm-use-defines-from-mipi_display..patch index 895041cab..6c1533d16 100644 --- a/device/linux-nokia-n9/0003-drm-omap-panel-dsi-cm-use-defines-from-mipi_display..patch +++ b/device/linux-nokia-n9/0003-drm-omap-panel-dsi-cm-use-defines-from-mipi_display..patch @@ -1,4 +1,4 @@ -From 013999e09d13087a9eb4922df3099f5e71035031 Mon Sep 17 00:00:00 2001 +From 593a007e969e7d71725a05abf86636185cccfcc0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Filip=20Matijevi=C4=87?= Date: Sat, 28 Oct 2017 14:39:23 +0200 Subject: [PATCH 03/11] drm/omap: panel-dsi-cm: use defines from mipi_display.h @@ -12,7 +12,7 @@ Signed-off-by: Filip Matijević 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c b/drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c -index 7a63d6775a27..418cf5dd2d69 100644 +index d096185683cb..09ddbb001123 100644 --- a/drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c +++ b/drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c @@ -33,8 +33,6 @@ @@ -48,7 +48,7 @@ index 7a63d6775a27..418cf5dd2d69 100644 (1<<2) | (1<<5)); /* BL | BCTRL */ if (r) goto err; -@@ -1101,7 +1100,8 @@ static int dsicm_memory_read(struct omap_dss_device *dssdev, +@@ -1113,7 +1112,8 @@ static int dsicm_memory_read(struct omap_dss_device *dssdev, goto err2; while (buf_used < size) { @@ -59,5 +59,5 @@ index 7a63d6775a27..418cf5dd2d69 100644 r = in->ops.dsi->dcs_read(in, ddata->channel, dcs_cmd, -- -2.14.1 +2.17.0 diff --git a/device/linux-nokia-n9/0004-ARM-dts-n9-add-display-support.patch b/device/linux-nokia-n9/0004-ARM-dts-n9-add-display-support.patch index dd60c73de..9fe3a1a5e 100644 --- a/device/linux-nokia-n9/0004-ARM-dts-n9-add-display-support.patch +++ b/device/linux-nokia-n9/0004-ARM-dts-n9-add-display-support.patch @@ -1,4 +1,4 @@ -From 3390d6d1009dc6cdd166638be4af242e4469bcd1 Mon Sep 17 00:00:00 2001 +From 340566aad4693566b56ec6c81d46fdc130995b4a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Filip=20Matijevi=C4=87?= Date: Sat, 28 Oct 2017 14:32:54 +0200 Subject: [PATCH 04/11] ARM: dts: n9: add display support @@ -10,11 +10,11 @@ Add basic panel support for the Nokia N9. Signed-off-by: Filip Matijević --- - arch/arm/boot/dts/omap3-n9.dts | 91 ++++++++++++++++++++++++++++++++++++++++++ + arch/arm/boot/dts/omap3-n9.dts | 91 ++++++++++++++++++++++++++++++++++ 1 file changed, 91 insertions(+) diff --git a/arch/arm/boot/dts/omap3-n9.dts b/arch/arm/boot/dts/omap3-n9.dts -index e44d93fc644c..613ada9a982a 100644 +index ded5fcf084eb..a966597cd53b 100644 --- a/arch/arm/boot/dts/omap3-n9.dts +++ b/arch/arm/boot/dts/omap3-n9.dts @@ -18,6 +18,26 @@ @@ -44,7 +44,7 @@ index e44d93fc644c..613ada9a982a 100644 &i2c2 { smia_1: camera@10 { compatible = "nokia,smia"; -@@ -79,3 +99,74 @@ +@@ -86,3 +106,74 @@ MATRIX_KEY(7, 8, KEY_VOLUMEDOWN) >; }; @@ -120,5 +120,5 @@ index e44d93fc644c..613ada9a982a 100644 + }; +}; -- -2.14.1 +2.17.0 diff --git a/device/linux-nokia-n9/0005-Revert-drm-omap-work-around-for-omap3-display-enable.patch b/device/linux-nokia-n9/0005-Revert-drm-omap-work-around-for-omap3-display-enable.patch index eac78acbb..ae88ffa2e 100644 --- a/device/linux-nokia-n9/0005-Revert-drm-omap-work-around-for-omap3-display-enable.patch +++ b/device/linux-nokia-n9/0005-Revert-drm-omap-work-around-for-omap3-display-enable.patch @@ -1,15 +1,15 @@ -From 324c0340c85dee1a2ae3eb6c71bcd9e47c9f03f7 Mon Sep 17 00:00:00 2001 +From 3a501b2c3c0507c8f560183ac79617fe975b8594 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Filip=20Matijevi=C4=87?= Date: Thu, 2 Nov 2017 18:46:21 +0100 Subject: [PATCH 05/11] Revert "drm/omap: work-around for omap3 display enable" This reverts commit fc5cc9678e130196012c17b37e555d53d3d3476b. --- - drivers/gpu/drm/omapdrm/omap_drv.c | 47 ++++++++++++++------------------------ + drivers/gpu/drm/omapdrm/omap_drv.c | 47 +++++++++++------------------- 1 file changed, 17 insertions(+), 30 deletions(-) diff --git a/drivers/gpu/drm/omapdrm/omap_drv.c b/drivers/gpu/drm/omapdrm/omap_drv.c -index dd68b2556f5b..bc5b68ecd0f7 100644 +index 3632854c2b91..54bc31679b27 100644 --- a/drivers/gpu/drm/omapdrm/omap_drv.c +++ b/drivers/gpu/drm/omapdrm/omap_drv.c @@ -74,36 +74,23 @@ static void omap_atomic_commit_tail(struct drm_atomic_state *old_state) @@ -67,5 +67,5 @@ index dd68b2556f5b..bc5b68ecd0f7 100644 /* * Wait for completion of the page flips to ensure that old buffers -- -2.14.1 +2.17.0 diff --git a/device/linux-nokia-n9/0006-HACK-drm-omap-panel-dsi-cm-force-0xff-for-brigthness.patch b/device/linux-nokia-n9/0006-HACK-drm-omap-panel-dsi-cm-force-0xff-for-brigthness.patch index ac5893c1d..bb0ad182c 100644 --- a/device/linux-nokia-n9/0006-HACK-drm-omap-panel-dsi-cm-force-0xff-for-brigthness.patch +++ b/device/linux-nokia-n9/0006-HACK-drm-omap-panel-dsi-cm-force-0xff-for-brigthness.patch @@ -1,4 +1,4 @@ -From 8087f305187140d20b7903ba7486f243a2d470d2 Mon Sep 17 00:00:00 2001 +From aa5360534ba836cb5cee6a574c6aec2666ce2b3a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Filip=20Matijevi=C4=87?= Date: Wed, 1 Nov 2017 18:25:45 +0100 Subject: [PATCH 06/11] HACK: drm/omap: panel-dsi-cm: force 0xff for brigthness @@ -12,7 +12,7 @@ Signed-off-by: Filip Matijević 1 file changed, 2 insertions(+) diff --git a/drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c b/drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c -index 418cf5dd2d69..069fad8d89b2 100644 +index 09ddbb001123..b77e4925941a 100644 --- a/drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c +++ b/drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c @@ -375,6 +375,8 @@ static int dsicm_bl_update_status(struct backlight_device *dev) @@ -25,5 +25,5 @@ index 418cf5dd2d69..069fad8d89b2 100644 mutex_lock(&ddata->lock); -- -2.14.1 +2.17.0 diff --git a/device/linux-nokia-n9/0007-ARM-dts-N9-N950-Add-touchscreen-support.patch b/device/linux-nokia-n9/0007-ARM-dts-N9-N950-Add-touchscreen-support.patch index fc4f0a5e1..db970225c 100644 --- a/device/linux-nokia-n9/0007-ARM-dts-N9-N950-Add-touchscreen-support.patch +++ b/device/linux-nokia-n9/0007-ARM-dts-N9-N950-Add-touchscreen-support.patch @@ -1,4 +1,4 @@ -From 15b1d44e2e17ace2ac229a062993e5b530208402 Mon Sep 17 00:00:00 2001 +From 3866db63d94b39ca441e6d94b4f19ec8ce9bf996 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Filip=20Matijevi=C4=87?= Date: Mon, 13 Nov 2017 17:20:42 +0100 Subject: [PATCH 07/11] ARM: dts: N9/N950: Add touchscreen support @@ -66,5 +66,5 @@ index 0d9b85317529..219519812050 100644 &i2c3 { -- -2.14.1 +2.17.0 diff --git a/device/linux-nokia-n9/0008-misc-apds990x-Add-device-tree-support.patch b/device/linux-nokia-n9/0008-misc-apds990x-Add-device-tree-support.patch index 825513868..002400469 100644 --- a/device/linux-nokia-n9/0008-misc-apds990x-Add-device-tree-support.patch +++ b/device/linux-nokia-n9/0008-misc-apds990x-Add-device-tree-support.patch @@ -1,12 +1,12 @@ -From aca9cbfc6f2bf8a3dc6b30d6b7e78e9790a9875f Mon Sep 17 00:00:00 2001 +From ab93f4cf260cfbc993d9430753cd6aa69dcd37f1 Mon Sep 17 00:00:00 2001 From: filippz Date: Thu, 28 Dec 2017 06:57:45 +0100 Subject: [PATCH 08/11] misc: apds990x: Add device tree support Signed-off-by: filippz --- - .../devicetree/bindings/misc/avago-apds990x.txt | 41 +++++++++++ - drivers/misc/apds990x.c | 85 +++++++++++++++++++++- + .../bindings/misc/avago-apds990x.txt | 41 +++++++++ + drivers/misc/apds990x.c | 85 ++++++++++++++++++- 2 files changed, 123 insertions(+), 3 deletions(-) create mode 100644 Documentation/devicetree/bindings/misc/avago-apds990x.txt @@ -189,5 +189,5 @@ index ed9412d750b7..7bb9cd76110a 100644 }, .probe = apds990x_probe, -- -2.14.1 +2.17.0 diff --git a/device/linux-nokia-n9/0009-misc-apds990x-convert-to-iio.patch b/device/linux-nokia-n9/0009-misc-apds990x-convert-to-iio.patch index e4b35eac5..93f3af055 100644 --- a/device/linux-nokia-n9/0009-misc-apds990x-convert-to-iio.patch +++ b/device/linux-nokia-n9/0009-misc-apds990x-convert-to-iio.patch @@ -1,4 +1,4 @@ -From b8d6cddfec87f35e49d4bc54020e59a4c71dc31e Mon Sep 17 00:00:00 2001 +From 2a57f7d84874c3b7ec1b6faf69e376bf75c18636 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Filip=20Matijevi=C4=87?= Date: Sat, 10 Feb 2018 21:28:19 +0100 Subject: [PATCH 09/11] misc: apds990x: convert to iio @@ -8,7 +8,7 @@ Content-Transfer-Encoding: 8bit Signed-off-by: Filip Matijević --- - drivers/misc/apds990x.c | 959 +++++++++++++++++++++++++----------------------- + drivers/misc/apds990x.c | 959 +++++++++++++++++++++------------------- 1 file changed, 493 insertions(+), 466 deletions(-) diff --git a/drivers/misc/apds990x.c b/drivers/misc/apds990x.c @@ -1281,5 +1281,5 @@ index 7bb9cd76110a..363a6bf85a6c 100644 MODULE_DESCRIPTION("APDS990X combined ALS and proximity sensor"); -- -2.14.1 +2.17.0 diff --git a/device/linux-nokia-n9/0010-ARM-dts-N9-Add-support-for-apds990x-ALS-PS.patch b/device/linux-nokia-n9/0010-ARM-dts-N9-Add-support-for-apds990x-ALS-PS.patch index 6ce89e5b7..f9643a992 100644 --- a/device/linux-nokia-n9/0010-ARM-dts-N9-Add-support-for-apds990x-ALS-PS.patch +++ b/device/linux-nokia-n9/0010-ARM-dts-N9-Add-support-for-apds990x-ALS-PS.patch @@ -1,4 +1,4 @@ -From ad23767da90b149a650ebb38a797056f81728507 Mon Sep 17 00:00:00 2001 +From 01d2a3ad745746ae78f11b19c0c3a2fe893a6299 Mon Sep 17 00:00:00 2001 From: filippz Date: Thu, 28 Dec 2017 07:00:11 +0100 Subject: [PATCH 10/11] ARM: dts: N9: Add support for apds990x ALS/PS @@ -10,7 +10,7 @@ Signed-off-by: filippz 2 files changed, 38 insertions(+) diff --git a/arch/arm/boot/dts/omap3-n9.dts b/arch/arm/boot/dts/omap3-n9.dts -index 613ada9a982a..1143a6eef736 100644 +index a966597cd53b..700460b0a6a9 100644 --- a/arch/arm/boot/dts/omap3-n9.dts +++ b/arch/arm/boot/dts/omap3-n9.dts @@ -57,6 +57,30 @@ @@ -43,7 +43,7 @@ index 613ada9a982a..1143a6eef736 100644 + }; }; - &isp { + &i2c3 { diff --git a/arch/arm/boot/dts/omap3-n950-n9.dtsi b/arch/arm/boot/dts/omap3-n950-n9.dtsi index 219519812050..7ac45b833d1d 100644 --- a/arch/arm/boot/dts/omap3-n950-n9.dtsi @@ -77,5 +77,5 @@ index 219519812050..7ac45b833d1d 100644 &i2c1 { -- -2.14.1 +2.17.0 diff --git a/device/linux-nokia-n9/0011-HACK-export-dma-access-functions-needed-by-PVR-drive.patch b/device/linux-nokia-n9/0011-HACK-export-dma-access-functions-needed-by-PVR-drive.patch index ff388aae8..c25bcc13e 100644 --- a/device/linux-nokia-n9/0011-HACK-export-dma-access-functions-needed-by-PVR-drive.patch +++ b/device/linux-nokia-n9/0011-HACK-export-dma-access-functions-needed-by-PVR-drive.patch @@ -1,4 +1,4 @@ -From d619104c857f0938801a34acf1ba2d46fd41e521 Mon Sep 17 00:00:00 2001 +From ab7066f9285592640b0cc3f870a14c134fdb75b2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Filip=20Matijevi=C4=87?= Date: Sat, 16 Dec 2017 07:41:32 +0100 Subject: [PATCH 11/11] HACK: export dma access functions needed by PVR drivers @@ -8,10 +8,10 @@ Subject: [PATCH 11/11] HACK: export dma access functions needed by PVR drivers 1 file changed, 7 insertions(+) diff --git a/arch/arm/mm/dma-mapping.c b/arch/arm/mm/dma-mapping.c -index ada8eb206a90..877f7f96462d 100644 +index 8c398fedbbb6..cd86f8c49647 100644 --- a/arch/arm/mm/dma-mapping.c +++ b/arch/arm/mm/dma-mapping.c -@@ -2409,3 +2409,10 @@ void arch_teardown_dma_ops(struct device *dev) +@@ -2423,3 +2423,10 @@ void arch_teardown_dma_ops(struct device *dev) arm_teardown_iommu_dma_ops(dev); } @@ -23,5 +23,5 @@ index ada8eb206a90..877f7f96462d 100644 +EXPORT_SYMBOL(__glue(_CACHE,_dma_flush_range)); +#endif -- -2.14.1 +2.17.0 diff --git a/device/linux-nokia-n9/APKBUILD b/device/linux-nokia-n9/APKBUILD index 5588c8571..c678dc638 100644 --- a/device/linux-nokia-n9/APKBUILD +++ b/device/linux-nokia-n9/APKBUILD @@ -2,7 +2,7 @@ _flavor=nokia-n9 _config="config-${_flavor}.armhf" pkgname=linux-${_flavor} -pkgver=4.16_rc3 +pkgver=4.17_rc4 _pkgver=${pkgver/_/-} _kernver=${pkgver%_rc*} _mainver=${_kernver%.*} @@ -12,7 +12,7 @@ case $pkgver in *.*.*) _kernver=${pkgver%.*};; *.*) _kernver=$pkgver;; esac -pkgrel=1 +pkgrel=0 arch="armhf" pkgdesc="Nokia N9 kernel" url="https://kernel.org" @@ -116,18 +116,18 @@ package() { INSTALL_MOD_PATH="$pkgdir" INSTALL_MOD_STRIP=1 } -sha512sums="c00d92659df815a53dcac7dde145b742b1f20867d380c07cb09ddb3295d6ff10f8931b21ef0b09d7156923a3957b39d74d87c883300173b2e20690d2b4ec35ea linux-4.15.tar.xz -b5b4bc53a245725806d7f46d53e5715e8b8505536c96465cd8ea9dc506ed7b1c02a518114c3025786d10ab72c1454c03e85380bddd753f48946ca71bc0ed6f17 linux-v4.15-v4.16-rc3.patch -1c2904c09954a88c3e3afe7bc962a460ceb4bb2503a8a69ff6e84786c3a36a86e60b7f6577ba37d57a9e06db65b0ce922d8a9807d6dae6d5fafa3fe54b17e4bd 0001-SREv2.patch -3f3e4608958a0ef65283fe04cd4cb88b8074f9af5626cb27dafa7ab21e62e9069822d0f018fd3636bba830b6f6f44e47911987713f91b3763fe4703e75158065 0002-drm-add-rename-MIPI_DCS_SET_PARTIAL_XXX.patch -b8d627d53e4d32568afa0c2fb5900487616b14c5ce9a14639894bd27aeb8c2a1d5de02435a0af136bd90cbc785c8862f4a9525f1dedd25a901e045c314fbd6d0 0003-drm-omap-panel-dsi-cm-use-defines-from-mipi_display..patch -3b321910172d0699efd756d77c852f32884f95bea518821f1643b6cbef0eaa3934ca778450bdcfe0d0e341b6fc6e7eb9f6677a3f0c6ab953a493e0fca1fcd30e 0004-ARM-dts-n9-add-display-support.patch -0eda9ca295aaa2ee038644eac5227585cd853573b2d8d79def2cf020f6dd9f40238f3957d27d1f55fef55f4c70f3ee76c3b8823231a3f8942bac6532a097ea8a 0005-Revert-drm-omap-work-around-for-omap3-display-enable.patch -98b495c08d5fc4c87688b73aa9cc373a8dfe9303e39c05e22541e09dba688c361a61a8de92f82ded06033106a2a387f9cf0a3099cc89966de73954c063a116dd 0006-HACK-drm-omap-panel-dsi-cm-force-0xff-for-brigthness.patch -09cb6c0527e697d663b08a26ca67541b4116a96d8f3b31b681f4ded14f0d2fd9c7eacab6f7c9d7dfee4d991ca6d2cd24d7ea607bd7f389f87998c56e00dd5d98 0007-ARM-dts-N9-N950-Add-touchscreen-support.patch -f48757a26498da4b3625091f44f3e7a02a3e08bd18bc9b25f7b61bf66add3622c3841c00c689a3bf1fecfae84fe55c577adab974c5ba947a460a0bbe6811bb63 0008-misc-apds990x-Add-device-tree-support.patch -187be299cd742b836b4831da2d12a0e2c6b6b2a815ee25c2d9ef2ba2300e389cb03243d4c862868eee222db2988dbe8c33c27cf5188f49c1d93501f096562609 0009-misc-apds990x-convert-to-iio.patch -73fb2aae3ca58dba512dc2b252affb7fdda8ad33973ab964e73ff40f8f5de0d3192ca6f36c971a07fd5a14a279cab37eaad6bb92b918d1e9a1b8bc5725d758c2 0010-ARM-dts-N9-Add-support-for-apds990x-ALS-PS.patch -74642fffa8d93add2e9aa07e463bfc9989776c29c293aca82015ea86bc52be73a5a4987c48f837988b2df877395b9f3a21be8c4b7ccdfc480a362daa46b7cd0d 0011-HACK-export-dma-access-functions-needed-by-PVR-drive.patch +sha512sums="ab47849314b177d0eec9dbf261f33972b0d89fb92fb0650130ffa7abc2f36c0fab2d06317dc1683c51a472a9a631573a9b1e7258d6281a2ee189897827f14662 linux-4.16.tar.xz +75ceeda7f8c1e717ffc3d52b7c30a97564b9e4bd1963be086cda3627c40a64a36950511315287dd1f7bbcc02a5ce5e53a26a7dc934125988f20300a24243d886 linux-v4.16-v4.17-rc4.patch +0939e39c44eabc74fb970294599a720dcd3dc56e2836e4c20ffe9af5f132080c4ce72daca4996723f47cae924d67980f542bc010fcdbc757617ea30eff2c4529 0001-SREv2.patch +67b05fba89abb9c39e06a5a636534ac7b732e09d5cebff09fb214383fd03c3bcb1c3cf9736de3c533474b5d34e7f0ecc284ab9cf4a37f7a94914a005847acdc9 0002-drm-add-rename-MIPI_DCS_SET_PARTIAL_XXX.patch +2901f07d72371cc004dd7520c35279aa1c4d196575663641cc152e841b623337592d0651fcf95550df77325c5a47a7f722b4b86a3b72d7686e5ae8fa7b0240d4 0003-drm-omap-panel-dsi-cm-use-defines-from-mipi_display..patch +555991324491b138fce123bef5f5996392472336128bb2db4c10a4b6aa77c5b3133245fa01bfb122046f99a491a54ea91fc3a0b743d02bd71bddbe14fde87d25 0004-ARM-dts-n9-add-display-support.patch +62411b4298663f18611bf1407c088df8e359f197cd5ebcbd8cdb1a6a5138ffeb1e31b161ab5cd152b93ab486b0b92e1f27875006b07d0cc3392324a11b41ab79 0005-Revert-drm-omap-work-around-for-omap3-display-enable.patch +69af520fee8164f94071857ed2bd7968e2b8ab437a4b045cd3dff9fa2ad1d532aff9a28a816c3bc54e38bf3b30be64f9aab993106c6710249febb8d5d1b6364d 0006-HACK-drm-omap-panel-dsi-cm-force-0xff-for-brigthness.patch +282da831cc2eedaf532526dbec165c8ced30bd29e5c32b6616b3ec9e568ce5e8748db12801d508049ed1b821600df415ed677e57daae8b863e69876a6fc3e19d 0007-ARM-dts-N9-N950-Add-touchscreen-support.patch +ac1173aa911326b467d3d453dba80641c1d32302989acebc2a3bdb14236c56dca6ace4f6e848a2d1901944d57ab901c6830bc5a3efe33edc39db5177595fbeb8 0008-misc-apds990x-Add-device-tree-support.patch +c2130e7b5aa389d1377a027acced3af6caf57bd797d4326cd5f3088af5fbcd5ade5764f27c1d12306ab5905a05583eab8e3ddaac6fafc868aa13b8c004039485 0009-misc-apds990x-convert-to-iio.patch +a260f4e218416ec51740ddc01b74f177123211604428a0204fd1098230503d64e6a7ba14073747de24195e9a2dbeabac7e971232bf4fde193d1ac6b15377d6d7 0010-ARM-dts-N9-Add-support-for-apds990x-ALS-PS.patch +8ad7e3b360139fcd5d79b4cbcf5bfca2f394807394aed022177d5b5fc843b7e0785c93f2ee1ff66e9bcac54ca191fbef30d62a5d6b7eec1ae2f7f9dd70a65fa3 0011-HACK-export-dma-access-functions-needed-by-PVR-drive.patch b666d18e505bdf9f806f133b0930555ab911cd8625f84b6d2a9caa9cffa805c6fc2c9c0485f9e3dea19b29c7c43cd688d4a5f2d3722d33f67b6435944a164ee0 config-nokia-n9.armhf a9b2eba95ead1226108bf664f49bcad70be99df7284ba807abdbd86a8dc68ebda6fc5d88c15846009f7748f1ae4d6735477d316bb9f298e7728071dad506b35f RM-696_Pyrenees_SMD_V1_6.raw"