eon.c 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. // SPDX-License-Identifier: GPL-2.0
  2. /*
  3. * Copyright (C) 2005, Intec Automation Inc.
  4. * Copyright (C) 2014, Freescale Semiconductor, Inc.
  5. */
  6. #include <linux/mtd/spi-nor.h>
  7. #include "core.h"
  8. static const struct flash_info eon_nor_parts[] = {
  9. {
  10. .id = SNOR_ID(0x1c, 0x20, 0x16),
  11. .name = "en25p32",
  12. .size = SZ_4M,
  13. }, {
  14. .id = SNOR_ID(0x1c, 0x20, 0x17),
  15. .name = "en25p64",
  16. .size = SZ_8M,
  17. }, {
  18. .id = SNOR_ID(0x1c, 0x30, 0x14),
  19. .name = "en25q80a",
  20. .size = SZ_1M,
  21. .no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ,
  22. }, {
  23. .id = SNOR_ID(0x1c, 0x30, 0x16),
  24. .name = "en25q32b",
  25. .size = SZ_4M,
  26. }, {
  27. .id = SNOR_ID(0x1c, 0x30, 0x17),
  28. .name = "en25q64",
  29. .size = SZ_8M,
  30. .no_sfdp_flags = SECT_4K,
  31. }, {
  32. .id = SNOR_ID(0x1c, 0x31, 0x16),
  33. .name = "en25f32",
  34. .size = SZ_4M,
  35. .no_sfdp_flags = SECT_4K,
  36. }, {
  37. .name = "en25s64",
  38. .id = SNOR_ID(0x1c, 0x38, 0x17),
  39. .size = SZ_8M,
  40. .no_sfdp_flags = SECT_4K,
  41. }, {
  42. .id = SNOR_ID(0x1c, 0x70, 0x15),
  43. .name = "en25qh16",
  44. .size = SZ_2M,
  45. .no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ,
  46. }, {
  47. .id = SNOR_ID(0x1c, 0x70, 0x16),
  48. .name = "en25qh32",
  49. .size = SZ_4M,
  50. }, {
  51. .id = SNOR_ID(0x1c, 0x70, 0x17),
  52. .name = "en25qh64",
  53. .size = SZ_8M,
  54. .no_sfdp_flags = SECT_4K | SPI_NOR_DUAL_READ,
  55. }, {
  56. .id = SNOR_ID(0x1c, 0x70, 0x18),
  57. .name = "en25qh128",
  58. .size = SZ_16M,
  59. }, {
  60. .id = SNOR_ID(0x1c, 0x70, 0x19),
  61. .name = "en25qh256",
  62. },
  63. };
  64. const struct spi_nor_manufacturer spi_nor_eon = {
  65. .name = "eon",
  66. .parts = eon_nor_parts,
  67. .nparts = ARRAY_SIZE(eon_nor_parts),
  68. };