Received: by 2002:a05:6a10:f347:0:0:0:0 with SMTP id d7csp3398963pxu; Mon, 30 Nov 2020 02:07:28 -0800 (PST) X-Google-Smtp-Source: ABdhPJwPDUVSU3M3YpmdgHB6kCdosnJd9hQzETv1G90T4o07YtiyQmGRVMLPIst64bjiGnTMabU7 X-Received: by 2002:aa7:c60c:: with SMTP id h12mr5312042edq.145.1606730848286; Mon, 30 Nov 2020 02:07:28 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1606730848; cv=none; d=google.com; s=arc-20160816; b=mYfOxOZycWXiqTMaoAdUxzhwr9Xa12zAmtY45LwJNrCId9E6eYXPXdq3cGc+MMMdrB oFr0oOWzxCLahO4gVRzDGOiGVliKKA9crucaLFUdHZHUwqhhH1gHHDHixUu9JDuM9oK6 1ho5qGZjpEfZg6fDAXcKlhkJJu9CcXCjOg0erslIgSyQJI6K5YgFZ95nRUv/PqafOAOg NJN3CUqknOxuXd6ZNoHJ1rQjzyF/Jj1FhrpHv0BocdOoLAgTs2CI6qAhd1fiMX7FfcGX wz/wu0msD7Sxo30fuHZxxh2uPEyGvMGC8eLyUZzYTuI6AzrRVtnI+5meBlR2IPSw18ar TKgA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:message-id:date:subject:cc:to:from; bh=MXssL1oYQcaVpmAzzXrQ6R4vu61oJkxQClXKCz6VR9U=; b=EWouJqE7VHuDK9uilgsNVaTJMFVxjdpjmw6q1tmPweGek8JzJP48rStBWA8j5IUl6i 1a9lDALpkwQBUP1NzyqHoGKhtKb74R+rjWZe2d8QQdX4PjYsAXXWKAkNJpfnjGwABEdX xaBb2pdViyx5IB1xXEXC36D+Qqu6vOgOneXqLwFnJk6K+7ur/uD2IQHnV+P0drjitPdh LecK3+K2g910YqRUFU8HMGb5py7X+8BELTlj8+gmiocLVxIYc5QlYeSG96gYQw1DEhTp 57ertxBTVfgzv4Al/8Sg4N6xRMb0JXwlm16/pSlUfZfp+5s46Rn2BUR75UcLbZQ1Aash Bi8Q== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id x91si10447515edc.442.2020.11.30.02.07.06; Mon, 30 Nov 2020 02:07:28 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728504AbgK3KDK (ORCPT + 99 others); Mon, 30 Nov 2020 05:03:10 -0500 Received: from lucky1.263xmail.com ([211.157.147.131]:41950 "EHLO lucky1.263xmail.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726158AbgK3KDJ (ORCPT ); Mon, 30 Nov 2020 05:03:09 -0500 Received: from localhost (unknown [192.168.167.32]) by lucky1.263xmail.com (Postfix) with ESMTP id 6A886B693C; Mon, 30 Nov 2020 18:00:46 +0800 (CST) X-MAIL-GRAY: 0 X-MAIL-DELIVERY: 1 X-ADDR-CHECKED4: 1 X-ANTISPAM-LEVEL: 2 X-ABS-CHECKED: 0 Received: from localhost.localdomain (unknown [58.22.7.114]) by smtp.263.net (postfix) whith ESMTP id P26666T140451562632960S1606730439337010_; Mon, 30 Nov 2020 18:00:45 +0800 (CST) X-IP-DOMAINF: 1 X-UNIQUE-TAG: <814f726f99261274f19fd6e8cbb2dfb3> X-RL-SENDER: yifeng.zhao@rock-chips.com X-SENDER: zyf@rock-chips.com X-LOGIN-NAME: yifeng.zhao@rock-chips.com X-FST-TO: miquel.raynal@bootlin.com X-SENDER-IP: 58.22.7.114 X-ATTACHMENT-NUM: 0 X-System-Flag: 0 From: Yifeng Zhao To: miquel.raynal@bootlin.com, richard@nod.at, vigneshr@ti.com, robh+dt@kernel.org Cc: devicetree@vger.kernel.org, linux-mtd@lists.infradead.org, heiko@sntech.de, linux-rockchip@lists.infradead.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Yifeng Zhao Subject: [PATCH v15 0/8] Add Rockchip NFC drivers for RK3308 and others Date: Mon, 30 Nov 2020 18:00:27 +0800 Message-Id: <20201130100031.22083-1-yifeng.zhao@rock-chips.com> X-Mailer: git-send-email 2.17.1 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Rockchp's NFC(Nand Flash Controller) has four versions: V600, V622, V800 and V900.This series patch can support all four versions. Changes in v15: - Use a buffer pointer nfc->page_buf instead of the original two pointers. - Fix coding style. - Fix some comments. Changes in v14: - Add oob_read and oob_write hook api. - Support timing config and ecc config for each chips. - Fix some comments. Changes in v13: - The nfc->buffer will realloc while the page size of the second mtd is large than the first one. - Fix coding style. - Fix some comments. Changes in v12: - Fix some warnings while make dt_binding_check - Drop a allOf defined Changes in v11: - Fix compile error. Changes in v10: - Fix compile error on master v5.9-rc7. Changes in v9: - The nfc->buffer will realloc while the page size of the second mtd is large than the first one - Fix coding style. - Remove struct rk_nfc_clk. - Prepend some function with rk_nfc_. - Replace function readl_poll_timeout_atomic with readl_relaxed_poll_timeout. - Remove function rk_nfc_read_byte and rk_nfc_write_byte. - Don't select the die if 'check_only == true' in function rk_nfc_exec_op. - Modify function rk_nfc_write_page and rk_nfc_write_page_raw. Changes in v8: - Fix a error while make dt_binding_check Changes in v7: - Fix some wrong define - Rebase to linux-next. - Fix coding style. - Reserved 4 bytes at the beginning of the oob area. - Page raw read and write included ecc data. Changes in v6: - Fix some wrong define - Modified the definition of compatible - The mtd->name set by NAND label property. - Add some comments. - Fix compile error. Changes in v5: - Fix some wrong define. - Add boot-medium define. - Remove some compatible define. - Add boot blocks support with different ECC for bootROM. - Rename rockchip-nand.c to rockchip-nand-controller.c. - Unification of other variable names. - Remove some compatible define. Changes in v4: - The compatible define with rkxx_nfc. - Add assigned-clocks. - Fix some wrong defineChanges in. - Define platform data structure for the register offsets. - The compatible define with rkxx_nfc. - Use SET_SYSTEM_SLEEP_PM_OPS to define PM_OPS. - Use exec_op instead of legacy hooks. Changes in v3: - Change the title for the dt-bindings. Changes in v2: - Fix compile error. - Include header files sorted by file name. Yifeng Zhao (8): dt-bindings: mtd: Describe Rockchip RK3xxx NAND flash controller mtd: rawnand: rockchip: NFC drivers for RK3308, RK2928 and others MAINTAINERS: add maintainers to ROCKCHIP NFC arm64: dts: rockchip: Add NFC node for RK3308 SoC arm64: dts: rockchip: Add NFC node for PX30 SoC arm: dts: rockchip: Add NFC node for RV1108 SoC arm: dts: rockchip: Add NFC node for RK2928 and other SoCs arm: dts: rockchip: Add NFC node for RK3036 SoC .../mtd/rockchip,nand-controller.yaml | 161 ++ MAINTAINERS | 4 +- arch/arm/boot/dts/rk3036.dtsi | 52 + arch/arm/boot/dts/rk3xxx.dtsi | 9 + arch/arm/boot/dts/rv1108.dtsi | 11 + arch/arm64/boot/dts/rockchip/px30.dtsi | 15 + arch/arm64/boot/dts/rockchip/rk3308.dtsi | 15 + drivers/mtd/nand/raw/Kconfig | 12 + drivers/mtd/nand/raw/Makefile | 1 + .../mtd/nand/raw/rockchip-nand-controller.c | 1500 +++++++++++++++++ 10 files changed, 1778 insertions(+), 2 deletions(-) create mode 100644 Documentation/devicetree/bindings/mtd/rockchip,nand-controller.yaml create mode 100644 drivers/mtd/nand/raw/rockchip-nand-controller.c -- 2.17.1