From patchwork Mon Jun 29 19:12:18 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Felipe Balbi X-Patchwork-Id: 6691401 Return-Path: X-Original-To: patchwork-linux-omap@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork1.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork1.web.kernel.org (Postfix) with ESMTP id AF4569F1C1 for ; Mon, 29 Jun 2015 19:12:49 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id EC7DA205BC for ; Mon, 29 Jun 2015 19:12:47 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id E2AB620585 for ; Mon, 29 Jun 2015 19:12:45 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752567AbbF2TMp (ORCPT ); Mon, 29 Jun 2015 15:12:45 -0400 Received: from bear.ext.ti.com ([192.94.94.41]:59367 "EHLO bear.ext.ti.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751343AbbF2TMo (ORCPT ); Mon, 29 Jun 2015 15:12:44 -0400 Received: from dflxv15.itg.ti.com ([128.247.5.124]) by bear.ext.ti.com (8.13.7/8.13.7) with ESMTP id t5TJCIjt026553; Mon, 29 Jun 2015 14:12:18 -0500 Received: from DFLE72.ent.ti.com (dfle72.ent.ti.com [128.247.5.109]) by dflxv15.itg.ti.com (8.14.3/8.13.8) with ESMTP id t5TJCIIH002559; Mon, 29 Jun 2015 14:12:18 -0500 Received: from dlep32.itg.ti.com (157.170.170.100) by DFLE72.ent.ti.com (128.247.5.109) with Microsoft SMTP Server id 14.3.224.2; Mon, 29 Jun 2015 14:12:15 -0500 Received: from localhost (ileax41-snat.itg.ti.com [10.172.224.153]) by dlep32.itg.ti.com (8.14.3/8.13.8) with ESMTP id t5TJCHCr025194; Mon, 29 Jun 2015 14:12:17 -0500 Date: Mon, 29 Jun 2015 14:12:18 -0500 From: Felipe Balbi To: Tomi Valkeinen CC: Linux OMAP Mailing List , Linux ARM Kernel Mailing List Subject: Regression with today's next Message-ID: <20150629191218.GB1019@saruman.tx.rr.com> Reply-To: MIME-Version: 1.0 Content-Disposition: inline User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-omap-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-omap@vger.kernel.org X-Spam-Status: No, score=-7.5 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_HI, RP_MATCHES_RCVD, T_TVD_MIME_EPI, UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Hi, commit 736e60ddc215b85e73bbf7da26e1cde84cc9500f (OMAPDSS: componentize omapdss) caused a regression at least on AM437x SK board where Display doesn't work anymore. Below you can find bisection log and a git show of commit. I have tested that reverting said commit makes it work again. Please fix, or revert. git bisect start # good: [b953c0d234bc72e8489d3bf51a276c5c4ec85345] Linux 4.1 git bisect good b953c0d234bc72e8489d3bf51a276c5c4ec85345 # bad: [e3984319760987beee59b1d017416671ebb89b4c] Add linux-next specific files for 20150629 git bisect bad e3984319760987beee59b1d017416671ebb89b4c # bad: [0db9723cacf4d62bc3685fb15179b39ee4e17679] Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux git bisect bad 0db9723cacf4d62bc3685fb15179b39ee4e17679 # bad: [e3d8238d7f5c3f539a29f5ac596cd342d847e099] Merge tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux git bisect bad e3d8238d7f5c3f539a29f5ac596cd342d847e099 # good: [c70c5fb2b96dae0996fb0877d996458d3ca57eda] Merge tag 'pwm/for-4.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/thierry.reding/linux-pwm git bisect good c70c5fb2b96dae0996fb0877d996458d3ca57eda # good: [acd53127c4adbd34570b221e7ea1f7fc94aea923] Merge tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi git bisect good acd53127c4adbd34570b221e7ea1f7fc94aea923 # bad: [54245ed870c8cf9ff87fdf78955ffbc93b261e9f] Merge tag 'for-linus-20150623' of git://git.infradead.org/linux-mtd git bisect bad 54245ed870c8cf9ff87fdf78955ffbc93b261e9f # bad: [5a602e157a9d91d5ce98d07c404097edba8ec9f3] Merge tag 'spi-v4.2' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi git bisect bad 5a602e157a9d91d5ce98d07c404097edba8ec9f3 # bad: [1a13e36a79f25f4cf506258637e96a07ac1451f2] Merge tag 'fbdev-4.2' of git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux git bisect bad 1a13e36a79f25f4cf506258637e96a07ac1451f2 # good: [9f5ddefdc979d7b71aa4d3d7cc456c76fee80fda] fbdev: propagate result of fb_videomode_from_videomode() git bisect good 9f5ddefdc979d7b71aa4d3d7cc456c76fee80fda # good: [e31cd7824d054d30ffc9f45550343123bc437e17] power_supply: bq24257: use flags argument of devm_gpiod_get git bisect good e31cd7824d054d30ffc9f45550343123bc437e17 # good: [a9fad6886f5229fc9989ac6cdd7ddecbf570a58f] OMAPDSS: HDMI: wait for framedone when stopping video git bisect good a9fad6886f5229fc9989ac6cdd7ddecbf570a58f # bad: [a9bd32a8b4c4c2670f9ed8cae63f9378b6df3ded] msm: msm_fb: Remove dead code git bisect bad a9bd32a8b4c4c2670f9ed8cae63f9378b6df3ded # good: [ede9269572da9206249f02ebe031ded025b84fd3] OMAPDSS: remove uses of __init/__exit git bisect good ede9269572da9206249f02ebe031ded025b84fd3 # bad: [736e60ddc215b85e73bbf7da26e1cde84cc9500f] OMAPDSS: componentize omapdss git bisect bad 736e60ddc215b85e73bbf7da26e1cde84cc9500f # good: [606ae4865a1947c04d52b97b5109cda90aebe892] OMAPDSS: reorder uninit calls git bisect good 606ae4865a1947c04d52b97b5109cda90aebe892 # first bad commit: [736e60ddc215b85e73bbf7da26e1cde84cc9500f] OMAPDSS: componentize omapdss commit 736e60ddc215b85e73bbf7da26e1cde84cc9500f Author: Tomi Valkeinen Date: Thu Jun 4 15:22:23 2015 +0300 OMAPDSS: componentize omapdss omapdss kernel module contains drivers for multiple devices, one for each DSS submodule. The probing we have at the moment is a mess, and doesn't give us proper deferred probing nor ensure that all the devices are probed before omapfb/omapdrm start using omapdss. This patch solves the mess by using the component system for DSS submodules. The changes to all DSS submodules (dispc, dpi, dsi, hdmi4/5, rfbi, sdi, venc) are the same: probe & remove functions are changed to bind & unbind, and new probe & remove functions are added which call component_add/del. The dss_core driver (dss.c) acts as a component master. Adding and matching the components is simple: all dss device's child devices are added as components. However, we do have some dependencies between the drivers. The order in which they should be probed is reflected by the list in core.c (dss_output_drv_reg_funcs). The drivers are registered in that order, which causes the components to be added in that order, which makes the components to be bound in that order. This feels a bit fragile, and we probably should improve the code to manage binds in random order. However, for now, this works fine. Signed-off-by: Tomi Valkeinen Acked-by: Laurent Pinchart diff --git a/drivers/video/fbdev/omap2/dss/dispc.c b/drivers/video/fbdev/omap2/dss/dispc.c index e3417af63451..c8e34163211a 100644 --- a/drivers/video/fbdev/omap2/dss/dispc.c +++ b/drivers/video/fbdev/omap2/dss/dispc.c @@ -39,6 +39,7 @@ #include #include #include +#include #include