From ee2475091ad0f5975ab6edf4f042a248017ff35b Mon Sep 17 00:00:00 2001 From: Robert Nelson <robertcnelson@gmail.com> Date: Thu, 13 Feb 2014 10:35:45 -0600 Subject: [PATCH] merge to: https://github.com/RobertCNelson/linux/commit/4675348e78fab420e70f9144b320d9c063c7cee8 Signed-off-by: Robert Nelson <robertcnelson@gmail.com> --- patch.sh | 125 ++++---- ...M-dts-OMAP4-Add-device-nodes-for-ABB.patch | 30 +- .../0005-ARM-dts-omap3-beagle-add-i2c2.patch | 28 ++ .../0005-dts-omap3-beagle-add-i2c2-i2c3.patch | 41 --- ...s-beagle-xm-make-sure-dvi-is-enabled.patch | 8 +- ...agle-xm-ab.dtb-copy-from-omap3-beagl.patch | 73 ++--- .../0001-ARM-OMAP2-add-omapdss_init_of.patch} | 8 +- ...P2-DT-compatible-tweak-for-displays.patch} | 8 +- ...03-OMAPDSS-add-label-support-for-DT.patch} | 6 +- ...PDSS-get-dssdev-alias-from-DT-alias.patch} | 6 +- ...PFB-clean-up-default-display-search.patch} | 6 +- ...h-for-default-display-with-DT-alias.patch} | 6 +- .../0007-OMAPDSS-add-of-helpers.patch} | 6 +- ...PDSS-Improve-regulator-names-for-DT.patch} | 38 ++- .../0009-OMAPDSS-Add-DT-support-to-DSS.patch} | 30 +- ...010-OMAPDSS-Add-DT-support-to-DISPC.patch} | 10 +- ...0011-OMAPDSS-Add-DT-support-to-HDMI.patch} | 8 +- ...0012-OMAPDSS-Add-DT-support-to-VENC.patch} | 8 +- .../0013-OMAPDSS-Add-DT-support-to-DSI.patch} | 8 +- ...OMAPDSS-panel-dsi-cm-Add-DT-support.patch} | 6 +- ...APDSS-encoder-tfp410-Add-DT-support.patch} | 6 +- ...MAPDSS-connector-dvi-Add-DT-support.patch} | 6 +- ...SS-encoder-tpd12s015-Add-DT-support.patch} | 6 +- ...APDSS-hdmi-connector-Add-DT-support.patch} | 6 +- ...19-OMAPDSS-panel-dpi-Add-DT-support.patch} | 6 +- ...-connector-analog-tv-Add-DT-support.patch} | 6 +- ...21-OMAPDSS-acx565akm-Add-DT-support.patch} | 6 +- ...-omap2.dtsi-add-omapdss-information.patch} | 8 +- ...-omap3.dtsi-add-omapdss-information.patch} | 43 ++- ...-omap4.dtsi-add-omapdss-information.patch} | 29 +- ...4-panda.dts-add-display-information.patch} | 6 +- ...ap4-sdp.dts-add-display-information.patch} | 6 +- ...-beagle.dts-add-display-information.patch} | 30 +- ...agle-xm.dts-add-display-information.patch} | 82 +++-- ...gep0020.dts-add-display-information.patch} | 18 +- ...p3-n900.dts-add-display-information.patch} | 7 +- ...PDSS-remove-DT-hacks-for-regulators.patch} | 42 +-- ...P2-remove-pdata-quirks-for-displays.patch} | 12 +- ...033-Doc-DT-Add-OMAP-DSS-DT-Bindings.patch} | 54 +++- ...ding-documentation-for-Analog-TV-Co.patch} | 6 +- ...ding-documentation-for-DVI-Connecto.patch} | 6 +- ...ding-documentation-for-HDMI-Connect.patch} | 6 +- ...ding-documentation-for-MIPI-DPI-Pan.patch} | 6 +- ...ding-documentation-for-MIPI-DSI-CM-.patch} | 6 +- ...ding-documentation-for-Sony-acx565a.patch} | 7 +- ...ding-documentation-for-TFP410-encod.patch} | 6 +- ...ding-documentation-for-tpd12s015-en.patch} | 6 +- ...MAPDSS-DISPC-decimation-rounding-fix.patch | 88 ++++++ .../0043-OMAPDSS-fix-fck-field-types.patch | 46 +++ ...rate-calculation-for-fractional-rate.patch | 102 +++++++ ...ix-rate-calculation-for-fractional-r.patch | 93 ++++++ ...ix-clkoutx2-with-CLK_SET_RATE_PAREN.patch} | 4 +- ...dts-fix-omap3-dss-clock-handle-names.patch | 88 ++++++ ...ARM-dts-fix-DPLL4-x2-clkouts-on-3630.patch | 65 ++++ ...ixed-factor-clock-for-dpll4_m4x2_mul.patch | 49 +++ ...ti-set-rate-parent-for-dpll4_m4-path.patch | 38 +++ ...-rounding-when-calculating-fclk-rate.patch | 42 +++ ...-OMAPDSS-fix-missing-EXPORT_SYMBOL-s.patch | 37 --- .../0002-OMAPDSS-fix-debug-prints.patch | 255 ---------------- .../0003-OMAPDSS-apply-fixes.patch | 68 ----- ...0004-OMAPDSS-DISPC-Add-MFLAG-defines.patch | 108 ------- ...PDSS-rename-display-sysfs-name-entry.patch | 42 --- .../0006-OMAPDSS-DSI-fix-fifosize.patch | 83 ----- ...SS-HDMI4-Accept-non-standard-timings.patch | 62 ---- ...PDSS-HDMI4-remove-useless-func-calls.patch | 39 --- ...09-OMAPDSS-DISPC-fix-context-restore.patch | 34 --- ...SS-HDMI-fix-hdmi_wait_for_bit_change.patch | 53 ---- ...11-OMAPDSS-HDMI-fix-HDMI_WP_CLK-name.patch | 42 --- ...12-OMAPDSS-HDMI-add-missing-core-irq.patch | 28 -- ...lit-DSI-memory-map-to-smaller-blocks.patch | 288 ------------------ ...4-OMAPDSS-HDMI-rename-resource-names.patch | 77 ----- ...nformative-print-when-probe-succeeds.patch | 42 --- ...S-don-t-print-errors-on-EPROBE_DEFER.patch | 94 ------ ...B-disable-overlays-on-driver-removal.patch | 43 --- ...eload-more-data-in-pipeline-DMAs-for.patch | 108 ------- ...DSS-panel-acx565akm-clean-up-locking.patch | 118 ------- ...Fix-34xx-overlay-scaling-calculation.patch | 96 ------ version.sh | 4 +- 78 files changed, 1090 insertions(+), 2133 deletions(-) create mode 100644 patches/dts/0005-ARM-dts-omap3-beagle-add-i2c2.patch delete mode 100644 patches/dts/0005-dts-omap3-beagle-add-i2c2-i2c3.patch rename patches/{omap_dt_dss_v3/0021-ARM-OMAP2-add-omapdss_init_of.patch => omap_dt_dss/0001-ARM-OMAP2-add-omapdss_init_of.patch} (94%) rename patches/{omap_dt_dss_v3/0022-ARM-OMAP2-DT-compatible-tweak-for-displays.patch => omap_dt_dss/0002-ARM-OMAP2-DT-compatible-tweak-for-displays.patch} (94%) rename patches/{omap_dt_dss_v3/0023-OMAPDSS-add-label-support-for-DT.patch => omap_dt_dss/0003-OMAPDSS-add-label-support-for-DT.patch} (90%) rename patches/{omap_dt_dss_v3/0024-OMAPDSS-get-dssdev-alias-from-DT-alias.patch => omap_dt_dss/0004-OMAPDSS-get-dssdev-alias-from-DT-alias.patch} (93%) rename patches/{omap_dt_dss_v3/0025-OMAPFB-clean-up-default-display-search.patch => omap_dt_dss/0005-OMAPFB-clean-up-default-display-search.patch} (94%) rename patches/{omap_dt_dss_v3/0026-OMAPFB-search-for-default-display-with-DT-alias.patch => omap_dt_dss/0006-OMAPFB-search-for-default-display-with-DT-alias.patch} (92%) rename patches/{omap_dt_dss_v3/0027-OMAPDSS-add-of-helpers.patch => omap_dt_dss/0007-OMAPDSS-add-of-helpers.patch} (97%) rename patches/{omap_dt_dss_v3/0028-OMAPDSS-Improve-regulator-names-for-DT.patch => omap_dt_dss/0008-OMAPDSS-Improve-regulator-names-for-DT.patch} (73%) rename patches/{omap_dt_dss_v3/0029-OMAPDSS-Add-DT-support-to-DSS.patch => omap_dt_dss/0009-OMAPDSS-Add-DT-support-to-DSS.patch} (89%) rename patches/{omap_dt_dss_v3/0030-OMAPDSS-Add-DT-support-to-DISPC.patch => omap_dt_dss/0010-OMAPDSS-Add-DT-support-to-DISPC.patch} (81%) rename patches/{omap_dt_dss_v3/0031-OMAPDSS-Add-DT-support-to-HDMI.patch => omap_dt_dss/0011-OMAPDSS-Add-DT-support-to-HDMI.patch} (86%) rename patches/{omap_dt_dss_v3/0032-OMAPDSS-Add-DT-support-to-VENC.patch => omap_dt_dss/0012-OMAPDSS-Add-DT-support-to-VENC.patch} (94%) rename patches/{omap_dt_dss_v3/0033-OMAPDSS-Add-DT-support-to-DSI.patch => omap_dt_dss/0013-OMAPDSS-Add-DT-support-to-DSI.patch} (97%) rename patches/{omap_dt_dss_v3/0034-OMAPDSS-panel-dsi-cm-Add-DT-support.patch => omap_dt_dss/0014-OMAPDSS-panel-dsi-cm-Add-DT-support.patch} (95%) rename patches/{omap_dt_dss_v3/0035-OMAPDSS-encoder-tfp410-Add-DT-support.patch => omap_dt_dss/0015-OMAPDSS-encoder-tfp410-Add-DT-support.patch} (95%) rename patches/{omap_dt_dss_v3/0036-OMAPDSS-connector-dvi-Add-DT-support.patch => omap_dt_dss/0016-OMAPDSS-connector-dvi-Add-DT-support.patch} (94%) rename patches/{omap_dt_dss_v3/0037-OMAPDSS-encoder-tpd12s015-Add-DT-support.patch => omap_dt_dss/0017-OMAPDSS-encoder-tpd12s015-Add-DT-support.patch} (95%) rename patches/{omap_dt_dss_v3/0038-OMAPDSS-hdmi-connector-Add-DT-support.patch => omap_dt_dss/0018-OMAPDSS-hdmi-connector-Add-DT-support.patch} (93%) rename patches/{omap_dt_dss_v3/0039-OMAPDSS-panel-dpi-Add-DT-support.patch => omap_dt_dss/0019-OMAPDSS-panel-dpi-Add-DT-support.patch} (96%) rename patches/{omap_dt_dss_v3/0040-OMAPDSS-connector-analog-tv-Add-DT-support.patch => omap_dt_dss/0020-OMAPDSS-connector-analog-tv-Add-DT-support.patch} (95%) rename patches/{omap_dt_dss_v3/0041-OMAPDSS-acx565akm-Add-DT-support.patch => omap_dt_dss/0021-OMAPDSS-acx565akm-Add-DT-support.patch} (95%) rename patches/{omap_dt_dss_v3/0042-ARM-omap2.dtsi-add-omapdss-information.patch => omap_dt_dss/0022-ARM-omap2.dtsi-add-omapdss-information.patch} (89%) rename patches/{omap_dt_dss_v3/0043-ARM-omap3.dtsi-add-omapdss-information.patch => omap_dt_dss/0023-ARM-omap3.dtsi-add-omapdss-information.patch} (57%) rename patches/{omap_dt_dss_v3/0044-ARM-omap4.dtsi-add-omapdss-information.patch => omap_dt_dss/0024-ARM-omap4.dtsi-add-omapdss-information.patch} (75%) rename patches/{omap_dt_dss_v3/0045-ARM-omap4-panda.dts-add-display-information.patch => omap_dt_dss/0025-ARM-omap4-panda.dts-add-display-information.patch} (95%) rename patches/{omap_dt_dss_v3/0046-ARM-omap4-sdp.dts-add-display-information.patch => omap_dt_dss/0026-ARM-omap4-sdp.dts-add-display-information.patch} (95%) rename patches/{omap_dt_dss_v3/0047-ARM-omap3-beagle.dts-add-display-information.patch => omap_dt_dss/0027-ARM-omap3-beagle.dts-add-display-information.patch} (88%) rename patches/{omap_dt_dss_v3/0048-ARM-omap3-beagle-xm.dts-add-display-information.patch => omap_dt_dss/0028-ARM-omap3-beagle-xm.dts-add-display-information.patch} (52%) rename patches/{omap_dt_dss_v3/0049-ARM-omap3-igep0020.dts-add-display-information.patch => omap_dt_dss/0029-ARM-omap3-igep0020.dts-add-display-information.patch} (88%) rename patches/{omap_dt_dss_v3/0050-ARM-omap3-n900.dts-add-display-information.patch => omap_dt_dss/0030-ARM-omap3-n900.dts-add-display-information.patch} (93%) rename patches/{omap_dt_dss_v3/0051-OMAPDSS-remove-DT-hacks-for-regulators.patch => omap_dt_dss/0031-OMAPDSS-remove-DT-hacks-for-regulators.patch} (62%) rename patches/{omap_dt_dss_v3/0052-ARM-OMAP2-remove-pdata-quirks-for-displays.patch => omap_dt_dss/0032-ARM-OMAP2-remove-pdata-quirks-for-displays.patch} (96%) rename patches/{omap_dt_dss_v3/0053-Doc-DT-Add-OMAP-DSS-DT-Bindings.patch => omap_dt_dss/0033-Doc-DT-Add-OMAP-DSS-DT-Bindings.patch} (90%) rename patches/{omap_dt_dss_v3/0054-Doc-DT-Add-DT-binding-documentation-for-Analog-TV-Co.patch => omap_dt_dss/0034-Doc-DT-Add-DT-binding-documentation-for-Analog-TV-Co.patch} (89%) rename patches/{omap_dt_dss_v3/0055-Doc-DT-Add-DT-binding-documentation-for-DVI-Connecto.patch => omap_dt_dss/0035-Doc-DT-Add-DT-binding-documentation-for-DVI-Connecto.patch} (89%) rename patches/{omap_dt_dss_v3/0056-Doc-DT-Add-DT-binding-documentation-for-HDMI-Connect.patch => omap_dt_dss/0036-Doc-DT-Add-DT-binding-documentation-for-HDMI-Connect.patch} (88%) rename patches/{omap_dt_dss_v3/0057-Doc-DT-Add-DT-binding-documentation-for-MIPI-DPI-Pan.patch => omap_dt_dss/0037-Doc-DT-Add-DT-binding-documentation-for-MIPI-DPI-Pan.patch} (92%) rename patches/{omap_dt_dss_v3/0058-Doc-DT-Add-DT-binding-documentation-for-MIPI-DSI-CM-.patch => omap_dt_dss/0038-Doc-DT-Add-DT-binding-documentation-for-MIPI-DSI-CM-.patch} (89%) rename patches/{omap_dt_dss_v3/0059-Doc-DT-Add-DT-binding-documentation-for-Sony-acx565a.patch => omap_dt_dss/0039-Doc-DT-Add-DT-binding-documentation-for-Sony-acx565a.patch} (86%) rename patches/{omap_dt_dss_v3/0060-Doc-DT-Add-DT-binding-documentation-for-TFP410-encod.patch => omap_dt_dss/0040-Doc-DT-Add-DT-binding-documentation-for-TFP410-encod.patch} (90%) rename patches/{omap_dt_dss_v3/0061-Doc-DT-Add-DT-binding-documentation-for-tpd12s015-en.patch => omap_dt_dss/0041-Doc-DT-Add-DT-binding-documentation-for-tpd12s015-en.patch} (91%) create mode 100644 patches/omap_dt_dss/0042-OMAPDSS-DISPC-decimation-rounding-fix.patch create mode 100644 patches/omap_dt_dss/0043-OMAPDSS-fix-fck-field-types.patch create mode 100644 patches/omap_dt_dss/0044-clk-divider-fix-rate-calculation-for-fractional-rate.patch create mode 100644 patches/omap_dt_dss/0045-clk-ti-divider-fix-rate-calculation-for-fractional-r.patch rename patches/{omap_dt_dss_v3/0062-ARM-OMAP2-clock-fix-clkoutx2-with-CLK_SET_RATE_PAREN.patch => omap_dt_dss/0046-ARM-OMAP2-clock-fix-clkoutx2-with-CLK_SET_RATE_PAREN.patch} (97%) create mode 100644 patches/omap_dt_dss/0047-ARM-dts-fix-omap3-dss-clock-handle-names.patch create mode 100644 patches/omap_dt_dss/0048-ARM-dts-fix-DPLL4-x2-clkouts-on-3630.patch create mode 100644 patches/omap_dt_dss/0049-ARM-dts-use-ti-fixed-factor-clock-for-dpll4_m4x2_mul.patch create mode 100644 patches/omap_dt_dss/0050-ARM-dts-set-ti-set-rate-parent-for-dpll4_m4-path.patch create mode 100644 patches/omap_dt_dss/0051-OMAPDSS-fix-rounding-when-calculating-fclk-rate.patch delete mode 100644 patches/omap_dt_dss_v3/0001-OMAPDSS-fix-missing-EXPORT_SYMBOL-s.patch delete mode 100644 patches/omap_dt_dss_v3/0002-OMAPDSS-fix-debug-prints.patch delete mode 100644 patches/omap_dt_dss_v3/0003-OMAPDSS-apply-fixes.patch delete mode 100644 patches/omap_dt_dss_v3/0004-OMAPDSS-DISPC-Add-MFLAG-defines.patch delete mode 100644 patches/omap_dt_dss_v3/0005-OMAPDSS-rename-display-sysfs-name-entry.patch delete mode 100644 patches/omap_dt_dss_v3/0006-OMAPDSS-DSI-fix-fifosize.patch delete mode 100644 patches/omap_dt_dss_v3/0007-OMAPDSS-HDMI4-Accept-non-standard-timings.patch delete mode 100644 patches/omap_dt_dss_v3/0008-OMAPDSS-HDMI4-remove-useless-func-calls.patch delete mode 100644 patches/omap_dt_dss_v3/0009-OMAPDSS-DISPC-fix-context-restore.patch delete mode 100644 patches/omap_dt_dss_v3/0010-OMAPDSS-HDMI-fix-hdmi_wait_for_bit_change.patch delete mode 100644 patches/omap_dt_dss_v3/0011-OMAPDSS-HDMI-fix-HDMI_WP_CLK-name.patch delete mode 100644 patches/omap_dt_dss_v3/0012-OMAPDSS-HDMI-add-missing-core-irq.patch delete mode 100644 patches/omap_dt_dss_v3/0013-OMAPDSS-DSI-split-DSI-memory-map-to-smaller-blocks.patch delete mode 100644 patches/omap_dt_dss_v3/0014-OMAPDSS-HDMI-rename-resource-names.patch delete mode 100644 patches/omap_dt_dss_v3/0015-OMAPFB-give-informative-print-when-probe-succeeds.patch delete mode 100644 patches/omap_dt_dss_v3/0016-OMAPDSS-don-t-print-errors-on-EPROBE_DEFER.patch delete mode 100644 patches/omap_dt_dss_v3/0017-OMAPFB-disable-overlays-on-driver-removal.patch delete mode 100644 patches/omap_dt_dss_v3/0018-OMAPDSS-DISPC-Preload-more-data-in-pipeline-DMAs-for.patch delete mode 100644 patches/omap_dt_dss_v3/0019-OMAPDSS-panel-acx565akm-clean-up-locking.patch delete mode 100644 patches/omap_dt_dss_v3/0020-OMAPDSS-DISPC-Fix-34xx-overlay-scaling-calculation.patch diff --git a/patch.sh b/patch.sh index aebdf0360..b029ea269 100644 --- a/patch.sh +++ b/patch.sh @@ -256,72 +256,61 @@ omap_next () { #git pull --no-edit git://git.kernel.org/pub/scm/linux/kernel/git/bcousson/linux-omap-dt.git for_3.13/dts } -omap_dt_dss_v3 () { - echo "dir: omap_dt_dss_v3" - #From: https://git.kernel.org/cgit/linux/kernel/git/tomba/linux.git/log/?h=work/dss-dt-review-3 - -# ${git} "${DIR}/patches/omap_dt_dss_v3/0001-OMAPDSS-fix-missing-EXPORT_SYMBOL-s.patch" -# ${git} "${DIR}/patches/omap_dt_dss_v3/0002-OMAPDSS-fix-debug-prints.patch" -# ${git} "${DIR}/patches/omap_dt_dss_v3/0003-OMAPDSS-apply-fixes.patch" -# ${git} "${DIR}/patches/omap_dt_dss_v3/0004-OMAPDSS-DISPC-Add-MFLAG-defines.patch" -# ${git} "${DIR}/patches/omap_dt_dss_v3/0005-OMAPDSS-rename-display-sysfs-name-entry.patch" -# ${git} "${DIR}/patches/omap_dt_dss_v3/0006-OMAPDSS-DSI-fix-fifosize.patch" -# ${git} "${DIR}/patches/omap_dt_dss_v3/0007-OMAPDSS-HDMI4-Accept-non-standard-timings.patch" -# ${git} "${DIR}/patches/omap_dt_dss_v3/0008-OMAPDSS-HDMI4-remove-useless-func-calls.patch" -# ${git} "${DIR}/patches/omap_dt_dss_v3/0009-OMAPDSS-DISPC-fix-context-restore.patch" -# ${git} "${DIR}/patches/omap_dt_dss_v3/0010-OMAPDSS-HDMI-fix-hdmi_wait_for_bit_change.patch" -# ${git} "${DIR}/patches/omap_dt_dss_v3/0011-OMAPDSS-HDMI-fix-HDMI_WP_CLK-name.patch" -# ${git} "${DIR}/patches/omap_dt_dss_v3/0012-OMAPDSS-HDMI-add-missing-core-irq.patch" -# ${git} "${DIR}/patches/omap_dt_dss_v3/0013-OMAPDSS-DSI-split-DSI-memory-map-to-smaller-blocks.patch" -# ${git} "${DIR}/patches/omap_dt_dss_v3/0014-OMAPDSS-HDMI-rename-resource-names.patch" -# ${git} "${DIR}/patches/omap_dt_dss_v3/0015-OMAPFB-give-informative-print-when-probe-succeeds.patch" -# ${git} "${DIR}/patches/omap_dt_dss_v3/0016-OMAPDSS-don-t-print-errors-on-EPROBE_DEFER.patch" -# ${git} "${DIR}/patches/omap_dt_dss_v3/0017-OMAPFB-disable-overlays-on-driver-removal.patch" -# ${git} "${DIR}/patches/omap_dt_dss_v3/0018-OMAPDSS-DISPC-Preload-more-data-in-pipeline-DMAs-for.patch" -# ${git} "${DIR}/patches/omap_dt_dss_v3/0019-OMAPDSS-panel-acx565akm-clean-up-locking.patch" -# ${git} "${DIR}/patches/omap_dt_dss_v3/0020-OMAPDSS-DISPC-Fix-34xx-overlay-scaling-calculation.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0021-ARM-OMAP2-add-omapdss_init_of.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0022-ARM-OMAP2-DT-compatible-tweak-for-displays.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0023-OMAPDSS-add-label-support-for-DT.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0024-OMAPDSS-get-dssdev-alias-from-DT-alias.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0025-OMAPFB-clean-up-default-display-search.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0026-OMAPFB-search-for-default-display-with-DT-alias.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0027-OMAPDSS-add-of-helpers.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0028-OMAPDSS-Improve-regulator-names-for-DT.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0029-OMAPDSS-Add-DT-support-to-DSS.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0030-OMAPDSS-Add-DT-support-to-DISPC.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0031-OMAPDSS-Add-DT-support-to-HDMI.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0032-OMAPDSS-Add-DT-support-to-VENC.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0033-OMAPDSS-Add-DT-support-to-DSI.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0034-OMAPDSS-panel-dsi-cm-Add-DT-support.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0035-OMAPDSS-encoder-tfp410-Add-DT-support.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0036-OMAPDSS-connector-dvi-Add-DT-support.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0037-OMAPDSS-encoder-tpd12s015-Add-DT-support.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0038-OMAPDSS-hdmi-connector-Add-DT-support.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0039-OMAPDSS-panel-dpi-Add-DT-support.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0040-OMAPDSS-connector-analog-tv-Add-DT-support.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0041-OMAPDSS-acx565akm-Add-DT-support.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0042-ARM-omap2.dtsi-add-omapdss-information.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0043-ARM-omap3.dtsi-add-omapdss-information.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0044-ARM-omap4.dtsi-add-omapdss-information.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0045-ARM-omap4-panda.dts-add-display-information.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0046-ARM-omap4-sdp.dts-add-display-information.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0047-ARM-omap3-beagle.dts-add-display-information.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0048-ARM-omap3-beagle-xm.dts-add-display-information.patch" -# ${git} "${DIR}/patches/omap_dt_dss_v3/0049-ARM-omap3-igep0020.dts-add-display-information.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0050-ARM-omap3-n900.dts-add-display-information.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0051-OMAPDSS-remove-DT-hacks-for-regulators.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0052-ARM-OMAP2-remove-pdata-quirks-for-displays.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0053-Doc-DT-Add-OMAP-DSS-DT-Bindings.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0054-Doc-DT-Add-DT-binding-documentation-for-Analog-TV-Co.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0055-Doc-DT-Add-DT-binding-documentation-for-DVI-Connecto.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0056-Doc-DT-Add-DT-binding-documentation-for-HDMI-Connect.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0057-Doc-DT-Add-DT-binding-documentation-for-MIPI-DPI-Pan.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0058-Doc-DT-Add-DT-binding-documentation-for-MIPI-DSI-CM-.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0059-Doc-DT-Add-DT-binding-documentation-for-Sony-acx565a.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0060-Doc-DT-Add-DT-binding-documentation-for-TFP410-encod.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0061-Doc-DT-Add-DT-binding-documentation-for-tpd12s015-en.patch" - ${git} "${DIR}/patches/omap_dt_dss_v3/0062-ARM-OMAP2-clock-fix-clkoutx2-with-CLK_SET_RATE_PAREN.patch" +omap_dt_dss () { + echo "dir: omap_dt_dss" + #From: https://git.kernel.org/cgit/linux/kernel/git/tomba/linux.git/log/?h=work/dss-dt + + ${git} "${DIR}/patches/omap_dt_dss/0001-ARM-OMAP2-add-omapdss_init_of.patch" + ${git} "${DIR}/patches/omap_dt_dss/0002-ARM-OMAP2-DT-compatible-tweak-for-displays.patch" + ${git} "${DIR}/patches/omap_dt_dss/0003-OMAPDSS-add-label-support-for-DT.patch" + ${git} "${DIR}/patches/omap_dt_dss/0004-OMAPDSS-get-dssdev-alias-from-DT-alias.patch" + ${git} "${DIR}/patches/omap_dt_dss/0005-OMAPFB-clean-up-default-display-search.patch" + ${git} "${DIR}/patches/omap_dt_dss/0006-OMAPFB-search-for-default-display-with-DT-alias.patch" + ${git} "${DIR}/patches/omap_dt_dss/0007-OMAPDSS-add-of-helpers.patch" + ${git} "${DIR}/patches/omap_dt_dss/0008-OMAPDSS-Improve-regulator-names-for-DT.patch" + ${git} "${DIR}/patches/omap_dt_dss/0009-OMAPDSS-Add-DT-support-to-DSS.patch" + ${git} "${DIR}/patches/omap_dt_dss/0010-OMAPDSS-Add-DT-support-to-DISPC.patch" + ${git} "${DIR}/patches/omap_dt_dss/0011-OMAPDSS-Add-DT-support-to-HDMI.patch" + ${git} "${DIR}/patches/omap_dt_dss/0012-OMAPDSS-Add-DT-support-to-VENC.patch" + ${git} "${DIR}/patches/omap_dt_dss/0013-OMAPDSS-Add-DT-support-to-DSI.patch" + ${git} "${DIR}/patches/omap_dt_dss/0014-OMAPDSS-panel-dsi-cm-Add-DT-support.patch" + ${git} "${DIR}/patches/omap_dt_dss/0015-OMAPDSS-encoder-tfp410-Add-DT-support.patch" + ${git} "${DIR}/patches/omap_dt_dss/0016-OMAPDSS-connector-dvi-Add-DT-support.patch" + ${git} "${DIR}/patches/omap_dt_dss/0017-OMAPDSS-encoder-tpd12s015-Add-DT-support.patch" + ${git} "${DIR}/patches/omap_dt_dss/0018-OMAPDSS-hdmi-connector-Add-DT-support.patch" + ${git} "${DIR}/patches/omap_dt_dss/0019-OMAPDSS-panel-dpi-Add-DT-support.patch" + ${git} "${DIR}/patches/omap_dt_dss/0020-OMAPDSS-connector-analog-tv-Add-DT-support.patch" + ${git} "${DIR}/patches/omap_dt_dss/0021-OMAPDSS-acx565akm-Add-DT-support.patch" + ${git} "${DIR}/patches/omap_dt_dss/0022-ARM-omap2.dtsi-add-omapdss-information.patch" + ${git} "${DIR}/patches/omap_dt_dss/0023-ARM-omap3.dtsi-add-omapdss-information.patch" + ${git} "${DIR}/patches/omap_dt_dss/0024-ARM-omap4.dtsi-add-omapdss-information.patch" + ${git} "${DIR}/patches/omap_dt_dss/0025-ARM-omap4-panda.dts-add-display-information.patch" + ${git} "${DIR}/patches/omap_dt_dss/0026-ARM-omap4-sdp.dts-add-display-information.patch" + ${git} "${DIR}/patches/omap_dt_dss/0027-ARM-omap3-beagle.dts-add-display-information.patch" + ${git} "${DIR}/patches/omap_dt_dss/0028-ARM-omap3-beagle-xm.dts-add-display-information.patch" + ${git} "${DIR}/patches/omap_dt_dss/0029-ARM-omap3-igep0020.dts-add-display-information.patch" + ${git} "${DIR}/patches/omap_dt_dss/0030-ARM-omap3-n900.dts-add-display-information.patch" + ${git} "${DIR}/patches/omap_dt_dss/0031-OMAPDSS-remove-DT-hacks-for-regulators.patch" + ${git} "${DIR}/patches/omap_dt_dss/0032-ARM-OMAP2-remove-pdata-quirks-for-displays.patch" + ${git} "${DIR}/patches/omap_dt_dss/0033-Doc-DT-Add-OMAP-DSS-DT-Bindings.patch" + ${git} "${DIR}/patches/omap_dt_dss/0034-Doc-DT-Add-DT-binding-documentation-for-Analog-TV-Co.patch" + ${git} "${DIR}/patches/omap_dt_dss/0035-Doc-DT-Add-DT-binding-documentation-for-DVI-Connecto.patch" + ${git} "${DIR}/patches/omap_dt_dss/0036-Doc-DT-Add-DT-binding-documentation-for-HDMI-Connect.patch" + ${git} "${DIR}/patches/omap_dt_dss/0037-Doc-DT-Add-DT-binding-documentation-for-MIPI-DPI-Pan.patch" + ${git} "${DIR}/patches/omap_dt_dss/0038-Doc-DT-Add-DT-binding-documentation-for-MIPI-DSI-CM-.patch" + ${git} "${DIR}/patches/omap_dt_dss/0039-Doc-DT-Add-DT-binding-documentation-for-Sony-acx565a.patch" + ${git} "${DIR}/patches/omap_dt_dss/0040-Doc-DT-Add-DT-binding-documentation-for-TFP410-encod.patch" + ${git} "${DIR}/patches/omap_dt_dss/0041-Doc-DT-Add-DT-binding-documentation-for-tpd12s015-en.patch" + ${git} "${DIR}/patches/omap_dt_dss/0042-OMAPDSS-DISPC-decimation-rounding-fix.patch" + ${git} "${DIR}/patches/omap_dt_dss/0043-OMAPDSS-fix-fck-field-types.patch" + ${git} "${DIR}/patches/omap_dt_dss/0044-clk-divider-fix-rate-calculation-for-fractional-rate.patch" + ${git} "${DIR}/patches/omap_dt_dss/0045-clk-ti-divider-fix-rate-calculation-for-fractional-r.patch" + ${git} "${DIR}/patches/omap_dt_dss/0046-ARM-OMAP2-clock-fix-clkoutx2-with-CLK_SET_RATE_PAREN.patch" + ${git} "${DIR}/patches/omap_dt_dss/0047-ARM-dts-fix-omap3-dss-clock-handle-names.patch" + ${git} "${DIR}/patches/omap_dt_dss/0048-ARM-dts-fix-DPLL4-x2-clkouts-on-3630.patch" + ${git} "${DIR}/patches/omap_dt_dss/0049-ARM-dts-use-ti-fixed-factor-clock-for-dpll4_m4x2_mul.patch" + ${git} "${DIR}/patches/omap_dt_dss/0050-ARM-dts-set-ti-set-rate-parent-for-dpll4_m4-path.patch" + ${git} "${DIR}/patches/omap_dt_dss/0051-OMAPDSS-fix-rounding-when-calculating-fclk-rate.patch" } clock () { @@ -361,7 +350,7 @@ dts () { ${git} "${DIR}/patches/dts/0003-ARM-dts-imx6qdl-wandboard-add-bluetooth-control-line.patch" ${git} "${DIR}/patches/dts/0004-ARM-dts-wandboard-add-binding-for-wand-rfkill-driver.patch" - ${git} "${DIR}/patches/dts/0005-dts-omap3-beagle-add-i2c2-i2c3.patch" + ${git} "${DIR}/patches/dts/0005-ARM-dts-omap3-beagle-add-i2c2.patch" ${git} "${DIR}/patches/dts/0006-arm-dts-am335x-boneblack-lcdc-add-panel-info.patch" ${git} "${DIR}/patches/dts/0007-arm-dts-am335x-boneblack-add-cpu0-opp-points.patch" @@ -428,7 +417,7 @@ drivers imx_next omap_next -omap_dt_dss_v3 +omap_dt_dss clock usb diff --git a/patches/clock/0004-ARM-dts-OMAP4-Add-device-nodes-for-ABB.patch b/patches/clock/0004-ARM-dts-OMAP4-Add-device-nodes-for-ABB.patch index 9280f33b8..e3ba3a6f6 100644 --- a/patches/clock/0004-ARM-dts-OMAP4-Add-device-nodes-for-ABB.patch +++ b/patches/clock/0004-ARM-dts-OMAP4-Add-device-nodes-for-ABB.patch @@ -16,16 +16,16 @@ Signed-off-by: Nishanth Menon <nm@ti.com> Signed-off-by: Andrii.Tseglytskyi <andrii.tseglytskyi@ti.com> --- arch/arm/boot/dts/omap4.dtsi | 26 ++++++++++++++++++++++++++ - arch/arm/boot/dts/omap443x.dtsi | 26 ++++++++++++++++++++++++++ - arch/arm/boot/dts/omap4460.dtsi | 37 +++++++++++++++++++++++++++++++++++++ - 3 files changed, 89 insertions(+) + arch/arm/boot/dts/omap443x.dtsi | 22 ++++++++++++++++++++++ + arch/arm/boot/dts/omap4460.dtsi | 36 ++++++++++++++++++++++++++++++++++++ + 3 files changed, 84 insertions(+) diff --git a/arch/arm/boot/dts/omap4.dtsi b/arch/arm/boot/dts/omap4.dtsi -index ac474ff..07ba50f 100644 +index 9100c97..5ef9060 100644 --- a/arch/arm/boot/dts/omap4.dtsi +++ b/arch/arm/boot/dts/omap4.dtsi -@@ -827,6 +827,32 @@ - ti,hwmods = "dss_hdmi"; +@@ -841,6 +841,32 @@ + clock-names = "fck", "sys_clk"; }; }; + @@ -58,15 +58,14 @@ index ac474ff..07ba50f 100644 }; diff --git a/arch/arm/boot/dts/omap443x.dtsi b/arch/arm/boot/dts/omap443x.dtsi -index 8c1cfad..0adfa1d 100644 +index 8c1cfad..93bb3d0 100644 --- a/arch/arm/boot/dts/omap443x.dtsi +++ b/arch/arm/boot/dts/omap443x.dtsi -@@ -43,6 +43,32 @@ +@@ -42,6 +42,28 @@ + #thermal-sensor-cells = <0>; }; - }; + -+ ocp { + abb_mpu: regulator-abb-mpu { + status = "okay"; + @@ -88,17 +87,14 @@ index 8c1cfad..0adfa1d 100644 + reg = <0x4a307bd8 0x8>, <0x4a306010 0x4>; + reg-names = "base-address", "int-address"; + }; -+ -+ }; -+ + }; }; - /include/ "omap443x-clocks.dtsi" diff --git a/arch/arm/boot/dts/omap4460.dtsi b/arch/arm/boot/dts/omap4460.dtsi -index 6b32f52..194f9ef 100644 +index 6b32f52..33fda9e 100644 --- a/arch/arm/boot/dts/omap4460.dtsi +++ b/arch/arm/boot/dts/omap4460.dtsi -@@ -50,7 +50,44 @@ +@@ -50,6 +50,42 @@ #thermal-sensor-cells = <0>; }; @@ -139,10 +135,8 @@ index 6b32f52..194f9ef 100644 + >; + }; }; -+ }; - /include/ "omap446x-clocks.dtsi" -- 1.8.5.3 diff --git a/patches/dts/0005-ARM-dts-omap3-beagle-add-i2c2.patch b/patches/dts/0005-ARM-dts-omap3-beagle-add-i2c2.patch new file mode 100644 index 000000000..d031a5c35 --- /dev/null +++ b/patches/dts/0005-ARM-dts-omap3-beagle-add-i2c2.patch @@ -0,0 +1,28 @@ +From 719e01b8b373f841fb5145e4a47b66451905fedc Mon Sep 17 00:00:00 2001 +From: Robert Nelson <robertcnelson@gmail.com> +Date: Thu, 13 Feb 2014 10:03:57 -0600 +Subject: [PATCH 5/5] ARM: dts: omap3-beagle: add i2c2 + +Signed-off-by: Robert Nelson <robertcnelson@gmail.com> +--- + arch/arm/boot/dts/omap3-beagle.dts | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/arch/arm/boot/dts/omap3-beagle.dts b/arch/arm/boot/dts/omap3-beagle.dts +index ebe407b..659b8b9 100644 +--- a/arch/arm/boot/dts/omap3-beagle.dts ++++ b/arch/arm/boot/dts/omap3-beagle.dts +@@ -245,6 +245,10 @@ + #include "twl4030.dtsi" + #include "twl4030_omap3.dtsi" + ++&i2c2 { ++ clock-frequency = <400000>; ++}; ++ + &i2c3 { + clock-frequency = <100000>; + }; +-- +1.8.5.3 + diff --git a/patches/dts/0005-dts-omap3-beagle-add-i2c2-i2c3.patch b/patches/dts/0005-dts-omap3-beagle-add-i2c2-i2c3.patch deleted file mode 100644 index 96d91ac77..000000000 --- a/patches/dts/0005-dts-omap3-beagle-add-i2c2-i2c3.patch +++ /dev/null @@ -1,41 +0,0 @@ -From f4c4f83251f04960a02e81e46d574c35d26a7d5d Mon Sep 17 00:00:00 2001 -From: Robert Nelson <robertcnelson@gmail.com> -Date: Wed, 24 Jul 2013 09:44:24 -0500 -Subject: [PATCH 5/9] dts: omap3-beagle add i2c2 & i2c3 - -Signed-off-by: Robert Nelson <robertcnelson@gmail.com> ---- - arch/arm/boot/dts/omap3-beagle.dts | 17 +++++++++++++++++ - 1 file changed, 17 insertions(+) - -diff --git a/arch/arm/boot/dts/omap3-beagle.dts b/arch/arm/boot/dts/omap3-beagle.dts -index 070df69..3c77c2d 100644 ---- a/arch/arm/boot/dts/omap3-beagle.dts -+++ b/arch/arm/boot/dts/omap3-beagle.dts -@@ -245,6 +245,23 @@ - #include "twl4030.dtsi" - #include "twl4030_omap3.dtsi" - -+&i2c2 { -+ clock-frequency = <400000>; -+}; -+ -+&i2c3 { -+ clock-frequency = <100000>; -+ -+ /* -+ * Display monitor features are burnt in the EEPROM -+ * as EDID data. -+ */ -+ eeprom@50 { -+ compatible = "ti,eeprom"; -+ reg = <0x50>; -+ }; -+}; -+ - &mmc1 { - vmmc-supply = <&vmmc1>; - vmmc_aux-supply = <&vsim>; --- -1.8.5.3 - diff --git a/patches/omap3_beagle_xm_rework/0001-ARM-dts-beagle-xm-make-sure-dvi-is-enabled.patch b/patches/omap3_beagle_xm_rework/0001-ARM-dts-beagle-xm-make-sure-dvi-is-enabled.patch index 08877e8fa..a5ef251ea 100644 --- a/patches/omap3_beagle_xm_rework/0001-ARM-dts-beagle-xm-make-sure-dvi-is-enabled.patch +++ b/patches/omap3_beagle_xm_rework/0001-ARM-dts-beagle-xm-make-sure-dvi-is-enabled.patch @@ -1,6 +1,6 @@ -From db050c7afd3adbb8f3fda2491a95902ee5cbb61d Mon Sep 17 00:00:00 2001 +From 204ab15878084e078997f3c3cf14ad52537ef9b3 Mon Sep 17 00:00:00 2001 From: Robert Nelson <robertcnelson@gmail.com> -Date: Wed, 29 Jan 2014 08:45:18 -0600 +Date: Thu, 13 Feb 2014 10:09:08 -0600 Subject: [PATCH 1/4] ARM: dts: beagle-xm: make sure dvi is enabled Signed-off-by: Robert Nelson <robertcnelson@gmail.com> @@ -9,7 +9,7 @@ Signed-off-by: Robert Nelson <robertcnelson@gmail.com> 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/arch/arm/boot/dts/omap3-beagle-xm.dts b/arch/arm/boot/dts/omap3-beagle-xm.dts -index 0d2cbf4..49d995a 100644 +index fdb6e5c..b557266 100644 --- a/arch/arm/boot/dts/omap3-beagle-xm.dts +++ b/arch/arm/boot/dts/omap3-beagle-xm.dts @@ -114,7 +114,7 @@ @@ -21,7 +21,7 @@ index 0d2cbf4..49d995a 100644 /* XXX pinctrl from twl */ -@@ -304,14 +304,14 @@ +@@ -295,14 +295,14 @@ &twl_gpio { ti,use-leds; diff --git a/patches/omap3_beagle_xm_rework/0002-ARM-dts-omap3-beagle-xm-ab.dtb-copy-from-omap3-beagl.patch b/patches/omap3_beagle_xm_rework/0002-ARM-dts-omap3-beagle-xm-ab.dtb-copy-from-omap3-beagl.patch index dfd615ad3..d62b52294 100644 --- a/patches/omap3_beagle_xm_rework/0002-ARM-dts-omap3-beagle-xm-ab.dtb-copy-from-omap3-beagl.patch +++ b/patches/omap3_beagle_xm_rework/0002-ARM-dts-omap3-beagle-xm-ab.dtb-copy-from-omap3-beagl.patch @@ -1,21 +1,21 @@ -From 2a464848bb06274f1e5e658690c614cd4f366bfa Mon Sep 17 00:00:00 2001 +From 648e24402015a7daeae1a4de6c56eaf3ba8b3ef6 Mon Sep 17 00:00:00 2001 From: Robert Nelson <robertcnelson@gmail.com> -Date: Fri, 31 Jan 2014 11:41:56 -0600 +Date: Thu, 13 Feb 2014 10:10:23 -0600 Subject: [PATCH 2/4] ARM: dts: omap3-beagle-xm-ab.dtb: copy from omap3-beagle-xm.dts Signed-off-by: Robert Nelson <robertcnelson@gmail.com> --- - arch/arm/boot/dts/omap3-beagle-xm-ab.dts | 375 +++++++++++++++++++++++++++++++ - 1 file changed, 375 insertions(+) + arch/arm/boot/dts/omap3-beagle-xm-ab.dts | 366 +++++++++++++++++++++++++++++++ + 1 file changed, 366 insertions(+) create mode 100644 arch/arm/boot/dts/omap3-beagle-xm-ab.dts diff --git a/arch/arm/boot/dts/omap3-beagle-xm-ab.dts b/arch/arm/boot/dts/omap3-beagle-xm-ab.dts new file mode 100644 -index 0000000..49d995a +index 0000000..b557266 --- /dev/null +++ b/arch/arm/boot/dts/omap3-beagle-xm-ab.dts -@@ -0,0 +1,375 @@ +@@ -0,0 +1,366 @@ +/* + * Copyright (C) 2011 Texas Instruments Incorporated - http://www.ti.com/ + * @@ -186,7 +186,7 @@ index 0000000..49d995a + >; + }; + -+ dss_dpi_pins2: pinmux_dss_dpi_pins { ++ dss_dpi_pins2: pinmux_dss_dpi_pins1 { + pinctrl-single,pins = < + 0x0a (PIN_OUTPUT | MUX_MODE3) /* sys_boot0.dss_data18 */ + 0x0c (PIN_OUTPUT | MUX_MODE3) /* sys_boot1.dss_data19 */ @@ -222,32 +222,32 @@ index 0000000..49d995a + >; + }; + -+ dss_dpi_pins1: pinmux_dss_dpi_pins { ++ dss_dpi_pins1: pinmux_dss_dpi_pins2 { + pinctrl-single,pins = < -+ 0x0a4 (PIN_OUTPUT | MUX_MODE0) /* dss_pclk.dss_pclk */ -+ 0x0a6 (PIN_OUTPUT | MUX_MODE0) /* dss_hsync.dss_hsync */ -+ 0x0a8 (PIN_OUTPUT | MUX_MODE0) /* dss_vsync.dss_vsync */ -+ 0x0aa (PIN_OUTPUT | MUX_MODE0) /* dss_acbias.dss_acbias */ -+ -+ 0x0b8 (PIN_OUTPUT | MUX_MODE0) /* dss_data6.dss_data6 */ -+ 0x0ba (PIN_OUTPUT | MUX_MODE0) /* dss_data7.dss_data7 */ -+ 0x0bc (PIN_OUTPUT | MUX_MODE0) /* dss_data8.dss_data8 */ -+ 0x0be (PIN_OUTPUT | MUX_MODE0) /* dss_data9.dss_data9 */ -+ 0x0c0 (PIN_OUTPUT | MUX_MODE0) /* dss_data10.dss_data10 */ -+ 0x0c2 (PIN_OUTPUT | MUX_MODE0) /* dss_data11.dss_data11 */ -+ 0x0c4 (PIN_OUTPUT | MUX_MODE0) /* dss_data12.dss_data12 */ -+ 0x0c6 (PIN_OUTPUT | MUX_MODE0) /* dss_data13.dss_data13 */ -+ 0x0c8 (PIN_OUTPUT | MUX_MODE0) /* dss_data14.dss_data14 */ -+ 0x0ca (PIN_OUTPUT | MUX_MODE0) /* dss_data15.dss_data15 */ -+ 0x0cc (PIN_OUTPUT | MUX_MODE0) /* dss_data16.dss_data16 */ -+ 0x0ce (PIN_OUTPUT | MUX_MODE0) /* dss_data17.dss_data17 */ -+ -+ 0x0d0 (PIN_OUTPUT | MUX_MODE3) /* dss_data18.dss_data0 */ -+ 0x0d2 (PIN_OUTPUT | MUX_MODE3) /* dss_data19.dss_data1 */ -+ 0x0d4 (PIN_OUTPUT | MUX_MODE3) /* dss_data20.dss_data2 */ -+ 0x0d6 (PIN_OUTPUT | MUX_MODE3) /* dss_data21.dss_data3 */ -+ 0x0d8 (PIN_OUTPUT | MUX_MODE3) /* dss_data22.dss_data4 */ -+ 0x0da (PIN_OUTPUT | MUX_MODE3) /* dss_data23.dss_data5 */ ++ OMAP3_CORE1_IOPAD(0x20d4, PIN_OUTPUT | MUX_MODE0) /* dss_pclk.dss_pclk */ ++ OMAP3_CORE1_IOPAD(0x20d6, PIN_OUTPUT | MUX_MODE0) /* dss_hsync.dss_hsync */ ++ OMAP3_CORE1_IOPAD(0x20d8, PIN_OUTPUT | MUX_MODE0) /* dss_vsync.dss_vsync */ ++ OMAP3_CORE1_IOPAD(0x20da, PIN_OUTPUT | MUX_MODE0) /* dss_acbias.dss_acbias */ ++ ++ OMAP3_CORE1_IOPAD(0x20e8, PIN_OUTPUT | MUX_MODE0) /* dss_data6.dss_data6 */ ++ OMAP3_CORE1_IOPAD(0x20ea, PIN_OUTPUT | MUX_MODE0) /* dss_data7.dss_data7 */ ++ OMAP3_CORE1_IOPAD(0x20ec, PIN_OUTPUT | MUX_MODE0) /* dss_data8.dss_data8 */ ++ OMAP3_CORE1_IOPAD(0x20ee, PIN_OUTPUT | MUX_MODE0) /* dss_data9.dss_data9 */ ++ OMAP3_CORE1_IOPAD(0x20f0, PIN_OUTPUT | MUX_MODE0) /* dss_data10.dss_data10 */ ++ OMAP3_CORE1_IOPAD(0x20f2, PIN_OUTPUT | MUX_MODE0) /* dss_data11.dss_data11 */ ++ OMAP3_CORE1_IOPAD(0x20f4, PIN_OUTPUT | MUX_MODE0) /* dss_data12.dss_data12 */ ++ OMAP3_CORE1_IOPAD(0x20f6, PIN_OUTPUT | MUX_MODE0) /* dss_data13.dss_data13 */ ++ OMAP3_CORE1_IOPAD(0x20f8, PIN_OUTPUT | MUX_MODE0) /* dss_data14.dss_data14 */ ++ OMAP3_CORE1_IOPAD(0x20fa, PIN_OUTPUT | MUX_MODE0) /* dss_data15.dss_data15 */ ++ OMAP3_CORE1_IOPAD(0x20fc, PIN_OUTPUT | MUX_MODE0) /* dss_data16.dss_data16 */ ++ OMAP3_CORE1_IOPAD(0x20fe, PIN_OUTPUT | MUX_MODE0) /* dss_data17.dss_data17 */ ++ ++ OMAP3_CORE1_IOPAD(0x2100, PIN_OUTPUT | MUX_MODE3) /* dss_data18.dss_data0 */ ++ OMAP3_CORE1_IOPAD(0x2102, PIN_OUTPUT | MUX_MODE3) /* dss_data19.dss_data1 */ ++ OMAP3_CORE1_IOPAD(0x2104, PIN_OUTPUT | MUX_MODE3) /* dss_data20.dss_data2 */ ++ OMAP3_CORE1_IOPAD(0x2106, PIN_OUTPUT | MUX_MODE3) /* dss_data21.dss_data3 */ ++ OMAP3_CORE1_IOPAD(0x2108, PIN_OUTPUT | MUX_MODE3) /* dss_data22.dss_data4 */ ++ OMAP3_CORE1_IOPAD(0x210a, PIN_OUTPUT | MUX_MODE3) /* dss_data23.dss_data5 */ + >; + }; +}; @@ -295,15 +295,6 @@ index 0000000..49d995a + +&i2c3 { + clock-frequency = <100000>; -+ -+ /* -+ * Display monitor features are burnt in the EEPROM -+ * as EDID data. -+ */ -+ eeprom@50 { -+ compatible = "ti,eeprom"; -+ reg = <0x50>; -+ }; +}; + +&mmc1 { diff --git a/patches/omap_dt_dss_v3/0021-ARM-OMAP2-add-omapdss_init_of.patch b/patches/omap_dt_dss/0001-ARM-OMAP2-add-omapdss_init_of.patch similarity index 94% rename from patches/omap_dt_dss_v3/0021-ARM-OMAP2-add-omapdss_init_of.patch rename to patches/omap_dt_dss/0001-ARM-OMAP2-add-omapdss_init_of.patch index 20930b20b..e76d1e467 100644 --- a/patches/omap_dt_dss_v3/0021-ARM-OMAP2-add-omapdss_init_of.patch +++ b/patches/omap_dt_dss/0001-ARM-OMAP2-add-omapdss_init_of.patch @@ -1,7 +1,7 @@ -From 0eb100516919b91ac145c767c4338b13b48000b7 Mon Sep 17 00:00:00 2001 +From e59d324e6bd04be7f405d5f704bb96a1fcc19a10 Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Mon, 18 Mar 2013 15:50:25 +0200 -Subject: [PATCH 21/61] ARM: OMAP2+: add omapdss_init_of() +Subject: [PATCH 01/51] ARM: OMAP2+: add omapdss_init_of() omapdss driver uses a omapdss platform device to pass platform specific function pointers and DSS hardware version from the arch code to the @@ -31,10 +31,10 @@ index 8e3daa1..fcb7f5c 100644 #ifdef CONFIG_SOC_OMAP2420 diff --git a/arch/arm/mach-omap2/common.h b/arch/arm/mach-omap2/common.h -index e515278..f3cb00a 100644 +index a6aae30..1864282 100644 --- a/arch/arm/mach-omap2/common.h +++ b/arch/arm/mach-omap2/common.h -@@ -308,5 +308,7 @@ extern int omap_dss_reset(struct omap_hwmod *); +@@ -315,5 +315,7 @@ extern int omap_dss_reset(struct omap_hwmod *); /* SoC specific clock initializer */ int omap_clk_init(void); diff --git a/patches/omap_dt_dss_v3/0022-ARM-OMAP2-DT-compatible-tweak-for-displays.patch b/patches/omap_dt_dss/0002-ARM-OMAP2-DT-compatible-tweak-for-displays.patch similarity index 94% rename from patches/omap_dt_dss_v3/0022-ARM-OMAP2-DT-compatible-tweak-for-displays.patch rename to patches/omap_dt_dss/0002-ARM-OMAP2-DT-compatible-tweak-for-displays.patch index 1a0a42345..8b3cbea58 100644 --- a/patches/omap_dt_dss_v3/0022-ARM-OMAP2-DT-compatible-tweak-for-displays.patch +++ b/patches/omap_dt_dss/0002-ARM-OMAP2-DT-compatible-tweak-for-displays.patch @@ -1,7 +1,7 @@ -From 2e1977725b72a30a8b8b672fa89385ee0d8122ab Mon Sep 17 00:00:00 2001 +From 0d7a4c36fb9a9aae40673dcdcda9d9e6a6649d8f Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Thu, 19 Dec 2013 12:34:19 +0200 -Subject: [PATCH 22/61] ARM: OMAP2+: DT 'compatible' tweak for displays +Subject: [PATCH 02/51] ARM: OMAP2+: DT 'compatible' tweak for displays As there is no common panel framework in the kernel, we have OMAP specific panel drivers. However, the DT data should be generic. This @@ -42,10 +42,10 @@ index fcb7f5c..0db371a 100644 omapdss_init_of(); diff --git a/arch/arm/mach-omap2/common.h b/arch/arm/mach-omap2/common.h -index f3cb00a..de7a938 100644 +index 1864282..d88aff7 100644 --- a/arch/arm/mach-omap2/common.h +++ b/arch/arm/mach-omap2/common.h -@@ -309,6 +309,7 @@ extern int omap_dss_reset(struct omap_hwmod *); +@@ -316,6 +316,7 @@ extern int omap_dss_reset(struct omap_hwmod *); int omap_clk_init(void); int __init omapdss_init_of(void); diff --git a/patches/omap_dt_dss_v3/0023-OMAPDSS-add-label-support-for-DT.patch b/patches/omap_dt_dss/0003-OMAPDSS-add-label-support-for-DT.patch similarity index 90% rename from patches/omap_dt_dss_v3/0023-OMAPDSS-add-label-support-for-DT.patch rename to patches/omap_dt_dss/0003-OMAPDSS-add-label-support-for-DT.patch index 3abce8011..e99732e2f 100644 --- a/patches/omap_dt_dss_v3/0023-OMAPDSS-add-label-support-for-DT.patch +++ b/patches/omap_dt_dss/0003-OMAPDSS-add-label-support-for-DT.patch @@ -1,7 +1,7 @@ -From edbb8c5b1362e1383cfdb5f3e957339040eb0874 Mon Sep 17 00:00:00 2001 +From 2fdf713a2c98840135188bd13116ed6fb48929a2 Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Tue, 6 Aug 2013 09:41:32 +0300 -Subject: [PATCH 23/61] OMAPDSS: add 'label' support for DT +Subject: [PATCH 03/51] OMAPDSS: add 'label' support for DT Add support to get the label (i.e. a "nickname") for a display from the DT data. If there is no label defined, use the display's alias (e.g. @@ -40,5 +40,5 @@ index 669a81f..012ada3 100644 drv->get_resolution = omapdss_default_get_resolution; if (drv && drv->get_recommended_bpp == NULL) -- -1.8.5.2 +1.8.5.3 diff --git a/patches/omap_dt_dss_v3/0024-OMAPDSS-get-dssdev-alias-from-DT-alias.patch b/patches/omap_dt_dss/0004-OMAPDSS-get-dssdev-alias-from-DT-alias.patch similarity index 93% rename from patches/omap_dt_dss_v3/0024-OMAPDSS-get-dssdev-alias-from-DT-alias.patch rename to patches/omap_dt_dss/0004-OMAPDSS-get-dssdev-alias-from-DT-alias.patch index 21e62358f..72cdb1b42 100644 --- a/patches/omap_dt_dss_v3/0024-OMAPDSS-get-dssdev-alias-from-DT-alias.patch +++ b/patches/omap_dt_dss/0004-OMAPDSS-get-dssdev-alias-from-DT-alias.patch @@ -1,7 +1,7 @@ -From 809bd46bf84c0051c148ded273cf1a635377689b Mon Sep 17 00:00:00 2001 +From f14dadb47a7615940df566f6ae0dd49fb1d2532e Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Tue, 6 Aug 2013 09:50:22 +0300 -Subject: [PATCH 24/61] OMAPDSS: get dssdev->alias from DT alias +Subject: [PATCH 04/51] OMAPDSS: get dssdev->alias from DT alias We currently create a "displayX" style alias name for all displays, using a number that is incremented for each registered display. With the @@ -53,5 +53,5 @@ index 012ada3..21080f9 100644 /* Use 'label' property for name, if it exists */ if (dssdev->dev->of_node) -- -1.8.5.2 +1.8.5.3 diff --git a/patches/omap_dt_dss_v3/0025-OMAPFB-clean-up-default-display-search.patch b/patches/omap_dt_dss/0005-OMAPFB-clean-up-default-display-search.patch similarity index 94% rename from patches/omap_dt_dss_v3/0025-OMAPFB-clean-up-default-display-search.patch rename to patches/omap_dt_dss/0005-OMAPFB-clean-up-default-display-search.patch index 20462ab5c..5e0b59e00 100644 --- a/patches/omap_dt_dss_v3/0025-OMAPFB-clean-up-default-display-search.patch +++ b/patches/omap_dt_dss/0005-OMAPFB-clean-up-default-display-search.patch @@ -1,7 +1,7 @@ -From e183dacc95842bbda376adc47685dd7e29479ce8 Mon Sep 17 00:00:00 2001 +From 6deb1f3f429b03f56dc52f16b52864f09bfa0d68 Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Tue, 30 Jul 2013 10:59:16 +0300 -Subject: [PATCH 25/61] OMAPFB: clean up default display search +Subject: [PATCH 05/51] OMAPFB: clean up default display search Separate the code for finding the default display into a function for clarity and to make it easier to extend it in the future. @@ -76,5 +76,5 @@ index fcb9e93..b746963 100644 dev_err(fbdev->dev, "failed to find default display\n"); r = -EPROBE_DEFER; -- -1.8.5.2 +1.8.5.3 diff --git a/patches/omap_dt_dss_v3/0026-OMAPFB-search-for-default-display-with-DT-alias.patch b/patches/omap_dt_dss/0006-OMAPFB-search-for-default-display-with-DT-alias.patch similarity index 92% rename from patches/omap_dt_dss_v3/0026-OMAPFB-search-for-default-display-with-DT-alias.patch rename to patches/omap_dt_dss/0006-OMAPFB-search-for-default-display-with-DT-alias.patch index d6d5da9d5..5005506d6 100644 --- a/patches/omap_dt_dss_v3/0026-OMAPFB-search-for-default-display-with-DT-alias.patch +++ b/patches/omap_dt_dss/0006-OMAPFB-search-for-default-display-with-DT-alias.patch @@ -1,7 +1,7 @@ -From f6355e6471baa2d3f047cb9c2f990eb31f8d4f88 Mon Sep 17 00:00:00 2001 +From 3cef499adb3b37c3fa31463c44a51e481ff6b0a9 Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Tue, 6 Aug 2013 09:50:52 +0300 -Subject: [PATCH 26/61] OMAPFB: search for default display with DT alias +Subject: [PATCH 06/51] OMAPFB: search for default display with DT alias Improve the search for the default display in two ways: * compare the given display name to the display's alias @@ -60,5 +60,5 @@ index b746963..f121e87 100644 return fbdev->displays[0].dssdev; } -- -1.8.5.2 +1.8.5.3 diff --git a/patches/omap_dt_dss_v3/0027-OMAPDSS-add-of-helpers.patch b/patches/omap_dt_dss/0007-OMAPDSS-add-of-helpers.patch similarity index 97% rename from patches/omap_dt_dss_v3/0027-OMAPDSS-add-of-helpers.patch rename to patches/omap_dt_dss/0007-OMAPDSS-add-of-helpers.patch index 433091247..d3e866e2d 100644 --- a/patches/omap_dt_dss_v3/0027-OMAPDSS-add-of-helpers.patch +++ b/patches/omap_dt_dss/0007-OMAPDSS-add-of-helpers.patch @@ -1,7 +1,7 @@ -From be28323bfa6fe65adf11ce4158c92de070ee259a Mon Sep 17 00:00:00 2001 +From b439c4e54cd6553c574da95e7585a7213a6019b7 Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Tue, 3 Dec 2013 16:57:40 +0200 -Subject: [PATCH 27/61] OMAPDSS: add of helpers +Subject: [PATCH 07/51] OMAPDSS: add of helpers Add helpers to get ports and endpoints from DT data. @@ -215,5 +215,5 @@ index 3d7c51a..e3cd2a9 100644 + #endif -- -1.8.5.2 +1.8.5.3 diff --git a/patches/omap_dt_dss_v3/0028-OMAPDSS-Improve-regulator-names-for-DT.patch b/patches/omap_dt_dss/0008-OMAPDSS-Improve-regulator-names-for-DT.patch similarity index 73% rename from patches/omap_dt_dss_v3/0028-OMAPDSS-Improve-regulator-names-for-DT.patch rename to patches/omap_dt_dss/0008-OMAPDSS-Improve-regulator-names-for-DT.patch index d6969f8a8..b20797740 100644 --- a/patches/omap_dt_dss_v3/0028-OMAPDSS-Improve-regulator-names-for-DT.patch +++ b/patches/omap_dt_dss/0008-OMAPDSS-Improve-regulator-names-for-DT.patch @@ -1,15 +1,15 @@ -From 27ac232c1480617b44cb681ab6696658be988c24 Mon Sep 17 00:00:00 2001 +From 5b989c44f2a29e34f29a49a586b828aa53b2ac17 Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Thu, 2 Jan 2014 12:54:31 +0200 -Subject: [PATCH 28/61] OMAPDSS: Improve regulator names for DT +Subject: [PATCH 08/51] OMAPDSS: Improve regulator names for DT The regulator names used for DSS components are somewhat ugly for DT use. As we're just adding DT support, it's simple to change the regulator names. This patch makes the DSS driver get the regulators with somewhat cleaner -names. For example, this allows us to define HDMI's VDDA regulator in -the DT data as: +names when bootin with DT. For example, this allows us to define HDMI's +VDDA regulator in the DT data as: vdda-supply = <...>; @@ -17,10 +17,6 @@ instead of vdda_hdmi_dac-supply = <...>; -The code also still tries to get the regulators with the old names, if -the regulator_get with the new names fail. This keep backward -compatibility, and can be removed after we have moved to DT. - Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> --- drivers/video/omap2/dss/dsi.c | 5 ++++- @@ -29,7 +25,7 @@ Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/drivers/video/omap2/dss/dsi.c b/drivers/video/omap2/dss/dsi.c -index a820c37..b7c9270 100644 +index a820c37..782e898 100644 --- a/drivers/video/omap2/dss/dsi.c +++ b/drivers/video/omap2/dss/dsi.c @@ -1151,7 +1151,10 @@ static int dsi_regulator_init(struct platform_device *dsidev) @@ -37,15 +33,15 @@ index a820c37..b7c9270 100644 return 0; - vdds_dsi = devm_regulator_get(&dsi->pdev->dev, "vdds_dsi"); -+ vdds_dsi = devm_regulator_get(&dsi->pdev->dev, "vdd"); -+ -+ if (IS_ERR(vdds_dsi)) ++ if (dsi->pdev->dev.of_node) ++ vdds_dsi = devm_regulator_get(&dsi->pdev->dev, "vdd"); ++ else + vdds_dsi = devm_regulator_get(&dsi->pdev->dev, "vdds_dsi"); /* DT HACK: try VCXIO to make omapdss work for o4 sdp/panda */ if (IS_ERR(vdds_dsi)) diff --git a/drivers/video/omap2/dss/hdmi4.c b/drivers/video/omap2/dss/hdmi4.c -index 4a74538..2def9f5 100644 +index 4a74538..ba6f025 100644 --- a/drivers/video/omap2/dss/hdmi4.c +++ b/drivers/video/omap2/dss/hdmi4.c @@ -88,7 +88,10 @@ static int hdmi_init_regulator(void) @@ -53,15 +49,15 @@ index 4a74538..2def9f5 100644 return 0; - reg = devm_regulator_get(&hdmi.pdev->dev, "vdda_hdmi_dac"); -+ reg = devm_regulator_get(&hdmi.pdev->dev, "vdda"); -+ -+ if (IS_ERR(reg)) ++ if (hdmi.pdev->dev.of_node) ++ reg = devm_regulator_get(&hdmi.pdev->dev, "vdda"); ++ else + reg = devm_regulator_get(&hdmi.pdev->dev, "vdda_hdmi_dac"); /* DT HACK: try VDAC to make omapdss work for o4 sdp/panda */ if (IS_ERR(reg)) diff --git a/drivers/video/omap2/dss/venc.c b/drivers/video/omap2/dss/venc.c -index 2cd7f7e..c0e4def 100644 +index 2cd7f7e..7d40e52 100644 --- a/drivers/video/omap2/dss/venc.c +++ b/drivers/video/omap2/dss/venc.c @@ -636,7 +636,10 @@ static int venc_init_regulator(void) @@ -69,13 +65,13 @@ index 2cd7f7e..c0e4def 100644 return 0; - vdda_dac = devm_regulator_get(&venc.pdev->dev, "vdda_dac"); -+ vdda_dac = devm_regulator_get(&venc.pdev->dev, "vdda"); -+ -+ if (IS_ERR(vdda_dac)) ++ if (venc.pdev->dev.of_node) ++ vdda_dac = devm_regulator_get(&venc.pdev->dev, "vdda"); ++ else + vdda_dac = devm_regulator_get(&venc.pdev->dev, "vdda_dac"); if (IS_ERR(vdda_dac)) { if (PTR_ERR(vdda_dac) != -EPROBE_DEFER) -- -1.8.5.2 +1.8.5.3 diff --git a/patches/omap_dt_dss_v3/0029-OMAPDSS-Add-DT-support-to-DSS.patch b/patches/omap_dt_dss/0009-OMAPDSS-Add-DT-support-to-DSS.patch similarity index 89% rename from patches/omap_dt_dss_v3/0029-OMAPDSS-Add-DT-support-to-DSS.patch rename to patches/omap_dt_dss/0009-OMAPDSS-Add-DT-support-to-DSS.patch index ef7df973e..80d508ea7 100644 --- a/patches/omap_dt_dss_v3/0029-OMAPDSS-Add-DT-support-to-DSS.patch +++ b/patches/omap_dt_dss/0009-OMAPDSS-Add-DT-support-to-DSS.patch @@ -1,7 +1,7 @@ -From 7066378f25a4627aafccf6123e53f21c5b4884ff Mon Sep 17 00:00:00 2001 +From 3a9a0d746665d77ac80ea3c08738bb01cdfbf881 Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Mon, 16 Dec 2013 15:13:24 +0200 -Subject: [PATCH 29/61] OMAPDSS: Add DT support to DSS +Subject: [PATCH 09/51] OMAPDSS: Add DT support to DSS Add DT support for DSS. Contrary to the non-DT version, the DSS in DT mode contains DPI and SDI outputs, which better reflects the hardware. @@ -21,7 +21,7 @@ Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> 4 files changed, 161 insertions(+) diff --git a/drivers/video/omap2/dss/dpi.c b/drivers/video/omap2/dss/dpi.c -index fcba3c1..8b8f670 100644 +index 7411f26..116aa07 100644 --- a/drivers/video/omap2/dss/dpi.c +++ b/drivers/video/omap2/dss/dpi.c @@ -30,6 +30,7 @@ @@ -41,7 +41,7 @@ index fcba3c1..8b8f670 100644 } dpi; static struct platform_device *dpi_get_dsidev(enum omap_channel channel) -@@ -727,3 +730,47 @@ void __exit dpi_uninit_platform_driver(void) +@@ -726,3 +729,47 @@ void __exit dpi_uninit_platform_driver(void) { platform_driver_unregister(&omap_dpi_driver); } @@ -90,7 +90,7 @@ index fcba3c1..8b8f670 100644 + dpi_uninit_output(dpi.pdev); +} diff --git a/drivers/video/omap2/dss/dss.c b/drivers/video/omap2/dss/dss.c -index bd01608..f60d1f4 100644 +index 9a145da..9009f62 100644 --- a/drivers/video/omap2/dss/dss.c +++ b/drivers/video/omap2/dss/dss.c @@ -23,6 +23,7 @@ @@ -109,7 +109,7 @@ index bd01608..f60d1f4 100644 #include <video/omapdss.h> -@@ -841,6 +843,53 @@ static int __init dss_init_features(struct platform_device *pdev) +@@ -788,6 +790,53 @@ static int __init dss_init_features(struct platform_device *pdev) return 0; } @@ -163,7 +163,7 @@ index bd01608..f60d1f4 100644 /* DSS HW IP initialisation */ static int __init omap_dsshw_probe(struct platform_device *pdev) { -@@ -899,6 +948,8 @@ static int __init omap_dsshw_probe(struct platform_device *pdev) +@@ -846,6 +895,8 @@ static int __init omap_dsshw_probe(struct platform_device *pdev) dss.lcd_clk_source[0] = OMAP_DSS_CLK_SRC_FCK; dss.lcd_clk_source[1] = OMAP_DSS_CLK_SRC_FCK; @@ -172,7 +172,7 @@ index bd01608..f60d1f4 100644 rev = dss_read_reg(DSS_REVISION); printk(KERN_INFO "OMAP DSS rev %d.%d\n", FLD_GET(rev, 7, 4), FLD_GET(rev, 3, 0)); -@@ -918,6 +969,8 @@ err_setup_clocks: +@@ -865,6 +916,8 @@ err_setup_clocks: static int __exit omap_dsshw_remove(struct platform_device *pdev) { @@ -181,7 +181,7 @@ index bd01608..f60d1f4 100644 pm_runtime_disable(&pdev->dev); dss_put_clocks(); -@@ -955,12 +1008,22 @@ static const struct dev_pm_ops dss_pm_ops = { +@@ -902,12 +955,22 @@ static const struct dev_pm_ops dss_pm_ops = { .runtime_resume = dss_runtime_resume, }; @@ -205,10 +205,10 @@ index bd01608..f60d1f4 100644 }; diff --git a/drivers/video/omap2/dss/dss.h b/drivers/video/omap2/dss/dss.h -index f538e86..81c6bc8 100644 +index 057f24c..8ece4f5 100644 --- a/drivers/video/omap2/dss/dss.h +++ b/drivers/video/omap2/dss/dss.h -@@ -261,6 +261,9 @@ bool dss_div_calc(unsigned long fck_min, dss_div_calc_func func, void *data); +@@ -252,6 +252,9 @@ bool dss_div_calc(unsigned long pck, unsigned long fck_min, int sdi_init_platform_driver(void) __init; void sdi_uninit_platform_driver(void) __exit; @@ -218,7 +218,7 @@ index f538e86..81c6bc8 100644 /* DSI */ typedef bool (*dsi_pll_calc_func)(int regn, int regm, unsigned long fint, -@@ -372,6 +375,9 @@ static inline bool dsi_pll_calc(struct platform_device *dsidev, +@@ -363,6 +366,9 @@ static inline bool dsi_pll_calc(struct platform_device *dsidev, int dpi_init_platform_driver(void) __init; void dpi_uninit_platform_driver(void) __exit; @@ -229,7 +229,7 @@ index f538e86..81c6bc8 100644 int dispc_init_platform_driver(void) __init; void dispc_uninit_platform_driver(void) __exit; diff --git a/drivers/video/omap2/dss/sdi.c b/drivers/video/omap2/dss/sdi.c -index 156d146..e4404dd 100644 +index efb9ee9..732e53c 100644 --- a/drivers/video/omap2/dss/sdi.c +++ b/drivers/video/omap2/dss/sdi.c @@ -26,6 +26,7 @@ @@ -249,7 +249,7 @@ index 156d146..e4404dd 100644 } sdi; struct sdi_clk_calc_ctx { -@@ -388,3 +391,45 @@ void __exit sdi_uninit_platform_driver(void) +@@ -387,3 +390,45 @@ void __exit sdi_uninit_platform_driver(void) { platform_driver_unregister(&omap_sdi_driver); } @@ -296,5 +296,5 @@ index 156d146..e4404dd 100644 + sdi_uninit_output(sdi.pdev); +} -- -1.8.5.2 +1.8.5.3 diff --git a/patches/omap_dt_dss_v3/0030-OMAPDSS-Add-DT-support-to-DISPC.patch b/patches/omap_dt_dss/0010-OMAPDSS-Add-DT-support-to-DISPC.patch similarity index 81% rename from patches/omap_dt_dss_v3/0030-OMAPDSS-Add-DT-support-to-DISPC.patch rename to patches/omap_dt_dss/0010-OMAPDSS-Add-DT-support-to-DISPC.patch index 86e46a82c..c7686cffe 100644 --- a/patches/omap_dt_dss_v3/0030-OMAPDSS-Add-DT-support-to-DISPC.patch +++ b/patches/omap_dt_dss/0010-OMAPDSS-Add-DT-support-to-DISPC.patch @@ -1,7 +1,7 @@ -From d2a5e69312113cd81c9dba5dd1e8f98dadf68b70 Mon Sep 17 00:00:00 2001 +From 5bb69f4ba9e261d11d458f8889e726aaa853721e Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Tue, 17 Dec 2013 11:54:02 +0200 -Subject: [PATCH 30/61] OMAPDSS: Add DT support to DISPC +Subject: [PATCH 10/51] OMAPDSS: Add DT support to DISPC Add DT support to DISPC. Only thing needed here is the of_match_table. @@ -11,10 +11,10 @@ Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> 1 file changed, 8 insertions(+) diff --git a/drivers/video/omap2/dss/dispc.c b/drivers/video/omap2/dss/dispc.c -index f51646f..3ac51e1 100644 +index bbeb8dd..37bd163 100644 --- a/drivers/video/omap2/dss/dispc.c +++ b/drivers/video/omap2/dss/dispc.c -@@ -3781,12 +3781,20 @@ static const struct dev_pm_ops dispc_pm_ops = { +@@ -3780,12 +3780,20 @@ static const struct dev_pm_ops dispc_pm_ops = { .runtime_resume = dispc_runtime_resume, }; @@ -36,5 +36,5 @@ index f51646f..3ac51e1 100644 }; -- -1.8.5.2 +1.8.5.3 diff --git a/patches/omap_dt_dss_v3/0031-OMAPDSS-Add-DT-support-to-HDMI.patch b/patches/omap_dt_dss/0011-OMAPDSS-Add-DT-support-to-HDMI.patch similarity index 86% rename from patches/omap_dt_dss_v3/0031-OMAPDSS-Add-DT-support-to-HDMI.patch rename to patches/omap_dt_dss/0011-OMAPDSS-Add-DT-support-to-HDMI.patch index f81ab9800..62644ad2a 100644 --- a/patches/omap_dt_dss_v3/0031-OMAPDSS-Add-DT-support-to-HDMI.patch +++ b/patches/omap_dt_dss/0011-OMAPDSS-Add-DT-support-to-HDMI.patch @@ -1,7 +1,7 @@ -From b930a2207a1eea36aa97d85940e7f2afed1c94e9 Mon Sep 17 00:00:00 2001 +From 71afd8a004f6aede33de5dc59ee3361d998b6453 Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Mon, 16 Dec 2013 15:14:04 +0200 -Subject: [PATCH 31/61] OMAPDSS: Add DT support to HDMI +Subject: [PATCH 11/51] OMAPDSS: Add DT support to HDMI Add DT support to HDMI driver. The only thing needed for DT support here is the of_match_table. @@ -12,7 +12,7 @@ Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> 1 file changed, 6 insertions(+) diff --git a/drivers/video/omap2/dss/hdmi4.c b/drivers/video/omap2/dss/hdmi4.c -index 2def9f5..b539e38 100644 +index ba6f025..a2a4d95 100644 --- a/drivers/video/omap2/dss/hdmi4.c +++ b/drivers/video/omap2/dss/hdmi4.c @@ -682,6 +682,11 @@ static const struct dev_pm_ops hdmi_pm_ops = { @@ -36,5 +36,5 @@ index 2def9f5..b539e38 100644 }; -- -1.8.5.2 +1.8.5.3 diff --git a/patches/omap_dt_dss_v3/0032-OMAPDSS-Add-DT-support-to-VENC.patch b/patches/omap_dt_dss/0012-OMAPDSS-Add-DT-support-to-VENC.patch similarity index 94% rename from patches/omap_dt_dss_v3/0032-OMAPDSS-Add-DT-support-to-VENC.patch rename to patches/omap_dt_dss/0012-OMAPDSS-Add-DT-support-to-VENC.patch index a9eff63ab..63dfe8cad 100644 --- a/patches/omap_dt_dss_v3/0032-OMAPDSS-Add-DT-support-to-VENC.patch +++ b/patches/omap_dt_dss/0012-OMAPDSS-Add-DT-support-to-VENC.patch @@ -1,7 +1,7 @@ -From 6860a972c759dafd98c067087bb17300976b5e45 Mon Sep 17 00:00:00 2001 +From 03a68d36d4b09640cf76a7dffcc8e50f245bc091 Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Mon, 16 Dec 2013 15:14:15 +0200 -Subject: [PATCH 32/61] OMAPDSS: Add DT support to VENC +Subject: [PATCH 12/51] OMAPDSS: Add DT support to VENC Add DT support to VENC. @@ -14,7 +14,7 @@ Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> 1 file changed, 61 insertions(+) diff --git a/drivers/video/omap2/dss/venc.c b/drivers/video/omap2/dss/venc.c -index c0e4def..b962a019 100644 +index 7d40e52..fc7069a 100644 --- a/drivers/video/omap2/dss/venc.c +++ b/drivers/video/omap2/dss/venc.c @@ -34,6 +34,7 @@ @@ -120,5 +120,5 @@ index c0e4def..b962a019 100644 }; -- -1.8.5.2 +1.8.5.3 diff --git a/patches/omap_dt_dss_v3/0033-OMAPDSS-Add-DT-support-to-DSI.patch b/patches/omap_dt_dss/0013-OMAPDSS-Add-DT-support-to-DSI.patch similarity index 97% rename from patches/omap_dt_dss_v3/0033-OMAPDSS-Add-DT-support-to-DSI.patch rename to patches/omap_dt_dss/0013-OMAPDSS-Add-DT-support-to-DSI.patch index 59289e7a4..aae87ecdd 100644 --- a/patches/omap_dt_dss_v3/0033-OMAPDSS-Add-DT-support-to-DSI.patch +++ b/patches/omap_dt_dss/0013-OMAPDSS-Add-DT-support-to-DSI.patch @@ -1,7 +1,7 @@ -From dcbc8a7d394f45ee77565626c270fc06448e6efc Mon Sep 17 00:00:00 2001 +From c2e0e42968474394882b51b3685709d6817c4049 Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Tue, 21 Aug 2012 15:35:42 +0300 -Subject: [PATCH 33/61] OMAPDSS: Add DT support to DSI +Subject: [PATCH 13/51] OMAPDSS: Add DT support to DSI Add the code to make the DSI driver work with device tree on OMAP3 and OMAP4. @@ -18,7 +18,7 @@ Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> 1 file changed, 138 insertions(+), 1 deletion(-) diff --git a/drivers/video/omap2/dss/dsi.c b/drivers/video/omap2/dss/dsi.c -index b7c9270..f4a6845 100644 +index 782e898..efb24b3 100644 --- a/drivers/video/omap2/dss/dsi.c +++ b/drivers/video/omap2/dss/dsi.c @@ -38,6 +38,8 @@ @@ -248,5 +248,5 @@ index b7c9270..f4a6845 100644 }; -- -1.8.5.2 +1.8.5.3 diff --git a/patches/omap_dt_dss_v3/0034-OMAPDSS-panel-dsi-cm-Add-DT-support.patch b/patches/omap_dt_dss/0014-OMAPDSS-panel-dsi-cm-Add-DT-support.patch similarity index 95% rename from patches/omap_dt_dss_v3/0034-OMAPDSS-panel-dsi-cm-Add-DT-support.patch rename to patches/omap_dt_dss/0014-OMAPDSS-panel-dsi-cm-Add-DT-support.patch index b4c0c03bb..b0933fff2 100644 --- a/patches/omap_dt_dss_v3/0034-OMAPDSS-panel-dsi-cm-Add-DT-support.patch +++ b/patches/omap_dt_dss/0014-OMAPDSS-panel-dsi-cm-Add-DT-support.patch @@ -1,7 +1,7 @@ -From 1dde0519442a180f1d12b8d1855f6edf227d888c Mon Sep 17 00:00:00 2001 +From 5641cef8f0c60e4f76a5635a56f45d00f6201b98 Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Tue, 30 Jul 2013 10:34:16 +0300 -Subject: [PATCH 34/61] OMAPDSS: panel-dsi-cm: Add DT support +Subject: [PATCH 14/51] OMAPDSS: panel-dsi-cm: Add DT support Add DT support for panel-dsi-cm. @@ -121,5 +121,5 @@ index b7baafe..d302c44 100644 }; -- -1.8.5.2 +1.8.5.3 diff --git a/patches/omap_dt_dss_v3/0035-OMAPDSS-encoder-tfp410-Add-DT-support.patch b/patches/omap_dt_dss/0015-OMAPDSS-encoder-tfp410-Add-DT-support.patch similarity index 95% rename from patches/omap_dt_dss_v3/0035-OMAPDSS-encoder-tfp410-Add-DT-support.patch rename to patches/omap_dt_dss/0015-OMAPDSS-encoder-tfp410-Add-DT-support.patch index a456c2c87..81f7a55d0 100644 --- a/patches/omap_dt_dss_v3/0035-OMAPDSS-encoder-tfp410-Add-DT-support.patch +++ b/patches/omap_dt_dss/0015-OMAPDSS-encoder-tfp410-Add-DT-support.patch @@ -1,7 +1,7 @@ -From ab7ffe27877ae7f6ff137e75d84cebf514e961b9 Mon Sep 17 00:00:00 2001 +From 6c27eebc7d4a1d452bf7b81943deaa71e506baf7 Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Tue, 30 Jul 2013 10:35:30 +0300 -Subject: [PATCH 35/61] OMAPDSS: encoder-tfp410: Add DT support +Subject: [PATCH 15/51] OMAPDSS: encoder-tfp410: Add DT support Add DT support for encoder-tfp410. @@ -99,5 +99,5 @@ index 4a291e7..e1ef972 100644 }; -- -1.8.5.2 +1.8.5.3 diff --git a/patches/omap_dt_dss_v3/0036-OMAPDSS-connector-dvi-Add-DT-support.patch b/patches/omap_dt_dss/0016-OMAPDSS-connector-dvi-Add-DT-support.patch similarity index 94% rename from patches/omap_dt_dss_v3/0036-OMAPDSS-connector-dvi-Add-DT-support.patch rename to patches/omap_dt_dss/0016-OMAPDSS-connector-dvi-Add-DT-support.patch index 6233d3b5a..d45ebb49b 100644 --- a/patches/omap_dt_dss_v3/0036-OMAPDSS-connector-dvi-Add-DT-support.patch +++ b/patches/omap_dt_dss/0016-OMAPDSS-connector-dvi-Add-DT-support.patch @@ -1,7 +1,7 @@ -From 15d34f3dbfb0a6dbde7c25793ba8f99e653cce6b Mon Sep 17 00:00:00 2001 +From c775a235731d00f99ca2bba38e236b7834376692 Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Tue, 30 Jul 2013 10:36:29 +0300 -Subject: [PATCH 36/61] OMAPDSS: connector-dvi: Add DT support +Subject: [PATCH 16/51] OMAPDSS: connector-dvi: Add DT support Add DT support for connector-dvi. @@ -85,5 +85,5 @@ index b6c5090..4ea26ab 100644 }; -- -1.8.5.2 +1.8.5.3 diff --git a/patches/omap_dt_dss_v3/0037-OMAPDSS-encoder-tpd12s015-Add-DT-support.patch b/patches/omap_dt_dss/0017-OMAPDSS-encoder-tpd12s015-Add-DT-support.patch similarity index 95% rename from patches/omap_dt_dss_v3/0037-OMAPDSS-encoder-tpd12s015-Add-DT-support.patch rename to patches/omap_dt_dss/0017-OMAPDSS-encoder-tpd12s015-Add-DT-support.patch index f186e9224..1c5dc1d52 100644 --- a/patches/omap_dt_dss_v3/0037-OMAPDSS-encoder-tpd12s015-Add-DT-support.patch +++ b/patches/omap_dt_dss/0017-OMAPDSS-encoder-tpd12s015-Add-DT-support.patch @@ -1,7 +1,7 @@ -From 7cb6f66a3b8d3cde70a88be1a9767c6558fe911a Mon Sep 17 00:00:00 2001 +From dd738e5c3c0ca219f146e413d2ac57618178e3da Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Tue, 30 Jul 2013 10:37:17 +0300 -Subject: [PATCH 37/61] OMAPDSS: encoder-tpd12s015: Add DT support +Subject: [PATCH 17/51] OMAPDSS: encoder-tpd12s015: Add DT support Add DT support for encoder-tpd12s015. @@ -105,5 +105,5 @@ index d5c936c..7e33686 100644 }; -- -1.8.5.2 +1.8.5.3 diff --git a/patches/omap_dt_dss_v3/0038-OMAPDSS-hdmi-connector-Add-DT-support.patch b/patches/omap_dt_dss/0018-OMAPDSS-hdmi-connector-Add-DT-support.patch similarity index 93% rename from patches/omap_dt_dss_v3/0038-OMAPDSS-hdmi-connector-Add-DT-support.patch rename to patches/omap_dt_dss/0018-OMAPDSS-hdmi-connector-Add-DT-support.patch index f3e6b352e..85ac22c45 100644 --- a/patches/omap_dt_dss_v3/0038-OMAPDSS-hdmi-connector-Add-DT-support.patch +++ b/patches/omap_dt_dss/0018-OMAPDSS-hdmi-connector-Add-DT-support.patch @@ -1,7 +1,7 @@ -From 09b7f9e7c1c74bd8c28a778ca07b2bec381d93ff Mon Sep 17 00:00:00 2001 +From 8d48a1f842d89077f529c31445d079cf3b88002b Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Tue, 30 Jul 2013 10:37:34 +0300 -Subject: [PATCH 38/61] OMAPDSS: hdmi-connector: Add DT support +Subject: [PATCH 18/51] OMAPDSS: hdmi-connector: Add DT support Add DT support for hdmi-connector. @@ -79,5 +79,5 @@ index 9abe2c0..2e026ea 100644 }; -- -1.8.5.2 +1.8.5.3 diff --git a/patches/omap_dt_dss_v3/0039-OMAPDSS-panel-dpi-Add-DT-support.patch b/patches/omap_dt_dss/0019-OMAPDSS-panel-dpi-Add-DT-support.patch similarity index 96% rename from patches/omap_dt_dss_v3/0039-OMAPDSS-panel-dpi-Add-DT-support.patch rename to patches/omap_dt_dss/0019-OMAPDSS-panel-dpi-Add-DT-support.patch index b0fab1c9e..2c6ca7c1d 100644 --- a/patches/omap_dt_dss_v3/0039-OMAPDSS-panel-dpi-Add-DT-support.patch +++ b/patches/omap_dt_dss/0019-OMAPDSS-panel-dpi-Add-DT-support.patch @@ -1,7 +1,7 @@ -From 3b2cb68ab1a232f75150e24fac3a6ce40411ac64 Mon Sep 17 00:00:00 2001 +From bac10868effd2ad0b6dbda44c51252ba05831350 Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Thu, 16 May 2013 15:14:16 +0300 -Subject: [PATCH 39/61] OMAPDSS: panel-dpi: Add DT support +Subject: [PATCH 19/51] OMAPDSS: panel-dpi: Add DT support Add DT support for panel-dpi. @@ -123,5 +123,5 @@ index 5f8f7e7..b032daf 100644 }; -- -1.8.5.2 +1.8.5.3 diff --git a/patches/omap_dt_dss_v3/0040-OMAPDSS-connector-analog-tv-Add-DT-support.patch b/patches/omap_dt_dss/0020-OMAPDSS-connector-analog-tv-Add-DT-support.patch similarity index 95% rename from patches/omap_dt_dss_v3/0040-OMAPDSS-connector-analog-tv-Add-DT-support.patch rename to patches/omap_dt_dss/0020-OMAPDSS-connector-analog-tv-Add-DT-support.patch index b70a24bf8..8f6e4a45d 100644 --- a/patches/omap_dt_dss_v3/0040-OMAPDSS-connector-analog-tv-Add-DT-support.patch +++ b/patches/omap_dt_dss/0020-OMAPDSS-connector-analog-tv-Add-DT-support.patch @@ -1,7 +1,7 @@ -From 4c3d603d74e52e0504272cda1fc0fd552ab7e15c Mon Sep 17 00:00:00 2001 +From f096bb362335545df240818439695c0427af3914 Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Wed, 29 May 2013 15:34:06 +0300 -Subject: [PATCH 40/61] OMAPDSS: connector-analog-tv: Add DT support +Subject: [PATCH 20/51] OMAPDSS: connector-analog-tv: Add DT support Add DT support for connector-analog-tv. @@ -106,5 +106,5 @@ index ccd9073..5c84032 100644 }; -- -1.8.5.2 +1.8.5.3 diff --git a/patches/omap_dt_dss_v3/0041-OMAPDSS-acx565akm-Add-DT-support.patch b/patches/omap_dt_dss/0021-OMAPDSS-acx565akm-Add-DT-support.patch similarity index 95% rename from patches/omap_dt_dss_v3/0041-OMAPDSS-acx565akm-Add-DT-support.patch rename to patches/omap_dt_dss/0021-OMAPDSS-acx565akm-Add-DT-support.patch index 1b3ff9e7c..049a0eb90 100644 --- a/patches/omap_dt_dss_v3/0041-OMAPDSS-acx565akm-Add-DT-support.patch +++ b/patches/omap_dt_dss/0021-OMAPDSS-acx565akm-Add-DT-support.patch @@ -1,7 +1,7 @@ -From 61652368f1d38e6ea347dafae6cba600065cd8ad Mon Sep 17 00:00:00 2001 +From fbfd2f6715b6e72d11e26cf4afb0b41541504f9d Mon Sep 17 00:00:00 2001 From: Sebastian Reichel <sre@debian.org> Date: Fri, 13 Dec 2013 19:17:28 +0100 -Subject: [PATCH 41/61] OMAPDSS: acx565akm: Add DT support +Subject: [PATCH 21/51] OMAPDSS: acx565akm: Add DT support Add DT support for panel-sony-acx565akm @@ -90,5 +90,5 @@ index 8e97d06..8d2745c 100644 .probe = acx565akm_probe, .remove = acx565akm_remove, -- -1.8.5.2 +1.8.5.3 diff --git a/patches/omap_dt_dss_v3/0042-ARM-omap2.dtsi-add-omapdss-information.patch b/patches/omap_dt_dss/0022-ARM-omap2.dtsi-add-omapdss-information.patch similarity index 89% rename from patches/omap_dt_dss_v3/0042-ARM-omap2.dtsi-add-omapdss-information.patch rename to patches/omap_dt_dss/0022-ARM-omap2.dtsi-add-omapdss-information.patch index 08e124116..603e0f66a 100644 --- a/patches/omap_dt_dss_v3/0042-ARM-omap2.dtsi-add-omapdss-information.patch +++ b/patches/omap_dt_dss/0022-ARM-omap2.dtsi-add-omapdss-information.patch @@ -1,7 +1,7 @@ -From 677ae630fb498f5000286f4760b84ce56585767f Mon Sep 17 00:00:00 2001 +From ac139049739a072c181a5c78deaa7db942b810e8 Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Wed, 18 Dec 2013 10:22:07 +0200 -Subject: [PATCH 42/61] ARM: omap2.dtsi: add omapdss information +Subject: [PATCH 22/51] ARM: omap2.dtsi: add omapdss information Add DT data for OMAP2 display subsystem, which contains the following blocks: @@ -17,7 +17,7 @@ Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> 1 file changed, 31 insertions(+) diff --git a/arch/arm/boot/dts/omap2.dtsi b/arch/arm/boot/dts/omap2.dtsi -index d0c5b37..af3531c 100644 +index 5377ddf..63713be 100644 --- a/arch/arm/boot/dts/omap2.dtsi +++ b/arch/arm/boot/dts/omap2.dtsi @@ -271,5 +271,36 @@ @@ -58,5 +58,5 @@ index d0c5b37..af3531c 100644 }; }; -- -1.8.5.2 +1.8.5.3 diff --git a/patches/omap_dt_dss_v3/0043-ARM-omap3.dtsi-add-omapdss-information.patch b/patches/omap_dt_dss/0023-ARM-omap3.dtsi-add-omapdss-information.patch similarity index 57% rename from patches/omap_dt_dss_v3/0043-ARM-omap3.dtsi-add-omapdss-information.patch rename to patches/omap_dt_dss/0023-ARM-omap3.dtsi-add-omapdss-information.patch index be577bfbb..828fd737d 100644 --- a/patches/omap_dt_dss_v3/0043-ARM-omap3.dtsi-add-omapdss-information.patch +++ b/patches/omap_dt_dss/0023-ARM-omap3.dtsi-add-omapdss-information.patch @@ -1,7 +1,7 @@ -From e7e247a31200b67af1520c8e353e35e00fb15894 Mon Sep 17 00:00:00 2001 +From 938305839bc48577c83269b3920a79efbfb38a41 Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Tue, 19 Mar 2013 11:38:13 +0200 -Subject: [PATCH 43/61] ARM: omap3.dtsi: add omapdss information +Subject: [PATCH 23/51] ARM: omap3.dtsi: add omapdss information Add DT data for OMAP3 display subsystem, which contains the following blocks: @@ -14,14 +14,15 @@ venc - analog TV encoder Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> --- - arch/arm/boot/dts/omap3.dtsi | 42 ++++++++++++++++++++++++++++++++++++++++++ - 1 file changed, 42 insertions(+) + arch/arm/boot/dts/omap3.dtsi | 52 +++++++++++++++++++++++++++++++++++++++++ + arch/arm/boot/dts/omap36xx.dtsi | 6 +++++ + 2 files changed, 58 insertions(+) diff --git a/arch/arm/boot/dts/omap3.dtsi b/arch/arm/boot/dts/omap3.dtsi -index daabf99..d942f9a 100644 +index a5fc83b..04cac4d 100644 --- a/arch/arm/boot/dts/omap3.dtsi +++ b/arch/arm/boot/dts/omap3.dtsi -@@ -630,5 +630,47 @@ +@@ -669,6 +669,58 @@ num-eps = <16>; ram-bits = <12>; }; @@ -31,6 +32,8 @@ index daabf99..d942f9a 100644 + reg = <0x48050000 0x200>; + status = "disabled"; + ti,hwmods = "dss_core"; ++ clocks = <&dss1_alwon_fck>; ++ clock-names = "fck"; + #address-cells = <1>; + #size-cells = <1>; + ranges; @@ -40,6 +43,8 @@ index daabf99..d942f9a 100644 + reg = <0x48050400 0x400>; + interrupts = <25>; + ti,hwmods = "dss_dispc"; ++ clocks = <&dss1_alwon_fck>; ++ clock-names = "fck"; + }; + + dsi: encoder@4804fc00 { @@ -51,6 +56,8 @@ index daabf99..d942f9a 100644 + interrupts = <25>; + status = "disabled"; + ti,hwmods = "dss_dsi1"; ++ clocks = <&dss1_alwon_fck>, <&dss2_alwon_fck>; ++ clock-names = "fck", "sys_clk"; + }; + + rfbi: encoder@48050800 { @@ -58,6 +65,8 @@ index daabf99..d942f9a 100644 + reg = <0x48050800 0x100>; + status = "disabled"; + ti,hwmods = "dss_rfbi"; ++ clocks = <&dss1_alwon_fck>, <&dss_ick>; ++ clock-names = "fck", "ick"; + }; + + venc: encoder@48050c00 { @@ -65,10 +74,30 @@ index daabf99..d942f9a 100644 + reg = <0x48050c00 0x100>; + status = "disabled"; + ti,hwmods = "dss_venc"; ++ clocks = <&dss_tv_fck>; ++ clock-names = "fck"; + }; + }; }; }; + +diff --git a/arch/arm/boot/dts/omap36xx.dtsi b/arch/arm/boot/dts/omap36xx.dtsi +index 7e8dee9..0663f5b 100644 +--- a/arch/arm/boot/dts/omap36xx.dtsi ++++ b/arch/arm/boot/dts/omap36xx.dtsi +@@ -52,6 +52,12 @@ + }; + }; + ++/* OMAP3630 needs dss_96m_fck for VENC */ ++&venc { ++ clocks = <&dss_tv_fck>, <&dss_96m_fck>; ++ clock-names = "fck", "tv_dac_clk"; ++}; ++ + /include/ "omap36xx-clocks.dtsi" + /include/ "omap34xx-omap36xx-clocks.dtsi" + /include/ "omap36xx-omap3430es2plus-clocks.dtsi" -- -1.8.5.2 +1.8.5.3 diff --git a/patches/omap_dt_dss_v3/0044-ARM-omap4.dtsi-add-omapdss-information.patch b/patches/omap_dt_dss/0024-ARM-omap4.dtsi-add-omapdss-information.patch similarity index 75% rename from patches/omap_dt_dss_v3/0044-ARM-omap4.dtsi-add-omapdss-information.patch rename to patches/omap_dt_dss/0024-ARM-omap4.dtsi-add-omapdss-information.patch index 34d90c1a6..178f7b00a 100644 --- a/patches/omap_dt_dss_v3/0044-ARM-omap4.dtsi-add-omapdss-information.patch +++ b/patches/omap_dt_dss/0024-ARM-omap4.dtsi-add-omapdss-information.patch @@ -1,7 +1,7 @@ -From 9b70d8b8ff697f4668220c6fbfb2070468734902 Mon Sep 17 00:00:00 2001 +From ef5cd58827a6abd8458a59b062f1eac443e9724f Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Tue, 21 Aug 2012 15:34:50 +0300 -Subject: [PATCH 44/61] ARM: omap4.dtsi: add omapdss information +Subject: [PATCH 24/51] ARM: omap4.dtsi: add omapdss information Add DT data for OMAP4 display subsystem, which contains the following blocks: @@ -15,14 +15,14 @@ hdmi - HDMI encoder Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> --- - arch/arm/boot/dts/omap4.dtsi | 65 ++++++++++++++++++++++++++++++++++++++++++++ - 1 file changed, 65 insertions(+) + arch/arm/boot/dts/omap4.dtsi | 79 ++++++++++++++++++++++++++++++++++++++++++++ + 1 file changed, 79 insertions(+) diff --git a/arch/arm/boot/dts/omap4.dtsi b/arch/arm/boot/dts/omap4.dtsi -index a1e0585..19498b2 100644 +index d3f8a6e..aa3dbd3 100644 --- a/arch/arm/boot/dts/omap4.dtsi +++ b/arch/arm/boot/dts/omap4.dtsi -@@ -705,5 +705,70 @@ +@@ -757,6 +757,85 @@ dmas = <&sdma 117>, <&sdma 116>; dma-names = "tx", "rx"; }; @@ -32,6 +32,8 @@ index a1e0585..19498b2 100644 + reg = <0x58000000 0x80>; + status = "disabled"; + ti,hwmods = "dss_core"; ++ clocks = <&dss_dss_clk>; ++ clock-names = "fck"; + #address-cells = <1>; + #size-cells = <1>; + ranges; @@ -41,6 +43,8 @@ index a1e0585..19498b2 100644 + reg = <0x58001000 0x1000>; + interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>; + ti,hwmods = "dss_dispc"; ++ clocks = <&dss_dss_clk>; ++ clock-names = "fck"; + }; + + rfbi: encoder@58002000 { @@ -48,6 +52,8 @@ index a1e0585..19498b2 100644 + reg = <0x58002000 0x1000>; + status = "disabled"; + ti,hwmods = "dss_rfbi"; ++ clocks = <&dss_dss_clk>, <&dss_fck>; ++ clock-names = "fck", "ick"; + }; + + venc: encoder@58003000 { @@ -55,6 +61,8 @@ index a1e0585..19498b2 100644 + reg = <0x58003000 0x1000>; + status = "disabled"; + ti,hwmods = "dss_venc"; ++ clocks = <&dss_tv_clk>; ++ clock-names = "fck"; + }; + + dsi1: encoder@58004000 { @@ -66,6 +74,8 @@ index a1e0585..19498b2 100644 + interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>; + status = "disabled"; + ti,hwmods = "dss_dsi1"; ++ clocks = <&dss_dss_clk>, <&dss_sys_clk>; ++ clock-names = "fck", "sys_clk"; + }; + + dsi2: encoder@58005000 { @@ -77,6 +87,8 @@ index a1e0585..19498b2 100644 + interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>; + status = "disabled"; + ti,hwmods = "dss_dsi2"; ++ clocks = <&dss_dss_clk>, <&dss_sys_clk>; ++ clock-names = "fck", "sys_clk"; + }; + + hdmi: encoder@58006000 { @@ -89,10 +101,13 @@ index a1e0585..19498b2 100644 + interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>; + status = "disabled"; + ti,hwmods = "dss_hdmi"; ++ clocks = <&dss_48mhz_clk>, <&dss_sys_clk>; ++ clock-names = "fck", "sys_clk"; + }; + }; }; }; + -- -1.8.5.2 +1.8.5.3 diff --git a/patches/omap_dt_dss_v3/0045-ARM-omap4-panda.dts-add-display-information.patch b/patches/omap_dt_dss/0025-ARM-omap4-panda.dts-add-display-information.patch similarity index 95% rename from patches/omap_dt_dss_v3/0045-ARM-omap4-panda.dts-add-display-information.patch rename to patches/omap_dt_dss/0025-ARM-omap4-panda.dts-add-display-information.patch index 8933e04f9..ad9287934 100644 --- a/patches/omap_dt_dss_v3/0045-ARM-omap4-panda.dts-add-display-information.patch +++ b/patches/omap_dt_dss/0025-ARM-omap4-panda.dts-add-display-information.patch @@ -1,7 +1,7 @@ -From 751be73f9ba5ce1a579e9c3fa53c061bd249a003 Mon Sep 17 00:00:00 2001 +From 271f05655cf058e84036b42887bd99e03fb68c69 Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Mon, 20 Aug 2012 17:07:23 +0300 -Subject: [PATCH 45/61] ARM: omap4-panda.dts: add display information +Subject: [PATCH 25/51] ARM: omap4-panda.dts: add display information Add DT data for OMAP4 Pandaboard. The board has the following displays: @@ -162,5 +162,5 @@ index 88c6a05..20aa18f 100644 + }; +}; -- -1.8.5.2 +1.8.5.3 diff --git a/patches/omap_dt_dss_v3/0046-ARM-omap4-sdp.dts-add-display-information.patch b/patches/omap_dt_dss/0026-ARM-omap4-sdp.dts-add-display-information.patch similarity index 95% rename from patches/omap_dt_dss_v3/0046-ARM-omap4-sdp.dts-add-display-information.patch rename to patches/omap_dt_dss/0026-ARM-omap4-sdp.dts-add-display-information.patch index 544b2b71b..ad151deab 100644 --- a/patches/omap_dt_dss_v3/0046-ARM-omap4-sdp.dts-add-display-information.patch +++ b/patches/omap_dt_dss/0026-ARM-omap4-sdp.dts-add-display-information.patch @@ -1,7 +1,7 @@ -From bd7b4d09bdfced2124732bb7f4f6b2949d23858c Mon Sep 17 00:00:00 2001 +From c10989a669d80e965912862fb27b16908cae47d2 Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Mon, 20 Aug 2012 17:07:31 +0300 -Subject: [PATCH 46/61] ARM: omap4-sdp.dts: add display information +Subject: [PATCH 26/51] ARM: omap4-sdp.dts: add display information Add DT data for OMAP4 SDP board. The board has the following displays: @@ -151,5 +151,5 @@ index dbc81fb..cf9f6cb 100644 + }; +}; -- -1.8.5.2 +1.8.5.3 diff --git a/patches/omap_dt_dss_v3/0047-ARM-omap3-beagle.dts-add-display-information.patch b/patches/omap_dt_dss/0027-ARM-omap3-beagle.dts-add-display-information.patch similarity index 88% rename from patches/omap_dt_dss_v3/0047-ARM-omap3-beagle.dts-add-display-information.patch rename to patches/omap_dt_dss/0027-ARM-omap3-beagle.dts-add-display-information.patch index 9a005409f..6f76298d8 100644 --- a/patches/omap_dt_dss_v3/0047-ARM-omap3-beagle.dts-add-display-information.patch +++ b/patches/omap_dt_dss/0027-ARM-omap3-beagle.dts-add-display-information.patch @@ -1,7 +1,7 @@ -From 176e8872b398afa4e8488175ad13d939fea98fbe Mon Sep 17 00:00:00 2001 +From fac4cff1384295955219c13fbe1cd3fdb3e1b0fb Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Fri, 22 Mar 2013 10:48:36 +0200 -Subject: [PATCH 47/61] ARM: omap3-beagle.dts: add display information +Subject: [PATCH 27/51] ARM: omap3-beagle.dts: add display information Add DT data for OMAP3 Beagle board. The board has the following displays: @@ -10,11 +10,11 @@ tv: analog svideo Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> --- - arch/arm/boot/dts/omap3-beagle.dts | 116 +++++++++++++++++++++++++++++++++++++ - 1 file changed, 116 insertions(+) + arch/arm/boot/dts/omap3-beagle.dts | 125 +++++++++++++++++++++++++++++++++++++ + 1 file changed, 125 insertions(+) diff --git a/arch/arm/boot/dts/omap3-beagle.dts b/arch/arm/boot/dts/omap3-beagle.dts -index 5053766..070df69 100644 +index 5053766..ebe407b 100644 --- a/arch/arm/boot/dts/omap3-beagle.dts +++ b/arch/arm/boot/dts/omap3-beagle.dts @@ -24,6 +24,11 @@ @@ -131,11 +131,27 @@ index 5053766..070df69 100644 }; &omap3_pmx_core2 { -@@ -211,3 +304,26 @@ +@@ -152,6 +245,10 @@ + #include "twl4030.dtsi" + #include "twl4030_omap3.dtsi" + ++&i2c3 { ++ clock-frequency = <100000>; ++}; ++ + &mmc1 { + vmmc-supply = <&vmmc1>; + vmmc_aux-supply = <&vsim>; +@@ -211,3 +308,31 @@ regulator-max-microvolt = <1800000>; regulator-always-on; }; + ++/* Needed to power the DPI pins */ ++&vpll2 { ++ regulator-always-on; ++}; ++ +&dss { + status = "ok"; + @@ -159,5 +175,5 @@ index 5053766..070df69 100644 + }; +}; -- -1.8.5.2 +1.8.5.3 diff --git a/patches/omap_dt_dss_v3/0048-ARM-omap3-beagle-xm.dts-add-display-information.patch b/patches/omap_dt_dss/0028-ARM-omap3-beagle-xm.dts-add-display-information.patch similarity index 52% rename from patches/omap_dt_dss_v3/0048-ARM-omap3-beagle-xm.dts-add-display-information.patch rename to patches/omap_dt_dss/0028-ARM-omap3-beagle-xm.dts-add-display-information.patch index aa793c869..0648df64c 100644 --- a/patches/omap_dt_dss_v3/0048-ARM-omap3-beagle-xm.dts-add-display-information.patch +++ b/patches/omap_dt_dss/0028-ARM-omap3-beagle-xm.dts-add-display-information.patch @@ -1,7 +1,7 @@ -From 5d88a38b536a0c32e7c39ffd34422017f4ab5c36 Mon Sep 17 00:00:00 2001 +From 381214f86e314da30518dad45288bd5bae0263c9 Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Fri, 20 Sep 2013 10:43:51 +0300 -Subject: [PATCH 48/61] ARM: omap3-beagle-xm.dts: add display information +Subject: [PATCH 28/51] ARM: omap3-beagle-xm.dts: add display information Add DT data for OMAP3 Beagle-xM board. The board has the following displays: @@ -10,11 +10,11 @@ tv: analog svideo Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> --- - arch/arm/boot/dts/omap3-beagle-xm.dts | 119 ++++++++++++++++++++++++++++++++++ - 1 file changed, 119 insertions(+) + arch/arm/boot/dts/omap3-beagle-xm.dts | 128 +++++++++++++++++++++++++++++++--- + 1 file changed, 119 insertions(+), 9 deletions(-) diff --git a/arch/arm/boot/dts/omap3-beagle-xm.dts b/arch/arm/boot/dts/omap3-beagle-xm.dts -index 447e714..92db95b 100644 +index 447e714..9c0983a 100644 --- a/arch/arm/boot/dts/omap3-beagle-xm.dts +++ b/arch/arm/boot/dts/omap3-beagle-xm.dts @@ -24,6 +24,11 @@ @@ -89,7 +89,7 @@ index 447e714..92db95b 100644 >; }; + -+ dss_dpi_pins2: pinmux_dss_dpi_pins { ++ dss_dpi_pins2: pinmux_dss_dpi_pins1 { + pinctrl-single,pins = < + 0x0a (PIN_OUTPUT | MUX_MODE3) /* sys_boot0.dss_data18 */ + 0x0c (PIN_OUTPUT | MUX_MODE3) /* sys_boot1.dss_data19 */ @@ -107,38 +107,54 @@ index 447e714..92db95b 100644 >; }; + -+ dss_dpi_pins1: pinmux_dss_dpi_pins { ++ dss_dpi_pins1: pinmux_dss_dpi_pins2 { + pinctrl-single,pins = < -+ 0x0a4 (PIN_OUTPUT | MUX_MODE0) /* dss_pclk.dss_pclk */ -+ 0x0a6 (PIN_OUTPUT | MUX_MODE0) /* dss_hsync.dss_hsync */ -+ 0x0a8 (PIN_OUTPUT | MUX_MODE0) /* dss_vsync.dss_vsync */ -+ 0x0aa (PIN_OUTPUT | MUX_MODE0) /* dss_acbias.dss_acbias */ -+ -+ 0x0b8 (PIN_OUTPUT | MUX_MODE0) /* dss_data6.dss_data6 */ -+ 0x0ba (PIN_OUTPUT | MUX_MODE0) /* dss_data7.dss_data7 */ -+ 0x0bc (PIN_OUTPUT | MUX_MODE0) /* dss_data8.dss_data8 */ -+ 0x0be (PIN_OUTPUT | MUX_MODE0) /* dss_data9.dss_data9 */ -+ 0x0c0 (PIN_OUTPUT | MUX_MODE0) /* dss_data10.dss_data10 */ -+ 0x0c2 (PIN_OUTPUT | MUX_MODE0) /* dss_data11.dss_data11 */ -+ 0x0c4 (PIN_OUTPUT | MUX_MODE0) /* dss_data12.dss_data12 */ -+ 0x0c6 (PIN_OUTPUT | MUX_MODE0) /* dss_data13.dss_data13 */ -+ 0x0c8 (PIN_OUTPUT | MUX_MODE0) /* dss_data14.dss_data14 */ -+ 0x0ca (PIN_OUTPUT | MUX_MODE0) /* dss_data15.dss_data15 */ -+ 0x0cc (PIN_OUTPUT | MUX_MODE0) /* dss_data16.dss_data16 */ -+ 0x0ce (PIN_OUTPUT | MUX_MODE0) /* dss_data17.dss_data17 */ -+ -+ 0x0d0 (PIN_OUTPUT | MUX_MODE3) /* dss_data18.dss_data0 */ -+ 0x0d2 (PIN_OUTPUT | MUX_MODE3) /* dss_data19.dss_data1 */ -+ 0x0d4 (PIN_OUTPUT | MUX_MODE3) /* dss_data20.dss_data2 */ -+ 0x0d6 (PIN_OUTPUT | MUX_MODE3) /* dss_data21.dss_data3 */ -+ 0x0d8 (PIN_OUTPUT | MUX_MODE3) /* dss_data22.dss_data4 */ -+ 0x0da (PIN_OUTPUT | MUX_MODE3) /* dss_data23.dss_data5 */ ++ OMAP3_CORE1_IOPAD(0x20d4, PIN_OUTPUT | MUX_MODE0) /* dss_pclk.dss_pclk */ ++ OMAP3_CORE1_IOPAD(0x20d6, PIN_OUTPUT | MUX_MODE0) /* dss_hsync.dss_hsync */ ++ OMAP3_CORE1_IOPAD(0x20d8, PIN_OUTPUT | MUX_MODE0) /* dss_vsync.dss_vsync */ ++ OMAP3_CORE1_IOPAD(0x20da, PIN_OUTPUT | MUX_MODE0) /* dss_acbias.dss_acbias */ ++ ++ OMAP3_CORE1_IOPAD(0x20e8, PIN_OUTPUT | MUX_MODE0) /* dss_data6.dss_data6 */ ++ OMAP3_CORE1_IOPAD(0x20ea, PIN_OUTPUT | MUX_MODE0) /* dss_data7.dss_data7 */ ++ OMAP3_CORE1_IOPAD(0x20ec, PIN_OUTPUT | MUX_MODE0) /* dss_data8.dss_data8 */ ++ OMAP3_CORE1_IOPAD(0x20ee, PIN_OUTPUT | MUX_MODE0) /* dss_data9.dss_data9 */ ++ OMAP3_CORE1_IOPAD(0x20f0, PIN_OUTPUT | MUX_MODE0) /* dss_data10.dss_data10 */ ++ OMAP3_CORE1_IOPAD(0x20f2, PIN_OUTPUT | MUX_MODE0) /* dss_data11.dss_data11 */ ++ OMAP3_CORE1_IOPAD(0x20f4, PIN_OUTPUT | MUX_MODE0) /* dss_data12.dss_data12 */ ++ OMAP3_CORE1_IOPAD(0x20f6, PIN_OUTPUT | MUX_MODE0) /* dss_data13.dss_data13 */ ++ OMAP3_CORE1_IOPAD(0x20f8, PIN_OUTPUT | MUX_MODE0) /* dss_data14.dss_data14 */ ++ OMAP3_CORE1_IOPAD(0x20fa, PIN_OUTPUT | MUX_MODE0) /* dss_data15.dss_data15 */ ++ OMAP3_CORE1_IOPAD(0x20fc, PIN_OUTPUT | MUX_MODE0) /* dss_data16.dss_data16 */ ++ OMAP3_CORE1_IOPAD(0x20fe, PIN_OUTPUT | MUX_MODE0) /* dss_data17.dss_data17 */ ++ ++ OMAP3_CORE1_IOPAD(0x2100, PIN_OUTPUT | MUX_MODE3) /* dss_data18.dss_data0 */ ++ OMAP3_CORE1_IOPAD(0x2102, PIN_OUTPUT | MUX_MODE3) /* dss_data19.dss_data1 */ ++ OMAP3_CORE1_IOPAD(0x2104, PIN_OUTPUT | MUX_MODE3) /* dss_data20.dss_data2 */ ++ OMAP3_CORE1_IOPAD(0x2106, PIN_OUTPUT | MUX_MODE3) /* dss_data21.dss_data3 */ ++ OMAP3_CORE1_IOPAD(0x2108, PIN_OUTPUT | MUX_MODE3) /* dss_data22.dss_data4 */ ++ OMAP3_CORE1_IOPAD(0x210a, PIN_OUTPUT | MUX_MODE3) /* dss_data23.dss_data5 */ + >; + }; }; &omap3_pmx_core2 { -@@ -234,3 +327,29 @@ +@@ -164,15 +257,6 @@ + + &i2c3 { + clock-frequency = <100000>; +- +- /* +- * Display monitor features are burnt in the EEPROM +- * as EDID data. +- */ +- eeprom@50 { +- compatible = "ti,eeprom"; +- reg = <0x50>; +- }; + }; + + &mmc1 { +@@ -234,3 +318,29 @@ regulator-max-microvolt = <1800000>; regulator-always-on; }; @@ -169,5 +185,5 @@ index 447e714..92db95b 100644 + }; +}; -- -1.8.5.2 +1.8.5.3 diff --git a/patches/omap_dt_dss_v3/0049-ARM-omap3-igep0020.dts-add-display-information.patch b/patches/omap_dt_dss/0029-ARM-omap3-igep0020.dts-add-display-information.patch similarity index 88% rename from patches/omap_dt_dss_v3/0049-ARM-omap3-igep0020.dts-add-display-information.patch rename to patches/omap_dt_dss/0029-ARM-omap3-igep0020.dts-add-display-information.patch index 39aba8476..536120700 100644 --- a/patches/omap_dt_dss_v3/0049-ARM-omap3-igep0020.dts-add-display-information.patch +++ b/patches/omap_dt_dss/0029-ARM-omap3-igep0020.dts-add-display-information.patch @@ -1,7 +1,7 @@ -From c8cf5d595ba15043b64cf158a2a43229f804e1a6 Mon Sep 17 00:00:00 2001 +From bb230a0d64a4a78e12828462e64a7176cc876474 Mon Sep 17 00:00:00 2001 From: Javier Martinez Canillas <javier.martinez@collabora.co.uk> Date: Fri, 6 Dec 2013 02:53:38 +0100 -Subject: [PATCH 49/61] ARM: omap3-igep0020.dts: add display information +Subject: [PATCH 29/51] ARM: omap3-igep0020.dts: add display information Add DT data for OMAP3 IGEPv2 board. The board has the following displays: @@ -14,10 +14,10 @@ Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> 1 file changed, 52 insertions(+), 7 deletions(-) diff --git a/arch/arm/boot/dts/omap3-igep0020.dts b/arch/arm/boot/dts/omap3-igep0020.dts -index 1c7e74d..bd8dcc9 100644 +index 25a2b5f..1d241d8 100644 --- a/arch/arm/boot/dts/omap3-igep0020.dts +++ b/arch/arm/boot/dts/omap3-igep0020.dts -@@ -61,14 +61,52 @@ +@@ -61,22 +61,60 @@ reset-gpios = <&gpio1 24 GPIO_ACTIVE_LOW>; /* gpio_24 */ vcc-supply = <&hsusb1_power>; }; @@ -66,16 +66,10 @@ index 1c7e74d..bd8dcc9 100644 &omap3_pmx_core { pinctrl-names = "default"; pinctrl-0 = < - &hsusbb1_pins - &tfp410_pins - &dss_pins >; - hsusbb1_pins: pinmux_hsusbb1_pins { -@@ -88,13 +126,13 @@ - >; - }; - - tfp410_pins: tfp410_dvi_pins { + tfp410_pins: pinmux_tfp410_pins { pinctrl-single,pins = < @@ -88,7 +82,7 @@ index 1c7e74d..bd8dcc9 100644 pinctrl-single,pins = < 0x0a4 (PIN_OUTPUT | MUX_MODE0) /* dss_pclk.dss_pclk */ 0x0a6 (PIN_OUTPUT | MUX_MODE0) /* dss_hsync.dss_hsync */ -@@ -216,7 +254,14 @@ +@@ -222,7 +260,14 @@ phys = <&hsusb1_phy>; }; @@ -107,5 +101,5 @@ index 1c7e74d..bd8dcc9 100644 + }; }; -- -1.8.5.2 +1.8.5.3 diff --git a/patches/omap_dt_dss_v3/0050-ARM-omap3-n900.dts-add-display-information.patch b/patches/omap_dt_dss/0030-ARM-omap3-n900.dts-add-display-information.patch similarity index 93% rename from patches/omap_dt_dss_v3/0050-ARM-omap3-n900.dts-add-display-information.patch rename to patches/omap_dt_dss/0030-ARM-omap3-n900.dts-add-display-information.patch index 04d810702..e637c42bc 100644 --- a/patches/omap_dt_dss_v3/0050-ARM-omap3-n900.dts-add-display-information.patch +++ b/patches/omap_dt_dss/0030-ARM-omap3-n900.dts-add-display-information.patch @@ -1,7 +1,7 @@ -From 998881510ec5a0037b05134449405b53a687e629 Mon Sep 17 00:00:00 2001 +From 9839ad40a1a5eadfc0de5b316706abe159b89141 Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Tue, 17 Dec 2013 09:33:33 +0200 -Subject: [PATCH 50/61] ARM: omap3-n900.dts: add display information +Subject: [PATCH 30/51] ARM: omap3-n900.dts: add display information Add DT data for OMAP3 N900 board. The board has the following displays: @@ -9,6 +9,7 @@ lcd: LCD panel connected to OMAP's SDI output tv: analog svideo Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> +Tested-by: Sebastian Reichel <sre@debian.org> --- arch/arm/boot/dts/omap3-n900.dts | 70 +++++++++++++++++++++++++++++++++++++--- 1 file changed, 66 insertions(+), 4 deletions(-) @@ -121,5 +122,5 @@ index 6fc85f9..c1bb04d 100644 + }; +}; -- -1.8.5.2 +1.8.5.3 diff --git a/patches/omap_dt_dss_v3/0051-OMAPDSS-remove-DT-hacks-for-regulators.patch b/patches/omap_dt_dss/0031-OMAPDSS-remove-DT-hacks-for-regulators.patch similarity index 62% rename from patches/omap_dt_dss_v3/0051-OMAPDSS-remove-DT-hacks-for-regulators.patch rename to patches/omap_dt_dss/0031-OMAPDSS-remove-DT-hacks-for-regulators.patch index aba7aaff8..7e3a126ec 100644 --- a/patches/omap_dt_dss_v3/0051-OMAPDSS-remove-DT-hacks-for-regulators.patch +++ b/patches/omap_dt_dss/0031-OMAPDSS-remove-DT-hacks-for-regulators.patch @@ -1,7 +1,7 @@ -From a83cac797e9f9a6187672853af2aa95b8ce9a3c8 Mon Sep 17 00:00:00 2001 +From 83395d159e7eb5d8dc2d0d6b152deb08904056d2 Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Mon, 10 Jun 2013 14:05:10 +0300 -Subject: [PATCH 51/61] OMAPDSS: remove DT hacks for regulators +Subject: [PATCH 31/51] OMAPDSS: remove DT hacks for regulators For booting Panda and 4430SDP with DT, while DSS did not support DT, we had to had small hacks in the omapdss driver to get the regulators. With @@ -9,25 +9,28 @@ DT now supported in DSS, we can remove those hacks. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> --- - drivers/video/omap2/dss/dsi.c | 9 +-------- - drivers/video/omap2/dss/hdmi4.c | 9 +-------- - 2 files changed, 2 insertions(+), 16 deletions(-) + drivers/video/omap2/dss/dsi.c | 11 ++--------- + drivers/video/omap2/dss/hdmi4.c | 11 ++--------- + 2 files changed, 4 insertions(+), 18 deletions(-) diff --git a/drivers/video/omap2/dss/dsi.c b/drivers/video/omap2/dss/dsi.c -index f4a6845..8c9ea5d 100644 +index efb24b3..8c9ea5d 100644 --- a/drivers/video/omap2/dss/dsi.c +++ b/drivers/video/omap2/dss/dsi.c -@@ -1162,16 +1162,9 @@ static int dsi_regulator_init(struct platform_device *dsidev) +@@ -1160,18 +1160,11 @@ static int dsi_regulator_init(struct platform_device *dsidev) + if (dsi->vdds_dsi_reg != NULL) + return 0; - vdds_dsi = devm_regulator_get(&dsi->pdev->dev, "vdd"); - -- if (IS_ERR(vdds_dsi)) +- if (dsi->pdev->dev.of_node) +- vdds_dsi = devm_regulator_get(&dsi->pdev->dev, "vdd"); +- else - vdds_dsi = devm_regulator_get(&dsi->pdev->dev, "vdds_dsi"); - - /* DT HACK: try VCXIO to make omapdss work for o4 sdp/panda */ - if (IS_ERR(vdds_dsi)) - vdds_dsi = devm_regulator_get(&dsi->pdev->dev, "VCXIO"); -- ++ vdds_dsi = devm_regulator_get(&dsi->pdev->dev, "vdd"); + if (IS_ERR(vdds_dsi)) { if (PTR_ERR(vdds_dsi) != -EPROBE_DEFER) - DSSERR("can't get VDDS_DSI regulator\n"); @@ -36,20 +39,23 @@ index f4a6845..8c9ea5d 100644 } diff --git a/drivers/video/omap2/dss/hdmi4.c b/drivers/video/omap2/dss/hdmi4.c -index b539e38..17b24b2 100644 +index a2a4d95..17b24b2 100644 --- a/drivers/video/omap2/dss/hdmi4.c +++ b/drivers/video/omap2/dss/hdmi4.c -@@ -90,16 +90,9 @@ static int hdmi_init_regulator(void) +@@ -88,18 +88,11 @@ static int hdmi_init_regulator(void) + if (hdmi.vdda_hdmi_dac_reg != NULL) + return 0; - reg = devm_regulator_get(&hdmi.pdev->dev, "vdda"); - -- if (IS_ERR(reg)) +- if (hdmi.pdev->dev.of_node) +- reg = devm_regulator_get(&hdmi.pdev->dev, "vdda"); +- else - reg = devm_regulator_get(&hdmi.pdev->dev, "vdda_hdmi_dac"); - - /* DT HACK: try VDAC to make omapdss work for o4 sdp/panda */ - if (IS_ERR(reg)) - reg = devm_regulator_get(&hdmi.pdev->dev, "VDAC"); -- ++ reg = devm_regulator_get(&hdmi.pdev->dev, "vdda"); + if (IS_ERR(reg)) { if (PTR_ERR(reg) != -EPROBE_DEFER) - DSSERR("can't get VDDA_HDMI_DAC regulator\n"); @@ -58,5 +64,5 @@ index b539e38..17b24b2 100644 } -- -1.8.5.2 +1.8.5.3 diff --git a/patches/omap_dt_dss_v3/0052-ARM-OMAP2-remove-pdata-quirks-for-displays.patch b/patches/omap_dt_dss/0032-ARM-OMAP2-remove-pdata-quirks-for-displays.patch similarity index 96% rename from patches/omap_dt_dss_v3/0052-ARM-OMAP2-remove-pdata-quirks-for-displays.patch rename to patches/omap_dt_dss/0032-ARM-OMAP2-remove-pdata-quirks-for-displays.patch index c3f685665..1a357bbb9 100644 --- a/patches/omap_dt_dss_v3/0052-ARM-OMAP2-remove-pdata-quirks-for-displays.patch +++ b/patches/omap_dt_dss/0032-ARM-OMAP2-remove-pdata-quirks-for-displays.patch @@ -1,7 +1,7 @@ -From d99c6aaa90b5ffbb96d9afa57c533c57912f4442 Mon Sep 17 00:00:00 2001 +From 416b907c2d3208d00a4da520bc11e4965bfe91f2 Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Wed, 18 Dec 2013 10:34:32 +0200 -Subject: [PATCH 52/61] ARM: OMAP2+: remove pdata quirks for displays +Subject: [PATCH 32/51] ARM: OMAP2+: remove pdata quirks for displays Remove pdata quirks for the displays on boards that are now supported properly with DT. @@ -245,10 +245,10 @@ index dadccc9..010bb72 100644 - platform_device_register(&omap3_igep2_dvi_connector_device); -} diff --git a/arch/arm/mach-omap2/pdata-quirks.c b/arch/arm/mach-omap2/pdata-quirks.c -index 39f020c..68e3bca 100644 +index 3d5b24d..1df2575 100644 --- a/arch/arm/mach-omap2/pdata-quirks.c +++ b/arch/arm/mach-omap2/pdata-quirks.c -@@ -80,7 +80,6 @@ static void __init hsmmc2_internal_input_clk(void) +@@ -121,7 +121,6 @@ static void __init omap3_sbc_t3730_legacy_init(void) static void __init omap3_igep0020_legacy_init(void) { @@ -256,7 +256,7 @@ index 39f020c..68e3bca 100644 } static void __init omap3_evm_legacy_init(void) -@@ -97,14 +96,12 @@ static void __init omap3_zoom_legacy_init(void) +@@ -174,14 +173,12 @@ static void __init am3517_evm_legacy_init(void) #ifdef CONFIG_ARCH_OMAP4 static void __init omap4_sdp_legacy_init(void) { @@ -272,5 +272,5 @@ index 39f020c..68e3bca 100644 legacy_init_wl12xx(WL12XX_REFCLOCK_38, 0, 53); } -- -1.8.5.2 +1.8.5.3 diff --git a/patches/omap_dt_dss_v3/0053-Doc-DT-Add-OMAP-DSS-DT-Bindings.patch b/patches/omap_dt_dss/0033-Doc-DT-Add-OMAP-DSS-DT-Bindings.patch similarity index 90% rename from patches/omap_dt_dss_v3/0053-Doc-DT-Add-OMAP-DSS-DT-Bindings.patch rename to patches/omap_dt_dss/0033-Doc-DT-Add-OMAP-DSS-DT-Bindings.patch index e2f0a7d05..255b6d81f 100644 --- a/patches/omap_dt_dss_v3/0053-Doc-DT-Add-OMAP-DSS-DT-Bindings.patch +++ b/patches/omap_dt_dss/0033-Doc-DT-Add-OMAP-DSS-DT-Bindings.patch @@ -1,19 +1,19 @@ -From 890740d4f39f477dbea835576a242e9622897b66 Mon Sep 17 00:00:00 2001 +From dbbcee7e60acdc77ce3745e0ae0028853ad03286 Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Tue, 21 Jan 2014 11:12:12 +0200 -Subject: [PATCH 53/61] Doc/DT: Add OMAP DSS DT Bindings +Subject: [PATCH 33/51] Doc/DT: Add OMAP DSS DT Bindings Add device tree bindings for OMAP Display Subsystem for the following SoCs: OMAP2, OMAP3, OMAP4. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> --- - .../devicetree/bindings/video/ti,omap-dss.txt | 197 +++++++++++++++++++++ + .../devicetree/bindings/video/ti,omap-dss.txt | 203 +++++++++++++++++++++ .../devicetree/bindings/video/ti,omap2-dss.txt | 54 ++++++ - .../devicetree/bindings/video/ti,omap3-dss.txt | 73 ++++++++ - .../devicetree/bindings/video/ti,omap4-dss.txt | 99 +++++++++++ + .../devicetree/bindings/video/ti,omap3-dss.txt | 83 +++++++++ + .../devicetree/bindings/video/ti,omap4-dss.txt | 111 +++++++++++ .../devicetree/bindings/video/video-ports.txt | 22 +++ - 5 files changed, 445 insertions(+) + 5 files changed, 473 insertions(+) create mode 100644 Documentation/devicetree/bindings/video/ti,omap-dss.txt create mode 100644 Documentation/devicetree/bindings/video/ti,omap2-dss.txt create mode 100644 Documentation/devicetree/bindings/video/ti,omap3-dss.txt @@ -22,10 +22,10 @@ Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> diff --git a/Documentation/devicetree/bindings/video/ti,omap-dss.txt b/Documentation/devicetree/bindings/video/ti,omap-dss.txt new file mode 100644 -index 0000000..3b3a7c0 +index 0000000..928d3dc --- /dev/null +++ b/Documentation/devicetree/bindings/video/ti,omap-dss.txt -@@ -0,0 +1,197 @@ +@@ -0,0 +1,203 @@ +Texas Instruments OMAP Display Subsystem +======================================== + @@ -78,6 +78,8 @@ index 0000000..3b3a7c0 + reg = <0x58000000 0x80>; + status = "disabled"; + ti,hwmods = "dss_core"; ++ clocks = <&dss_dss_clk>; ++ clock-names = "fck"; + #address-cells = <1>; + #size-cells = <1>; + ranges; @@ -87,6 +89,8 @@ index 0000000..3b3a7c0 + reg = <0x58001000 0x1000>; + interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>; + ti,hwmods = "dss_dispc"; ++ clocks = <&dss_dss_clk>; ++ clock-names = "fck"; + }; + + hdmi: encoder@58006000 { @@ -99,6 +103,8 @@ index 0000000..3b3a7c0 + interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>; + status = "disabled"; + ti,hwmods = "dss_hdmi"; ++ clocks = <&dss_48mhz_clk>, <&dss_sys_clk>; ++ clock-names = "fck", "sys_clk"; + }; +}; + @@ -285,10 +291,10 @@ index 0000000..fa8bb2e +- ti,channels: 1 for composite, 2 for s-video diff --git a/Documentation/devicetree/bindings/video/ti,omap3-dss.txt b/Documentation/devicetree/bindings/video/ti,omap3-dss.txt new file mode 100644 -index 0000000..2b62c78 +index 0000000..0023fa4 --- /dev/null +++ b/Documentation/devicetree/bindings/video/ti,omap3-dss.txt -@@ -0,0 +1,73 @@ +@@ -0,0 +1,83 @@ +Texas Instruments OMAP3 Display Subsystem +========================================= + @@ -302,6 +308,8 @@ index 0000000..2b62c78 +- compatible: "ti,omap3-dss" +- reg: address and length of the register space +- ti,hwmods: "dss_core" ++- clocks: handle to fclk ++- clock-names: "fck" + +Optional nodes: +- Video ports: @@ -323,6 +331,8 @@ index 0000000..2b62c78 +- reg: address and length of the register space +- ti,hwmods: "dss_dispc" +- interrupts: the DISPC interrupt ++- clocks: handle to fclk ++- clock-names: "fck" + + +RFBI @@ -332,6 +342,8 @@ index 0000000..2b62c78 +- compatible: "ti,omap3-rfbi" +- reg: address and length of the register space +- ti,hwmods: "dss_rfbi" ++- clocks: handles to fclk and iclk ++- clock-names: "fck", "ick" + + +VENC @@ -342,6 +354,8 @@ index 0000000..2b62c78 +- reg: address and length of the register space +- ti,hwmods: "dss_venc" +- vdda-supply: power supply for DAC ++- clocks: handle to fclk ++- clock-names: "fck" + +VENC Endpoint required properties: +- ti,invert-polarity: invert the polarity of the video signal @@ -358,16 +372,18 @@ index 0000000..2b62c78 +- interrupts: the DSI interrupt line +- ti,hwmods: "dss_dsi1" +- vdd-supply: power supply for DSI ++- clocks: handles to fclk and pll clock ++- clock-names: "fck", "sys_clk" + +DSI Endpoint required properties: +- lanes: list of pin numbers for the DSI lanes: CLK+, CLK-, DATA0+, DATA0-, + DATA1+, DATA1-, ... diff --git a/Documentation/devicetree/bindings/video/ti,omap4-dss.txt b/Documentation/devicetree/bindings/video/ti,omap4-dss.txt new file mode 100644 -index 0000000..37aa9e6 +index 0000000..f85d6fc --- /dev/null +++ b/Documentation/devicetree/bindings/video/ti,omap4-dss.txt -@@ -0,0 +1,99 @@ +@@ -0,0 +1,111 @@ +Texas Instruments OMAP4 Display Subsystem +========================================= + @@ -381,6 +397,8 @@ index 0000000..37aa9e6 +- compatible: "ti,omap4-dss" +- reg: address and length of the register space +- ti,hwmods: "dss_core" ++- clocks: handle to fclk ++- clock-names: "fck" + +Required nodes: +- DISPC @@ -401,6 +419,8 @@ index 0000000..37aa9e6 +- reg: address and length of the register space +- ti,hwmods: "dss_dispc" +- interrupts: the DISPC interrupt ++- clocks: handle to fclk ++- clock-names: "fck" + + +RFBI @@ -410,6 +430,8 @@ index 0000000..37aa9e6 +- compatible: "ti,omap4-rfbi" +- reg: address and length of the register space +- ti,hwmods: "dss_rfbi" ++- clocks: handles to fclk and iclk ++- clock-names: "fck", "ick" + +Optional nodes: +- Video port for RFBI output @@ -424,6 +446,8 @@ index 0000000..37aa9e6 +- reg: address and length of the register space +- ti,hwmods: "dss_venc" +- vdda-supply: power supply for DAC ++- clocks: handle to fclk ++- clock-names: "fck" + +Optional nodes: +- Video port for VENC output @@ -443,6 +467,8 @@ index 0000000..37aa9e6 +- interrupts: the DSI interrupt line +- ti,hwmods: "dss_dsi1" or "dss_dsi2" +- vdd-supply: power supply for DSI ++- clocks: handles to fclk and pll clock ++- clock-names: "fck", "sys_clk" + +Optional nodes: +- Video port for DSI output @@ -464,6 +490,8 @@ index 0000000..37aa9e6 +- interrupts: the HDMI interrupt line +- ti,hwmods: "dss_hdmi" +- vdda-supply: vdda power supply ++- clocks: handles to fclk and pll clock ++- clock-names: "fck", "sys_clk" + +Optional nodes: +- Video port for HDMI output @@ -496,5 +524,5 @@ index 0000000..dad4c43 +The rest of the bindings are the same as in v4l2 video port bindings and not +described here. -- -1.8.5.2 +1.8.5.3 diff --git a/patches/omap_dt_dss_v3/0054-Doc-DT-Add-DT-binding-documentation-for-Analog-TV-Co.patch b/patches/omap_dt_dss/0034-Doc-DT-Add-DT-binding-documentation-for-Analog-TV-Co.patch similarity index 89% rename from patches/omap_dt_dss_v3/0054-Doc-DT-Add-DT-binding-documentation-for-Analog-TV-Co.patch rename to patches/omap_dt_dss/0034-Doc-DT-Add-DT-binding-documentation-for-Analog-TV-Co.patch index 528428b2d..9ff82e168 100644 --- a/patches/omap_dt_dss_v3/0054-Doc-DT-Add-DT-binding-documentation-for-Analog-TV-Co.patch +++ b/patches/omap_dt_dss/0034-Doc-DT-Add-DT-binding-documentation-for-Analog-TV-Co.patch @@ -1,7 +1,7 @@ -From 48a15baba8ffdacc023feca67f43b1d149d9385e Mon Sep 17 00:00:00 2001 +From 2df64ce3c19d7f12aa2f12d2d762000e7883e23b Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Tue, 21 Jan 2014 11:17:08 +0200 -Subject: [PATCH 54/61] Doc/DT: Add DT binding documentation for Analog TV +Subject: [PATCH 34/51] Doc/DT: Add DT binding documentation for Analog TV Connector Add DT binding documentation for Analog TV Connector. @@ -42,5 +42,5 @@ index 0000000..d6be373 + }; +}; -- -1.8.5.2 +1.8.5.3 diff --git a/patches/omap_dt_dss_v3/0055-Doc-DT-Add-DT-binding-documentation-for-DVI-Connecto.patch b/patches/omap_dt_dss/0035-Doc-DT-Add-DT-binding-documentation-for-DVI-Connecto.patch similarity index 89% rename from patches/omap_dt_dss_v3/0055-Doc-DT-Add-DT-binding-documentation-for-DVI-Connecto.patch rename to patches/omap_dt_dss/0035-Doc-DT-Add-DT-binding-documentation-for-DVI-Connecto.patch index da59bc7b6..b6ea927af 100644 --- a/patches/omap_dt_dss_v3/0055-Doc-DT-Add-DT-binding-documentation-for-DVI-Connecto.patch +++ b/patches/omap_dt_dss/0035-Doc-DT-Add-DT-binding-documentation-for-DVI-Connecto.patch @@ -1,7 +1,7 @@ -From 65355dc8f6579351efe4e8562b3fe508aea1dc83 Mon Sep 17 00:00:00 2001 +From 808740137ef09369b368c22d180c5f6fa7eef8e7 Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Tue, 21 Jan 2014 11:17:08 +0200 -Subject: [PATCH 55/61] Doc/DT: Add DT binding documentation for DVI Connector +Subject: [PATCH 35/51] Doc/DT: Add DT binding documentation for DVI Connector Add DT binding documentation for DVI Connector. @@ -44,5 +44,5 @@ index 0000000..6a0aff8 + }; +}; -- -1.8.5.2 +1.8.5.3 diff --git a/patches/omap_dt_dss_v3/0056-Doc-DT-Add-DT-binding-documentation-for-HDMI-Connect.patch b/patches/omap_dt_dss/0036-Doc-DT-Add-DT-binding-documentation-for-HDMI-Connect.patch similarity index 88% rename from patches/omap_dt_dss_v3/0056-Doc-DT-Add-DT-binding-documentation-for-HDMI-Connect.patch rename to patches/omap_dt_dss/0036-Doc-DT-Add-DT-binding-documentation-for-HDMI-Connect.patch index f2f5f8ced..791ea516d 100644 --- a/patches/omap_dt_dss_v3/0056-Doc-DT-Add-DT-binding-documentation-for-HDMI-Connect.patch +++ b/patches/omap_dt_dss/0036-Doc-DT-Add-DT-binding-documentation-for-HDMI-Connect.patch @@ -1,7 +1,7 @@ -From 293bb1594733d304c06c88073865dbfb0ab1b356 Mon Sep 17 00:00:00 2001 +From 47f4ce64c2417d4cf21e6d41d18eaadf81ef4645 Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Tue, 21 Jan 2014 11:17:08 +0200 -Subject: [PATCH 56/61] Doc/DT: Add DT binding documentation for HDMI Connector +Subject: [PATCH 36/51] Doc/DT: Add DT binding documentation for HDMI Connector Add DT binding documentation for HDMI Connector. @@ -41,5 +41,5 @@ index 0000000..5d25f6a + }; +}; -- -1.8.5.2 +1.8.5.3 diff --git a/patches/omap_dt_dss_v3/0057-Doc-DT-Add-DT-binding-documentation-for-MIPI-DPI-Pan.patch b/patches/omap_dt_dss/0037-Doc-DT-Add-DT-binding-documentation-for-MIPI-DPI-Pan.patch similarity index 92% rename from patches/omap_dt_dss_v3/0057-Doc-DT-Add-DT-binding-documentation-for-MIPI-DPI-Pan.patch rename to patches/omap_dt_dss/0037-Doc-DT-Add-DT-binding-documentation-for-MIPI-DPI-Pan.patch index 0094b075e..4ebc3b5ed 100644 --- a/patches/omap_dt_dss_v3/0057-Doc-DT-Add-DT-binding-documentation-for-MIPI-DPI-Pan.patch +++ b/patches/omap_dt_dss/0037-Doc-DT-Add-DT-binding-documentation-for-MIPI-DPI-Pan.patch @@ -1,7 +1,7 @@ -From 0255f505497056d4c9401a14f63782e8db83f95c Mon Sep 17 00:00:00 2001 +From d19fb1ad28ac2129caa71c484c895a0a8b4bdde7 Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Tue, 21 Jan 2014 11:17:08 +0200 -Subject: [PATCH 57/61] Doc/DT: Add DT binding documentation for MIPI DPI Panel +Subject: [PATCH 37/51] Doc/DT: Add DT binding documentation for MIPI DPI Panel Add DT binding documentation for MIPI DPI Panel. @@ -61,5 +61,5 @@ index 0000000..72636c6 + }; +}; -- -1.8.5.2 +1.8.5.3 diff --git a/patches/omap_dt_dss_v3/0058-Doc-DT-Add-DT-binding-documentation-for-MIPI-DSI-CM-.patch b/patches/omap_dt_dss/0038-Doc-DT-Add-DT-binding-documentation-for-MIPI-DSI-CM-.patch similarity index 89% rename from patches/omap_dt_dss_v3/0058-Doc-DT-Add-DT-binding-documentation-for-MIPI-DSI-CM-.patch rename to patches/omap_dt_dss/0038-Doc-DT-Add-DT-binding-documentation-for-MIPI-DSI-CM-.patch index 1031309b6..b650369c5 100644 --- a/patches/omap_dt_dss_v3/0058-Doc-DT-Add-DT-binding-documentation-for-MIPI-DSI-CM-.patch +++ b/patches/omap_dt_dss/0038-Doc-DT-Add-DT-binding-documentation-for-MIPI-DSI-CM-.patch @@ -1,7 +1,7 @@ -From eed9eae3b9fc4a8277a93bc56473bfd8c913dd1d Mon Sep 17 00:00:00 2001 +From c77d811c27d3d4c514bf93e97ae41a77b0465c71 Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Tue, 21 Jan 2014 11:17:08 +0200 -Subject: [PATCH 58/61] Doc/DT: Add DT binding documentation for MIPI DSI CM +Subject: [PATCH 38/51] Doc/DT: Add DT binding documentation for MIPI DSI CM Panel Add DT binding documentation for MIPI DSI Command Mode Panel. @@ -45,5 +45,5 @@ index 0000000..73f4225 + }; +}; -- -1.8.5.2 +1.8.5.3 diff --git a/patches/omap_dt_dss_v3/0059-Doc-DT-Add-DT-binding-documentation-for-Sony-acx565a.patch b/patches/omap_dt_dss/0039-Doc-DT-Add-DT-binding-documentation-for-Sony-acx565a.patch similarity index 86% rename from patches/omap_dt_dss_v3/0059-Doc-DT-Add-DT-binding-documentation-for-Sony-acx565a.patch rename to patches/omap_dt_dss/0039-Doc-DT-Add-DT-binding-documentation-for-Sony-acx565a.patch index f37ee6e50..7da096019 100644 --- a/patches/omap_dt_dss_v3/0059-Doc-DT-Add-DT-binding-documentation-for-Sony-acx565a.patch +++ b/patches/omap_dt_dss/0039-Doc-DT-Add-DT-binding-documentation-for-Sony-acx565a.patch @@ -1,12 +1,13 @@ -From a14259fc08eacae528377f7e4e968efd75869e74 Mon Sep 17 00:00:00 2001 +From 667e69630116403a4abaf32aa6f97860a93551a9 Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Tue, 21 Jan 2014 11:17:09 +0200 -Subject: [PATCH 59/61] Doc/DT: Add DT binding documentation for Sony acx565akm +Subject: [PATCH 39/51] Doc/DT: Add DT binding documentation for Sony acx565akm panel Add DT binding documentation for Sony acx565akm panel Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> +Reviewed-by: Sebastian Reichel <sre@debian.org> --- .../devicetree/bindings/video/sony,acx565akm.txt | 28 ++++++++++++++++++++++ 1 file changed, 28 insertions(+) @@ -47,5 +48,5 @@ index 0000000..cd9cfdf + }; +}; -- -1.8.5.2 +1.8.5.3 diff --git a/patches/omap_dt_dss_v3/0060-Doc-DT-Add-DT-binding-documentation-for-TFP410-encod.patch b/patches/omap_dt_dss/0040-Doc-DT-Add-DT-binding-documentation-for-TFP410-encod.patch similarity index 90% rename from patches/omap_dt_dss_v3/0060-Doc-DT-Add-DT-binding-documentation-for-TFP410-encod.patch rename to patches/omap_dt_dss/0040-Doc-DT-Add-DT-binding-documentation-for-TFP410-encod.patch index 1403bd989..5f77dac7c 100644 --- a/patches/omap_dt_dss_v3/0060-Doc-DT-Add-DT-binding-documentation-for-TFP410-encod.patch +++ b/patches/omap_dt_dss/0040-Doc-DT-Add-DT-binding-documentation-for-TFP410-encod.patch @@ -1,7 +1,7 @@ -From 6dea754b0333fbaba4c2f195a4959dda784f6a2a Mon Sep 17 00:00:00 2001 +From 64fa965c3d7358f2eea4b28c4224efb6d7a6e00c Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Tue, 21 Jan 2014 11:17:09 +0200 -Subject: [PATCH 60/61] Doc/DT: Add DT binding documentation for TFP410 encoder +Subject: [PATCH 40/51] Doc/DT: Add DT binding documentation for TFP410 encoder Add DT binding documentation for TFP410 encoder @@ -59,5 +59,5 @@ index 0000000..6a5a046 + }; +}; -- -1.8.5.2 +1.8.5.3 diff --git a/patches/omap_dt_dss_v3/0061-Doc-DT-Add-DT-binding-documentation-for-tpd12s015-en.patch b/patches/omap_dt_dss/0041-Doc-DT-Add-DT-binding-documentation-for-tpd12s015-en.patch similarity index 91% rename from patches/omap_dt_dss_v3/0061-Doc-DT-Add-DT-binding-documentation-for-tpd12s015-en.patch rename to patches/omap_dt_dss/0041-Doc-DT-Add-DT-binding-documentation-for-tpd12s015-en.patch index eb24e55ff..e4091302c 100644 --- a/patches/omap_dt_dss_v3/0061-Doc-DT-Add-DT-binding-documentation-for-tpd12s015-en.patch +++ b/patches/omap_dt_dss/0041-Doc-DT-Add-DT-binding-documentation-for-tpd12s015-en.patch @@ -1,7 +1,7 @@ -From f53988e1b3a8b10999ca08b1a67795600d01a4f2 Mon Sep 17 00:00:00 2001 +From 44b898eb08a525d9e805dbfe436839f6be3795b5 Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Tue, 21 Jan 2014 11:17:09 +0200 -Subject: [PATCH 61/61] Doc/DT: Add DT binding documentation for tpd12s015 +Subject: [PATCH 41/51] Doc/DT: Add DT binding documentation for tpd12s015 encoder Add DT binding documentation for tpd12s015 encoder @@ -63,5 +63,5 @@ index 0000000..26e6d32 + }; +}; -- -1.8.5.2 +1.8.5.3 diff --git a/patches/omap_dt_dss/0042-OMAPDSS-DISPC-decimation-rounding-fix.patch b/patches/omap_dt_dss/0042-OMAPDSS-DISPC-decimation-rounding-fix.patch new file mode 100644 index 000000000..19e435772 --- /dev/null +++ b/patches/omap_dt_dss/0042-OMAPDSS-DISPC-decimation-rounding-fix.patch @@ -0,0 +1,88 @@ +From 5e3043b3dc9a33e54e7e3832581716728683a7fe Mon Sep 17 00:00:00 2001 +From: Tomi Valkeinen <tomi.valkeinen@ti.com> +Date: Mon, 27 Jan 2014 11:29:53 +0200 +Subject: [PATCH 42/51] OMAPDSS: DISPC: decimation rounding fix + +The driver uses DIV_ROUND_UP when calculating decimated width & height. +For example, when decimating with 3, the width is calculated as: + + width = DIV_ROUND_UP(width, decim_x); + +This yields bad results for some values. For example, 800/3=266.666..., +which is rounded to 267. When the input width is set to 267, and pixel +increment is set to 3, this causes the dispc to read a line of 801 +pixels, i.e. it reads a wrong pixel at the end of the line. + +Even more pressing, the above rounding causes a BUG() in pixinc(), as +the value of 801 is used to calculate row increment, leading to a bad +value being passed to pixinc(). + +This patch fixes the decimation by removing the DIV_ROUND_UP()s when +calculating width and height for decimation. + +Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> + +Conflicts: + drivers/video/omap2/dss/dispc.c +--- + drivers/video/omap2/dss/dispc.c | 16 ++++++++-------- + 1 file changed, 8 insertions(+), 8 deletions(-) + +diff --git a/drivers/video/omap2/dss/dispc.c b/drivers/video/omap2/dss/dispc.c +index 37bd163..7c3e4ec 100644 +--- a/drivers/video/omap2/dss/dispc.c ++++ b/drivers/video/omap2/dss/dispc.c +@@ -2160,8 +2160,8 @@ static int dispc_ovl_calc_scaling_24xx(unsigned long pclk, unsigned long lclk, + *five_taps = false; + + do { +- in_height = DIV_ROUND_UP(height, *decim_y); +- in_width = DIV_ROUND_UP(width, *decim_x); ++ in_height = height / *decim_y; ++ in_width = width / *decim_x; + *core_clk = dispc.feat->calc_core_clk(pclk, in_width, + in_height, out_width, out_height, mem_to_mem); + error = (in_width > maxsinglelinewidth || !*core_clk || +@@ -2199,8 +2199,8 @@ static int dispc_ovl_calc_scaling_34xx(unsigned long pclk, unsigned long lclk, + dss_feat_get_param_max(FEAT_PARAM_LINEWIDTH); + + do { +- in_height = DIV_ROUND_UP(height, *decim_y); +- in_width = DIV_ROUND_UP(width, *decim_x); ++ in_height = height / *decim_y; ++ in_width = width / *decim_x; + *five_taps = in_height > out_height; + + if (in_width > maxsinglelinewidth) +@@ -2268,7 +2268,7 @@ static int dispc_ovl_calc_scaling_44xx(unsigned long pclk, unsigned long lclk, + { + u16 in_width, in_width_max; + int decim_x_min = *decim_x; +- u16 in_height = DIV_ROUND_UP(height, *decim_y); ++ u16 in_height = height / *decim_y; + const int maxsinglelinewidth = + dss_feat_get_param_max(FEAT_PARAM_LINEWIDTH); + const int maxdownscale = dss_feat_get_param_max(FEAT_PARAM_DOWNSCALE); +@@ -2287,7 +2287,7 @@ static int dispc_ovl_calc_scaling_44xx(unsigned long pclk, unsigned long lclk, + return -EINVAL; + + do { +- in_width = DIV_ROUND_UP(width, *decim_x); ++ in_width = width / *decim_x; + } while (*decim_x <= *x_predecim && + in_width > maxsinglelinewidth && ++*decim_x); + +@@ -2466,8 +2466,8 @@ static int dispc_ovl_setup_common(enum omap_plane plane, + if (r) + return r; + +- in_width = DIV_ROUND_UP(in_width, x_predecim); +- in_height = DIV_ROUND_UP(in_height, y_predecim); ++ in_width = in_width / x_predecim; ++ in_height = in_height / y_predecim; + + if (color_mode == OMAP_DSS_COLOR_YUV2 || + color_mode == OMAP_DSS_COLOR_UYVY || +-- +1.8.5.3 + diff --git a/patches/omap_dt_dss/0043-OMAPDSS-fix-fck-field-types.patch b/patches/omap_dt_dss/0043-OMAPDSS-fix-fck-field-types.patch new file mode 100644 index 000000000..f6181164d --- /dev/null +++ b/patches/omap_dt_dss/0043-OMAPDSS-fix-fck-field-types.patch @@ -0,0 +1,46 @@ +From 1fa4ce6e89725eaa3cf5b2a02a028ea9493d5b48 Mon Sep 17 00:00:00 2001 +From: Tomi Valkeinen <tomi.valkeinen@ti.com> +Date: Tue, 28 Jan 2014 08:50:47 +0200 +Subject: [PATCH 43/51] OMAPDSS: fix fck field types + +'fck' field in dpi and sdi clock calculation struct is 'unsigned long +long', even though it should be 'unsigned long'. This hasn't caused any +issues so far. + +Fix the field's type. + +Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> +--- + drivers/video/omap2/dss/dpi.c | 2 +- + drivers/video/omap2/dss/sdi.c | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/drivers/video/omap2/dss/dpi.c b/drivers/video/omap2/dss/dpi.c +index 116aa07..f02520f 100644 +--- a/drivers/video/omap2/dss/dpi.c ++++ b/drivers/video/omap2/dss/dpi.c +@@ -120,7 +120,7 @@ struct dpi_clk_calc_ctx { + /* outputs */ + + struct dsi_clock_info dsi_cinfo; +- unsigned long long fck; ++ unsigned long fck; + struct dispc_clock_info dispc_cinfo; + }; + +diff --git a/drivers/video/omap2/dss/sdi.c b/drivers/video/omap2/dss/sdi.c +index 732e53c..d16277c 100644 +--- a/drivers/video/omap2/dss/sdi.c ++++ b/drivers/video/omap2/dss/sdi.c +@@ -49,7 +49,7 @@ static struct { + struct sdi_clk_calc_ctx { + unsigned long pck_min, pck_max; + +- unsigned long long fck; ++ unsigned long fck; + struct dispc_clock_info dispc_cinfo; + }; + +-- +1.8.5.3 + diff --git a/patches/omap_dt_dss/0044-clk-divider-fix-rate-calculation-for-fractional-rate.patch b/patches/omap_dt_dss/0044-clk-divider-fix-rate-calculation-for-fractional-rate.patch new file mode 100644 index 000000000..8a9447ddb --- /dev/null +++ b/patches/omap_dt_dss/0044-clk-divider-fix-rate-calculation-for-fractional-rate.patch @@ -0,0 +1,102 @@ +From 5461a1ce66a92324a40f9e851ee524ee9c6a1f81 Mon Sep 17 00:00:00 2001 +From: Tomi Valkeinen <tomi.valkeinen@ti.com> +Date: Wed, 6 Nov 2013 12:42:54 +0200 +Subject: [PATCH 44/51] clk: divider: fix rate calculation for fractional rates + +clk-divider.c does not calculate the rates consistently at the moment. + +As an example, on OMAP3 we have a clock divider with a source clock of +864000000 Hz. With dividers 6, 7 and 8 the theoretical rates are: + +6: 144000000 +7: 123428571.428571... +8: 108000000 + +Calling clk_round_rate() with the rate in the first column will give the +rate in the second column: + +144000000 -> 144000000 +143999999 -> 123428571 +123428572 -> 123428571 +123428571 -> 108000000 + +Note how clk_round_rate() returns 123428571 for rates from 123428572 to +143999999, which is mathematically correct, but when clk_round_rate() is +called with 123428571, the returned value is surprisingly 108000000. + +This means that the following code works a bit oddly: + +rate = clk_round_rate(clk, 123428572); +clk_set_rate(clk, rate); + +As clk_set_rate() also does clock rate rounding, the result is that the +clock is set to the rate of 108000000, not 123428571 returned by the +clk_round_rate. + +This patch changes the clk-divider.c to use DIV_ROUND_UP when +calculating the rate. This gives the following behavior which fixes the +inconsistency: + +144000000 -> 144000000 +143999999 -> 123428572 +123428572 -> 123428572 +123428571 -> 108000000 + +Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> +Cc: Mike Turquette <mturquette@linaro.org> +--- + drivers/clk/clk-divider.c | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +diff --git a/drivers/clk/clk-divider.c b/drivers/clk/clk-divider.c +index 5543b7d..ec22112 100644 +--- a/drivers/clk/clk-divider.c ++++ b/drivers/clk/clk-divider.c +@@ -24,7 +24,7 @@ + * Traits of this clock: + * prepare - clk_prepare only ensures that parents are prepared + * enable - clk_enable only ensures that parents are enabled +- * rate - rate is adjustable. clk->rate = parent->rate / divisor ++ * rate - rate is adjustable. clk->rate = DIV_ROUND_UP(parent->rate / divisor) + * parent - fixed parent. No clk_set_parent support + */ + +@@ -115,7 +115,7 @@ static unsigned long clk_divider_recalc_rate(struct clk_hw *hw, + return parent_rate; + } + +- return parent_rate / div; ++ return DIV_ROUND_UP(parent_rate, div); + } + + /* +@@ -185,7 +185,7 @@ static int clk_divider_bestdiv(struct clk_hw *hw, unsigned long rate, + } + parent_rate = __clk_round_rate(__clk_get_parent(hw->clk), + MULT_ROUND_UP(rate, i)); +- now = parent_rate / i; ++ now = DIV_ROUND_UP(parent_rate, i); + if (now <= rate && now > best) { + bestdiv = i; + best = now; +@@ -207,7 +207,7 @@ static long clk_divider_round_rate(struct clk_hw *hw, unsigned long rate, + int div; + div = clk_divider_bestdiv(hw, rate, prate); + +- return *prate / div; ++ return DIV_ROUND_UP(*prate, div); + } + + static int clk_divider_set_rate(struct clk_hw *hw, unsigned long rate, +@@ -218,7 +218,7 @@ static int clk_divider_set_rate(struct clk_hw *hw, unsigned long rate, + unsigned long flags = 0; + u32 val; + +- div = parent_rate / rate; ++ div = DIV_ROUND_UP(parent_rate, rate); + value = _get_val(divider, div); + + if (value > div_mask(divider)) +-- +1.8.5.3 + diff --git a/patches/omap_dt_dss/0045-clk-ti-divider-fix-rate-calculation-for-fractional-r.patch b/patches/omap_dt_dss/0045-clk-ti-divider-fix-rate-calculation-for-fractional-r.patch new file mode 100644 index 000000000..76392b88f --- /dev/null +++ b/patches/omap_dt_dss/0045-clk-ti-divider-fix-rate-calculation-for-fractional-r.patch @@ -0,0 +1,93 @@ +From c9623e87f587fbf3680ce879968a41d372780739 Mon Sep 17 00:00:00 2001 +From: Tomi Valkeinen <tomi.valkeinen@ti.com> +Date: Thu, 13 Feb 2014 10:26:04 +0200 +Subject: [PATCH 45/51] clk: ti/divider: fix rate calculation for fractional + rates + +ti/clk-divider.c does not calculate the rates consistently at the moment. + +As an example, on OMAP3 we have a clock divider with a source clock of +864000000 Hz. With dividers 6, 7 and 8 the theoretical rates are: + +6: 144000000 +7: 123428571.428571... +8: 108000000 + +Calling clk_round_rate() with the rate in the first column will give the +rate in the second column: + +144000000 -> 144000000 +143999999 -> 123428571 +123428572 -> 123428571 +123428571 -> 108000000 + +Note how clk_round_rate() returns 123428571 for rates from 123428572 to +143999999, which is mathematically correct, but when clk_round_rate() is +called with 123428571, the returned value is surprisingly 108000000. + +This means that the following code works a bit oddly: + +rate = clk_round_rate(clk, 123428572); +clk_set_rate(clk, rate); + +As clk_set_rate() also does clock rate rounding, the result is that the +clock is set to the rate of 108000000, not 123428571 returned by the +clk_round_rate. + +This patch changes the ti/clk-divider.c to use DIV_ROUND_UP when +calculating the rate. This gives the following behavior which fixes the +inconsistency: + +144000000 -> 144000000 +143999999 -> 123428572 +123428572 -> 123428572 +123428571 -> 108000000 + +Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> +--- + drivers/clk/ti/divider.c | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/drivers/clk/ti/divider.c b/drivers/clk/ti/divider.c +index a15e445..e6aa10d 100644 +--- a/drivers/clk/ti/divider.c ++++ b/drivers/clk/ti/divider.c +@@ -112,7 +112,7 @@ static unsigned long ti_clk_divider_recalc_rate(struct clk_hw *hw, + return parent_rate; + } + +- return parent_rate / div; ++ return DIV_ROUND_UP(parent_rate, div); + } + + /* +@@ -182,7 +182,7 @@ static int ti_clk_divider_bestdiv(struct clk_hw *hw, unsigned long rate, + } + parent_rate = __clk_round_rate(__clk_get_parent(hw->clk), + MULT_ROUND_UP(rate, i)); +- now = parent_rate / i; ++ now = DIV_ROUND_UP(parent_rate, i); + if (now <= rate && now > best) { + bestdiv = i; + best = now; +@@ -205,7 +205,7 @@ static long ti_clk_divider_round_rate(struct clk_hw *hw, unsigned long rate, + int div; + div = ti_clk_divider_bestdiv(hw, rate, prate); + +- return *prate / div; ++ return DIV_ROUND_UP(*prate, div); + } + + static int ti_clk_divider_set_rate(struct clk_hw *hw, unsigned long rate, +@@ -216,7 +216,7 @@ static int ti_clk_divider_set_rate(struct clk_hw *hw, unsigned long rate, + unsigned long flags = 0; + u32 val; + +- div = parent_rate / rate; ++ div = DIV_ROUND_UP(parent_rate, rate); + value = _get_val(divider, div); + + if (value > div_mask(divider)) +-- +1.8.5.3 + diff --git a/patches/omap_dt_dss_v3/0062-ARM-OMAP2-clock-fix-clkoutx2-with-CLK_SET_RATE_PAREN.patch b/patches/omap_dt_dss/0046-ARM-OMAP2-clock-fix-clkoutx2-with-CLK_SET_RATE_PAREN.patch similarity index 97% rename from patches/omap_dt_dss_v3/0062-ARM-OMAP2-clock-fix-clkoutx2-with-CLK_SET_RATE_PAREN.patch rename to patches/omap_dt_dss/0046-ARM-OMAP2-clock-fix-clkoutx2-with-CLK_SET_RATE_PAREN.patch index f0bc03ea3..4290a7040 100644 --- a/patches/omap_dt_dss_v3/0062-ARM-OMAP2-clock-fix-clkoutx2-with-CLK_SET_RATE_PAREN.patch +++ b/patches/omap_dt_dss/0046-ARM-OMAP2-clock-fix-clkoutx2-with-CLK_SET_RATE_PAREN.patch @@ -1,7 +1,7 @@ -From 891b57acd7984ad941364942342cd68c03c01b42 Mon Sep 17 00:00:00 2001 +From 9fd9e683c4e967289e6e17de40c2372d3fbccce4 Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen <tomi.valkeinen@ti.com> Date: Thu, 30 Jan 2014 13:17:20 +0200 -Subject: [PATCH 62/62] ARM: OMAP2+: clock: fix clkoutx2 with +Subject: [PATCH 46/51] ARM: OMAP2+: clock: fix clkoutx2 with CLK_SET_RATE_PARENT If CLK_SET_RATE_PARENT is set for a clkoutx2 clock, calling diff --git a/patches/omap_dt_dss/0047-ARM-dts-fix-omap3-dss-clock-handle-names.patch b/patches/omap_dt_dss/0047-ARM-dts-fix-omap3-dss-clock-handle-names.patch new file mode 100644 index 000000000..da6571304 --- /dev/null +++ b/patches/omap_dt_dss/0047-ARM-dts-fix-omap3-dss-clock-handle-names.patch @@ -0,0 +1,88 @@ +From f5ec0ed237c8758088ff3829d86afc73c9764d3c Mon Sep 17 00:00:00 2001 +From: Tomi Valkeinen <tomi.valkeinen@ti.com> +Date: Wed, 12 Feb 2014 15:45:57 +0200 +Subject: [PATCH 47/51] ARM: dts: fix omap3 dss clock handle names + +The DSS fclk and iclk handles are named differently on OMAP3430 ES1 than +on later OMAP revisions. The ES1 has handles 'dss1_alwon_fck_3430es1' +and 'dss_ick_3430es1', whereas later revisions have similar names but +ending with 'es2'. + +This means we don't have one clock handle to which we could refer to +when defining the DSS clocks. + +However, as the namespaces are separate for ES1 and ES2+ OMAPs, we can +just rename the handles to 'dss1_alwon_fck' and 'dss_ick' for both ES1 +and ES2+, removing the issue. + +Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> +--- + arch/arm/boot/dts/omap3430es1-clocks.dtsi | 6 +++--- + arch/arm/boot/dts/omap36xx-am35xx-omap3430es2plus-clocks.dtsi | 6 +++--- + 2 files changed, 6 insertions(+), 6 deletions(-) + +diff --git a/arch/arm/boot/dts/omap3430es1-clocks.dtsi b/arch/arm/boot/dts/omap3430es1-clocks.dtsi +index 02f6c7f..f920265 100644 +--- a/arch/arm/boot/dts/omap3430es1-clocks.dtsi ++++ b/arch/arm/boot/dts/omap3430es1-clocks.dtsi +@@ -152,7 +152,7 @@ + clocks = <&usb_l4_gate_ick>, <&usb_l4_div_ick>; + }; + +- dss1_alwon_fck_3430es1: dss1_alwon_fck_3430es1 { ++ dss1_alwon_fck: dss1_alwon_fck_3430es1 { + #clock-cells = <0>; + compatible = "ti,gate-clock"; + clocks = <&dpll4_m4x2_ck>; +@@ -161,7 +161,7 @@ + ti,set-rate-parent; + }; + +- dss_ick_3430es1: dss_ick_3430es1 { ++ dss_ick: dss_ick_3430es1 { + #clock-cells = <0>; + compatible = "ti,omap3-no-wait-interface-clock"; + clocks = <&l4_ick>; +@@ -184,7 +184,7 @@ + dss_clkdm: dss_clkdm { + compatible = "ti,clockdomain"; + clocks = <&dss_tv_fck>, <&dss_96m_fck>, <&dss2_alwon_fck>, +- <&dss1_alwon_fck_3430es1>, <&dss_ick_3430es1>; ++ <&dss1_alwon_fck>, <&dss_ick>; + }; + + d2d_clkdm: d2d_clkdm { +diff --git a/arch/arm/boot/dts/omap36xx-am35xx-omap3430es2plus-clocks.dtsi b/arch/arm/boot/dts/omap36xx-am35xx-omap3430es2plus-clocks.dtsi +index af9ae534..080fb3f 100644 +--- a/arch/arm/boot/dts/omap36xx-am35xx-omap3430es2plus-clocks.dtsi ++++ b/arch/arm/boot/dts/omap36xx-am35xx-omap3430es2plus-clocks.dtsi +@@ -160,7 +160,7 @@ + ti,bit-shift = <30>; + }; + +- dss1_alwon_fck_3430es2: dss1_alwon_fck_3430es2 { ++ dss1_alwon_fck: dss1_alwon_fck_3430es2 { + #clock-cells = <0>; + compatible = "ti,dss-gate-clock"; + clocks = <&dpll4_m4x2_ck>; +@@ -169,7 +169,7 @@ + ti,set-rate-parent; + }; + +- dss_ick_3430es2: dss_ick_3430es2 { ++ dss_ick: dss_ick_3430es2 { + #clock-cells = <0>; + compatible = "ti,omap3-dss-interface-clock"; + clocks = <&l4_ick>; +@@ -216,7 +216,7 @@ + dss_clkdm: dss_clkdm { + compatible = "ti,clockdomain"; + clocks = <&dss_tv_fck>, <&dss_96m_fck>, <&dss2_alwon_fck>, +- <&dss1_alwon_fck_3430es2>, <&dss_ick_3430es2>; ++ <&dss1_alwon_fck>, <&dss_ick>; + }; + + core_l4_clkdm: core_l4_clkdm { +-- +1.8.5.3 + diff --git a/patches/omap_dt_dss/0048-ARM-dts-fix-DPLL4-x2-clkouts-on-3630.patch b/patches/omap_dt_dss/0048-ARM-dts-fix-DPLL4-x2-clkouts-on-3630.patch new file mode 100644 index 000000000..d6259795e --- /dev/null +++ b/patches/omap_dt_dss/0048-ARM-dts-fix-DPLL4-x2-clkouts-on-3630.patch @@ -0,0 +1,65 @@ +From 374901cd3ba4cd7b961a286ff535c6fecc0b2b24 Mon Sep 17 00:00:00 2001 +From: Tomi Valkeinen <tomi.valkeinen@ti.com> +Date: Thu, 13 Feb 2014 10:58:32 +0200 +Subject: [PATCH 48/51] ARM: dts: fix DPLL4 x2 clkouts on 3630 + +OMAP3630 DPLL4 is different than on OMAP3430, in that it doesn't have +the x2 multiplier for its outputs. This is not currently reflected in +the clock DT data. + +Fix the issue by setting the clock multiplier to 1 (instead of 2) for the +DPLL4 output clocks. + +Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> +--- + arch/arm/boot/dts/omap36xx-clocks.dtsi | 20 ++++++++++++++++++++ + arch/arm/boot/dts/omap36xx.dtsi | 2 +- + 2 files changed, 21 insertions(+), 1 deletion(-) + +diff --git a/arch/arm/boot/dts/omap36xx-clocks.dtsi b/arch/arm/boot/dts/omap36xx-clocks.dtsi +index 2fcf253..0b2df76 100644 +--- a/arch/arm/boot/dts/omap36xx-clocks.dtsi ++++ b/arch/arm/boot/dts/omap36xx-clocks.dtsi +@@ -70,6 +70,26 @@ + }; + }; + ++&dpll4_m2x2_mul_ck { ++ clock-mult = <1>; ++}; ++ ++&dpll4_m3x2_mul_ck { ++ clock-mult = <1>; ++}; ++ ++&dpll4_m4x2_mul_ck { ++ clock-mult = <1>; ++}; ++ ++&dpll4_m5x2_mul_ck { ++ clock-mult = <1>; ++}; ++ ++&dpll4_m6x2_mul_ck { ++ clock-mult = <1>; ++}; ++ + &cm_clockdomains { + dpll4_clkdm: dpll4_clkdm { + compatible = "ti,clockdomain"; +diff --git a/arch/arm/boot/dts/omap36xx.dtsi b/arch/arm/boot/dts/omap36xx.dtsi +index 0663f5b..94e1cdc 100644 +--- a/arch/arm/boot/dts/omap36xx.dtsi ++++ b/arch/arm/boot/dts/omap36xx.dtsi +@@ -58,7 +58,7 @@ + clock-names = "fck", "tv_dac_clk"; + }; + +-/include/ "omap36xx-clocks.dtsi" + /include/ "omap34xx-omap36xx-clocks.dtsi" + /include/ "omap36xx-omap3430es2plus-clocks.dtsi" + /include/ "omap36xx-am35xx-omap3430es2plus-clocks.dtsi" ++/include/ "omap36xx-clocks.dtsi" +-- +1.8.5.3 + diff --git a/patches/omap_dt_dss/0049-ARM-dts-use-ti-fixed-factor-clock-for-dpll4_m4x2_mul.patch b/patches/omap_dt_dss/0049-ARM-dts-use-ti-fixed-factor-clock-for-dpll4_m4x2_mul.patch new file mode 100644 index 000000000..b9e706885 --- /dev/null +++ b/patches/omap_dt_dss/0049-ARM-dts-use-ti-fixed-factor-clock-for-dpll4_m4x2_mul.patch @@ -0,0 +1,49 @@ +From 12924e495b043859eb696658993eec7b60c40b47 Mon Sep 17 00:00:00 2001 +From: Tomi Valkeinen <tomi.valkeinen@ti.com> +Date: Thu, 13 Feb 2014 11:14:58 +0200 +Subject: [PATCH 49/51] ARM: dts: use ti,fixed-factor-clock for + dpll4_m4x2_mul_ck + +We need to use set-rate-parent for dpll4_m4 clock path, so use the +ti,fixed-factor-clock version which supports set-rate-parent property. + +Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> +--- + arch/arm/boot/dts/omap36xx-clocks.dtsi | 2 +- + arch/arm/boot/dts/omap3xxx-clocks.dtsi | 6 +++--- + 2 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/arch/arm/boot/dts/omap36xx-clocks.dtsi b/arch/arm/boot/dts/omap36xx-clocks.dtsi +index 0b2df76..6b5280d 100644 +--- a/arch/arm/boot/dts/omap36xx-clocks.dtsi ++++ b/arch/arm/boot/dts/omap36xx-clocks.dtsi +@@ -79,7 +79,7 @@ + }; + + &dpll4_m4x2_mul_ck { +- clock-mult = <1>; ++ ti,clock-mult = <1>; + }; + + &dpll4_m5x2_mul_ck { +diff --git a/arch/arm/boot/dts/omap3xxx-clocks.dtsi b/arch/arm/boot/dts/omap3xxx-clocks.dtsi +index cb04d4b..df3c699 100644 +--- a/arch/arm/boot/dts/omap3xxx-clocks.dtsi ++++ b/arch/arm/boot/dts/omap3xxx-clocks.dtsi +@@ -425,10 +425,10 @@ + + dpll4_m4x2_mul_ck: dpll4_m4x2_mul_ck { + #clock-cells = <0>; +- compatible = "fixed-factor-clock"; ++ compatible = "ti,fixed-factor-clock"; + clocks = <&dpll4_m4_ck>; +- clock-mult = <2>; +- clock-div = <1>; ++ ti,clock-mult = <2>; ++ ti,clock-div = <1>; + }; + + dpll4_m4x2_ck: dpll4_m4x2_ck { +-- +1.8.5.3 + diff --git a/patches/omap_dt_dss/0050-ARM-dts-set-ti-set-rate-parent-for-dpll4_m4-path.patch b/patches/omap_dt_dss/0050-ARM-dts-set-ti-set-rate-parent-for-dpll4_m4-path.patch new file mode 100644 index 000000000..c89d062bc --- /dev/null +++ b/patches/omap_dt_dss/0050-ARM-dts-set-ti-set-rate-parent-for-dpll4_m4-path.patch @@ -0,0 +1,38 @@ +From 2640adcdaf642644623f9c16fd977597791f131e Mon Sep 17 00:00:00 2001 +From: Tomi Valkeinen <tomi.valkeinen@ti.com> +Date: Thu, 13 Feb 2014 11:15:06 +0200 +Subject: [PATCH 50/51] ARM: dts: set 'ti,set-rate-parent' for dpll4_m4 path + +Set 'ti,set-rate-parent' property for clocks in the dpll4_m4 clock +path, which is used for DSS functional clock. This fixes DSS driver's +clock rate configuration, which needs the rate to be propagated properly +to the divider node (dpll4_m4_ck). + +Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> +--- + arch/arm/boot/dts/omap3xxx-clocks.dtsi | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/arch/arm/boot/dts/omap3xxx-clocks.dtsi b/arch/arm/boot/dts/omap3xxx-clocks.dtsi +index df3c699..12be2b3 100644 +--- a/arch/arm/boot/dts/omap3xxx-clocks.dtsi ++++ b/arch/arm/boot/dts/omap3xxx-clocks.dtsi +@@ -429,6 +429,7 @@ + clocks = <&dpll4_m4_ck>; + ti,clock-mult = <2>; + ti,clock-div = <1>; ++ ti,set-rate-parent; + }; + + dpll4_m4x2_ck: dpll4_m4x2_ck { +@@ -438,6 +439,7 @@ + ti,bit-shift = <0x1d>; + reg = <0x0d00>; + ti,set-bit-to-disable; ++ ti,set-rate-parent; + }; + + dpll4_m5_ck: dpll4_m5_ck { +-- +1.8.5.3 + diff --git a/patches/omap_dt_dss/0051-OMAPDSS-fix-rounding-when-calculating-fclk-rate.patch b/patches/omap_dt_dss/0051-OMAPDSS-fix-rounding-when-calculating-fclk-rate.patch new file mode 100644 index 000000000..c50391a9e --- /dev/null +++ b/patches/omap_dt_dss/0051-OMAPDSS-fix-rounding-when-calculating-fclk-rate.patch @@ -0,0 +1,42 @@ +From a99b0721f9326aae761cb6890cfaafa4e4a39d41 Mon Sep 17 00:00:00 2001 +From: Tomi Valkeinen <tomi.valkeinen@ti.com> +Date: Thu, 13 Feb 2014 11:36:22 +0200 +Subject: [PATCH 51/51] OMAPDSS: fix rounding when calculating fclk rate + +"clk: divider: fix rate calculation for fractional rates" patch (and +similar for TI specific divider) fixes the clk-divider's rounding. This +patch updates the DSS driver to round the rates accordingly. + +This fixes the DSS's warnings about clock rate mismatch, and also fixes +the wrong fclk rate being set. + +Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> +--- + drivers/video/omap2/dss/dss.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/drivers/video/omap2/dss/dss.c b/drivers/video/omap2/dss/dss.c +index 9009f62..714530c 100644 +--- a/drivers/video/omap2/dss/dss.c ++++ b/drivers/video/omap2/dss/dss.c +@@ -473,7 +473,7 @@ bool dss_div_calc(unsigned long pck, unsigned long fck_min, + fckd_stop = max(DIV_ROUND_UP(prate * m, fck_hw_max), 1ul); + + for (fckd = fckd_start; fckd >= fckd_stop; --fckd) { +- fck = prate / fckd * m; ++ fck = DIV_ROUND_UP(prate, fckd) * m; + + if (func(fck, data)) + return true; +@@ -522,7 +522,7 @@ static int dss_setup_default_clock(void) + + fck_div = DIV_ROUND_UP(prate * dss.feat->dss_fck_multiplier, + max_dss_fck); +- fck = prate / fck_div * dss.feat->dss_fck_multiplier; ++ fck = DIV_ROUND_UP(prate, fck_div) * dss.feat->dss_fck_multiplier; + } + + r = dss_set_fck_rate(fck); +-- +1.8.5.3 + diff --git a/patches/omap_dt_dss_v3/0001-OMAPDSS-fix-missing-EXPORT_SYMBOL-s.patch b/patches/omap_dt_dss_v3/0001-OMAPDSS-fix-missing-EXPORT_SYMBOL-s.patch deleted file mode 100644 index 0bb02b0a7..000000000 --- a/patches/omap_dt_dss_v3/0001-OMAPDSS-fix-missing-EXPORT_SYMBOL-s.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 8ee5c8427110e53e4eb71a872092e97973d9b940 Mon Sep 17 00:00:00 2001 -From: Tomi Valkeinen <tomi.valkeinen@ti.com> -Date: Fri, 8 Nov 2013 10:07:20 +0200 -Subject: [PATCH 01/61] OMAPDSS: fix missing EXPORT_SYMBOL()s - -Functions dispc_ovl_set_fifo_threshold and -dispc_ovl_compute_fifo_thresholds need to be exported. Add the -EXPORT_SYMBOLs. - -Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> ---- - drivers/video/omap2/dss/dispc.c | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/drivers/video/omap2/dss/dispc.c b/drivers/video/omap2/dss/dispc.c -index 4ec59ca..d8f4aee 100644 ---- a/drivers/video/omap2/dss/dispc.c -+++ b/drivers/video/omap2/dss/dispc.c -@@ -1201,6 +1201,7 @@ void dispc_ovl_set_fifo_threshold(enum omap_plane plane, u32 low, u32 high) - FLD_VAL(high, hi_start, hi_end) | - FLD_VAL(low, lo_start, lo_end)); - } -+EXPORT_SYMBOL(dispc_ovl_set_fifo_threshold); - - void dispc_enable_fifomerge(bool enable) - { -@@ -1259,6 +1260,7 @@ void dispc_ovl_compute_fifo_thresholds(enum omap_plane plane, - *fifo_high = total_fifo_size - buf_unit; - } - } -+EXPORT_SYMBOL(dispc_ovl_compute_fifo_thresholds); - - static void dispc_ovl_set_fir(enum omap_plane plane, - int hinc, int vinc, --- -1.8.5.2 - diff --git a/patches/omap_dt_dss_v3/0002-OMAPDSS-fix-debug-prints.patch b/patches/omap_dt_dss_v3/0002-OMAPDSS-fix-debug-prints.patch deleted file mode 100644 index e4da81653..000000000 --- a/patches/omap_dt_dss_v3/0002-OMAPDSS-fix-debug-prints.patch +++ /dev/null @@ -1,255 +0,0 @@ -From ac9f24211e4cf9cc30122a7e0d830eba2cace14b Mon Sep 17 00:00:00 2001 -From: Tomi Valkeinen <tomi.valkeinen@ti.com> -Date: Thu, 14 Nov 2013 13:46:32 +0200 -Subject: [PATCH 02/61] OMAPDSS: fix debug prints - -Fix debug prints all over omapdss: -* add missing linefeeds -* change pr_err/pr_debug to DSSERR/DSSDBG -* add missing DSS_SUBSYS_NAMEs - -Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> ---- - drivers/video/omap2/dss/apply.c | 8 ++++---- - drivers/video/omap2/dss/hdmi4_core.c | 16 +++++++++------- - drivers/video/omap2/dss/hdmi_common.c | 2 ++ - drivers/video/omap2/dss/hdmi_pll.c | 16 +++++++++------- - drivers/video/omap2/dss/hdmi_wp.c | 12 +++++++----- - 5 files changed, 31 insertions(+), 23 deletions(-) - -diff --git a/drivers/video/omap2/dss/apply.c b/drivers/video/omap2/dss/apply.c -index 60758db..24cd7c2 100644 ---- a/drivers/video/omap2/dss/apply.c -+++ b/drivers/video/omap2/dss/apply.c -@@ -629,7 +629,7 @@ static void dss_ovl_write_regs(struct omap_overlay *ovl) - struct mgr_priv_data *mp; - int r; - -- DSSDBG("writing ovl %d regs", ovl->id); -+ DSSDBG("writing ovl %d regs\n", ovl->id); - - if (!op->enabled || !op->info_dirty) - return; -@@ -664,7 +664,7 @@ static void dss_ovl_write_regs_extra(struct omap_overlay *ovl) - struct ovl_priv_data *op = get_ovl_priv(ovl); - struct mgr_priv_data *mp; - -- DSSDBG("writing ovl %d regs extra", ovl->id); -+ DSSDBG("writing ovl %d regs extra\n", ovl->id); - - if (!op->extra_info_dirty) - return; -@@ -687,7 +687,7 @@ static void dss_mgr_write_regs(struct omap_overlay_manager *mgr) - struct mgr_priv_data *mp = get_mgr_priv(mgr); - struct omap_overlay *ovl; - -- DSSDBG("writing mgr %d regs", mgr->id); -+ DSSDBG("writing mgr %d regs\n", mgr->id); - - if (!mp->enabled) - return; -@@ -713,7 +713,7 @@ static void dss_mgr_write_regs_extra(struct omap_overlay_manager *mgr) - { - struct mgr_priv_data *mp = get_mgr_priv(mgr); - -- DSSDBG("writing mgr %d regs extra", mgr->id); -+ DSSDBG("writing mgr %d regs extra\n", mgr->id); - - if (!mp->extra_info_dirty) - return; -diff --git a/drivers/video/omap2/dss/hdmi4_core.c b/drivers/video/omap2/dss/hdmi4_core.c -index 5dd5e54..2386a3d 100644 ---- a/drivers/video/omap2/dss/hdmi4_core.c -+++ b/drivers/video/omap2/dss/hdmi4_core.c -@@ -19,6 +19,8 @@ - * this program. If not, see <http://www.gnu.org/licenses/>. - */ - -+#define DSS_SUBSYS_NAME "HDMICORE" -+ - #include <linux/kernel.h> - #include <linux/module.h> - #include <linux/err.h> -@@ -125,12 +127,12 @@ static int hdmi_core_ddc_edid(struct hdmi_core_data *core, - - /* HDMI_CORE_DDC_STATUS_BUS_LOW */ - if (REG_GET(base, HDMI_CORE_DDC_STATUS, 6, 6) == 1) { -- pr_err("I2C Bus Low?\n"); -+ DSSERR("I2C Bus Low?\n"); - return -EIO; - } - /* HDMI_CORE_DDC_STATUS_NO_ACK */ - if (REG_GET(base, HDMI_CORE_DDC_STATUS, 5, 5) == 1) { -- pr_err("I2C No Ack\n"); -+ DSSERR("I2C No Ack\n"); - return -EIO; - } - -@@ -161,7 +163,7 @@ static int hdmi_core_ddc_edid(struct hdmi_core_data *core, - checksum += pedid[i]; - - if (checksum != 0) { -- pr_err("E-EDID checksum failed!!\n"); -+ DSSERR("E-EDID checksum failed!!\n"); - return -EIO; - } - -@@ -199,7 +201,7 @@ static void hdmi_core_init(struct hdmi_core_video_config *video_cfg, - struct hdmi_core_infoframe_avi *avi_cfg, - struct hdmi_core_packet_enable_repeat *repeat_cfg) - { -- pr_debug("Enter hdmi_core_init\n"); -+ DSSDBG("Enter hdmi_core_init\n"); - - /* video core */ - video_cfg->ip_bus_width = HDMI_INPUT_8BIT; -@@ -241,19 +243,19 @@ static void hdmi_core_init(struct hdmi_core_video_config *video_cfg, - - static void hdmi_core_powerdown_disable(struct hdmi_core_data *core) - { -- pr_debug("Enter hdmi_core_powerdown_disable\n"); -+ DSSDBG("Enter hdmi_core_powerdown_disable\n"); - REG_FLD_MOD(core->base, HDMI_CORE_SYS_SYS_CTRL1, 0x0, 0, 0); - } - - static void hdmi_core_swreset_release(struct hdmi_core_data *core) - { -- pr_debug("Enter hdmi_core_swreset_release\n"); -+ DSSDBG("Enter hdmi_core_swreset_release\n"); - REG_FLD_MOD(core->base, HDMI_CORE_SYS_SRST, 0x0, 0, 0); - } - - static void hdmi_core_swreset_assert(struct hdmi_core_data *core) - { -- pr_debug("Enter hdmi_core_swreset_assert\n"); -+ DSSDBG("Enter hdmi_core_swreset_assert\n"); - REG_FLD_MOD(core->base, HDMI_CORE_SYS_SRST, 0x1, 0, 0); - } - -diff --git a/drivers/video/omap2/dss/hdmi_common.c b/drivers/video/omap2/dss/hdmi_common.c -index 5586aaa..0614922 100644 ---- a/drivers/video/omap2/dss/hdmi_common.c -+++ b/drivers/video/omap2/dss/hdmi_common.c -@@ -13,6 +13,8 @@ - * map it to corresponding CEA or VESA index. - */ - -+#define DSS_SUBSYS_NAME "HDMI" -+ - #include <linux/kernel.h> - #include <linux/err.h> - #include <video/omapdss.h> -diff --git a/drivers/video/omap2/dss/hdmi_pll.c b/drivers/video/omap2/dss/hdmi_pll.c -index d3e6e78..a06f4ee 100644 ---- a/drivers/video/omap2/dss/hdmi_pll.c -+++ b/drivers/video/omap2/dss/hdmi_pll.c -@@ -8,6 +8,8 @@ - * the Free Software Foundation. - */ - -+#define DSS_SUBSYS_NAME "HDMIPLL" -+ - #include <linux/kernel.h> - #include <linux/module.h> - #include <linux/err.h> -@@ -127,24 +129,24 @@ static int hdmi_pll_config(struct hdmi_pll_data *pll) - /* wait for bit change */ - if (hdmi_wait_for_bit_change(pll->base, PLLCTRL_PLL_GO, - 0, 0, 1) != 1) { -- pr_err("PLL GO bit not set\n"); -+ DSSERR("PLL GO bit not set\n"); - return -ETIMEDOUT; - } - - /* Wait till the lock bit is set in PLL status */ - if (hdmi_wait_for_bit_change(pll->base, - PLLCTRL_PLL_STATUS, 1, 1, 1) != 1) { -- pr_err("cannot lock PLL\n"); -- pr_err("CFG1 0x%x\n", -+ DSSERR("cannot lock PLL\n"); -+ DSSERR("CFG1 0x%x\n", - hdmi_read_reg(pll->base, PLLCTRL_CFG1)); -- pr_err("CFG2 0x%x\n", -+ DSSERR("CFG2 0x%x\n", - hdmi_read_reg(pll->base, PLLCTRL_CFG2)); -- pr_err("CFG4 0x%x\n", -+ DSSERR("CFG4 0x%x\n", - hdmi_read_reg(pll->base, PLLCTRL_CFG4)); - return -ETIMEDOUT; - } - -- pr_debug("PLL locked!\n"); -+ DSSDBG("PLL locked!\n"); - - return 0; - } -@@ -157,7 +159,7 @@ static int hdmi_pll_reset(struct hdmi_pll_data *pll) - /* READ 0x0 reset is in progress */ - if (hdmi_wait_for_bit_change(pll->base, PLLCTRL_PLL_STATUS, 0, 0, 1) - != 1) { -- pr_err("Failed to sysreset PLL\n"); -+ DSSERR("Failed to sysreset PLL\n"); - return -ETIMEDOUT; - } - -diff --git a/drivers/video/omap2/dss/hdmi_wp.c b/drivers/video/omap2/dss/hdmi_wp.c -index 8151d89..fa8e094 100644 ---- a/drivers/video/omap2/dss/hdmi_wp.c -+++ b/drivers/video/omap2/dss/hdmi_wp.c -@@ -8,6 +8,8 @@ - * the Free Software Foundation. - */ - -+#define DSS_SUBSYS_NAME "HDMIWP" -+ - #include <linux/kernel.h> - #include <linux/err.h> - #include <linux/io.h> -@@ -76,7 +78,7 @@ int hdmi_wp_set_phy_pwr(struct hdmi_wp_data *wp, enum hdmi_phy_pwr val) - /* Status of the power control of HDMI PHY */ - if (hdmi_wait_for_bit_change(wp->base, HDMI_WP_PWR_CTRL, 5, 4, val) - != val) { -- pr_err("Failed to set PHY power mode to %d\n", val); -+ DSSERR("Failed to set PHY power mode to %d\n", val); - return -ETIMEDOUT; - } - -@@ -92,7 +94,7 @@ int hdmi_wp_set_pll_pwr(struct hdmi_wp_data *wp, enum hdmi_pll_pwr val) - /* wait till PHY_PWR_STATUS is set */ - if (hdmi_wait_for_bit_change(wp->base, HDMI_WP_PWR_CTRL, 1, 0, val) - != val) { -- pr_err("Failed to set PLL_PWR_STATUS\n"); -+ DSSERR("Failed to set PLL_PWR_STATUS\n"); - return -ETIMEDOUT; - } - -@@ -129,7 +131,7 @@ void hdmi_wp_video_config_interface(struct hdmi_wp_data *wp, - { - u32 r; - bool vsync_pol, hsync_pol; -- pr_debug("Enter hdmi_wp_video_config_interface\n"); -+ DSSDBG("Enter hdmi_wp_video_config_interface\n"); - - vsync_pol = timings->vsync_level == OMAPDSS_SIG_ACTIVE_HIGH; - hsync_pol = timings->hsync_level == OMAPDSS_SIG_ACTIVE_HIGH; -@@ -148,7 +150,7 @@ void hdmi_wp_video_config_timing(struct hdmi_wp_data *wp, - u32 timing_h = 0; - u32 timing_v = 0; - -- pr_debug("Enter hdmi_wp_video_config_timing\n"); -+ DSSDBG("Enter hdmi_wp_video_config_timing\n"); - - timing_h |= FLD_VAL(timings->hbp, 31, 20); - timing_h |= FLD_VAL(timings->hfp, 19, 8); -@@ -164,7 +166,7 @@ void hdmi_wp_video_config_timing(struct hdmi_wp_data *wp, - void hdmi_wp_init_vid_fmt_timings(struct hdmi_video_format *video_fmt, - struct omap_video_timings *timings, struct hdmi_config *param) - { -- pr_debug("Enter hdmi_wp_video_init_format\n"); -+ DSSDBG("Enter hdmi_wp_video_init_format\n"); - - video_fmt->packing_mode = HDMI_PACK_10b_RGB_YUV444; - video_fmt->y_res = param->timings.y_res; --- -1.8.5.2 - diff --git a/patches/omap_dt_dss_v3/0003-OMAPDSS-apply-fixes.patch b/patches/omap_dt_dss_v3/0003-OMAPDSS-apply-fixes.patch deleted file mode 100644 index d9b83a208..000000000 --- a/patches/omap_dt_dss_v3/0003-OMAPDSS-apply-fixes.patch +++ /dev/null @@ -1,68 +0,0 @@ -From 7a53df2c08119c1a7008d8480205fb3e6859c721 Mon Sep 17 00:00:00 2001 -From: Tomi Valkeinen <tomi.valkeinen@ti.com> -Date: Tue, 12 Nov 2013 12:21:46 +0200 -Subject: [PATCH 03/61] OMAPDSS: apply fixes - -When omapfb does ovl->get_overlay_info, ovl->set_overlay_info, the set -function may fail even if the info has not been changed. This is because -omapdss doesn't initialize the info, but expect the caller to set valid -values. - -Normally that is the case, but there is at least one corner case: if -omapfb has not allocated memory for the overlay yet, and the user uses -ioctl to disable the overlay to make sure it's disabled. In this case -get_overlay_info returns invalid data, but the user is only interested -in setting the overlay to disabled, not configuring it, and -set_overlay_info fails. - -The issue is made possible by the omapfb's setup_plane ioctl, which -groups overlay configuration and overlay enable/disable bit into the -same struct. Thus, when you are disabling an overlay, you are also -configuring it. - -This is a bit counter intuitive, so I think it's better to initialize -the info to some valid values. - -The fields requiring initialization are color_mode and rotation_type, -and also we need to remove the check for (paddr == 0), as paddr is 0 for -unallocated overlay (but it's still fine to disable the overlay). - -Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> ---- - drivers/video/omap2/dss/apply.c | 3 +++ - drivers/video/omap2/dss/overlay.c | 5 ----- - 2 files changed, 3 insertions(+), 5 deletions(-) - -diff --git a/drivers/video/omap2/dss/apply.c b/drivers/video/omap2/dss/apply.c -index 24cd7c2..0a0b084 100644 ---- a/drivers/video/omap2/dss/apply.c -+++ b/drivers/video/omap2/dss/apply.c -@@ -149,6 +149,9 @@ static void apply_init_priv(void) - - op = &dss_data.ovl_priv_data_array[i]; - -+ op->info.color_mode = OMAP_DSS_COLOR_RGB16; -+ op->info.rotation_type = OMAP_DSS_ROT_DMA; -+ - op->info.global_alpha = 255; - - switch (i) { -diff --git a/drivers/video/omap2/dss/overlay.c b/drivers/video/omap2/dss/overlay.c -index eccde32..2f7cee9 100644 ---- a/drivers/video/omap2/dss/overlay.c -+++ b/drivers/video/omap2/dss/overlay.c -@@ -113,11 +113,6 @@ void dss_uninit_overlays(struct platform_device *pdev) - int dss_ovl_simple_check(struct omap_overlay *ovl, - const struct omap_overlay_info *info) - { -- if (info->paddr == 0) { -- DSSERR("check_overlay: paddr cannot be 0\n"); -- return -EINVAL; -- } -- - if ((ovl->caps & OMAP_DSS_OVL_CAP_SCALE) == 0) { - if (info->out_width != 0 && info->width != info->out_width) { - DSSERR("check_overlay: overlay %d doesn't support " --- -1.8.5.2 - diff --git a/patches/omap_dt_dss_v3/0004-OMAPDSS-DISPC-Add-MFLAG-defines.patch b/patches/omap_dt_dss_v3/0004-OMAPDSS-DISPC-Add-MFLAG-defines.patch deleted file mode 100644 index c4fb0dba3..000000000 --- a/patches/omap_dt_dss_v3/0004-OMAPDSS-DISPC-Add-MFLAG-defines.patch +++ /dev/null @@ -1,108 +0,0 @@ -From 29fceeebb6ad55dd0e27f6f7b8f10aa039315cde Mon Sep 17 00:00:00 2001 -From: Tomi Valkeinen <tomi.valkeinen@ti.com> -Date: Thu, 14 Nov 2013 11:38:25 +0200 -Subject: [PATCH 04/61] OMAPDSS: DISPC: Add MFLAG defines - -OMAP5 has MFLAG feature in DISPC. Add the register definition and dump -it. The register is not used yet, though. - -Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> ---- - drivers/video/omap2/dss/dispc.c | 4 ++++ - drivers/video/omap2/dss/dispc.h | 20 ++++++++++++++++++++ - drivers/video/omap2/dss/dss_features.c | 1 + - drivers/video/omap2/dss/dss_features.h | 1 + - 4 files changed, 26 insertions(+) - -diff --git a/drivers/video/omap2/dss/dispc.c b/drivers/video/omap2/dss/dispc.c -index d8f4aee..533539e 100644 ---- a/drivers/video/omap2/dss/dispc.c -+++ b/drivers/video/omap2/dss/dispc.c -@@ -3213,6 +3213,8 @@ static void dispc_dump_regs(struct seq_file *s) - DUMPREG(DISPC_CONTROL3); - DUMPREG(DISPC_CONFIG3); - } -+ if (dss_has_feature(FEAT_MFLAG)) -+ DUMPREG(DISPC_GLOBAL_MFLAG_ATTRIBUTE); - - #undef DUMPREG - -@@ -3287,6 +3289,8 @@ static void dispc_dump_regs(struct seq_file *s) - DUMPREG(i, DISPC_OVL_ATTRIBUTES2); - if (dss_has_feature(FEAT_PRELOAD)) - DUMPREG(i, DISPC_OVL_PRELOAD); -+ if (dss_has_feature(FEAT_MFLAG)) -+ DUMPREG(i, DISPC_OVL_MFLAG_THRESHOLD); - } - - #undef DISPC_REG -diff --git a/drivers/video/omap2/dss/dispc.h b/drivers/video/omap2/dss/dispc.h -index de4863d..78edb44 100644 ---- a/drivers/video/omap2/dss/dispc.h -+++ b/drivers/video/omap2/dss/dispc.h -@@ -40,6 +40,7 @@ - #define DISPC_CONTROL3 0x0848 - #define DISPC_CONFIG3 0x084C - #define DISPC_MSTANDBY_CTRL 0x0858 -+#define DISPC_GLOBAL_MFLAG_ATTRIBUTE 0x085C - - /* DISPC overlay registers */ - #define DISPC_OVL_BA0(n) (DISPC_OVL_BASE(n) + \ -@@ -100,6 +101,8 @@ - DISPC_FIR_COEF_V2_OFFSET(n, i)) - #define DISPC_OVL_PRELOAD(n) (DISPC_OVL_BASE(n) + \ - DISPC_PRELOAD_OFFSET(n)) -+#define DISPC_OVL_MFLAG_THRESHOLD(n) (DISPC_OVL_BASE(n) + \ -+ DISPC_MFLAG_THRESHOLD_OFFSET(n)) - - /* DISPC up/downsampling FIR filter coefficient structure */ - struct dispc_coef { -@@ -894,4 +897,21 @@ static inline u16 DISPC_PRELOAD_OFFSET(enum omap_plane plane) - return 0; - } - } -+ -+static inline u16 DISPC_MFLAG_THRESHOLD_OFFSET(enum omap_plane plane) -+{ -+ switch (plane) { -+ case OMAP_DSS_GFX: -+ return 0x0860; -+ case OMAP_DSS_VIDEO1: -+ return 0x0864; -+ case OMAP_DSS_VIDEO2: -+ return 0x0868; -+ case OMAP_DSS_VIDEO3: -+ return 0x086c; -+ default: -+ BUG(); -+ return 0; -+ } -+} - #endif -diff --git a/drivers/video/omap2/dss/dss_features.c b/drivers/video/omap2/dss/dss_features.c -index f8fd6db..7f89691 100644 ---- a/drivers/video/omap2/dss/dss_features.c -+++ b/drivers/video/omap2/dss/dss_features.c -@@ -613,6 +613,7 @@ static const enum dss_feat_id omap5_dss_feat_list[] = { - FEAT_DSI_PLL_SELFREQDCO, - FEAT_DSI_PLL_REFSEL, - FEAT_DSI_PHY_DCC, -+ FEAT_MFLAG, - }; - - /* OMAP2 DSS Features */ -diff --git a/drivers/video/omap2/dss/dss_features.h b/drivers/video/omap2/dss/dss_features.h -index 10b0556..e3ef3b7 100644 ---- a/drivers/video/omap2/dss/dss_features.h -+++ b/drivers/video/omap2/dss/dss_features.h -@@ -64,6 +64,7 @@ enum dss_feat_id { - FEAT_DSI_PLL_SELFREQDCO, - FEAT_DSI_PLL_REFSEL, - FEAT_DSI_PHY_DCC, -+ FEAT_MFLAG, - }; - - /* DSS register field id */ --- -1.8.5.2 - diff --git a/patches/omap_dt_dss_v3/0005-OMAPDSS-rename-display-sysfs-name-entry.patch b/patches/omap_dt_dss_v3/0005-OMAPDSS-rename-display-sysfs-name-entry.patch deleted file mode 100644 index 7d4fcc0ec..000000000 --- a/patches/omap_dt_dss_v3/0005-OMAPDSS-rename-display-sysfs-name-entry.patch +++ /dev/null @@ -1,42 +0,0 @@ -From 303e4697e762dc92a40405f4e4b8aac02cd0d70b Mon Sep 17 00:00:00 2001 -From: Tomi Valkeinen <tomi.valkeinen@ti.com> -Date: Tue, 24 Sep 2013 17:00:14 +0300 -Subject: [PATCH 05/61] OMAPDSS: rename display-sysfs 'name' entry - -omapdss in compat mode creates some sysfs files into the device's sysfs -directory, including a 'name' file. This works fine for -platform_devices, but breaks with i2c or spi devices, as those already -have a 'name' file. - -Fix this by renaming the omapdss's 'name' file to 'display_name'. - -Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> ---- - drivers/video/omap2/dss/display-sysfs.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/drivers/video/omap2/dss/display-sysfs.c b/drivers/video/omap2/dss/display-sysfs.c -index 21d7f77..f7b5f95 100644 ---- a/drivers/video/omap2/dss/display-sysfs.c -+++ b/drivers/video/omap2/dss/display-sysfs.c -@@ -277,7 +277,7 @@ static ssize_t display_wss_store(struct device *dev, - return size; - } - --static DEVICE_ATTR(name, S_IRUGO, display_name_show, NULL); -+static DEVICE_ATTR(display_name, S_IRUGO, display_name_show, NULL); - static DEVICE_ATTR(enabled, S_IRUGO|S_IWUSR, - display_enabled_show, display_enabled_store); - static DEVICE_ATTR(tear_elim, S_IRUGO|S_IWUSR, -@@ -292,7 +292,7 @@ static DEVICE_ATTR(wss, S_IRUGO|S_IWUSR, - display_wss_show, display_wss_store); - - static const struct attribute *display_sysfs_attrs[] = { -- &dev_attr_name.attr, -+ &dev_attr_display_name.attr, - &dev_attr_enabled.attr, - &dev_attr_tear_elim.attr, - &dev_attr_timings.attr, --- -1.8.5.2 - diff --git a/patches/omap_dt_dss_v3/0006-OMAPDSS-DSI-fix-fifosize.patch b/patches/omap_dt_dss_v3/0006-OMAPDSS-DSI-fix-fifosize.patch deleted file mode 100644 index 9da00e85b..000000000 --- a/patches/omap_dt_dss_v3/0006-OMAPDSS-DSI-fix-fifosize.patch +++ /dev/null @@ -1,83 +0,0 @@ -From 558c73e26e8fadb4c1438af9d5277b4b3e8b5ba6 Mon Sep 17 00:00:00 2001 -From: Tomi Valkeinen <tomi.valkeinen@ti.com> -Date: Wed, 25 Sep 2013 14:40:06 +0300 -Subject: [PATCH 06/61] OMAPDSS: DSI: fix fifosize - -DSI has separate TX and RX fifos. However, the current code only has one -field where the fifo size is stored, and the code for both TX and RX -config write to the same field. This has not caused issues, as we've -been using the same fifo sizes. - -Fix this bug by creating separate fields for TX and RX fifo sizes. - -Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> ---- - drivers/video/omap2/dss/dsi.c | 25 +++++++++++++------------ - 1 file changed, 13 insertions(+), 12 deletions(-) - -diff --git a/drivers/video/omap2/dss/dsi.c b/drivers/video/omap2/dss/dsi.c -index 6056b27..1cd3e47 100644 ---- a/drivers/video/omap2/dss/dsi.c -+++ b/drivers/video/omap2/dss/dsi.c -@@ -297,7 +297,8 @@ struct dsi_data { - struct { - enum dsi_vc_source source; - struct omap_dss_device *dssdev; -- enum fifo_size fifo_size; -+ enum fifo_size tx_fifo_size; -+ enum fifo_size rx_fifo_size; - int vc_id; - } vc[4]; - -@@ -2427,14 +2428,14 @@ static void dsi_config_tx_fifo(struct platform_device *dsidev, - int add = 0; - int i; - -- dsi->vc[0].fifo_size = size1; -- dsi->vc[1].fifo_size = size2; -- dsi->vc[2].fifo_size = size3; -- dsi->vc[3].fifo_size = size4; -+ dsi->vc[0].tx_fifo_size = size1; -+ dsi->vc[1].tx_fifo_size = size2; -+ dsi->vc[2].tx_fifo_size = size3; -+ dsi->vc[3].tx_fifo_size = size4; - - for (i = 0; i < 4; i++) { - u8 v; -- int size = dsi->vc[i].fifo_size; -+ int size = dsi->vc[i].tx_fifo_size; - - if (add + size > 4) { - DSSERR("Illegal FIFO configuration\n"); -@@ -2460,14 +2461,14 @@ static void dsi_config_rx_fifo(struct platform_device *dsidev, - int add = 0; - int i; - -- dsi->vc[0].fifo_size = size1; -- dsi->vc[1].fifo_size = size2; -- dsi->vc[2].fifo_size = size3; -- dsi->vc[3].fifo_size = size4; -+ dsi->vc[0].rx_fifo_size = size1; -+ dsi->vc[1].rx_fifo_size = size2; -+ dsi->vc[2].rx_fifo_size = size3; -+ dsi->vc[3].rx_fifo_size = size4; - - for (i = 0; i < 4; i++) { - u8 v; -- int size = dsi->vc[i].fifo_size; -+ int size = dsi->vc[i].rx_fifo_size; - - if (add + size > 4) { - DSSERR("Illegal FIFO configuration\n"); -@@ -2920,7 +2921,7 @@ static int dsi_vc_send_long(struct platform_device *dsidev, int channel, - DSSDBG("dsi_vc_send_long, %d bytes\n", len); - - /* len + header */ -- if (dsi->vc[channel].fifo_size * 32 * 4 < len + 4) { -+ if (dsi->vc[channel].tx_fifo_size * 32 * 4 < len + 4) { - DSSERR("unable to send long packet: packet too long.\n"); - return -EINVAL; - } --- -1.8.5.2 - diff --git a/patches/omap_dt_dss_v3/0007-OMAPDSS-HDMI4-Accept-non-standard-timings.patch b/patches/omap_dt_dss_v3/0007-OMAPDSS-HDMI4-Accept-non-standard-timings.patch deleted file mode 100644 index d847fc5d1..000000000 --- a/patches/omap_dt_dss_v3/0007-OMAPDSS-HDMI4-Accept-non-standard-timings.patch +++ /dev/null @@ -1,62 +0,0 @@ -From 1e676248c87b71e99a710ce1bed6949ddbb42c71 Mon Sep 17 00:00:00 2001 -From: Archit Taneja <archit@ti.com> -Date: Mon, 9 Dec 2013 19:39:08 +0530 -Subject: [PATCH 07/61] OMAPDSS: HDMI4: Accept non-standard timings - -The hdmi4 driver currently rejects any timing which is not from the CEA or VESA -standards. This leads hdmi rejecting any non-standard mode. A non standard -timing may not have a valid code corresponding to it. In such cases, the HDMI -spec suggests to set the code to 0. - -Modify the driver to check if the timings fall within the range of the DISPC -TV overlay manager, and remove the check for an invalid code. Add a debug print -specifying the mode and code in hdmi_display_set_timing. - -Signed-off-by: Archit Taneja <archit@ti.com> -Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> ---- - drivers/video/omap2/dss/hdmi4.c | 15 +++++++++++---- - 1 file changed, 11 insertions(+), 4 deletions(-) - -diff --git a/drivers/video/omap2/dss/hdmi4.c b/drivers/video/omap2/dss/hdmi4.c -index e140096..347e455 100644 ---- a/drivers/video/omap2/dss/hdmi4.c -+++ b/drivers/video/omap2/dss/hdmi4.c -@@ -218,14 +218,12 @@ static void hdmi_power_off_full(struct omap_dss_device *dssdev) - static int hdmi_display_check_timing(struct omap_dss_device *dssdev, - struct omap_video_timings *timings) - { -- struct hdmi_cm cm; -+ struct omap_dss_device *out = &hdmi.output; - -- cm = hdmi_get_code(timings); -- if (cm.code == -1) -+ if (!dispc_mgr_timings_ok(out->dispc_channel, timings)) - return -EINVAL; - - return 0; -- - } - - static void hdmi_display_set_timing(struct omap_dss_device *dssdev, -@@ -244,8 +242,17 @@ static void hdmi_display_set_timing(struct omap_dss_device *dssdev, - hdmi.cfg = *t; - - dispc_set_tv_pclk(t->timings.pixel_clock * 1000); -+ } else { -+ hdmi.cfg.timings = *timings; -+ hdmi.cfg.cm.code = 0; -+ hdmi.cfg.cm.mode = HDMI_DVI; -+ -+ dispc_set_tv_pclk(timings->pixel_clock * 1000); - } - -+ DSSDBG("using mode: %s, code %d\n", hdmi.cfg.cm.mode == HDMI_DVI ? -+ "DVI" : "HDMI", hdmi.cfg.cm.code); -+ - mutex_unlock(&hdmi.lock); - } - --- -1.8.5.2 - diff --git a/patches/omap_dt_dss_v3/0008-OMAPDSS-HDMI4-remove-useless-func-calls.patch b/patches/omap_dt_dss_v3/0008-OMAPDSS-HDMI4-remove-useless-func-calls.patch deleted file mode 100644 index 214e5444f..000000000 --- a/patches/omap_dt_dss_v3/0008-OMAPDSS-HDMI4-remove-useless-func-calls.patch +++ /dev/null @@ -1,39 +0,0 @@ -From f4f49c48b85babaf1a5d0082c30f11a8be3ce459 Mon Sep 17 00:00:00 2001 -From: Tomi Valkeinen <tomi.valkeinen@ti.com> -Date: Mon, 28 Oct 2013 11:47:31 +0200 -Subject: [PATCH 08/61] OMAPDSS: HDMI4: remove useless func calls - -For some reason the hdmi driver first turns off the video output when -it's about to enable the video output. This serves no purpose, and can -be removed. - -Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> ---- - drivers/video/omap2/dss/hdmi4.c | 4 ---- - 1 file changed, 4 deletions(-) - -diff --git a/drivers/video/omap2/dss/hdmi4.c b/drivers/video/omap2/dss/hdmi4.c -index 347e455..c7fbe4d 100644 ---- a/drivers/video/omap2/dss/hdmi4.c -+++ b/drivers/video/omap2/dss/hdmi4.c -@@ -148,8 +148,6 @@ static int hdmi_power_on_full(struct omap_dss_device *dssdev) - if (r) - return r; - -- dss_mgr_disable(mgr); -- - p = &hdmi.cfg.timings; - - DSSDBG("hdmi_power_on x_res= %d y_res = %d\n", p->x_res, p->y_res); -@@ -158,8 +156,6 @@ static int hdmi_power_on_full(struct omap_dss_device *dssdev) - - hdmi_pll_compute(&hdmi.pll, clk_get_rate(hdmi.sys_clk), phy); - -- hdmi_wp_video_stop(&hdmi.wp); -- - /* config the PLL and PHY hdmi_set_pll_pwrfirst */ - r = hdmi_pll_enable(&hdmi.pll, &hdmi.wp); - if (r) { --- -1.8.5.2 - diff --git a/patches/omap_dt_dss_v3/0009-OMAPDSS-DISPC-fix-context-restore.patch b/patches/omap_dt_dss_v3/0009-OMAPDSS-DISPC-fix-context-restore.patch deleted file mode 100644 index 63d7772a7..000000000 --- a/patches/omap_dt_dss_v3/0009-OMAPDSS-DISPC-fix-context-restore.patch +++ /dev/null @@ -1,34 +0,0 @@ -From be07dcd7e239a854ae92041b3eb17863062e52e4 Mon Sep 17 00:00:00 2001 -From: Tomi Valkeinen <tomi.valkeinen@ti.com> -Date: Thu, 21 Nov 2013 16:01:40 +0200 -Subject: [PATCH 09/61] OMAPDSS: DISPC: fix context restore - -DISPC_MSTANDBY_CTRL register is used in the driver, but it's not -restored in dispc_restore_context(), causing problems after resume. - -Instead of adding DISPC_MSTANDBY_CTRL to dispc_restore_context(), let's -call _omap_dispc_initial_config() as the first thing in -dispc_runtime_resume(). This will initialize the DISPC core registers -properly, and will avoid similar issues in the future. - -Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> ---- - drivers/video/omap2/dss/dispc.c | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/drivers/video/omap2/dss/dispc.c b/drivers/video/omap2/dss/dispc.c -index 533539e..0db46c0 100644 ---- a/drivers/video/omap2/dss/dispc.c -+++ b/drivers/video/omap2/dss/dispc.c -@@ -3740,6 +3740,8 @@ static int dispc_runtime_suspend(struct device *dev) - - static int dispc_runtime_resume(struct device *dev) - { -+ _omap_dispc_initial_config(); -+ - dispc_restore_context(); - - return 0; --- -1.8.5.2 - diff --git a/patches/omap_dt_dss_v3/0010-OMAPDSS-HDMI-fix-hdmi_wait_for_bit_change.patch b/patches/omap_dt_dss_v3/0010-OMAPDSS-HDMI-fix-hdmi_wait_for_bit_change.patch deleted file mode 100644 index e9f66b64d..000000000 --- a/patches/omap_dt_dss_v3/0010-OMAPDSS-HDMI-fix-hdmi_wait_for_bit_change.patch +++ /dev/null @@ -1,53 +0,0 @@ -From 91b53e6a96aa9a6d06f55abfc52440945fc1d82e Mon Sep 17 00:00:00 2001 -From: Tomi Valkeinen <tomi.valkeinen@ti.com> -Date: Mon, 28 Oct 2013 11:47:30 +0200 -Subject: [PATCH 10/61] OMAPDSS: HDMI: fix hdmi_wait_for_bit_change - -hdmi_wait_for_bit_change() has two issues: - -The register index was passed as u16, even if the register index may be -u32. Fix the index to u32. - -The function was copied from wait_for_bit_change() which waits for a -single bit to change, but the hdmi version was changed to wait for a bit -field. This change was not done correctly. - -The function is supposed to return the (last) value of the bit field, -but it returned !val in case of timeout. This was correct for the single -bit version, but not for the hdmi version. Fix the function to return -the actual value in the register. - -Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> ---- - drivers/video/omap2/dss/hdmi.h | 12 ++++++------ - 1 file changed, 6 insertions(+), 6 deletions(-) - -diff --git a/drivers/video/omap2/dss/hdmi.h b/drivers/video/omap2/dss/hdmi.h -index b049376..855b6b0 100644 ---- a/drivers/video/omap2/dss/hdmi.h -+++ b/drivers/video/omap2/dss/hdmi.h -@@ -378,15 +378,15 @@ static inline u32 hdmi_read_reg(void __iomem *base_addr, const u16 idx) - FLD_GET(hdmi_read_reg(base, idx), start, end) - - static inline int hdmi_wait_for_bit_change(void __iomem *base_addr, -- const u16 idx, int b2, int b1, u32 val) -+ const u32 idx, int b2, int b1, u32 val) - { -- u32 t = 0; -- while (val != REG_GET(base_addr, idx, b2, b1)) { -- udelay(1); -+ u32 t = 0, v; -+ while (val != (v = REG_GET(base_addr, idx, b2, b1))) { - if (t++ > 10000) -- return !val; -+ return v; -+ udelay(1); - } -- return val; -+ return v; - } - - /* HDMI wrapper funcs */ --- -1.8.5.2 - diff --git a/patches/omap_dt_dss_v3/0011-OMAPDSS-HDMI-fix-HDMI_WP_CLK-name.patch b/patches/omap_dt_dss_v3/0011-OMAPDSS-HDMI-fix-HDMI_WP_CLK-name.patch deleted file mode 100644 index 9076ff276..000000000 --- a/patches/omap_dt_dss_v3/0011-OMAPDSS-HDMI-fix-HDMI_WP_CLK-name.patch +++ /dev/null @@ -1,42 +0,0 @@ -From 42116517d21858acf80093330c6ad3eefec2979b Mon Sep 17 00:00:00 2001 -From: Tomi Valkeinen <tomi.valkeinen@ti.com> -Date: Mon, 28 Oct 2013 11:47:29 +0200 -Subject: [PATCH 11/61] OMAPDSS: HDMI: fix HDMI_WP_CLK name - -HDMI_WP_CLK was wrongly defined as HDMI_WP_WP_CLK. Fix that. - -Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> ---- - drivers/video/omap2/dss/hdmi.h | 2 +- - drivers/video/omap2/dss/hdmi_wp.c | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/drivers/video/omap2/dss/hdmi.h b/drivers/video/omap2/dss/hdmi.h -index 855b6b0..e523c2b 100644 ---- a/drivers/video/omap2/dss/hdmi.h -+++ b/drivers/video/omap2/dss/hdmi.h -@@ -41,7 +41,7 @@ - #define HDMI_WP_VIDEO_SIZE 0x60 - #define HDMI_WP_VIDEO_TIMING_H 0x68 - #define HDMI_WP_VIDEO_TIMING_V 0x6C --#define HDMI_WP_WP_CLK 0x70 -+#define HDMI_WP_CLK 0x70 - #define HDMI_WP_AUDIO_CFG 0x80 - #define HDMI_WP_AUDIO_CFG2 0x84 - #define HDMI_WP_AUDIO_CTRL 0x88 -diff --git a/drivers/video/omap2/dss/hdmi_wp.c b/drivers/video/omap2/dss/hdmi_wp.c -index fa8e094..209a06e 100644 ---- a/drivers/video/omap2/dss/hdmi_wp.c -+++ b/drivers/video/omap2/dss/hdmi_wp.c -@@ -36,7 +36,7 @@ void hdmi_wp_dump(struct hdmi_wp_data *wp, struct seq_file *s) - DUMPREG(HDMI_WP_VIDEO_SIZE); - DUMPREG(HDMI_WP_VIDEO_TIMING_H); - DUMPREG(HDMI_WP_VIDEO_TIMING_V); -- DUMPREG(HDMI_WP_WP_CLK); -+ DUMPREG(HDMI_WP_CLK); - DUMPREG(HDMI_WP_AUDIO_CFG); - DUMPREG(HDMI_WP_AUDIO_CFG2); - DUMPREG(HDMI_WP_AUDIO_CTRL); --- -1.8.5.2 - diff --git a/patches/omap_dt_dss_v3/0012-OMAPDSS-HDMI-add-missing-core-irq.patch b/patches/omap_dt_dss_v3/0012-OMAPDSS-HDMI-add-missing-core-irq.patch deleted file mode 100644 index b67cd590f..000000000 --- a/patches/omap_dt_dss_v3/0012-OMAPDSS-HDMI-add-missing-core-irq.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 6873efe167d76f255e66425d2f11d0dbb79dc60b Mon Sep 17 00:00:00 2001 -From: Tomi Valkeinen <tomi.valkeinen@ti.com> -Date: Mon, 28 Oct 2013 11:47:28 +0200 -Subject: [PATCH 12/61] OMAPDSS: HDMI: add missing core irq - -HDMI_IRQ_CORE was not defined in the hdmi.h. - -Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> ---- - drivers/video/omap2/dss/hdmi.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/drivers/video/omap2/dss/hdmi.h b/drivers/video/omap2/dss/hdmi.h -index e523c2b..e25681f 100644 ---- a/drivers/video/omap2/dss/hdmi.h -+++ b/drivers/video/omap2/dss/hdmi.h -@@ -48,7 +48,7 @@ - #define HDMI_WP_AUDIO_DATA 0x8C - - /* HDMI WP IRQ flags */ -- -+#define HDMI_IRQ_CORE (1 << 0) - #define HDMI_IRQ_OCP_TIMEOUT (1 << 4) - #define HDMI_IRQ_AUDIO_FIFO_UNDERFLOW (1 << 8) - #define HDMI_IRQ_AUDIO_FIFO_OVERFLOW (1 << 9) --- -1.8.5.2 - diff --git a/patches/omap_dt_dss_v3/0013-OMAPDSS-DSI-split-DSI-memory-map-to-smaller-blocks.patch b/patches/omap_dt_dss_v3/0013-OMAPDSS-DSI-split-DSI-memory-map-to-smaller-blocks.patch deleted file mode 100644 index 6c7d9224e..000000000 --- a/patches/omap_dt_dss_v3/0013-OMAPDSS-DSI-split-DSI-memory-map-to-smaller-blocks.patch +++ /dev/null @@ -1,288 +0,0 @@ -From 68104467ec19a56db2799049e53e910089c66c75 Mon Sep 17 00:00:00 2001 -From: Tomi Valkeinen <tomi.valkeinen@ti.com> -Date: Tue, 17 Dec 2013 13:53:28 +0200 -Subject: [PATCH 13/61] OMAPDSS: DSI: split DSI memory map to smaller blocks - -DSI contains three separate blocks: protocol engine, PHY and PLL. At the -moment, all these are memory mapped in one big chunk. We need to split -that memory map into smaller pieces so that we can add proper 'reg' -properties into the DT data for each block. - -This patch changes the driver to map the blocks separately. It first -tries to get the memory resource using name, used when booting with DT, -and if that fails, it gets the memory resource by ID, in which case the -driver gets the big chunk from platform data. That big chunk is then -split into the smaller blocks manually. - -After DSS DT code has been merged and the old platform code removed, we -can clean up the memory resource management. - -Instead of changing the driver in all the places where a register is -read or written, this patch takes a shortcut: it adds an additional -number to the struct which represents the register index. This number is -used to decide which base address to use. In the future we should -consider other approaches. - -Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> ---- - drivers/video/omap2/dss/dsi.c | 195 +++++++++++++++++++++++++++++------------- - 1 file changed, 136 insertions(+), 59 deletions(-) - -diff --git a/drivers/video/omap2/dss/dsi.c b/drivers/video/omap2/dss/dsi.c -index 1cd3e47..f6f8d93 100644 ---- a/drivers/video/omap2/dss/dsi.c -+++ b/drivers/video/omap2/dss/dsi.c -@@ -47,63 +47,73 @@ - - #define DSI_CATCH_MISSING_TE - --struct dsi_reg { u16 idx; }; -+struct dsi_reg { u16 module; u16 idx; }; - --#define DSI_REG(idx) ((const struct dsi_reg) { idx }) -+#define DSI_REG(mod, idx) ((const struct dsi_reg) { mod, idx }) - --#define DSI_SZ_REGS SZ_1K - /* DSI Protocol Engine */ - --#define DSI_REVISION DSI_REG(0x0000) --#define DSI_SYSCONFIG DSI_REG(0x0010) --#define DSI_SYSSTATUS DSI_REG(0x0014) --#define DSI_IRQSTATUS DSI_REG(0x0018) --#define DSI_IRQENABLE DSI_REG(0x001C) --#define DSI_CTRL DSI_REG(0x0040) --#define DSI_GNQ DSI_REG(0x0044) --#define DSI_COMPLEXIO_CFG1 DSI_REG(0x0048) --#define DSI_COMPLEXIO_IRQ_STATUS DSI_REG(0x004C) --#define DSI_COMPLEXIO_IRQ_ENABLE DSI_REG(0x0050) --#define DSI_CLK_CTRL DSI_REG(0x0054) --#define DSI_TIMING1 DSI_REG(0x0058) --#define DSI_TIMING2 DSI_REG(0x005C) --#define DSI_VM_TIMING1 DSI_REG(0x0060) --#define DSI_VM_TIMING2 DSI_REG(0x0064) --#define DSI_VM_TIMING3 DSI_REG(0x0068) --#define DSI_CLK_TIMING DSI_REG(0x006C) --#define DSI_TX_FIFO_VC_SIZE DSI_REG(0x0070) --#define DSI_RX_FIFO_VC_SIZE DSI_REG(0x0074) --#define DSI_COMPLEXIO_CFG2 DSI_REG(0x0078) --#define DSI_RX_FIFO_VC_FULLNESS DSI_REG(0x007C) --#define DSI_VM_TIMING4 DSI_REG(0x0080) --#define DSI_TX_FIFO_VC_EMPTINESS DSI_REG(0x0084) --#define DSI_VM_TIMING5 DSI_REG(0x0088) --#define DSI_VM_TIMING6 DSI_REG(0x008C) --#define DSI_VM_TIMING7 DSI_REG(0x0090) --#define DSI_STOPCLK_TIMING DSI_REG(0x0094) --#define DSI_VC_CTRL(n) DSI_REG(0x0100 + (n * 0x20)) --#define DSI_VC_TE(n) DSI_REG(0x0104 + (n * 0x20)) --#define DSI_VC_LONG_PACKET_HEADER(n) DSI_REG(0x0108 + (n * 0x20)) --#define DSI_VC_LONG_PACKET_PAYLOAD(n) DSI_REG(0x010C + (n * 0x20)) --#define DSI_VC_SHORT_PACKET_HEADER(n) DSI_REG(0x0110 + (n * 0x20)) --#define DSI_VC_IRQSTATUS(n) DSI_REG(0x0118 + (n * 0x20)) --#define DSI_VC_IRQENABLE(n) DSI_REG(0x011C + (n * 0x20)) -+#define DSI_PROTO 0 -+#define DSI_PROTO_SZ 0x200 -+ -+#define DSI_REVISION DSI_REG(DSI_PROTO, 0x0000) -+#define DSI_SYSCONFIG DSI_REG(DSI_PROTO, 0x0010) -+#define DSI_SYSSTATUS DSI_REG(DSI_PROTO, 0x0014) -+#define DSI_IRQSTATUS DSI_REG(DSI_PROTO, 0x0018) -+#define DSI_IRQENABLE DSI_REG(DSI_PROTO, 0x001C) -+#define DSI_CTRL DSI_REG(DSI_PROTO, 0x0040) -+#define DSI_GNQ DSI_REG(DSI_PROTO, 0x0044) -+#define DSI_COMPLEXIO_CFG1 DSI_REG(DSI_PROTO, 0x0048) -+#define DSI_COMPLEXIO_IRQ_STATUS DSI_REG(DSI_PROTO, 0x004C) -+#define DSI_COMPLEXIO_IRQ_ENABLE DSI_REG(DSI_PROTO, 0x0050) -+#define DSI_CLK_CTRL DSI_REG(DSI_PROTO, 0x0054) -+#define DSI_TIMING1 DSI_REG(DSI_PROTO, 0x0058) -+#define DSI_TIMING2 DSI_REG(DSI_PROTO, 0x005C) -+#define DSI_VM_TIMING1 DSI_REG(DSI_PROTO, 0x0060) -+#define DSI_VM_TIMING2 DSI_REG(DSI_PROTO, 0x0064) -+#define DSI_VM_TIMING3 DSI_REG(DSI_PROTO, 0x0068) -+#define DSI_CLK_TIMING DSI_REG(DSI_PROTO, 0x006C) -+#define DSI_TX_FIFO_VC_SIZE DSI_REG(DSI_PROTO, 0x0070) -+#define DSI_RX_FIFO_VC_SIZE DSI_REG(DSI_PROTO, 0x0074) -+#define DSI_COMPLEXIO_CFG2 DSI_REG(DSI_PROTO, 0x0078) -+#define DSI_RX_FIFO_VC_FULLNESS DSI_REG(DSI_PROTO, 0x007C) -+#define DSI_VM_TIMING4 DSI_REG(DSI_PROTO, 0x0080) -+#define DSI_TX_FIFO_VC_EMPTINESS DSI_REG(DSI_PROTO, 0x0084) -+#define DSI_VM_TIMING5 DSI_REG(DSI_PROTO, 0x0088) -+#define DSI_VM_TIMING6 DSI_REG(DSI_PROTO, 0x008C) -+#define DSI_VM_TIMING7 DSI_REG(DSI_PROTO, 0x0090) -+#define DSI_STOPCLK_TIMING DSI_REG(DSI_PROTO, 0x0094) -+#define DSI_VC_CTRL(n) DSI_REG(DSI_PROTO, 0x0100 + (n * 0x20)) -+#define DSI_VC_TE(n) DSI_REG(DSI_PROTO, 0x0104 + (n * 0x20)) -+#define DSI_VC_LONG_PACKET_HEADER(n) DSI_REG(DSI_PROTO, 0x0108 + (n * 0x20)) -+#define DSI_VC_LONG_PACKET_PAYLOAD(n) DSI_REG(DSI_PROTO, 0x010C + (n * 0x20)) -+#define DSI_VC_SHORT_PACKET_HEADER(n) DSI_REG(DSI_PROTO, 0x0110 + (n * 0x20)) -+#define DSI_VC_IRQSTATUS(n) DSI_REG(DSI_PROTO, 0x0118 + (n * 0x20)) -+#define DSI_VC_IRQENABLE(n) DSI_REG(DSI_PROTO, 0x011C + (n * 0x20)) - - /* DSIPHY_SCP */ - --#define DSI_DSIPHY_CFG0 DSI_REG(0x200 + 0x0000) --#define DSI_DSIPHY_CFG1 DSI_REG(0x200 + 0x0004) --#define DSI_DSIPHY_CFG2 DSI_REG(0x200 + 0x0008) --#define DSI_DSIPHY_CFG5 DSI_REG(0x200 + 0x0014) --#define DSI_DSIPHY_CFG10 DSI_REG(0x200 + 0x0028) -+#define DSI_PHY 1 -+#define DSI_PHY_OFFSET 0x200 -+#define DSI_PHY_SZ 0x40 -+ -+#define DSI_DSIPHY_CFG0 DSI_REG(DSI_PHY, 0x0000) -+#define DSI_DSIPHY_CFG1 DSI_REG(DSI_PHY, 0x0004) -+#define DSI_DSIPHY_CFG2 DSI_REG(DSI_PHY, 0x0008) -+#define DSI_DSIPHY_CFG5 DSI_REG(DSI_PHY, 0x0014) -+#define DSI_DSIPHY_CFG10 DSI_REG(DSI_PHY, 0x0028) - - /* DSI_PLL_CTRL_SCP */ - --#define DSI_PLL_CONTROL DSI_REG(0x300 + 0x0000) --#define DSI_PLL_STATUS DSI_REG(0x300 + 0x0004) --#define DSI_PLL_GO DSI_REG(0x300 + 0x0008) --#define DSI_PLL_CONFIGURATION1 DSI_REG(0x300 + 0x000C) --#define DSI_PLL_CONFIGURATION2 DSI_REG(0x300 + 0x0010) -+#define DSI_PLL 2 -+#define DSI_PLL_OFFSET 0x300 -+#define DSI_PLL_SZ 0x20 -+ -+#define DSI_PLL_CONTROL DSI_REG(DSI_PLL, 0x0000) -+#define DSI_PLL_STATUS DSI_REG(DSI_PLL, 0x0004) -+#define DSI_PLL_GO DSI_REG(DSI_PLL, 0x0008) -+#define DSI_PLL_CONFIGURATION1 DSI_REG(DSI_PLL, 0x000C) -+#define DSI_PLL_CONFIGURATION2 DSI_REG(DSI_PLL, 0x0010) - - #define REG_GET(dsidev, idx, start, end) \ - FLD_GET(dsi_read_reg(dsidev, idx), start, end) -@@ -277,7 +287,9 @@ struct dsi_clk_calc_ctx { - - struct dsi_data { - struct platform_device *pdev; -- void __iomem *base; -+ void __iomem *proto_base; -+ void __iomem *phy_base; -+ void __iomem *pll_base; - - int module_id; - -@@ -414,16 +426,32 @@ static inline void dsi_write_reg(struct platform_device *dsidev, - const struct dsi_reg idx, u32 val) - { - struct dsi_data *dsi = dsi_get_dsidrv_data(dsidev); -+ void __iomem *base; -+ -+ switch(idx.module) { -+ case DSI_PROTO: base = dsi->proto_base; break; -+ case DSI_PHY: base = dsi->phy_base; break; -+ case DSI_PLL: base = dsi->pll_base; break; -+ default: return; -+ } - -- __raw_writel(val, dsi->base + idx.idx); -+ __raw_writel(val, base + idx.idx); - } - - static inline u32 dsi_read_reg(struct platform_device *dsidev, - const struct dsi_reg idx) - { - struct dsi_data *dsi = dsi_get_dsidrv_data(dsidev); -+ void __iomem *base; - -- return __raw_readl(dsi->base + idx.idx); -+ switch(idx.module) { -+ case DSI_PROTO: base = dsi->proto_base; break; -+ case DSI_PHY: base = dsi->phy_base; break; -+ case DSI_PLL: base = dsi->pll_base; break; -+ default: return 0; -+ } -+ -+ return __raw_readl(base + idx.idx); - } - - static void dsi_bus_lock(struct omap_dss_device *dssdev) -@@ -5346,8 +5374,9 @@ static int omap_dsihw_probe(struct platform_device *dsidev) - { - u32 rev; - int r, i; -- struct resource *dsi_mem; - struct dsi_data *dsi; -+ struct resource *res; -+ struct resource temp_res; - - dsi = devm_kzalloc(&dsidev->dev, sizeof(*dsi), GFP_KERNEL); - if (!dsi) -@@ -5377,16 +5406,64 @@ static int omap_dsihw_probe(struct platform_device *dsidev) - dsi->te_timer.function = dsi_te_timeout; - dsi->te_timer.data = 0; - #endif -- dsi_mem = platform_get_resource(dsi->pdev, IORESOURCE_MEM, 0); -- if (!dsi_mem) { -- DSSERR("can't get IORESOURCE_MEM DSI\n"); -- return -EINVAL; -+ -+ res = platform_get_resource_byname(dsidev, IORESOURCE_MEM, "proto"); -+ if (!res) { -+ res = platform_get_resource(dsidev, IORESOURCE_MEM, 0); -+ if (!res) { -+ DSSERR("can't get IORESOURCE_MEM DSI\n"); -+ return -EINVAL; -+ } -+ -+ temp_res.start = res->start; -+ temp_res.end = temp_res.start + DSI_PROTO_SZ - 1; -+ res = &temp_res; -+ } -+ -+ dsi->proto_base = devm_ioremap(&dsidev->dev, res->start, -+ resource_size(res)); -+ if (!dsi->proto_base) { -+ DSSERR("can't ioremap DSI protocol engine\n"); -+ return -ENOMEM; -+ } -+ -+ res = platform_get_resource_byname(dsidev, IORESOURCE_MEM, "phy"); -+ if (!res) { -+ res = platform_get_resource(dsidev, IORESOURCE_MEM, 0); -+ if (!res) { -+ DSSERR("can't get IORESOURCE_MEM DSI\n"); -+ return -EINVAL; -+ } -+ -+ temp_res.start = res->start + DSI_PHY_OFFSET; -+ temp_res.end = temp_res.start + DSI_PHY_SZ - 1; -+ res = &temp_res; -+ } -+ -+ dsi->phy_base = devm_ioremap(&dsidev->dev, res->start, -+ resource_size(res)); -+ if (!dsi->proto_base) { -+ DSSERR("can't ioremap DSI PHY\n"); -+ return -ENOMEM; -+ } -+ -+ res = platform_get_resource_byname(dsidev, IORESOURCE_MEM, "pll"); -+ if (!res) { -+ res = platform_get_resource(dsidev, IORESOURCE_MEM, 0); -+ if (!res) { -+ DSSERR("can't get IORESOURCE_MEM DSI\n"); -+ return -EINVAL; -+ } -+ -+ temp_res.start = res->start + DSI_PLL_OFFSET; -+ temp_res.end = temp_res.start + DSI_PLL_SZ - 1; -+ res = &temp_res; - } - -- dsi->base = devm_ioremap(&dsidev->dev, dsi_mem->start, -- resource_size(dsi_mem)); -- if (!dsi->base) { -- DSSERR("can't ioremap DSI\n"); -+ dsi->pll_base = devm_ioremap(&dsidev->dev, res->start, -+ resource_size(res)); -+ if (!dsi->proto_base) { -+ DSSERR("can't ioremap DSI PLL\n"); - return -ENOMEM; - } - --- -1.8.5.2 - diff --git a/patches/omap_dt_dss_v3/0014-OMAPDSS-HDMI-rename-resource-names.patch b/patches/omap_dt_dss_v3/0014-OMAPDSS-HDMI-rename-resource-names.patch deleted file mode 100644 index 857f70764..000000000 --- a/patches/omap_dt_dss_v3/0014-OMAPDSS-HDMI-rename-resource-names.patch +++ /dev/null @@ -1,77 +0,0 @@ -From 77601507bcfdd9845822458cd36327e592704c25 Mon Sep 17 00:00:00 2001 -From: Tomi Valkeinen <tomi.valkeinen@ti.com> -Date: Tue, 17 Dec 2013 14:41:14 +0200 -Subject: [PATCH 14/61] OMAPDSS: HDMI: rename resource names - -The HDMI driver tries to get the needed memory resources by name and by -ID. Resources by name are not currently defined, and will be used with -DT boot. - -The resource names used in the driver are not quite perfect, and as they -are not used yet, we can change them. This patch removes the unneeded -"hdmi_" prefix from the names, and simplifies the names (e.g. hdmi_txphy --> phy). - -Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> ---- - drivers/video/omap2/dss/hdmi4_core.c | 2 +- - drivers/video/omap2/dss/hdmi_phy.c | 2 +- - drivers/video/omap2/dss/hdmi_pll.c | 2 +- - drivers/video/omap2/dss/hdmi_wp.c | 2 +- - 4 files changed, 4 insertions(+), 4 deletions(-) - -diff --git a/drivers/video/omap2/dss/hdmi4_core.c b/drivers/video/omap2/dss/hdmi4_core.c -index 2386a3d..2eb04dc 100644 ---- a/drivers/video/omap2/dss/hdmi4_core.c -+++ b/drivers/video/omap2/dss/hdmi4_core.c -@@ -1006,7 +1006,7 @@ int hdmi4_core_init(struct platform_device *pdev, struct hdmi_core_data *core) - struct resource *res; - struct resource temp_res; - -- res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "hdmi_core"); -+ res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "core"); - if (!res) { - DSSDBG("can't get CORE mem resource by name\n"); - /* -diff --git a/drivers/video/omap2/dss/hdmi_phy.c b/drivers/video/omap2/dss/hdmi_phy.c -index 45acb99..dd376ce 100644 ---- a/drivers/video/omap2/dss/hdmi_phy.c -+++ b/drivers/video/omap2/dss/hdmi_phy.c -@@ -124,7 +124,7 @@ int hdmi_phy_init(struct platform_device *pdev, struct hdmi_phy_data *phy) - struct resource *res; - struct resource temp_res; - -- res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "hdmi_txphy"); -+ res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "phy"); - if (!res) { - DSSDBG("can't get PHY mem resource by name\n"); - /* -diff --git a/drivers/video/omap2/dss/hdmi_pll.c b/drivers/video/omap2/dss/hdmi_pll.c -index a06f4ee..5fc7121 100644 ---- a/drivers/video/omap2/dss/hdmi_pll.c -+++ b/drivers/video/omap2/dss/hdmi_pll.c -@@ -202,7 +202,7 @@ int hdmi_pll_init(struct platform_device *pdev, struct hdmi_pll_data *pll) - struct resource *res; - struct resource temp_res; - -- res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "hdmi_pllctrl"); -+ res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "pll"); - if (!res) { - DSSDBG("can't get PLL mem resource by name\n"); - /* -diff --git a/drivers/video/omap2/dss/hdmi_wp.c b/drivers/video/omap2/dss/hdmi_wp.c -index 209a06e..cd620c6 100644 ---- a/drivers/video/omap2/dss/hdmi_wp.c -+++ b/drivers/video/omap2/dss/hdmi_wp.c -@@ -243,7 +243,7 @@ int hdmi_wp_init(struct platform_device *pdev, struct hdmi_wp_data *wp) - struct resource *res; - struct resource temp_res; - -- res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "hdmi_wp"); -+ res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "wp"); - if (!res) { - DSSDBG("can't get WP mem resource by name\n"); - /* --- -1.8.5.2 - diff --git a/patches/omap_dt_dss_v3/0015-OMAPFB-give-informative-print-when-probe-succeeds.patch b/patches/omap_dt_dss_v3/0015-OMAPFB-give-informative-print-when-probe-succeeds.patch deleted file mode 100644 index b032ee528..000000000 --- a/patches/omap_dt_dss_v3/0015-OMAPFB-give-informative-print-when-probe-succeeds.patch +++ /dev/null @@ -1,42 +0,0 @@ -From ab7bf423af05542db94021cf9dbf1b0bf86226b1 Mon Sep 17 00:00:00 2001 -From: Tomi Valkeinen <tomi.valkeinen@ti.com> -Date: Thu, 19 Dec 2013 16:10:13 +0200 -Subject: [PATCH 15/61] OMAPFB: give informative print when probe succeeds - -It is quite common to have omapfb probe deferred because of a missing -resource, and to get omapfb probed succesfully a bit later. This works -fine. However, omapfb does not give any print on a successful probe, so -if the omapfb is actually never probed again after deferral, this is not -shown in the log. - -To help debugging, add a simple print from omapfb at the end of its -probe, saying which display it is using and in which resolution. - -Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> ---- - drivers/video/omap2/omapfb/omapfb-main.c | 9 +++++++++ - 1 file changed, 9 insertions(+) - -diff --git a/drivers/video/omap2/omapfb/omapfb-main.c b/drivers/video/omap2/omapfb/omapfb-main.c -index 27d6905..2ff9f03 100644 ---- a/drivers/video/omap2/omapfb/omapfb-main.c -+++ b/drivers/video/omap2/omapfb/omapfb-main.c -@@ -2557,6 +2557,15 @@ static int omapfb_probe(struct platform_device *pdev) - goto cleanup; - } - -+ if (def_display) { -+ u16 w, h; -+ -+ def_display->driver->get_resolution(def_display, &w, &h); -+ -+ dev_info(fbdev->dev, "using display '%s' mode %dx%d\n", -+ def_display->name, w, h); -+ } -+ - return 0; - - cleanup: --- -1.8.5.2 - diff --git a/patches/omap_dt_dss_v3/0016-OMAPDSS-don-t-print-errors-on-EPROBE_DEFER.patch b/patches/omap_dt_dss_v3/0016-OMAPDSS-don-t-print-errors-on-EPROBE_DEFER.patch deleted file mode 100644 index 52a777081..000000000 --- a/patches/omap_dt_dss_v3/0016-OMAPDSS-don-t-print-errors-on-EPROBE_DEFER.patch +++ /dev/null @@ -1,94 +0,0 @@ -From 40359a9b08cc51362a4dddfa2beb3b59e24e2b53 Mon Sep 17 00:00:00 2001 -From: Tomi Valkeinen <tomi.valkeinen@ti.com> -Date: Thu, 19 Dec 2013 16:15:34 +0200 -Subject: [PATCH 16/61] OMAPDSS: don't print errors on -EPROBE_DEFER - -Nowadays it's normal to get -EPROBE_DEFER from, e.g., regulator_get. As --EPROBE_DEFER is not really an error, and the driver will be probed fine -a bit later, printing an error message will just confuse the user. - -This patch changes omapdss to print an error for regulator_gets only if -the error code is something else than -EPROBE_DEFER. - -Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> ---- - drivers/video/omap2/dss/dpi.c | 3 ++- - drivers/video/omap2/dss/dsi.c | 3 ++- - drivers/video/omap2/dss/hdmi4.c | 3 ++- - drivers/video/omap2/dss/sdi.c | 3 ++- - drivers/video/omap2/dss/venc.c | 3 ++- - 5 files changed, 10 insertions(+), 5 deletions(-) - -diff --git a/drivers/video/omap2/dss/dpi.c b/drivers/video/omap2/dss/dpi.c -index bd48cde..fcba3c1 100644 ---- a/drivers/video/omap2/dss/dpi.c -+++ b/drivers/video/omap2/dss/dpi.c -@@ -551,7 +551,8 @@ static int dpi_init_regulator(void) - - vdds_dsi = devm_regulator_get(&dpi.pdev->dev, "vdds_dsi"); - if (IS_ERR(vdds_dsi)) { -- DSSERR("can't get VDDS_DSI regulator\n"); -+ if (PTR_ERR(vdds_dsi) != -EPROBE_DEFER) -+ DSSERR("can't get VDDS_DSI regulator\n"); - return PTR_ERR(vdds_dsi); - } - -diff --git a/drivers/video/omap2/dss/dsi.c b/drivers/video/omap2/dss/dsi.c -index f6f8d93..a820c37 100644 ---- a/drivers/video/omap2/dss/dsi.c -+++ b/drivers/video/omap2/dss/dsi.c -@@ -1158,7 +1158,8 @@ static int dsi_regulator_init(struct platform_device *dsidev) - vdds_dsi = devm_regulator_get(&dsi->pdev->dev, "VCXIO"); - - if (IS_ERR(vdds_dsi)) { -- DSSERR("can't get VDDS_DSI regulator\n"); -+ if (PTR_ERR(vdds_dsi) != -EPROBE_DEFER) -+ DSSERR("can't get VDDS_DSI regulator\n"); - return PTR_ERR(vdds_dsi); - } - -diff --git a/drivers/video/omap2/dss/hdmi4.c b/drivers/video/omap2/dss/hdmi4.c -index c7fbe4d..4a74538 100644 ---- a/drivers/video/omap2/dss/hdmi4.c -+++ b/drivers/video/omap2/dss/hdmi4.c -@@ -95,7 +95,8 @@ static int hdmi_init_regulator(void) - reg = devm_regulator_get(&hdmi.pdev->dev, "VDAC"); - - if (IS_ERR(reg)) { -- DSSERR("can't get VDDA_HDMI_DAC regulator\n"); -+ if (PTR_ERR(reg) != -EPROBE_DEFER) -+ DSSERR("can't get VDDA_HDMI_DAC regulator\n"); - return PTR_ERR(reg); - } - -diff --git a/drivers/video/omap2/dss/sdi.c b/drivers/video/omap2/dss/sdi.c -index ccc569a..156d146 100644 ---- a/drivers/video/omap2/dss/sdi.c -+++ b/drivers/video/omap2/dss/sdi.c -@@ -265,7 +265,8 @@ static int sdi_init_regulator(void) - - vdds_sdi = devm_regulator_get(&sdi.pdev->dev, "vdds_sdi"); - if (IS_ERR(vdds_sdi)) { -- DSSERR("can't get VDDS_SDI regulator\n"); -+ if (PTR_ERR(vdds_sdi) != -EPROBE_DEFER) -+ DSSERR("can't get VDDS_SDI regulator\n"); - return PTR_ERR(vdds_sdi); - } - -diff --git a/drivers/video/omap2/dss/venc.c b/drivers/video/omap2/dss/venc.c -index 5f88ac4..2cd7f7e 100644 ---- a/drivers/video/omap2/dss/venc.c -+++ b/drivers/video/omap2/dss/venc.c -@@ -639,7 +639,8 @@ static int venc_init_regulator(void) - vdda_dac = devm_regulator_get(&venc.pdev->dev, "vdda_dac"); - - if (IS_ERR(vdda_dac)) { -- DSSERR("can't get VDDA_DAC regulator\n"); -+ if (PTR_ERR(vdda_dac) != -EPROBE_DEFER) -+ DSSERR("can't get VDDA_DAC regulator\n"); - return PTR_ERR(vdda_dac); - } - --- -1.8.5.2 - diff --git a/patches/omap_dt_dss_v3/0017-OMAPFB-disable-overlays-on-driver-removal.patch b/patches/omap_dt_dss_v3/0017-OMAPFB-disable-overlays-on-driver-removal.patch deleted file mode 100644 index 39c188147..000000000 --- a/patches/omap_dt_dss_v3/0017-OMAPFB-disable-overlays-on-driver-removal.patch +++ /dev/null @@ -1,43 +0,0 @@ -From b52a6e7fb61682db1ae309c5fa51b5c04168838d Mon Sep 17 00:00:00 2001 -From: Tomi Valkeinen <tomi.valkeinen@ti.com> -Date: Thu, 9 Jan 2014 13:46:20 +0200 -Subject: [PATCH 17/61] OMAPFB: disable overlays on driver removal - -When omapfb module is removed, the driver will turn off all the displays -it manages. However, it leaves the overlays enabled. While the overlays -are obviously disabled as the displays are disabled, it causes issues -when the driver module is loaded again, as at that point the overlays -are still enabled on the hardware level. The result is that even if the -SW thinks overlays are disabled, they are actually enabled. - -Fix this by making sure the overlays are disabled at module removal. - -Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> ---- - drivers/video/omap2/omapfb/omapfb-main.c | 10 ++++++++++ - 1 file changed, 10 insertions(+) - -diff --git a/drivers/video/omap2/omapfb/omapfb-main.c b/drivers/video/omap2/omapfb/omapfb-main.c -index 2ff9f03..fcb9e93 100644 ---- a/drivers/video/omap2/omapfb/omapfb-main.c -+++ b/drivers/video/omap2/omapfb/omapfb-main.c -@@ -1833,6 +1833,16 @@ static void omapfb_free_resources(struct omapfb2_device *fbdev) - if (fbdev == NULL) - return; - -+ for (i = 0; i < fbdev->num_fbs; i++) { -+ struct omapfb_info *ofbi = FB2OFB(fbdev->fbs[i]); -+ int j; -+ -+ for (j = 0; j < ofbi->num_overlays; j++) { -+ struct omap_overlay *ovl = ofbi->overlays[j]; -+ ovl->disable(ovl); -+ } -+ } -+ - for (i = 0; i < fbdev->num_fbs; i++) - unregister_framebuffer(fbdev->fbs[i]); - --- -1.8.5.2 - diff --git a/patches/omap_dt_dss_v3/0018-OMAPDSS-DISPC-Preload-more-data-in-pipeline-DMAs-for.patch b/patches/omap_dt_dss_v3/0018-OMAPDSS-DISPC-Preload-more-data-in-pipeline-DMAs-for.patch deleted file mode 100644 index c047404d6..000000000 --- a/patches/omap_dt_dss_v3/0018-OMAPDSS-DISPC-Preload-more-data-in-pipeline-DMAs-for.patch +++ /dev/null @@ -1,108 +0,0 @@ -From 8bc655521bb18dd8a306ef58ed97e6862d74cd67 Mon Sep 17 00:00:00 2001 -From: Archit Taneja <archit@ti.com> -Date: Tue, 17 Dec 2013 16:40:21 +0530 -Subject: [PATCH 18/61] OMAPDSS: DISPC: Preload more data in pipeline DMAs for - OMAP4+ SoCs - -DISPC pipeline DMAs preload some bytes of pixel data in the vertical blanking -region before the start of each frame. The preload ensures the pipeline doesn't -underflow when the active region of the display starts. - -DISPC_GFX/VIDp_PRELOAD registers allow us to program how many bytes of data -should be preloaded for each pipeline. Calculating a precise preload value -would be a complex function of the pixel clock of the connected display, the -vertical blanking duration and the interconnect traffic at that instance. If -the register is left untouched, a default value is preloaded. - -We observe underflows for OMAP4+ SoCs for certain bandwidth intensive use cases -with many other initiators active, and in situations where memory access isn't -very efficient(like accessing Tiler mapped buffers and EMIF configured in -non-interleaved more). The cause of the underflow is because the default preload -value isn't sufficient for the DMA to reach a steady state. We configure the -PRELOAD register such that the pipelines preload data up to the high threshold -of the FIFO. - -Preloading lot of data for older SoCs can have a negative impact. Due to slower -interconnects, it's possible that the DISPC DMA cannot preload up to the high -threshold within the vertical blanking region of the panel. We leave the PRELOAD -registers to their reset values since we haven't faced underflows with these -SoCs because of low value of PRELOAD. - -Signed-off-by: Archit Taneja <archit@ti.com> -Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> ---- - drivers/video/omap2/dss/dispc.c | 16 ++++++++++++++++ - 1 file changed, 16 insertions(+) - -diff --git a/drivers/video/omap2/dss/dispc.c b/drivers/video/omap2/dss/dispc.c -index 0db46c0..b05bf3f 100644 ---- a/drivers/video/omap2/dss/dispc.c -+++ b/drivers/video/omap2/dss/dispc.c -@@ -90,6 +90,8 @@ struct dispc_features { - - /* revert to the OMAP4 mechanism of DISPC Smart Standby operation */ - bool mstandby_workaround:1; -+ -+ bool set_max_preload:1; - }; - - #define DISPC_MAX_NR_FIFOS 5 -@@ -1200,6 +1202,15 @@ void dispc_ovl_set_fifo_threshold(enum omap_plane plane, u32 low, u32 high) - dispc_write_reg(DISPC_OVL_FIFO_THRESHOLD(plane), - FLD_VAL(high, hi_start, hi_end) | - FLD_VAL(low, lo_start, lo_end)); -+ -+ /* -+ * configure the preload to the pipeline's high threhold, if HT it's too -+ * large for the preload field, set the threshold to the maximum value -+ * that can be held by the preload register -+ */ -+ if (dss_has_feature(FEAT_PRELOAD) && dispc.feat->set_max_preload && -+ plane != OMAP_DSS_WB) -+ dispc_write_reg(DISPC_OVL_PRELOAD(plane), min(high, 0xfffu)); - } - EXPORT_SYMBOL(dispc_ovl_set_fifo_threshold); - -@@ -3526,6 +3537,7 @@ static const struct dispc_features omap24xx_dispc_feats __initconst = { - .calc_core_clk = calc_core_clk_24xx, - .num_fifos = 3, - .no_framedone_tv = true, -+ .set_max_preload = false, - }; - - static const struct dispc_features omap34xx_rev1_0_dispc_feats __initconst = { -@@ -3545,6 +3557,7 @@ static const struct dispc_features omap34xx_rev1_0_dispc_feats __initconst = { - .calc_core_clk = calc_core_clk_34xx, - .num_fifos = 3, - .no_framedone_tv = true, -+ .set_max_preload = false, - }; - - static const struct dispc_features omap34xx_rev3_0_dispc_feats __initconst = { -@@ -3564,6 +3577,7 @@ static const struct dispc_features omap34xx_rev3_0_dispc_feats __initconst = { - .calc_core_clk = calc_core_clk_34xx, - .num_fifos = 3, - .no_framedone_tv = true, -+ .set_max_preload = false, - }; - - static const struct dispc_features omap44xx_dispc_feats __initconst = { -@@ -3583,6 +3597,7 @@ static const struct dispc_features omap44xx_dispc_feats __initconst = { - .calc_core_clk = calc_core_clk_44xx, - .num_fifos = 5, - .gfx_fifo_workaround = true, -+ .set_max_preload = true, - }; - - static const struct dispc_features omap54xx_dispc_feats __initconst = { -@@ -3603,6 +3618,7 @@ static const struct dispc_features omap54xx_dispc_feats __initconst = { - .num_fifos = 5, - .gfx_fifo_workaround = true, - .mstandby_workaround = true, -+ .set_max_preload = true, - }; - - static int __init dispc_init_features(struct platform_device *pdev) --- -1.8.5.2 - diff --git a/patches/omap_dt_dss_v3/0019-OMAPDSS-panel-acx565akm-clean-up-locking.patch b/patches/omap_dt_dss_v3/0019-OMAPDSS-panel-acx565akm-clean-up-locking.patch deleted file mode 100644 index 3e80aabf7..000000000 --- a/patches/omap_dt_dss_v3/0019-OMAPDSS-panel-acx565akm-clean-up-locking.patch +++ /dev/null @@ -1,118 +0,0 @@ -From 0eb0dafb674cd6bfac2e3204b2f8b907e26b1138 Mon Sep 17 00:00:00 2001 -From: Tomi Valkeinen <tomi.valkeinen@ti.com> -Date: Tue, 17 Dec 2013 09:43:04 +0200 -Subject: [PATCH 19/61] OMAPDSS: panel-acx565akm: clean-up locking - -The locking in the acx565akm panel driver was getting too complex. Clean -it up by making new functions, acx565akm_bl_get_intensity_locked and -acx565akm_bl_update_status_locked, which are called by the backlight -subsystem. This way the non-locked versions can be called by the panel's -other funcs, simplifying the lock management. - -Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> ---- - .../omap2/displays-new/panel-sony-acx565akm.c | 44 +++++++++++++++------- - 1 file changed, 30 insertions(+), 14 deletions(-) - -diff --git a/drivers/video/omap2/displays-new/panel-sony-acx565akm.c b/drivers/video/omap2/displays-new/panel-sony-acx565akm.c -index d94f35d..8e97d06 100644 ---- a/drivers/video/omap2/displays-new/panel-sony-acx565akm.c -+++ b/drivers/video/omap2/displays-new/panel-sony-acx565akm.c -@@ -346,28 +346,22 @@ static int acx565akm_get_actual_brightness(struct panel_drv_data *ddata) - static int acx565akm_bl_update_status(struct backlight_device *dev) - { - struct panel_drv_data *ddata = dev_get_drvdata(&dev->dev); -- int r; - int level; - - dev_dbg(&ddata->spi->dev, "%s\n", __func__); - -- mutex_lock(&ddata->mutex); -- - if (dev->props.fb_blank == FB_BLANK_UNBLANK && - dev->props.power == FB_BLANK_UNBLANK) - level = dev->props.brightness; - else - level = 0; - -- r = 0; - if (ddata->has_bc) - acx565akm_set_brightness(ddata, level); - else -- r = -ENODEV; -- -- mutex_unlock(&ddata->mutex); -+ return -ENODEV; - -- return r; -+ return 0; - } - - static int acx565akm_bl_get_intensity(struct backlight_device *dev) -@@ -390,9 +384,33 @@ static int acx565akm_bl_get_intensity(struct backlight_device *dev) - return 0; - } - -+static int acx565akm_bl_update_status_locked(struct backlight_device *dev) -+{ -+ struct panel_drv_data *ddata = dev_get_drvdata(&dev->dev); -+ int r; -+ -+ mutex_lock(&ddata->mutex); -+ r = acx565akm_bl_update_status(dev); -+ mutex_unlock(&ddata->mutex); -+ -+ return r; -+} -+ -+static int acx565akm_bl_get_intensity_locked(struct backlight_device *dev) -+{ -+ struct panel_drv_data *ddata = dev_get_drvdata(&dev->dev); -+ int r; -+ -+ mutex_lock(&ddata->mutex); -+ r = acx565akm_bl_get_intensity(dev); -+ mutex_unlock(&ddata->mutex); -+ -+ return r; -+} -+ - static const struct backlight_ops acx565akm_bl_ops = { -- .get_brightness = acx565akm_bl_get_intensity, -- .update_status = acx565akm_bl_update_status, -+ .get_brightness = acx565akm_bl_get_intensity_locked, -+ .update_status = acx565akm_bl_update_status_locked, - }; - - /*--------------------Auto Brightness control via Sysfs---------------------*/ -@@ -526,8 +544,6 @@ static int acx565akm_panel_power_on(struct omap_dss_device *dssdev) - struct omap_dss_device *in = ddata->in; - int r; - -- mutex_lock(&ddata->mutex); -- - dev_dbg(&ddata->spi->dev, "%s\n", __func__); - - in->ops.sdi->set_timings(in, &ddata->videomode); -@@ -568,8 +584,6 @@ static int acx565akm_panel_power_on(struct omap_dss_device *dssdev) - set_display_state(ddata, 1); - set_cabc_mode(ddata, ddata->cabc_mode); - -- mutex_unlock(&ddata->mutex); -- - return acx565akm_bl_update_status(ddata->bl_dev); - } - -@@ -616,7 +630,9 @@ static int acx565akm_enable(struct omap_dss_device *dssdev) - if (omapdss_device_is_enabled(dssdev)) - return 0; - -+ mutex_lock(&ddata->mutex); - r = acx565akm_panel_power_on(dssdev); -+ mutex_unlock(&ddata->mutex); - if (r) - return r; - --- -1.8.5.2 - diff --git a/patches/omap_dt_dss_v3/0020-OMAPDSS-DISPC-Fix-34xx-overlay-scaling-calculation.patch b/patches/omap_dt_dss_v3/0020-OMAPDSS-DISPC-Fix-34xx-overlay-scaling-calculation.patch deleted file mode 100644 index 35a484a5a..000000000 --- a/patches/omap_dt_dss_v3/0020-OMAPDSS-DISPC-Fix-34xx-overlay-scaling-calculation.patch +++ /dev/null @@ -1,96 +0,0 @@ -From e4998634dd3874e24bbf7937305c5ac708243908 Mon Sep 17 00:00:00 2001 -From: Ivaylo Dimitrov <freemangordon@abv.bg> -Date: Mon, 13 Jan 2014 18:33:02 +0200 -Subject: [PATCH 20/61] OMAPDSS: DISPC: Fix 34xx overlay scaling calculation - -commit 7faa92339bbb1e6b9a80983b206642517327eb75 OMAPDSS: DISPC: Handle -synclost errors in OMAP3 introduces limits check to prevent SYNCLOST errors -on OMAP3. However, it misses the logic found in Nokia kernels that is -needed to correctly calculate whether 3 tap or 5 tap rescaler to be used as -well as the logic to fallback to 3 taps if 5 taps clock results in too -tight horizontal timings. Without that patch "horizontal timing too tight" -errors are seen when a video with resolution above 640x350 is tried to be -played. The patch is a forward-ported logic found in Nokia N900 and N9/50 -kernels. - -Signed-off-by: Ivaylo Dimitrov <ivo.g.dimitrov.75@gmail.com> -Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> ---- - drivers/video/omap2/dss/dispc.c | 31 ++++++++++++++++++++++--------- - 1 file changed, 22 insertions(+), 9 deletions(-) - -diff --git a/drivers/video/omap2/dss/dispc.c b/drivers/video/omap2/dss/dispc.c -index b05bf3f..f51646f 100644 ---- a/drivers/video/omap2/dss/dispc.c -+++ b/drivers/video/omap2/dss/dispc.c -@@ -2001,7 +2001,8 @@ static void calc_tiler_rotation_offset(u16 screen_width, u16 width, - */ - static int check_horiz_timing_omap3(unsigned long pclk, unsigned long lclk, - const struct omap_video_timings *t, u16 pos_x, -- u16 width, u16 height, u16 out_width, u16 out_height) -+ u16 width, u16 height, u16 out_width, u16 out_height, -+ bool five_taps) - { - const int ds = DIV_ROUND_UP(height, out_height); - unsigned long nonactive; -@@ -2021,6 +2022,10 @@ static int check_horiz_timing_omap3(unsigned long pclk, unsigned long lclk, - if (blank <= limits[i]) - return -EINVAL; - -+ /* FIXME add checks for 3-tap filter once the limitations are known */ -+ if (!five_taps) -+ return 0; -+ - /* - * Pixel data should be prepared before visible display point starts. - * So, atleast DS-2 lines must have already been fetched by DISPC -@@ -2196,22 +2201,30 @@ static int dispc_ovl_calc_scaling_34xx(unsigned long pclk, unsigned long lclk, - do { - in_height = DIV_ROUND_UP(height, *decim_y); - in_width = DIV_ROUND_UP(width, *decim_x); -- *core_clk = calc_core_clk_five_taps(pclk, mgr_timings, -- in_width, in_height, out_width, out_height, color_mode); -- -- error = check_horiz_timing_omap3(pclk, lclk, mgr_timings, -- pos_x, in_width, in_height, out_width, -- out_height); -+ *five_taps = in_height > out_height; - - if (in_width > maxsinglelinewidth) - if (in_height > out_height && - in_height < out_height * 2) - *five_taps = false; -- if (!*five_taps) -+again: -+ if (*five_taps) -+ *core_clk = calc_core_clk_five_taps(pclk, mgr_timings, -+ in_width, in_height, out_width, -+ out_height, color_mode); -+ else - *core_clk = dispc.feat->calc_core_clk(pclk, in_width, - in_height, out_width, out_height, - mem_to_mem); - -+ error = check_horiz_timing_omap3(pclk, lclk, mgr_timings, -+ pos_x, in_width, in_height, out_width, -+ out_height, *five_taps); -+ if (error && *five_taps) { -+ *five_taps = false; -+ goto again; -+ } -+ - error = (error || in_width > maxsinglelinewidth * 2 || - (in_width > maxsinglelinewidth && *five_taps) || - !*core_clk || *core_clk > dispc_core_clk_rate()); -@@ -2228,7 +2241,7 @@ static int dispc_ovl_calc_scaling_34xx(unsigned long pclk, unsigned long lclk, - } while (*decim_x <= *x_predecim && *decim_y <= *y_predecim && error); - - if (check_horiz_timing_omap3(pclk, lclk, mgr_timings, pos_x, width, -- height, out_width, out_height)){ -+ height, out_width, out_height, *five_taps)) { - DSSERR("horizontal timing too tight\n"); - return -EINVAL; - } --- -1.8.5.2 - diff --git a/version.sh b/version.sh index c29984f8e..bcb3514fc 100644 --- a/version.sh +++ b/version.sh @@ -29,10 +29,10 @@ toolchain="gcc_linaro_gnueabihf_4_8" #Kernel/Build KERNEL_REL=3.14 KERNEL_TAG=${KERNEL_REL}-rc2 -BUILD=armv7-devel-r58 +BUILD=armv7-devel-r59 #v3.X-rcX + upto SHA -KERNEL_SHA="45f7fdc2ffb9d5af4dab593843e89da70d1259e3" +KERNEL_SHA="4675348e78fab420e70f9144b320d9c063c7cee8" #git branch #BRANCH="v3.14.x" -- GitLab