From mboxrd@z Thu Jan 1 00:00:00 1970 From: jsarha@ti.com (Jyri Sarha) Date: Wed, 31 Aug 2016 16:14:05 +0300 Subject: [PATCH v3 0/8] drm/tilcdc: Address LCDC rev 2 color errata + other fixes Message-ID: To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org Changes since v2: - Fiddle with color wiring propety once more, now it follows this Tomi's comment: - No property set: driver advertises RG16 and RG24. This is wrong, but that's what the current status is, right? - Property set to "default" or "straight" or whatever: driver says RG16 and BG24 - Property set to "crossed": driver says BG16 and RG24 - Add v2 version of "drm/tilcdc: Write DMA base and ceiling address with..." - The first version was sent individually, this second version has __iowmb(); and __cpu_to_le64(); added to tilcdc_write64() Changes since v1: - Change the blue-and-red-wiring property to boolean blue-and-red-crossed - This breaks to little backward compatibility the earlier series had, but makes the binding more straight forward - This changes requires changes to am335x-evm and am335x-evmsk dts-files - The old beaglebone-black dts files remain compatible, but the patch suggests in commenst on how to support 24-bit RGB mode with BBB The first patch ("drm/tilcdc: Remove drm_helper_disable_unused_functions() call") is completely independent fix. The red and blue components are reversed between 24 and 16 bit modes on am335x LCDC output pins. To get 24 RGB format the wires red and blue wires has to be crossed and this in turn causes 16 colors output to be in BGR format. With straight wiring the 16 color is RGB and 24 bit is BGR. These patches try to deal with the issue in reasonable manner. For more details see section 3.1.1 in AM335x Silicon Errata: http://www.ti.com/general/docs/lit/getliterature.tsp?baseLiteratureNumber=sprz360 Jyri Sarha (8): drm/tilcdc: Remove drm_helper_disable_unused_functions() call drm/tilcdc: Write DMA base and ceiling address with single instruction drm/tilcdc: Add blue-and-red-crossed devicetree property drm/tilcdc: Choose console BPP that supports RGB ARM: dts: am335x-boneblack: Add blue-and-red-wiring -property to LCDC node ARM: dts: am335x-evm: Add blue-and-red-wiring -property to lcdc node ARM: dts: am335x-evmsk: Whitespace cleanup of lcdc related nodes ARM: dts: am335x-evmsk: Add blue-and-red-wiring -property to lcdc node .../devicetree/bindings/display/tilcdc/tilcdc.txt | 22 ++++++++ arch/arm/boot/dts/am335x-boneblack.dts | 11 ++++ arch/arm/boot/dts/am335x-evm.dts | 2 + arch/arm/boot/dts/am335x-evmsk.dts | 42 ++++++++-------- drivers/gpu/drm/tilcdc/tilcdc_crtc.c | 9 +++- drivers/gpu/drm/tilcdc/tilcdc_drv.c | 58 ++++++++++++++++++---- drivers/gpu/drm/tilcdc/tilcdc_drv.h | 5 +- drivers/gpu/drm/tilcdc/tilcdc_external.c | 7 ++- drivers/gpu/drm/tilcdc/tilcdc_external.h | 2 +- drivers/gpu/drm/tilcdc/tilcdc_panel.c | 2 - drivers/gpu/drm/tilcdc/tilcdc_plane.c | 9 ++-- drivers/gpu/drm/tilcdc/tilcdc_regs.h | 14 ++++++ drivers/gpu/drm/tilcdc/tilcdc_tfp410.c | 2 - 13 files changed, 136 insertions(+), 49 deletions(-) -- 1.9.1 From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jyri Sarha Subject: [PATCH v3 0/8] drm/tilcdc: Address LCDC rev 2 color errata + other fixes Date: Wed, 31 Aug 2016 16:14:05 +0300 Message-ID: Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, bcousson@baylibre.com, tony@atomide.com, linux-arm-kernel@lists.infradead.org Cc: Jyri Sarha , peter.ujfalusi@ti.com, tomi.valkeinen@ti.com, kbeldan@baylibre.com, laurent.pinchart@ideasonboard.com List-Id: devicetree@vger.kernel.org Q2hhbmdlcyBzaW5jZSB2MjoKLSBGaWRkbGUgd2l0aCBjb2xvciB3aXJpbmcgcHJvcGV0eSBvbmNl IG1vcmUsIG5vdyBpdCBmb2xsb3dzIHRoaXMgVG9taSdzCiAgY29tbWVudDoKICAtIE5vIHByb3Bl cnR5IHNldDogZHJpdmVyIGFkdmVydGlzZXMgUkcxNiBhbmQgUkcyNC4gVGhpcyBpcwogICAgd3Jv bmcsIGJ1dCB0aGF0J3Mgd2hhdCB0aGUgY3VycmVudCBzdGF0dXMgaXMsIHJpZ2h0PwogIC0gUHJv cGVydHkgc2V0IHRvICJkZWZhdWx0IiBvciAic3RyYWlnaHQiIG9yIHdoYXRldmVyOiBkcml2ZXIK ICAgIHNheXMgUkcxNiBhbmQgQkcyNAogIC0gUHJvcGVydHkgc2V0IHRvICJjcm9zc2VkIjogZHJp dmVyIHNheXMgQkcxNiBhbmQgUkcyNAotIEFkZCB2MiB2ZXJzaW9uIG9mICJkcm0vdGlsY2RjOiBX cml0ZSBETUEgYmFzZSBhbmQgY2VpbGluZyBhZGRyZXNzIHdpdGguLi4iCiAgLSBUaGUgZmlyc3Qg dmVyc2lvbiB3YXMgc2VudCBpbmRpdmlkdWFsbHksIHRoaXMgc2Vjb25kIHZlcnNpb24gaGFzCiAg ICBfX2lvd21iKCk7IGFuZCBfX2NwdV90b19sZTY0KCk7IGFkZGVkIHRvIHRpbGNkY193cml0ZTY0 KCkKCkNoYW5nZXMgc2luY2UgdjE6Ci0gQ2hhbmdlIHRoZSBibHVlLWFuZC1yZWQtd2lyaW5nIHBy b3BlcnR5IHRvIGJvb2xlYW4gYmx1ZS1hbmQtcmVkLWNyb3NzZWQKICAtIFRoaXMgYnJlYWtzIHRv IGxpdHRsZSBiYWNrd2FyZCBjb21wYXRpYmlsaXR5IHRoZSBlYXJsaWVyIHNlcmllcyBoYWQsIGJ1 dAogICAgbWFrZXMgdGhlIGJpbmRpbmcgbW9yZSBzdHJhaWdodCBmb3J3YXJkCiAgLSBUaGlzIGNo YW5nZXMgcmVxdWlyZXMgY2hhbmdlcyB0byBhbTMzNXgtZXZtIGFuZCBhbTMzNXgtZXZtc2sgZHRz LWZpbGVzCiAgLSBUaGUgb2xkIGJlYWdsZWJvbmUtYmxhY2sgZHRzIGZpbGVzIHJlbWFpbiBjb21w YXRpYmxlLCBidXQgdGhlIHBhdGNoCiAgICBzdWdnZXN0cyBpbiBjb21tZW5zdCBvbiBob3cgdG8g c3VwcG9ydCAyNC1iaXQgUkdCIG1vZGUgd2l0aCBCQkIKClRoZSBmaXJzdCBwYXRjaCAoImRybS90 aWxjZGM6IFJlbW92ZSBkcm1faGVscGVyX2Rpc2FibGVfdW51c2VkX2Z1bmN0aW9ucygpCmNhbGwi KSBpcyBjb21wbGV0ZWx5IGluZGVwZW5kZW50IGZpeC4KClRoZSByZWQgYW5kIGJsdWUgY29tcG9u ZW50cyBhcmUgcmV2ZXJzZWQgYmV0d2VlbiAyNCBhbmQgMTYgYml0IG1vZGVzCm9uIGFtMzM1eCBM Q0RDIG91dHB1dCBwaW5zLiBUbyBnZXQgMjQgUkdCIGZvcm1hdCB0aGUgd2lyZXMgcmVkIGFuZApi bHVlIHdpcmVzIGhhcyB0byBiZSBjcm9zc2VkIGFuZCB0aGlzIGluIHR1cm4gY2F1c2VzIDE2IGNv bG9ycyBvdXRwdXQKdG8gYmUgaW4gQkdSIGZvcm1hdC4gV2l0aCBzdHJhaWdodCB3aXJpbmcgdGhl IDE2IGNvbG9yIGlzIFJHQiBhbmQgMjQKYml0IGlzIEJHUi4gVGhlc2UgcGF0Y2hlcyB0cnkgdG8g ZGVhbCB3aXRoIHRoZSBpc3N1ZSBpbiByZWFzb25hYmxlCm1hbm5lci4KCkZvciBtb3JlIGRldGFp bHMgc2VlIHNlY3Rpb24gMy4xLjEgaW4gQU0zMzV4IFNpbGljb24gRXJyYXRhOgpodHRwOi8vd3d3 LnRpLmNvbS9nZW5lcmFsL2RvY3MvbGl0L2dldGxpdGVyYXR1cmUudHNwP2Jhc2VMaXRlcmF0dXJl TnVtYmVyPXNwcnozNjAKCkp5cmkgU2FyaGEgKDgpOgogIGRybS90aWxjZGM6IFJlbW92ZSBkcm1f aGVscGVyX2Rpc2FibGVfdW51c2VkX2Z1bmN0aW9ucygpIGNhbGwKICBkcm0vdGlsY2RjOiBXcml0 ZSBETUEgYmFzZSBhbmQgY2VpbGluZyBhZGRyZXNzIHdpdGggc2luZ2xlIGluc3RydWN0aW9uCiAg ZHJtL3RpbGNkYzogQWRkIGJsdWUtYW5kLXJlZC1jcm9zc2VkIGRldmljZXRyZWUgcHJvcGVydHkK ICBkcm0vdGlsY2RjOiBDaG9vc2UgY29uc29sZSBCUFAgdGhhdCBzdXBwb3J0cyBSR0IKICBBUk06 IGR0czogYW0zMzV4LWJvbmVibGFjazogQWRkIGJsdWUtYW5kLXJlZC13aXJpbmcgLXByb3BlcnR5 IHRvIExDREMKICAgIG5vZGUKICBBUk06IGR0czogYW0zMzV4LWV2bTogQWRkIGJsdWUtYW5kLXJl ZC13aXJpbmcgLXByb3BlcnR5IHRvIGxjZGMgbm9kZQogIEFSTTogZHRzOiBhbTMzNXgtZXZtc2s6 IFdoaXRlc3BhY2UgY2xlYW51cCBvZiBsY2RjIHJlbGF0ZWQgbm9kZXMKICBBUk06IGR0czogYW0z MzV4LWV2bXNrOiBBZGQgYmx1ZS1hbmQtcmVkLXdpcmluZyAtcHJvcGVydHkgdG8gbGNkYyBub2Rl CgogLi4uL2RldmljZXRyZWUvYmluZGluZ3MvZGlzcGxheS90aWxjZGMvdGlsY2RjLnR4dCAgfCAy MiArKysrKysrKwogYXJjaC9hcm0vYm9vdC9kdHMvYW0zMzV4LWJvbmVibGFjay5kdHMgICAgICAg ICAgICAgfCAxMSArKysrCiBhcmNoL2FybS9ib290L2R0cy9hbTMzNXgtZXZtLmR0cyAgICAgICAg ICAgICAgICAgICB8ICAyICsKIGFyY2gvYXJtL2Jvb3QvZHRzL2FtMzM1eC1ldm1zay5kdHMgICAg ICAgICAgICAgICAgIHwgNDIgKysrKysrKystLS0tLS0tLQogZHJpdmVycy9ncHUvZHJtL3RpbGNk Yy90aWxjZGNfY3J0Yy5jICAgICAgICAgICAgICAgfCAgOSArKystCiBkcml2ZXJzL2dwdS9kcm0v dGlsY2RjL3RpbGNkY19kcnYuYyAgICAgICAgICAgICAgICB8IDU4ICsrKysrKysrKysrKysrKysr Ky0tLS0KIGRyaXZlcnMvZ3B1L2RybS90aWxjZGMvdGlsY2RjX2Rydi5oICAgICAgICAgICAgICAg IHwgIDUgKy0KIGRyaXZlcnMvZ3B1L2RybS90aWxjZGMvdGlsY2RjX2V4dGVybmFsLmMgICAgICAg ICAgIHwgIDcgKystCiBkcml2ZXJzL2dwdS9kcm0vdGlsY2RjL3RpbGNkY19leHRlcm5hbC5oICAg ICAgICAgICB8ICAyICstCiBkcml2ZXJzL2dwdS9kcm0vdGlsY2RjL3RpbGNkY19wYW5lbC5jICAg ICAgICAgICAgICB8ICAyIC0KIGRyaXZlcnMvZ3B1L2RybS90aWxjZGMvdGlsY2RjX3BsYW5lLmMg ICAgICAgICAgICAgIHwgIDkgKystLQogZHJpdmVycy9ncHUvZHJtL3RpbGNkYy90aWxjZGNfcmVn cy5oICAgICAgICAgICAgICAgfCAxNCArKysrKysKIGRyaXZlcnMvZ3B1L2RybS90aWxjZGMvdGls Y2RjX3RmcDQxMC5jICAgICAgICAgICAgIHwgIDIgLQogMTMgZmlsZXMgY2hhbmdlZCwgMTM2IGlu c2VydGlvbnMoKyksIDQ5IGRlbGV0aW9ucygtKQoKLS0gCjEuOS4xCgpfX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRy aS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5v cmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK