Received: by 2002:ac0:aed5:0:0:0:0:0 with SMTP id t21csp664978imb; Fri, 1 Mar 2019 10:34:29 -0800 (PST) X-Google-Smtp-Source: APXvYqzUukutqd7ecc0n8e/mQ9K/An0KSVXhFUAkPWnu+Pwg2MzzmclkRxAwb3ckJv5g8sFkcUA6 X-Received: by 2002:a63:d453:: with SMTP id i19mr6135581pgj.237.1551465269315; Fri, 01 Mar 2019 10:34:29 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1551465269; cv=none; d=google.com; s=arc-20160816; b=aIcNpnueARAAd4UTfqQaI0/mObdB/icT6dS5DgW5hru8yikpOFhgI/s7Sa7ZxedyX2 coYg/6Hicjfw1v3Dd3MCA2qH7HzTlbUfUCDi2T+P8UXD00ttdDtmao5hmYu8RRnjzF9d td8rE5j2Eyng1ivx5ppNBL68+7EgqvkZSxiv7ULgzddmOn0l3yPUnmfEH2R70rygNmN1 iYefDIB7A9AWi0J136Pt5xAjmyfI8379T0xIsncQF/y+fArO6CBe+gwDoRS2d6XQ4/8R ZthE6wIGK/G+gcOEtuL8f0NdQM+wFqE+FCw0k1/mDS8zaB4erTWE7LCa12uO9cC6/muZ igYA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=f3Sv++UVg2V+HyaCtufnec76MalXMb89tH3bKrzAQLY=; b=ijZUNIaY8U9xUMeR6dzRwi0uBwxefETeYU+LSSrT5xCwCEJKcYMKsNQon8VCRTpFkX D5zJP5mwZGIzwuj/FJycPj3i4PKo4FZgplLLf2/u6ZxyMbjR9ugu6tsZI88Uot3sqxP1 1e/GoEsauQjMyiW5O4mZuKh1A7lPSwydaFa5bOS6N9oNU1vNYjVPI5LZAnF/3gFUvEP/ OL5dbwnscxYinAAn20oIz49dhVbDQky3WeJeEwnOuE+53IHEXJDOogbR8PBRvC1c5q7m 7S2fzC6rQQd9yOFZcJk2lzH0vBkGlKh1dos8EXwlY4PkTPuk/HTva1OztvUqiL0q4dDf AH0A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@googlemail.com header.s=20161025 header.b=F5qYnIte; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=googlemail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id q77si21751987pfi.220.2019.03.01.10.34.13; Fri, 01 Mar 2019 10:34:29 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@googlemail.com header.s=20161025 header.b=F5qYnIte; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=googlemail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2389257AbfCAS3r (ORCPT + 99 others); Fri, 1 Mar 2019 13:29:47 -0500 Received: from mail-wm1-f67.google.com ([209.85.128.67]:50848 "EHLO mail-wm1-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2388202AbfCAS3r (ORCPT ); Fri, 1 Mar 2019 13:29:47 -0500 Received: by mail-wm1-f67.google.com with SMTP id x7so13352220wmj.0; Fri, 01 Mar 2019 10:29:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20161025; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=f3Sv++UVg2V+HyaCtufnec76MalXMb89tH3bKrzAQLY=; b=F5qYnItei8jeh+CJgIrxnZE6y3mU9Hwokgs0LAPuhCqfQRmifG4wfbbJjXXPSiSUCO 7X6c04DlR0U7E8tBCQ8fidfHouN+MlAlk4APzAgeSGgWWGH+DI7GOrK2j+mwAAVChe+5 KdaDswaEwGj8rPP7zJw3ilm/wqiImgn1ecwKFCwYZdTKEE6n5klHa0urONsdmhKwi5Fd tn+j/Uzbm6MlJ2OMEbFEIKr8tDIOzUPokrXobyZH9KtzdiWiExyMJ6EJ459enJQRXzkN aYy8fHRgvur3vNHSknqkOgZsSqReQQviHsJACpL+yV32CspF6Cat3dOcZirNK4jR1Lk5 FXlA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=f3Sv++UVg2V+HyaCtufnec76MalXMb89tH3bKrzAQLY=; b=dEmJboKeGE73ZsmTDrBKaLHci0CcrstVCRcRJ7ot/svr9228Fs9zdxKnAT0nVKmb08 DdvGJ95mPbhGH8PVz+2RXIG8K3ztMbnQNN/VlcuqsLe8yRdKmXQyqa2/joCorGymxTgQ STgSnI6Wax7t7YDvXcDJRuitY3IxAHEO8b/A39G/jnVQSB/Kzva9zmzpa7Tp0HWZ0sdO eoaO7O3NaP3/gdPwwc13kL/yLc852QnxwAakJovMsiATSCs126ImjqbWnJ44NT++w0v8 O9WX7inmHfZbpk/mfkgnRXbLdzsNNk9NuNObErZL/2o52yvLuDkQCHB635QjMeKZT67p p4XA== X-Gm-Message-State: APjAAAUd+erKImxBPMGeuQfTlHRWyr7rBF59WG2dw5xrelNWge+AmD5K PJ2Wlh2GHsJ6PJULmjUyU6ZYAzCk X-Received: by 2002:a1c:b6d5:: with SMTP id g204mr3880389wmf.107.1551464984355; Fri, 01 Mar 2019 10:29:44 -0800 (PST) Received: from blackbox.darklights.net (p200300DCD7109200428D5CFFFEB99DB8.dip0.t-ipconnect.de. [2003:dc:d710:9200:428d:5cff:feb9:9db8]) by smtp.googlemail.com with ESMTPSA id l18sm21221367wrv.20.2019.03.01.10.29.42 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 01 Mar 2019 10:29:43 -0800 (PST) From: Martin Blumenstingl To: liang.yang@amlogic.com Cc: linux-mtd@lists.infradead.org, linux-amlogic@lists.infradead.org, devicetree@vger.kernel.org, robh+dt@kernel.org, mark.rutland@arm.com, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, jianxin.pan@amlogic.com, Martin Blumenstingl Subject: [RFC PATCH nand-next 0/2] meson-nand: support for older SoCs Date: Fri, 1 Mar 2019 19:29:20 +0100 Message-Id: <20190301182922.8309-1-martin.blumenstingl@googlemail.com> X-Mailer: git-send-email 2.21.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Liang, I am trying to add support for older SoCs to the meson-nand driver. Back when the driver was in development I used an early revision (of your driver) and did some modifications to make it work on older SoCs. Now that the driver is upstream I wanted to give it another try and make a real patch out of it. Unfortunately it's not working anymore. As far as I know the NFC IP block revision on GXL is similar (or even the same?) as on all older SoCs. As far as I can tell only the clock setup is different on the older SoCs (which have a dedicated NAND clock): - we don't need the "amlogic,mmc-syscon" property on the older SoCs because we don't need to setup any muxing (common clock framework will do everything for us) - "rx" and "tx" clocks don't exist - I could not find any other differences between Meson8, Meson8b, Meson8m2, GXBB and GXL In this series I'm sending two patches which add support for the older SoCs. Unfortunately these patches are currently not working for me (hence the "RFC" prefix). I get a (strange) crash which is triggered by the kzalloc() in meson_nfc_read_buf() - see below for more details. Can you please help me on this one? I'd like to know whether: - the meson-nand driver works for you on GXL or AXG on linux-next? (I was running these patches on top of next-20190301 on my M8S board which uses a 32-bit Meson8m2 SoC. I don't have any board using a GXL SoC which also has NAND) - you see any issue with my patches? (maybe I missed more differences between GXL and the older SoCs) kernel log extract: [...] Could not find a valid ONFI parameter page, trying bit-wise majority to recover it ONFI parameter recovery failed, aborting Unable to handle kernel paging request at virtual address 80110000 pgd = (ptrval) [80110000] *pgd=00000000 Internal error: Oops: 5 [#1] PREEMPT SMP ARM Modules linked in: CPU: 2 PID: 1 Comm: swapper/0 Not tainted 5.0.0-rc8-next-20190301-00053-g50ac6f7757e2 #4145 Hardware name: Amlogic Meson platform PC is at kmem_cache_alloc_trace+0xc8/0x268 LR is at kmem_cache_alloc_trace+0x2c/0x268 pc : [] lr : [] psr: 60000013 sp : c02adc58 ip : e9e7a440 fp : 00004ee2 r10: 80110000 r9 : ffffe000 r8 : c110918c r7 : 00000008 r6 : c08967c0 r5 : 00000dc0 r4 : c0201e40 r3 : c109dd30 r2 : 00000000 r1 : 00004ee2 r0 : 00000000 Flags: nZCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment none Control: 10c5387d Table: 0020404a DAC: 00000051 Process swapper/0 (pid: 1, stack limit = 0x(ptrval)) Stack: (0xc02adc58 to 0xc02ae000) dc40: e9d84048 00000003 dc60: e9e7a440 c02add18 00000028 e9e68680 c02adcf0 00000003 e9d84048 00000002 dc80: e9e7a440 c08967c0 c1108cb4 c02adcdc 10624dd3 c02adce4 10624dd3 00000005 dca0: e9e7a440 c0f5c310 00000028 c0f09998 00000005 e9d84048 00000005 c02add57 dcc0: c1108c88 e9e7a440 c02adcf0 e9d84428 e9d843b0 c0882258 000000ff 40000000 dce0: c02adce8 00000000 c02adcf0 00000003 00000000 00000090 00000000 00000000 dd00: 00000000 00000001 00000001 c02adcdf 00000000 00000190 00000002 00000005 dd20: c02add57 00000001 00000000 a10a1ef7 00000000 c1108c88 c1180250 e9d843c0 dd40: 00000001 000000de 00000000 c088d114 c0f08db4 00d843c0 00000000 a10a1ef7 dd60: 00000015 e9d84048 c1108c88 c088d470 e9d84048 c08888b4 00000000 60000013 dd80: c0eebc9c 000000ad c0da01ac 00000000 e9e7a48c c0cc6d50 c12122cc a10a1ef7 dda0: e9e7a440 e9e7a440 e9d84040 c0eebc9c e987f410 eafd6748 e9d84048 c1108c88 ddc0: e9e7a48c c0895c70 00000000 e9871f00 e9e7a440 c04eef60 00000000 eafd64bc dde0: e9e7a534 00000000 00000000 00000000 00000001 a10a1ef7 00000000 e987f410 de00: 00000000 c1180728 00000000 00000000 c1180728 00000000 c1071854 c07fd388 de20: c120da38 e987f410 c120da3c 00000000 00000000 c07fb410 e987f410 c1180728 de40: c1180728 c07fb910 00000000 c1071834 c10004a8 c07fb65c c10004a8 c0a917b4 de60: c0da1914 e987f410 00000000 c1180728 c07fb910 00000000 c1071834 c10004a8 de80: c1071854 c07fb908 00000000 c1180728 e987f410 c07fb968 e98b8eb4 c1108c88 dea0: c1180728 c07f97d4 c1175260 c029a958 e98b8eb4 a10a1ef7 c029a96c c1180728 dec0: e9e1fa80 c1175260 00000000 c07fa844 c0f09c64 c1108c88 ffffe000 c1180728 dee0: c1108c88 ffffe000 c103b788 c07fc494 c11c2ca0 c1108c88 ffffe000 c0302f1c df00: ebfffd96 c0346f90 c0fab8a0 c0f2ad00 00000000 00000006 00000006 c0e9e26c df20: 00000000 c1108c88 c0eb11b0 c0e9e2e0 c11d1300 ebfffd84 ebfffd89 a10a1ef7 df40: c1071838 c11c2ca0 c10914b8 a10a1ef7 c11c2ca0 c1091804 00000007 c11d1300 df60: c11d1300 c1001180 00000006 00000006 00000000 c10004a8 0000013d 00000000 df80: c02c0504 00000000 c0cbf6e8 00000000 00000000 00000000 00000000 00000000 dfa0: 00000000 c0cbf6f0 00000000 c03010e8 00000000 00000000 00000000 00000000 dfc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 dfe0: 00000000 00000000 00000000 00000000 00000013 00000000 00000000 00000000 [] (kmem_cache_alloc_trace) from [] (meson_nfc_exec_op+0x2c4/0x3e8) [] (meson_nfc_exec_op) from [] (nand_readid_op+0x128/0x1c4) [] (nand_readid_op) from [] (hynix_nand_has_valid_jedecid+0x34/0x78) [] (hynix_nand_has_valid_jedecid) from [] (hynix_nand_decode_id+0x64/0x3fc) [] (hynix_nand_decode_id) from [] (nand_scan_with_ids+0xa04/0x171c) [] (nand_scan_with_ids) from [] (meson_nfc_probe+0x460/0x690) [] (meson_nfc_probe) from [] (platform_drv_probe+0x48/0x98) [] (platform_drv_probe) from [] (really_probe+0x1e0/0x2cc) [] (really_probe) from [] (driver_probe_device+0x60/0x16c) [] (driver_probe_device) from [] (device_driver_attach+0x58/0x60) [] (device_driver_attach) from [] (__driver_attach+0x58/0xcc) [] (__driver_attach) from [] (bus_for_each_dev+0x74/0xb4) [] (bus_for_each_dev) from [] (bus_add_driver+0x1b8/0x1d8) [] (bus_add_driver) from [] (driver_register+0x74/0x108) [] (driver_register) from [] (do_one_initcall+0x54/0x284) [] (do_one_initcall) from [] (kernel_init_freeable+0x2d4/0x36c) [] (kernel_init_freeable) from [] (kernel_init+0x8/0x110) [] (kernel_init) from [] (ret_from_fork+0x14/0x2c) Exception stack(0xc02adfb0 to 0xc02adff8) dfa0: 00000000 00000000 00000000 00000000 dfc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 dfe0: 00000000 00000000 00000000 00000000 00000013 00000000 Code: e5943000 e5942014 e3130007 1a000038 (e79ae002) ---[ end trace 28d391ed14b0f021 ]--- Martin Blumenstingl (2): dt-bindings: nand: meson: add support for more SoCs mtd: rawnand: meson: support for older SoCs up to Meson8 .../bindings/mtd/amlogic,meson-nand.txt | 14 ++++-- drivers/mtd/nand/raw/meson_nand.c | 46 +++++++++++++------ 2 files changed, 42 insertions(+), 18 deletions(-) -- 2.21.0