Commit graph

343 commits

Author SHA1 Message Date
Vandhiadevan Karunamoorthy
65c44a0a4a ipq5018: Add Giga device GD25LB256E nor flash
Signed-off-by: Vandhiadevan Karunamoorthy <vkarunam@codeaurora.org>
Change-Id: I9f1dd71f7f495ffc69669ef45d08c08d9a7415de
2020-06-18 23:19:48 +05:30
Vandhiadevan Karunamoorthy
f1341cb713 nor: Add GD25LB128D in device table.
Signed-off-by: Vandhiadevan Karunamoorthy <vkarunam@codeaurora.org>
Change-Id: Ia14393575d035525232e91ca32ffe4e7830365c0
2020-06-11 21:28:08 -07:00
Kathiravan T
3a8f8f7b4b spi_nand: ipq40xx: enable support for Fidelix SPI NAND
Fidelix SPI NAND FM35X2GA has two planes namely plane 0 and plane 1.
This change adds the support to calculate the plane bit accordingly
and use the same for command formation.

Change-Id: I6fb4b652e1c897f248cb9ad8914f67be7a7365f3
Signed-off-by: Kathiravan T <kathirav@codeaurora.org>
2020-01-06 21:09:01 -08:00
Vandhiadevan Karunamoorthy
a13842f5cf ipq5018: spi-nor: Add offset 0x0 erase support for S25FL128S_64K
Note : This S25FL128S_64K chip has Hybrid sector's
First 64Kb (4Kb * 8 + 32Kb) and rest all 64Kb sectors

Change-Id: Ibac9bd9dbd7b5a4eb1c31427b4d315fc5353ec62
Signed-off-by: Vandhiadevan Karunamoorthy <vkarunam@codeaurora.org>
2019-11-05 10:32:27 +05:30
Md Sadre Alam
39c56dd3a0 driver: spi: Add support for Macronix-(MX25U51245G) nor flash.
This change is to add support for Macronix-(MX25U51245G) nor
flash device.

The total density of this device is 64 MiB. Sector size 64K.
64K sector we are cosidering due to 64K sector size works with
CMD_ERASE_64K.

Total number of sector for this device will 1024 because,

64K * 1024 = 64MiB.

Change-Id: Ia1f2117bc42457e4b3c25934ff1fdcb798e4ea6f
Signed-off-by: Md Sadre Alam <mdalam@codeaurora.org>
2019-05-31 10:43:45 +05:30
Md Sadre Alam
648bdc897b driver: spi: Add support for Macronix-(MX66U1G45GMI00) nor flash.
This change is to add support for Macronix-(MX66U1G45GMI00) nor
flash device.

The total density of this device is 128 MiB. Sector size 64K.
64K sector we are cosidering due to 64K sector size works with
CMD_ERASE_64K.

Total number of sector for this device will 2048 because,

64K * 2048 = 128MiB.

Change-Id: I63bcd4bd5c979a82ca8c45d480acc41208a886ef
Signed-off-by: Md Sadre Alam <mdalam@codeaurora.org>
2019-05-31 10:42:54 +05:30
sameeruddin shaik
63a507e7ff ipq: Fix compiler warnings in u-boot-2016
This change will fix the following compiler warnings for AK and DK targets.
1.Wimplicit-function-declaration
2.Wdiscarded-qualifiers
3.Wstrict-prototypes
4.Wmaybe-uninitialized
5.Wunused-variable
6.Wint-conversion

Change-Id: I364904283172ccb19602ae1b6deceb8c61ea7638
Signed-off-by: sameeruddin shaik <samesh@codeaurora.org>
2019-05-23 18:36:28 +05:30
sameeruddin shaik
8338952d77 ipq807x: Fix compiler warnings in u-boot
Change-Id: Icd0c082fcc5d191745e4e4242dda5a7f3b22c4f0
Signed-off-by: sameeruddin shaik <samesh@codeaurora.org>
2019-01-22 12:57:57 +05:30
Linux Build Service Account
def2d0cf7b Merge "ipq6018: Adding support for new read id command sequence for spi nand" 2018-12-07 07:05:20 -08:00
Linux Build Service Account
e307ba9c56 Merge "ipq6018: choose spi nand bus number and cs number from dts" 2018-12-07 07:05:20 -08:00
Antony Arun T
cbcc15acfe ipq6018: choose spi nand bus number and cs number from dts
Change-Id: Ic9d2fed8ca8d656d7b0ab1f2a4eb1fc55aeb1133
Signed-off-by: Antony Arun T <antothom@codeaurora.org>
2018-12-06 15:26:29 +05:30
Antony Arun T
fc4ec308a0 ipq6018: Adding support for new read id command sequence for spi nand
Some spi nand flash uses single byte read id(9FH) command,
for those devices the sequence is
byte1	byte2	byte3	byte4
9FH	MID	DID	DID
some other spi nand flashes uses two byte read id(9F 00H) command
for those devices the sequence is
byte1	byte2	byte3	byte4
9FH	A7-A0	MID	DID
The first byte is the actual command and the second byte is a dummy byte.
For devices which uses new sequence, we need to pass
appropriate read id command with dummy byte.

Change-Id: Idf2e8740f8341596cd8f58d22d5e33a4b4972a31
Signed-off-by: Antony Arun T <antothom@codeaurora.org>
2018-12-06 15:19:46 +05:30
Antony Arun T
0e7bb084f4 ipq6018: Enabling support for SPI NAND flash "GD5F1GQ4R"
Change-Id: I8df9be7ca1b8497e018dd563c7522e52a2433cb6
Signed-off-by: Antony Arun T <antothom@codeaurora.org>
2018-11-30 15:50:28 +05:30
Linux Build Service Account
e29cf10dc6 Merge "ipq807x: Enable 4-byte address mode for flash W25Q256JW" 2018-04-04 03:16:31 -07:00
Santan Kumar
98b37b1dd8 ipq807x: Enable 4-byte address mode for flash W25Q256JW
Software SPI reset mode can be trigger from 4-Byte Address mode
in flash W25Q256JW.

Change-Id: I3f8ec46c2732c07a7af0cc7331102334413067ba
Signed-off-by: Santan Kumar <santank@codeaurora.org>
2018-03-30 17:44:43 +05:30
Sasirekaa Madhesu
9400a07874 ipq40xx: spi: Add support for 4Gb Toshiba-TC58CVG2S0F SPI NAND flash
Change-Id: I6c7427fec4bd486c572547a844f22d941f777bf5
Signed-off-by: Sasirekaa Madhesu <smadhesu@codeaurora.org>
2018-03-19 16:21:32 +05:30
Balaji Jagadeesan
6086a41473 ipq40xx: Support for SPI NOR not listed in vendor ID table
Do generic flash structure initialization, for the devices
not listed in the SPI NOR flash lookup table, so that
we can access the flash even before the support is added.
Block size and density are obtained from smem.

Change-Id: I568eb538615bb36124c43a2509bcfce2e4a1188a
Signed-off-by: Balaji Jagadeesan <bjagadee@codeaurora.org>
2018-03-13 11:49:29 +05:30
Balaji Jagadeesan
a47b19fc2b ipq: spi: Increased performance of spi erase
When 4K sector size support is enabled for spi, always
4K sector erase command is passed for all the erase operations.
To increase the performance, 64K erase command is
passed to the command buffer based on length and offset.

Change-Id: Ia762d192ba5d424f0ba3538fff8aff4954050bf7
Signed-off-by: Balaji Jagadeesan <bjagadee@codeaurora.org>
2018-03-06 09:29:48 -08:00
Antony Arun T
4ca40fa90d SF: Bulk Erase command support for spansion
Change-Id: Ida70d167cafc6af823f31c660d108cc25be6edff
Signed-off-by: Antony Arun T <antothom@codeaurora.org>
2018-02-23 13:10:34 +05:30
Antony Arun T
fff58f6989 sf: params: Add MX25U12835F part support
Change-Id: Ib112587634758b0ada0e369971402f3e8ef6a8be
Signed-off-by: Antony Arun T <antothom@codeaurora.org>
2018-02-08 23:39:39 -08:00
Linux Build Service Account
3221496969 Merge "qca: spi-nor: Store the probe information to avoid unnecessary probes" 2018-02-08 15:43:34 -08:00
Santan Kumar
a0dd6f4332 qca: spi-nor: Store the probe information to avoid unnecessary probes
Change-Id: If7260e4a4065d6406d9a8554f43853663f0e8f3b
Signed-off-by: Santan Kumar <santank@codeaurora.org>
2018-02-08 15:58:22 +05:30
Rajkumar Ayyasamy
8ac98b5fd9 ipq40xx: spi: Added support for GD25Q256
Change-Id: Iefc667c95558234e54111e6052f16e0f035b24ab
Signed-off-by: Rajkumar Ayyasamy <arajkuma@codeaurora.org>
2018-02-06 14:46:09 +05:30
Rajkumar Ayyasamy
f44fe93184 ipq40xx: Add SPI NAND support
Change-Id: I74de22fcea6455f73f263672b72b30b796f6c820
Signed-off-by: Rajkumar Ayyasamy <arajkuma@codeaurora.org>
2018-01-02 14:57:16 +05:30
Linux Build Service Account
0f0347f694 Merge "ipq40xx: add snapshot of spi_nand driver" 2017-12-26 06:59:33 -08:00
Rajkumar Ayyasamy
d7294fbcca ipq40xx: add snapshot of spi_nand driver
This is a snapshot of the spi_nand as of uboot-1.0
commit:

e6434d80905a219860c8ede78377221ded2510f2 (ipq40xx:
Add bit-flip threshold for QPIC NAND)

Change-Id: I91db5822cc450e9d7eb52fca9eab213784547206
Signed-off-by: Rajkumar Ayyasamy <arajkuma@codeaurora.org>
2017-12-07 20:01:08 +05:30
Rajkumar Ayyasamy
431372a078 sf: params: Added the GD25Q128 flash support
Change-Id: I57504aa1bca17023476980a3fb474613b3d786ca
Signed-off-by: Rajkumar Ayyasamy <arajkuma@codeaurora.org>
2017-12-06 00:28:23 -08:00
Sham Muthayyan
23f9381f86 ipq807x: Add 4byte mode support for Winbond nor flash
Change-Id: I4f31612091bff4f03527fbfd41f02f4a7267f248
Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
2017-10-25 04:25:04 -07:00
Sham Muthayyan
da2e958e58 ipq807x: Added the W25Q256JW flash support
Change-Id: Iee648d783567ed2b6ff09addbb000709fa6461ff
Signed-off-by: Sham Muthayyan <smuthayy@codeaurora.org>
2017-09-14 01:56:40 -07:00
Vasudevan Murugesan
6ebedacfc5 ipq807x: Fixed flash ID for MX25U3235F
Change-Id: Ie9e2224b963428386f6970ef5950a9d04ac3cad8
Signed-off-by: Vasudevan Murugesan <vmuruges@codeaurora.org>
2017-07-27 02:15:14 -07:00
Vasudevan Murugesan
a6f449b528 ipq807x: Modified micron flash params to support RUMI
Change-Id: I08c52c7218e01170c5fe489f1e910ccd2abfd852
Signed-off-by: Vasudevan Murugesan <vmuruges@codeaurora.org>
2016-04-29 11:35:42 +05:30
Vasudevan Murugesan
4cf0b0294a ipq807x: Enabled spi-nor flash support
Change-Id: Id3b876e9d3c00268e608a2fcb76a30a38d965e48
Signed-off-by: Vasudevan Murugesan <vmuruges@codeaurora.org>
2016-04-27 11:44:00 +05:30
Akila N
1aa59e6721 qca: ipq40xx: Enable spi nor driver in fifo mode
Change-Id: I641f2a206f0537c6b715841447100dcbe89f87b3
Signed-off-by: Akila N <akilan@codeaurora.org>
2016-04-18 15:38:30 +05:30
Fabio Estevam
5092158359 spi: spi_flash: Fix the arguments of stm_is_locked_sr()
stm_is_locked_sr() takes the status register (SR) value as the last
parameter, not the second.

Based on a patch from Brian Norris for the linux kernel:
http://git.infradead.org/linux-mtd.git/commit/a32d5b726ff8cf32bf491522b0ac8ae2545a063e

Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
Reviewed-by: Jagan Teki <jteki@openedev.com>
2016-01-07 20:29:33 +05:30
Jagan Teki
cba65a77c4 sf: Rename sf_ops.c to spi-flash.c
Since all spi-flash core operations are moved into
sf_ops.c then it's better to renamed as spi-flash.c

Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Jagan Teki <jteki@openedev.com>
2015-12-11 22:12:24 +05:30
Jagan Teki
339fd6dca5 sf: Use static for file-scope functions
Used static for file-scope functions in sf_probe.c

Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Jagan Teki <jteki@openedev.com>
2015-12-11 22:12:24 +05:30
Jagan Teki
bfdb07eb4b sf: sf_probe: Remove spi_slave pointer argument
Since spi_slave is a spi pointer in spi_flash{} then assign
spi_slave{} pointer to flash->spi and remove spi_slave
pointer argument to
- spi_flash_probe_slave
- spi_flash_scan

Tested-by: Jagan Teki <jteki@openedev.com>
Tested-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Jagan Teki <jteki@openedev.com>
2015-12-11 22:12:24 +05:30
Jagan Teki
b6a2c436e0 sf: ops: Fix missing break on spansion read_bar
For assigning read_bar commands in spansion case, break
is missing this patch add that break.

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Jagan Teki <jteki@openedev.com>
2015-12-11 22:12:24 +05:30
Jagan Teki
aae00f8bab sf: Remove unneeded SST_BP and SST_WP
SST parts added on sf_params.c supports both SST_WR which consits
of both BP and WP and there is a spi controller ich which supports
only BP so the relevent _write hook set based on "slave->op_mode_tx"
hence there is no respective change required from flash side hance
removed these.

Tested-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Signed-off-by: Jagan Teki <jteki@openedev.com>
2015-12-11 22:12:24 +05:30
Jagan Teki
615879ac1a sf: Remove unneeded header includes
Removed unneeded header includes in sf_ops and sf_probe

Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Jagan Teki <jteki@openedev.com>
2015-12-11 22:12:24 +05:30
Jagan Teki
6f9d670d8e sf: Flash power up read-only based on idcode0
Using macro's for flash power up read-only access code
leads wrong behaviour hence use idcode0 for runtime
detection, hence the flash which require this functionality
gets detected at runtime.

Tested-by: Jagan Teki <jteki@openedev.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Jagan Teki <jteki@openedev.com>
2015-12-11 22:12:24 +05:30
Jagan Teki
cb37518516 sf: Use simple name for register access functions
Most of the register access function are static,
so used simple name to represent each.

Tested-by: Jagan Teki <jteki@openedev.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Jagan Teki <jteki@openedev.com>
2015-12-11 22:12:23 +05:30
Jagan Teki
fc335d63b0 sf: Fix Makefile
This patch removes unneeded ifdef and fixed accordingly.

Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Jagan Teki <jteki@openedev.com>
2015-12-11 22:12:23 +05:30
Jagan Teki
6fa40e796c sf: Use static for file-scope functions
Use static for file-scope functions and removed
them from header files.

Tested-by: Jagan Teki <jteki@openedev.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Signed-off-by: Jagan Teki <jteki@openedev.com>
2015-12-11 22:12:23 +05:30
Jagan Teki
0edae52f08 sf: probe: Code cleanup
- Move bar read code below the bar write hance both
  at once place, hence it easy for #ifdef macro only
  once and readable.
- Move read_cmd_array at top

Tested-by: Jagan Teki <jteki@openedev.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Jagan Teki <jteki@openedev.com>
2015-12-11 22:12:23 +05:30
Jagan Teki
1e90d9fd31 sf: Move read_id code to sf_ops
read_id code is related to spi_flash stuff
hence moved to sf_ops.

Tested-by: Jagan Teki <jteki@openedev.com>
Tested-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Jagan Teki <jteki@openedev.com>
2015-12-11 22:12:23 +05:30
Jagan Teki
3847c0c180 sf: Move spi_flash_scan code to sf_ops
Intension is that sf_ops should deals all spi_flash
related stuff and sf_probe (which should renamed future)
should be an interface layer for spi_flash versus spi drivers.

sf_ops => spi_flash interface
sf_probe => interface layer vs spi_flash(sf_probe) to spi drivers

Tested-by: Jagan Teki <jteki@openedev.com>
Tested-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Jagan Teki <jteki@openedev.com>
2015-12-11 22:12:23 +05:30
Jagan Teki
3a1adb621b sf: spi_flash_validate_params => spi_flash_scan
Rename spi_flash_validate_params to spi_flash_scan
as this code not only deals with params setup but
also configure all spi_flash attributes.

And also moved all flash related code into
spi_flash_scan for future functionality addition.

Tested-by: Jagan Teki <jteki@openedev.com>
Tested-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Jagan Teki <jteki@openedev.com>
2015-12-11 22:12:23 +05:30
Tom Rini
9ef671c9d4 Merge branch 'master' of git://git.denx.de/u-boot-spi 2015-11-19 13:27:26 -05:00
Michal Simek
2588f2ddfd dm: sf: Add support for all targets which requires MANUAL_RELOC
It is follow up patch based on
"dm: Add support for all targets which requires MANUAL_RELOC"
(sha1: 484fdf5ba0)
to update function pointers for DM.

Using post_bind is not ideal but it is one on current option what can be
used. Variable reloc_done has to be used do not call relocation after
every bind. Maybe new core functions should be introduced for this case.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
2015-11-19 13:10:32 +01:00