From patchwork Thu Dec 4 10:21:52 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Lee Jones X-Patchwork-Id: 417710 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from bombadil.infradead.org (bombadil.infradead.org [IPv6:2001:1868:205::9]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 5824A1400E2 for ; Thu, 4 Dec 2014 21:35:28 +1100 (AEDT) Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.80.1 #2 (Red Hat Linux)) id 1XwTjT-0007Gr-V7; Thu, 04 Dec 2014 10:34:00 +0000 Received: from mail-yh0-f52.google.com ([209.85.213.52]) by bombadil.infradead.org with esmtps (Exim 4.80.1 #2 (Red Hat Linux)) id 1XwTYm-0004Id-3L for linux-mtd@lists.infradead.org; Thu, 04 Dec 2014 10:23:00 +0000 Received: by mail-yh0-f52.google.com with SMTP id z6so7981445yhz.25 for ; Thu, 04 Dec 2014 02:22:31 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=Hwa6ms8D5pyxQpc4Jl1NRVh/9m9Bx0O0cZAETkcv0E0=; b=RNU2R0jdZakTeMslvCXJnVXl4CDeVRyu3hOsK6pdeiAiSEIC+NMUajSMXeCNoGuloF M8kWv9LDL9L1vrOQf3AwUA4YgnL0cSFRtf300roeyJdPkAUH4UUgMOiVNE1xvberkaU1 IMANiMVYbHyvL8LYkSZ9QjhHLvasMYM2EdCGas1Kjd/1YNJ9IuCGvGka+rk160g4W6Of f7uGUb3GjOR5TKwpUIAiE6K6z2PW2VBTD/pOe5ewKkwR3We2gfYro4oNEeiI07H5QOL0 a8/f/YQNxCzbxHgjV+PTaS+040WTqZ1CM80LSSAZzN5cw8hmpJpdPIje9EOD2/msjEu8 kH8Q== X-Gm-Message-State: ALoCoQmUKE5FYa4SF/rk5h4jIiP+Y1tj/pp+9p03gegFfNxjkeotU7m8IjQ+rn2u/l3hXN3ayhBb X-Received: by 10.236.25.1 with SMTP id y1mr11439464yhy.62.1417688551355; Thu, 04 Dec 2014 02:22:31 -0800 (PST) Received: from localhost.localdomain (host109-148-232-11.range109-148.btcentralplus.com. [109.148.232.11]) by mx.google.com with ESMTPSA id y67sm16089929yhc.11.2014.12.04.02.22.29 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Thu, 04 Dec 2014 02:22:30 -0800 (PST) From: Lee Jones To: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH v2 RESEND 11/11] mtd: st_spi_fsm: General tidy-up Date: Thu, 4 Dec 2014 10:21:52 +0000 Message-Id: <1417688512-7644-12-git-send-email-lee.jones@linaro.org> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1417688512-7644-1-git-send-email-lee.jones@linaro.org> References: <1417688512-7644-1-git-send-email-lee.jones@linaro.org> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20141204_022256_362972_DBF9B8F6 X-CRM114-Status: GOOD ( 15.98 ) X-Spam-Score: -0.7 (/) X-Spam-Report: SpamAssassin version 3.4.0 on bombadil.infradead.org summary: Content analysis details: (-0.7 points) pts rule name description ---- ---------------------- -------------------------------------------------- -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at http://www.dnswl.org/, low trust [209.85.213.52 listed in list.dnswl.org] -0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) [209.85.213.52 listed in wl.mailspike.net] -0.0 SPF_PASS SPF: sender matches SPF record -0.0 RCVD_IN_MSPIKE_WL Mailspike good senders Cc: linux-mtd@lists.infradead.org, computersforpeace@gmail.com, lee.jones@linaro.org, kernel@stlinux.com X-BeenThere: linux-mtd@lists.infradead.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: Linux MTD discussion mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: "linux-mtd" Errors-To: linux-mtd-bounces+incoming=patchwork.ozlabs.org@lists.infradead.org Due to the nature of the port (lots of copy/paste) much of the white-space is taken up by spaces instead of tab separators. This patch aims to change that. Signed-off-by: Lee Jones --- drivers/mtd/devices/st_spi_fsm.c | 280 +++++++++++++++++++-------------------- 1 file changed, 140 insertions(+), 140 deletions(-) diff --git a/drivers/mtd/devices/st_spi_fsm.c b/drivers/mtd/devices/st_spi_fsm.c index f992f00..03e4bc1 100644 --- a/drivers/mtd/devices/st_spi_fsm.c +++ b/drivers/mtd/devices/st_spi_fsm.c @@ -82,9 +82,9 @@ #define SPI_CFG_CS_SETUPHOLD(x) (((x) & 0xff) << 16) #define SPI_CFG_DATA_HOLD(x) (((x) & 0xff) << 24) -#define SPI_CFG_DEFAULT_MIN_CS_HIGH SPI_CFG_MIN_CS_HIGH(0x0AA) -#define SPI_CFG_DEFAULT_CS_SETUPHOLD SPI_CFG_CS_SETUPHOLD(0xA0) -#define SPI_CFG_DEFAULT_DATA_HOLD SPI_CFG_DATA_HOLD(0x00) +#define SPI_CFG_DEFAULT_MIN_CS_HIGH SPI_CFG_MIN_CS_HIGH(0x0AA) +#define SPI_CFG_DEFAULT_CS_SETUPHOLD SPI_CFG_CS_SETUPHOLD(0xA0) +#define SPI_CFG_DEFAULT_DATA_HOLD SPI_CFG_DATA_HOLD(0x00) /* * Register: SPI_FAST_SEQ_TRANSFER_SIZE @@ -164,7 +164,7 @@ #define STFSM_OPC_ADD 0x2 #define STFSM_OPC_STA 0x3 #define STFSM_OPC_MODE 0x4 -#define STFSM_OPC_DUMMY 0x5 +#define STFSM_OPC_DUMMY 0x5 #define STFSM_OPC_DATA 0x6 #define STFSM_OPC_WAIT 0x7 #define STFSM_OPC_JUMP 0x8 @@ -197,88 +197,87 @@ #define STFSM_INST_WAIT STFSM_INSTR(STFSM_OPC_WAIT, 0) #define STFSM_INST_STOP STFSM_INSTR(STFSM_OPC_STOP, 0) -#define STFSM_DEFAULT_EMI_FREQ 100000000UL /* 100 MHz */ -#define STFSM_DEFAULT_WR_TIME (STFSM_DEFAULT_EMI_FREQ * (15/1000)) /* 15ms */ +#define STFSM_DEFAULT_EMI_FREQ 100000000UL /* 100 MHz */ +#define STFSM_DEFAULT_WR_TIME (STFSM_DEFAULT_EMI_FREQ * (15/1000)) /* 15ms */ -#define STFSM_FLASH_SAFE_FREQ 10000000UL /* 10 MHz */ +#define STFSM_FLASH_SAFE_FREQ 10000000UL /* 10 MHz */ -#define STFSM_MAX_WAIT_SEQ_MS 1000 /* FSM execution time */ +#define STFSM_MAX_WAIT_SEQ_MS 1000 /* FSM execution time */ /* S25FLxxxS commands */ -#define S25FL_CMD_WRITE4_1_1_4 0x34 -#define S25FL_CMD_SE4 0xdc -#define S25FL_CMD_CLSR 0x30 -#define S25FL_CMD_DYBWR 0xe1 -#define S25FL_CMD_DYBRD 0xe0 -#define S25FL_CMD_WRITE4 0x12 /* Note, opcode clashes with +#define S25FL_CMD_WRITE4_1_1_4 0x34 +#define S25FL_CMD_SE4 0xdc +#define S25FL_CMD_CLSR 0x30 +#define S25FL_CMD_DYBWR 0xe1 +#define S25FL_CMD_DYBRD 0xe0 +#define S25FL_CMD_WRITE4 0x12 /* Note, opcode clashes with * 'SPINOR_OP_WRITE_1_4_4' * as found on N25Qxxx devices! */ - /* Status register */ -#define FLASH_STATUS_BUSY 0x01 -#define FLASH_STATUS_WEL 0x02 -#define FLASH_STATUS_BP0 0x04 -#define FLASH_STATUS_BP1 0x08 -#define FLASH_STATUS_BP2 0x10 -#define FLASH_STATUS_SRWP0 0x80 -#define FLASH_STATUS_TIMEOUT 0xff +#define FLASH_STATUS_BUSY 0x01 +#define FLASH_STATUS_WEL 0x02 +#define FLASH_STATUS_BP0 0x04 +#define FLASH_STATUS_BP1 0x08 +#define FLASH_STATUS_BP2 0x10 +#define FLASH_STATUS_SRWP0 0x80 +#define FLASH_STATUS_TIMEOUT 0xff /* Maximum READID length */ -#define MAX_READID_LEN 6 -#define MAX_READID_LEN_ALIGNED ALIGN(MAX_READID_LEN, 4) +#define MAX_READID_LEN 6 +#define MAX_READID_LEN_ALIGNED ALIGN(MAX_READID_LEN, 4) /* S25FL Error Flags */ -#define S25FL_STATUS_E_ERR 0x20 -#define S25FL_STATUS_P_ERR 0x40 +#define S25FL_STATUS_E_ERR 0x20 +#define S25FL_STATUS_P_ERR 0x40 /* N25Q - READ/WRITE/CLEAR NON/VOLATILE STATUS/CONFIG Registers */ -#define N25Q_CMD_RFSR 0x70 -#define N25Q_CMD_CLFSR 0x50 -#define N25Q_CMD_WRVCR 0x81 -#define N25Q_CMD_RDVCR 0x85 -#define N25Q_CMD_RDVECR 0x65 -#define N25Q_CMD_RDNVCR 0xb5 -#define N25Q_CMD_WRNVCR 0xb1 +#define N25Q_CMD_RFSR 0x70 +#define N25Q_CMD_CLFSR 0x50 +#define N25Q_CMD_WRVCR 0x81 +#define N25Q_CMD_RDVCR 0x85 +#define N25Q_CMD_RDVECR 0x65 +#define N25Q_CMD_RDNVCR 0xb5 +#define N25Q_CMD_WRNVCR 0xb1 /* N25Q Flags Status Register: Error Flags */ -#define N25Q_FLAGS_ERR_ERASE BIT(5) -#define N25Q_FLAGS_ERR_PROG BIT(4) -#define N25Q_FLAGS_ERR_VPP BIT(3) -#define N25Q_FLAGS_ERR_PROT BIT(1) -#define N25Q_FLAGS_ERROR (N25Q_FLAGS_ERR_ERASE | \ - N25Q_FLAGS_ERR_PROG | \ - N25Q_FLAGS_ERR_VPP | \ - N25Q_FLAGS_ERR_PROT) - -#define FLASH_PAGESIZE 256 /* In Bytes */ -#define FLASH_PAGESIZE_32 (FLASH_PAGESIZE / 4) /* In uint32_t */ +#define N25Q_FLAGS_ERR_ERASE BIT(5) +#define N25Q_FLAGS_ERR_PROG BIT(4) +#define N25Q_FLAGS_ERR_VPP BIT(3) +#define N25Q_FLAGS_ERR_PROT BIT(1) +#define N25Q_FLAGS_ERROR (N25Q_FLAGS_ERR_ERASE | \ + N25Q_FLAGS_ERR_PROG | \ + N25Q_FLAGS_ERR_VPP | \ + N25Q_FLAGS_ERR_PROT) + +#define FLASH_PAGESIZE 256 /* In Bytes */ +#define FLASH_PAGESIZE_32 (FLASH_PAGESIZE / 4) /* In uint32_t */ /* Maximum operation times (in ms) */ -#define FLASH_MAX_CHIP_ERASE_MS 500000 /* Chip Erase time */ -#define FLASH_MAX_SEC_ERASE_MS 30000 /* Sector Erase time */ -#define FLASH_MAX_PAGE_WRITE_MS 100 /* Write Page time */ -#define FLASH_MAX_STA_WRITE_MS 4000 /* Write status reg time */ -#define FSM_MAX_WAIT_SEQ_MS 1000 /* FSM execution time */ +#define FLASH_MAX_CHIP_ERASE_MS 500000 /* Chip Erase time */ +#define FLASH_MAX_SEC_ERASE_MS 30000 /* Sector Erase time */ +#define FLASH_MAX_PAGE_WRITE_MS 100 /* Write Page time */ +#define FLASH_MAX_STA_WRITE_MS 4000 /* Write status reg time */ +#define FSM_MAX_WAIT_SEQ_MS 1000 /* FSM execution time */ /* * Flags to tweak operation of default read/write/erase routines */ -#define CFG_READ_TOGGLE_32BIT_ADDR 0x00000001 -#define CFG_WRITE_TOGGLE_32BIT_ADDR 0x00000002 -#define CFG_ERASESEC_TOGGLE_32BIT_ADDR 0x00000008 -#define CFG_S25FL_CHECK_ERROR_FLAGS 0x00000010 -#define CFG_N25Q_CHECK_ERROR_FLAGS 0x00000020 +#define CFG_READ_TOGGLE_32BIT_ADDR 0x00000001 +#define CFG_WRITE_TOGGLE_32BIT_ADDR 0x00000002 +#define CFG_ERASESEC_TOGGLE_32BIT_ADDR 0x00000008 +#define CFG_S25FL_CHECK_ERROR_FLAGS 0x00000010 +#define CFG_N25Q_CHECK_ERROR_FLAGS 0x00000020 struct stfsm_seq { - uint32_t data_size; - uint32_t addr1; - uint32_t addr2; - uint32_t addr_cfg; - uint32_t seq_opc[5]; - uint32_t mode; - uint32_t dummy; - uint32_t status; - uint8_t seq[16]; - uint32_t seq_cfg; + uint32_t data_size; + uint32_t addr1; + uint32_t addr2; + uint32_t addr_cfg; + uint32_t seq_opc[5]; + uint32_t mode; + uint32_t dummy; + uint32_t status; + uint8_t seq[16]; + uint32_t seq_cfg; } __packed __aligned(4); struct stfsm { @@ -287,51 +286,52 @@ struct stfsm { struct resource *region; struct mtd_info mtd; struct mutex lock; - struct flash_info *info; - struct clk *clk; - - uint32_t configuration; - uint32_t fifo_dir_delay; - bool booted_from_spi; - bool reset_signal; - bool reset_por; - - struct stfsm_seq stfsm_seq_read; - struct stfsm_seq stfsm_seq_write; - struct stfsm_seq stfsm_seq_en_32bit_addr; + struct flash_info *info; + struct clk *clk; + + uint32_t configuration; + uint32_t fifo_dir_delay; + bool booted_from_spi; + bool reset_signal; + bool reset_por; + + struct stfsm_seq stfsm_seq_read; + struct stfsm_seq stfsm_seq_write; + struct stfsm_seq stfsm_seq_en_32bit_addr; }; /* Parameters to configure a READ or WRITE FSM sequence */ struct seq_rw_config { - uint32_t flags; /* flags to support config */ - uint8_t cmd; /* FLASH command */ - int write; /* Write Sequence */ - uint8_t addr_pads; /* No. of addr pads (MODE & DUMMY) */ - uint8_t data_pads; /* No. of data pads */ - uint8_t mode_data; /* MODE data */ - uint8_t mode_cycles; /* No. of MODE cycles */ - uint8_t dummy_cycles; /* No. of DUMMY cycles */ + uint32_t flags; /* flags to support config */ + uint8_t cmd; /* FLASH command */ + int write; /* Write Sequence */ + uint8_t addr_pads; /* No. of addr pads */ + /* (MODE & DUMMY) */ + uint8_t data_pads; /* No. of data pads */ + uint8_t mode_data; /* MODE data */ + uint8_t mode_cycles; /* No. of MODE cycles */ + uint8_t dummy_cycles; /* No. of DUMMY cycles */ }; /* SPI Flash Device Table */ struct flash_info { - char *name; - /* READID data, as returned by 'SPINOR_OP_RDID' (0x9f). */ - u8 readid[MAX_READID_LEN]; - int readid_len; + char *name; + /* READID data, as returned by 'FLASH_CMD_RDID' (0x9f). */ + u8 readid[MAX_READID_LEN]; + int readid_len; /* * The size listed here is what works with SPINOR_OP_SE, which isn't * necessarily called a "sector" by the vendor. */ - unsigned sector_size; - u16 n_sectors; - u32 flags; + unsigned sector_size; + u16 n_sectors; + u32 flags; /* * Note, where FAST_READ is supported, freq_max specifies the * FAST_READ frequency, not the READ frequency. */ - u32 max_freq; - int (*config)(struct stfsm *); + u32 max_freq; + int (*config)(struct stfsm *); }; /* Device with standard 3-byte JEDEC ID */ @@ -384,9 +384,9 @@ static struct flash_info flash_types[] = { JEDEC_INFO("m25p64", 0x202017, 64 * 1024, 128, M25P_FLAG, 50, NULL), JEDEC_INFO("m25p128", 0x202018, 256 * 1024, 64, M25P_FLAG, 50, NULL), -#define M25PX_FLAG (FLASH_FLAG_READ_WRITE | \ - FLASH_FLAG_READ_FAST | \ - FLASH_FLAG_READ_1_1_2 | \ +#define M25PX_FLAG (FLASH_FLAG_READ_WRITE | \ + FLASH_FLAG_READ_FAST | \ + FLASH_FLAG_READ_1_1_2 | \ FLASH_FLAG_WRITE_1_1_2) JEDEC_INFO("m25px32", 0x207116, 64 * 1024, 64, M25PX_FLAG, 75, NULL), JEDEC_INFO("m25px64", 0x207117, 64 * 1024, 128, M25PX_FLAG, 75, NULL), @@ -395,12 +395,12 @@ static struct flash_info flash_types[] = { * - Support for 'FLASH_FLAG_WRITE_1_4_4' is omitted for devices * where operating frequency must be reduced. */ -#define MX25_FLAG (FLASH_FLAG_READ_WRITE | \ - FLASH_FLAG_READ_FAST | \ - FLASH_FLAG_READ_1_1_2 | \ - FLASH_FLAG_READ_1_2_2 | \ - FLASH_FLAG_READ_1_1_4 | \ - FLASH_FLAG_SE_4K | \ +#define MX25_FLAG (FLASH_FLAG_READ_WRITE | \ + FLASH_FLAG_READ_FAST | \ + FLASH_FLAG_READ_1_1_2 | \ + FLASH_FLAG_READ_1_2_2 | \ + FLASH_FLAG_READ_1_1_4 | \ + FLASH_FLAG_SE_4K | \ FLASH_FLAG_SE_32K) JEDEC_INFO("mx25l3255e", 0xc29e16, 64 * 1024, 64, (MX25_FLAG | FLASH_FLAG_WRITE_1_4_4), 86, stfsm_mx25_config), @@ -410,20 +410,20 @@ static struct flash_info flash_types[] = { (MX25_FLAG | FLASH_FLAG_RESET), 70, stfsm_mx25_config), /* Micron N25Qxxx */ -#define N25Q_FLAG (FLASH_FLAG_READ_WRITE | \ - FLASH_FLAG_READ_FAST | \ - FLASH_FLAG_READ_1_1_2 | \ - FLASH_FLAG_READ_1_2_2 | \ - FLASH_FLAG_READ_1_1_4 | \ - FLASH_FLAG_READ_1_4_4 | \ - FLASH_FLAG_WRITE_1_1_2 | \ - FLASH_FLAG_WRITE_1_2_2 | \ - FLASH_FLAG_WRITE_1_1_4 | \ +#define N25Q_FLAG (FLASH_FLAG_READ_WRITE | \ + FLASH_FLAG_READ_FAST | \ + FLASH_FLAG_READ_1_1_2 | \ + FLASH_FLAG_READ_1_2_2 | \ + FLASH_FLAG_READ_1_1_4 | \ + FLASH_FLAG_READ_1_4_4 | \ + FLASH_FLAG_WRITE_1_1_2 | \ + FLASH_FLAG_WRITE_1_2_2 | \ + FLASH_FLAG_WRITE_1_1_4 | \ FLASH_FLAG_WRITE_1_4_4) JEDEC_INFO("n25q128", 0x20ba18, 64 * 1024, 256, N25Q_FLAG, 108, stfsm_n25q_config), - /* Micron N25Q256/N25Q512/N25Q00A (32-bit ADDR devices) + /* Micron N25Q256/N25Q512/N25Q00A (32-bit ADDR devices) * * Versions are available with or without a dedicated RESET# pin * (e.g. N25Q512A83GSF40G vs. N25Q512A13GSF40G). To complicate matters, @@ -435,9 +435,9 @@ static struct flash_info flash_types[] = { * defer overall support for RESET# to the board-level platform/Device * Tree property "reset-signal". */ -#define N25Q_32BIT_ADDR_FLAG ((N25Q_FLAG | \ - FLASH_FLAG_32BIT_ADDR | \ - FLASH_FLAG_RESET) & \ +#define N25Q_32BIT_ADDR_FLAG ((N25Q_FLAG | \ + FLASH_FLAG_32BIT_ADDR | \ + FLASH_FLAG_RESET) & \ ~FLASH_FLAG_WRITE_1_4_4) JEDEC_INFO("n25q256", 0x20ba19, 64 * 1024, 512, N25Q_32BIT_ADDR_FLAG, 108, stfsm_n25q_config), @@ -451,12 +451,12 @@ static struct flash_info flash_types[] = { * - 256KiB and 64KiB sector variants (identified by ext. JEDEC) * - S25FL128Px devices do not support DUAL or QUAD I/O */ -#define S25FLXXXP_FLAG (FLASH_FLAG_READ_WRITE | \ - FLASH_FLAG_READ_1_1_2 | \ - FLASH_FLAG_READ_1_2_2 | \ - FLASH_FLAG_READ_1_1_4 | \ - FLASH_FLAG_READ_1_4_4 | \ - FLASH_FLAG_WRITE_1_1_4 | \ +#define S25FLXXXP_FLAG (FLASH_FLAG_READ_WRITE | \ + FLASH_FLAG_READ_1_1_2 | \ + FLASH_FLAG_READ_1_2_2 | \ + FLASH_FLAG_READ_1_1_4 | \ + FLASH_FLAG_READ_1_4_4 | \ + FLASH_FLAG_WRITE_1_1_4 | \ FLASH_FLAG_READ_FAST) RDID_INFO("s25fl032p", RDID({0x01, 0x02, 0x15, 0x4d, 0x00}), 5, 64 * 1024, 64, S25FLXXXP_FLAG, 80, stfsm_s25fl_config), @@ -481,8 +481,8 @@ static struct flash_info flash_types[] = { * may default to locked state on power-on. * - S25FL127Sx handled as S25FL128Sx */ -#define S25FLXXXS_FLAG (S25FLXXXP_FLAG | \ - FLASH_FLAG_RESET | \ +#define S25FLXXXS_FLAG (S25FLXXXP_FLAG | \ + FLASH_FLAG_RESET | \ FLASH_FLAG_DYB_LOCKING) RDID_INFO("s25fl128s0", RDID({0x01, 0x20, 0x18, 0x4d, 0x00, 0x80}), 6, 256 * 1024, 64, S25FLXXXS_FLAG, 80, stfsm_s25fl_config), @@ -493,9 +493,9 @@ static struct flash_info flash_types[] = { RDID_INFO("s25fl256s1", RDID({0x01, 0x02, 0x19, 0x4d, 0x01, 0x80}), 6, 64 * 1024, 512, S25FLXXXS_FLAG, 80, stfsm_s25fl_config), -#define W25X_FLAG (FLASH_FLAG_READ_WRITE | \ - FLASH_FLAG_READ_FAST | \ - FLASH_FLAG_READ_1_1_2 | \ +#define W25X_FLAG (FLASH_FLAG_READ_WRITE | \ + FLASH_FLAG_READ_FAST | \ + FLASH_FLAG_READ_1_1_2 | \ FLASH_FLAG_WRITE_1_1_2) JEDEC_INFO("w25x40", 0xef3013, 64 * 1024, 8, W25X_FLAG, 75, NULL), JEDEC_INFO("w25x80", 0xef3014, 64 * 1024, 16, W25X_FLAG, 75, NULL), @@ -504,12 +504,12 @@ static struct flash_info flash_types[] = { JEDEC_INFO("w25x64", 0xef3017, 64 * 1024, 128, W25X_FLAG, 75, NULL), /* Winbond -- w25q "blocks" are 64K, "sectors" are 4KiB */ -#define W25Q_FLAG (FLASH_FLAG_READ_WRITE | \ - FLASH_FLAG_READ_FAST | \ - FLASH_FLAG_READ_1_1_2 | \ - FLASH_FLAG_READ_1_2_2 | \ - FLASH_FLAG_READ_1_1_4 | \ - FLASH_FLAG_READ_1_4_4 | \ +#define W25Q_FLAG (FLASH_FLAG_READ_WRITE | \ + FLASH_FLAG_READ_FAST | \ + FLASH_FLAG_READ_1_1_2 | \ + FLASH_FLAG_READ_1_2_2 | \ + FLASH_FLAG_READ_1_1_4 | \ + FLASH_FLAG_READ_1_4_4 | \ FLASH_FLAG_WRITE_1_1_4) JEDEC_INFO("w25q80", 0xef4014, 64 * 1024, 16, W25Q_FLAG, 80, stfsm_w25q_config), @@ -580,7 +580,7 @@ static struct seq_rw_config n25q_read3_configs[] = { /* N25Q 4-byte Address READ configurations * - use special 4-byte address READ commands (reduces overheads, and - * reduces risk of hitting watchdog reset issues). + * reduces risk of hitting watchdog reset issues). * - 'FAST' variants configured for 8 dummy cycles (see note above.) */ static struct seq_rw_config n25q_read4_configs[] = { @@ -642,7 +642,7 @@ static struct seq_rw_config stfsm_s25fl_read4_configs[] = { static struct seq_rw_config stfsm_s25fl_write4_configs[] = { {FLASH_FLAG_WRITE_1_1_4, S25FL_CMD_WRITE4_1_1_4, 1, 1, 4, 0x00, 0, 0}, {FLASH_FLAG_READ_WRITE, S25FL_CMD_WRITE4, 1, 1, 1, 0x00, 0, 0}, - {0x00, 0, 0, 0, 0, 0x00, 0, 0}, + {0x00, 0, 0, 0, 0, 0x00, 0, 0}, }; /* @@ -867,12 +867,12 @@ static void stfsm_read_fifo(struct stfsm *fsm, uint32_t *buf, uint32_t size) * With this in mind, a two stage process is used to the clear the FIFO: * * 1. Read any complete 32-bit words from the FIFO, as reported by the - * SPI_FAST_SEQ_STA register. + * SPI_FAST_SEQ_STA register. * * 2. Mop up any remaining bytes. At this point, it is not known if there - * are 0, 1, 2, or 3 bytes in the FIFO. To handle all cases, a dummy FSM - * sequence is used to load one byte at a time, until a complete 32-bit - * word is formed; at most, 4 bytes will need to be loaded. + * are 0, 1, 2, or 3 bytes in the FIFO. To handle all cases, a dummy FSM + * sequence is used to load one byte at a time, until a complete 32-bit + * word is formed; at most, 4 bytes will need to be loaded. * * [1] It is theoretically possible for the FIFO to contain an arbitrary number * of bits. However, since there are no known use-cases that leave @@ -2096,7 +2096,7 @@ static int stfsm_init(struct stfsm *fsm) return ret; /* Set timing parameters */ - writel(SPI_CFG_DEVICE_ST | + writel(SPI_CFG_DEVICE_ST | SPI_CFG_DEFAULT_MIN_CS_HIGH | SPI_CFG_DEFAULT_CS_SETUPHOLD | SPI_CFG_DEFAULT_DATA_HOLD, @@ -2315,7 +2315,7 @@ static struct platform_driver stfsm_driver = { .name = "st-spi-fsm", .owner = THIS_MODULE, .of_match_table = stfsm_match, - .pm = &stfsm_pm_ops, + .pm = &stfsm_pm_ops, }, }; module_platform_driver(stfsm_driver);