From patchwork Tue Dec 19 08:25:48 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "J, KEERTHY" X-Patchwork-Id: 10122651 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 94D606019C for ; Tue, 19 Dec 2017 08:26:53 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 825432875A for ; Tue, 19 Dec 2017 08:26:53 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 76C362904D; Tue, 19 Dec 2017 08:26:53 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.8 required=2.0 tests=BAYES_00,DKIM_SIGNED, RCVD_IN_DNSWL_HI,T_DKIM_INVALID autolearn=unavailable version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 1DB192875A for ; Tue, 19 Dec 2017 08:26:53 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1759177AbdLSI0n (ORCPT ); Tue, 19 Dec 2017 03:26:43 -0500 Received: from fllnx210.ext.ti.com ([198.47.19.17]:32356 "EHLO fllnx210.ext.ti.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1758335AbdLSI0m (ORCPT ); Tue, 19 Dec 2017 03:26:42 -0500 Received: from dflxv15.itg.ti.com ([128.247.5.124]) by fllnx210.ext.ti.com (8.15.1/8.15.1) with ESMTP id vBJ8Pr0l020990; Tue, 19 Dec 2017 02:25:53 -0600 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ti.com; s=ti-com-17Q1; t=1513671953; bh=yU/U6uhA2zTUkjru1qIEhq/OzqaBZjfPYtx1GG01RKw=; h=Subject:From:To:CC:References:Date:In-Reply-To; b=di+ysnw6+TENOi1ErKXL7GbfACDwT7DGgJn/H8X918DsDsSge6gBeCHC3w1GM4Eox EtCbwDVBU1TAFBHG5TdhHgBK1vYwmGEFd9GLLnl7m2zVojmit1tXEAvUyxtKK1Fq9u 122xlwP/oJ2ye17beniwPPiE4y/TX3+deT4hWKGQ= Received: from DFLE100.ent.ti.com (dfle100.ent.ti.com [10.64.6.21]) by dflxv15.itg.ti.com (8.14.3/8.13.8) with ESMTP id vBJ8PrLf026225; Tue, 19 Dec 2017 02:25:53 -0600 Received: from DFLE105.ent.ti.com (10.64.6.26) by DFLE100.ent.ti.com (10.64.6.21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1261.35; Tue, 19 Dec 2017 02:25:53 -0600 Received: from dflp32.itg.ti.com (10.64.6.15) by DFLE105.ent.ti.com (10.64.6.26) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.1.1261.35 via Frontend Transport; Tue, 19 Dec 2017 02:25:53 -0600 Received: from [172.24.191.45] (ileax41-snat.itg.ti.com [10.172.224.153]) by dflp32.itg.ti.com (8.14.3/8.13.8) with ESMTP id vBJ8PmqR009394; Tue, 19 Dec 2017 02:25:49 -0600 Subject: Re: [PATCH v5 7/8] pwm: pwm-omap-dmtimer: Adapt driver to utilize dmtimer pdata ops From: Keerthy To: Ladislav Michl CC: , , , , , , , , , , , , References: <1513059137-21593-1-git-send-email-j-keerthy@ti.com> <1513059137-21593-8-git-send-email-j-keerthy@ti.com> <20171218093153.GA22729@lenoch> Message-ID: Date: Tue, 19 Dec 2017 13:55:48 +0530 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.4.0 MIME-Version: 1.0 In-Reply-To: Content-Language: en-US X-EXCLAIMER-MD-CONFIG: e1e8a2fd-e40a-4ac6-ac9b-f7e9cc9ee180 Sender: linux-omap-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-omap@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP On Tuesday 19 December 2017 10:28 AM, Keerthy wrote: > > > On Monday 18 December 2017 06:25 PM, Keerthy wrote: >> >> >> On Monday 18 December 2017 03:01 PM, Ladislav Michl wrote: >>> Keerthy, >>> >>> On Tue, Dec 12, 2017 at 11:42:16AM +0530, Keerthy wrote: >>>> Adapt driver to utilize dmtimer pdata ops instead of pdata-quirks. >>>> >>>> Signed-off-by: Keerthy >>>> --- >>>> >>>> Changes in v4: >>>> >>>> * Switched to dev_get_platdata. >>> >>> Where do you expect dev.platform_data to be set? PWM driver is failing >>> with: >>> omap-dmtimer-pwm dmtimer-pwm: dmtimer pdata structure NULL >>> omap-dmtimer-pwm: probe of dmtimer-pwm failed with error -22 >>> >>> Which I fixed with patch bellow, to be able to test your patchset. >> >> Thanks! I will make the below patch part of my series. >> >>> >>> Also I'm running a bit out of time, so I'll send few clean up >>> patches and event capture code to get some feedback early. >>> >>> Regards, >>> ladis >>> >>> diff --git a/drivers/clocksource/timer-dm.c b/drivers/clocksource/timer-dm.c >>> index 39be39e6a8dd..d3d8a49cae0d 100644 >>> --- a/drivers/clocksource/timer-dm.c >>> +++ b/drivers/clocksource/timer-dm.c >>> @@ -773,6 +773,7 @@ static int omap_dm_timer_probe(struct platform_device *pdev) >>> dev_err(dev, "%s: no platform data.\n", __func__); >>> return -ENODEV; >>> } >>> + dev->platform_data = pdata; > > drivers/clocksource/timer-dm.c: In function 'omap_dm_timer_probe': > drivers/clocksource/timer-dm.c:744:21: warning: assignment discards > 'const' qualifier from pointer target type > > This cannot be done as we are assigning a const pointer to a non-const > pointer. > > I will figure out a different way for this fix. Ladis, I fixed that: dev_err(dev, "%s: no IRQ resource.\n", __func__); @@ -946,7 +950,7 @@ static int omap_dm_timer_remove(struct platform_device *pdev) .write_status = omap_dm_timer_write_status, }; -static const struct dmtimer_platform_data omap3plus_pdata = { +static struct dmtimer_platform_data omap3plus_pdata = { .timer_errata = OMAP_TIMER_ERRATA_I103_I767, .timer_ops = &dmtimer_ops, }; Can you check at your end if this works for you? > >>> >>> irq = platform_get_resource(pdev, IORESOURCE_IRQ, 0); >>> if (unlikely(!irq)) { >>> >>>> >>>> Changes in v3: >>>> >>>> * Used of_find_platdata_by_node function to fetch platform >>>> data for timer node. >>>> >>>> drivers/pwm/pwm-omap-dmtimer.c | 39 ++++++++++++++++++++++----------------- >>>> 1 file changed, 22 insertions(+), 17 deletions(-) >> -- >> To unsubscribe from this list: send the line "unsubscribe linux-omap" in >> the body of a message to majordomo@vger.kernel.org >> More majordomo info at http://vger.kernel.org/majordomo-info.html >> --- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html diff --git a/drivers/clocksource/timer-dm.c b/drivers/clocksource/timer-dm.c index 1cbd954..e58f555 100644 --- a/drivers/clocksource/timer-dm.c +++ b/drivers/clocksource/timer-dm.c @@ -807,17 +807,21 @@ static int omap_dm_timer_probe(struct platform_device *pdev) struct resource *mem, *irq; struct device *dev = &pdev->dev; const struct of_device_id *match; - const struct dmtimer_platform_data *pdata; + struct dmtimer_platform_data *pdata; int ret; match = of_match_device(of_match_ptr(omap_timer_match), dev); - pdata = match ? match->data : dev->platform_data; + pdata = match ? (struct dmtimer_platform_data *)match->data : + dev->platform_data; if (!pdata && !dev->of_node) { dev_err(dev, "%s: no platform data.\n", __func__); return -ENODEV; } + if (!dev->platform_data) + dev->platform_data = pdata; + irq = platform_get_resource(pdev, IORESOURCE_IRQ, 0); if (unlikely(!irq)) {