FreeCalypso > hg > freecalypso-tools
annotate loadtools/fldevs.c @ 976:ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Fri, 01 Dec 2023 06:43:21 +0000 |
parents | 7c18eac91457 |
children | a400bb4a1620 |
rev | line source |
---|---|
506
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
1 /* |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
2 * This module holds the tables of supported flash devices |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
3 */ |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
4 |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
5 #include <stdint.h> |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
6 #include "flash.h" |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
7 |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
8 extern struct flash_cmdset flash_cmdset_amd; |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
9 extern struct flash_cmdset flash_cmdset_intel; |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
10 extern struct flash_cmdset flash_cmdset_intel_w30; |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
11 |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
12 /* flash bank geometries */ |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
13 |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
14 static struct flash_geom geom_2M_topboot = { |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
15 .total_size = 0x200000, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
16 .nregions = 2, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
17 .regions = {0x10000, 31, 0x2000, 8}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
18 .total_sectors = 39, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
19 }; |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
20 |
973
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
21 static struct flash_geom geom_2M_bottomboot = { |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
22 .total_size = 0x200000, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
23 .nregions = 2, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
24 .regions = {0x2000, 8, 0x10000, 31}, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
25 .total_sectors = 39, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
26 }; |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
27 |
506
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
28 static struct flash_geom geom_4M_topboot = { |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
29 .total_size = 0x400000, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
30 .nregions = 2, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
31 .regions = {0x10000, 63, 0x2000, 8}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
32 .total_sectors = 71, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
33 }; |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
34 |
973
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
35 static struct flash_geom geom_4M_bottomboot = { |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
36 .total_size = 0x400000, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
37 .nregions = 2, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
38 .regions = {0x2000, 8, 0x10000, 63}, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
39 .total_sectors = 71, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
40 }; |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
41 |
523
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
42 static struct flash_geom geom_4M_bothends = { |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
43 .total_size = 0x400000, |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
44 .nregions = 3, |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
45 .regions = {0x2000, 8, 0x10000, 62, 0x2000, 8}, |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
46 .total_sectors = 78, |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
47 }; |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
48 |
506
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
49 static struct flash_geom geom_8M_topboot = { |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
50 .total_size = 0x800000, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
51 .nregions = 2, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
52 .regions = {0x10000, 127, 0x2000, 8}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
53 .total_sectors = 135, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
54 }; |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
55 |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
56 static struct flash_geom geom_8M_bottomboot = { |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
57 .total_size = 0x800000, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
58 .nregions = 2, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
59 .regions = {0x2000, 8, 0x10000, 127}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
60 .total_sectors = 135, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
61 }; |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
62 |
553
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
63 static struct flash_geom geom_8M_bothends = { |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
64 .total_size = 0x800000, |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
65 .nregions = 3, |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
66 .regions = {0x2000, 8, 0x10000, 126, 0x2000, 8}, |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
67 .total_sectors = 142, |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
68 }; |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
69 |
506
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
70 static struct flash_geom geom_8M_topboot_big = { |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
71 .total_size = 0x800000, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
72 .nregions = 2, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
73 .regions = {0x40000, 31, 0x10000, 4}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
74 .total_sectors = 35, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
75 }; |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
76 |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
77 static struct flash_geom geom_8M_bottomboot_big = { |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
78 .total_size = 0x800000, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
79 .nregions = 2, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
80 .regions = {0x10000, 4, 0x40000, 31}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
81 .total_sectors = 35, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
82 }; |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
83 |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
84 /* Intel and compatible flash chips */ |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
85 |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
86 static struct cfi_check intel_2M_topboot_cfi[] = { |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
87 {0x10, 'Q'}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
88 {0x11, 'R'}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
89 {0x12, 'Y'}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
90 {0x13, 0x03}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
91 {0x14, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
92 {0x27, 0x15}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
93 {0x2C, 0x02}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
94 {0x2D, 0x1E}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
95 {0x2E, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
96 {0x2F, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
97 {0x30, 0x01}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
98 {0x31, 0x07}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
99 {0x32, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
100 {0x33, 0x20}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
101 {0x34, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
102 {-1, 0} |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
103 }; |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
104 |
973
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
105 static struct cfi_check intel_2M_bottomboot_cfi[] = { |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
106 {0x10, 'Q'}, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
107 {0x11, 'R'}, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
108 {0x12, 'Y'}, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
109 {0x13, 0x03}, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
110 {0x14, 0x00}, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
111 {0x27, 0x15}, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
112 {0x2C, 0x02}, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
113 {0x2D, 0x07}, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
114 {0x2E, 0x00}, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
115 {0x2F, 0x20}, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
116 {0x30, 0x00}, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
117 {0x31, 0x1E}, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
118 {0x32, 0x00}, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
119 {0x33, 0x00}, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
120 {0x34, 0x01}, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
121 {-1, 0} |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
122 }; |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
123 |
506
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
124 static struct cfi_check intel_4M_topboot_cfi[] = { |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
125 {0x10, 'Q'}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
126 {0x11, 'R'}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
127 {0x12, 'Y'}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
128 {0x13, 0x03}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
129 {0x14, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
130 {0x27, 0x16}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
131 {0x2C, 0x02}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
132 {0x2D, 0x3E}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
133 {0x2E, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
134 {0x2F, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
135 {0x30, 0x01}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
136 {0x31, 0x07}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
137 {0x32, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
138 {0x33, 0x20}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
139 {0x34, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
140 {-1, 0} |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
141 }; |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
142 |
973
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
143 static struct cfi_check intel_4M_bottomboot_cfi[] = { |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
144 {0x10, 'Q'}, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
145 {0x11, 'R'}, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
146 {0x12, 'Y'}, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
147 {0x13, 0x03}, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
148 {0x14, 0x00}, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
149 {0x27, 0x16}, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
150 {0x2C, 0x02}, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
151 {0x2D, 0x07}, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
152 {0x2E, 0x00}, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
153 {0x2F, 0x20}, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
154 {0x30, 0x00}, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
155 {0x31, 0x3E}, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
156 {0x32, 0x00}, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
157 {0x33, 0x00}, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
158 {0x34, 0x01}, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
159 {-1, 0} |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
160 }; |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
161 |
506
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
162 static struct cfi_check intel_8M_topboot_cfi[] = { |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
163 {0x10, 'Q'}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
164 {0x11, 'R'}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
165 {0x12, 'Y'}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
166 {0x13, 0x03}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
167 {0x14, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
168 {0x27, 0x17}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
169 {0x2C, 0x02}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
170 {0x2D, 0x7E}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
171 {0x2E, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
172 {0x2F, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
173 {0x30, 0x01}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
174 {0x31, 0x07}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
175 {0x32, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
176 {0x33, 0x20}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
177 {0x34, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
178 {-1, 0} |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
179 }; |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
180 |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
181 static struct cfi_check intel_8M_bottomboot_cfi[] = { |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
182 {0x10, 'Q'}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
183 {0x11, 'R'}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
184 {0x12, 'Y'}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
185 {0x13, 0x03}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
186 {0x14, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
187 {0x27, 0x17}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
188 {0x2C, 0x02}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
189 {0x2D, 0x07}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
190 {0x2E, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
191 {0x2F, 0x20}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
192 {0x30, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
193 {0x31, 0x7E}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
194 {0x32, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
195 {0x33, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
196 {0x34, 0x01}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
197 {-1, 0} |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
198 }; |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
199 |
973
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
200 /* classic Intel C3 family: found in low-end Mot C1xx models and BenQ M32 */ |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
201 |
506
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
202 struct flash_device flashdev_28F160C3T = { |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
203 .name = "Intel 28F160C3T", |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
204 .cfi_table = intel_2M_topboot_cfi, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
205 .required_global_config = FLASH_GLOBAL_CFG_SINGLE_4M, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
206 .bank_geom = {&geom_2M_topboot, 0}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
207 .cmdset = &flash_cmdset_intel, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
208 }; |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
209 |
973
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
210 struct flash_device flashdev_28F160C3B = { |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
211 .name = "Intel 28F160C3B", |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
212 .cfi_table = intel_2M_bottomboot_cfi, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
213 .required_global_config = FLASH_GLOBAL_CFG_SINGLE_4M, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
214 .bank_geom = {&geom_2M_bottomboot, 0}, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
215 .cmdset = &flash_cmdset_intel, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
216 }; |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
217 |
506
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
218 struct flash_device flashdev_28F320C3T = { |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
219 .name = "Intel 28F320C3T", |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
220 .cfi_table = intel_4M_topboot_cfi, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
221 .required_global_config = FLASH_GLOBAL_CFG_SINGLE_4M, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
222 .bank_geom = {&geom_4M_topboot, 0}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
223 .cmdset = &flash_cmdset_intel, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
224 }; |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
225 |
973
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
226 struct flash_device flashdev_28F320C3B = { |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
227 .name = "Intel 28F320C3B", |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
228 .cfi_table = intel_4M_bottomboot_cfi, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
229 .required_global_config = FLASH_GLOBAL_CFG_SINGLE_4M, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
230 .bank_geom = {&geom_4M_bottomboot, 0}, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
231 .cmdset = &flash_cmdset_intel, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
232 }; |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
233 |
506
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
234 struct flash_device flashdev_28F640C3T = { |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
235 .name = "Intel 28F640C3T", |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
236 .cfi_table = intel_8M_topboot_cfi, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
237 .required_global_config = FLASH_GLOBAL_CFG_SINGLE_8M, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
238 .bank_geom = {&geom_8M_topboot, 0}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
239 .cmdset = &flash_cmdset_intel, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
240 }; |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
241 |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
242 struct flash_device flashdev_28F640C3B = { |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
243 .name = "Intel 28F640C3B", |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
244 .cfi_table = intel_8M_bottomboot_cfi, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
245 .required_global_config = FLASH_GLOBAL_CFG_SINGLE_8M, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
246 .bank_geom = {&geom_8M_bottomboot, 0}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
247 .cmdset = &flash_cmdset_intel, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
248 }; |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
249 |
973
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
250 /* |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
251 * Intel W18 and W30 families are equivalent in terms of geometries and |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
252 * relevant quirks, and are distinguishable only by ID codes. We treat them |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
253 * all as W30, based on the latter family being the first one encountered: |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
254 * 28F640W30B is the flash chip used on TI's legendary D-Sample board, and |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
255 * the flash inside Motorola C155/156 is an MCP equivalent of the same. |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
256 */ |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
257 |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
258 struct flash_device flashdev_28F320W30T = { |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
259 .name = "Intel 28F320W30T", |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
260 .cfi_table = intel_4M_topboot_cfi, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
261 .required_global_config = FLASH_GLOBAL_CFG_SINGLE_4M, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
262 .bank_geom = {&geom_4M_topboot, 0}, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
263 .cmdset = &flash_cmdset_intel_w30, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
264 }; |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
265 |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
266 struct flash_device flashdev_28F320W30B = { |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
267 .name = "Intel 28F320W30B", |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
268 .cfi_table = intel_4M_bottomboot_cfi, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
269 .required_global_config = FLASH_GLOBAL_CFG_SINGLE_4M, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
270 .bank_geom = {&geom_4M_bottomboot, 0}, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
271 .cmdset = &flash_cmdset_intel_w30, |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
272 }; |
7c18eac91457
loadtools: round out support for Intel flash families
Mychaela Falconia <falcon@freecalypso.org>
parents:
916
diff
changeset
|
273 |
506
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
274 struct flash_device flashdev_28F640W30T = { |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
275 .name = "Intel 28F640W30T", |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
276 .cfi_table = intel_8M_topboot_cfi, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
277 .required_global_config = FLASH_GLOBAL_CFG_SINGLE_8M, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
278 .bank_geom = {&geom_8M_topboot, 0}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
279 .cmdset = &flash_cmdset_intel_w30, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
280 }; |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
281 |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
282 struct flash_device flashdev_28F640W30B = { |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
283 .name = "Intel 28F640W30B", |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
284 .cfi_table = intel_8M_bottomboot_cfi, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
285 .required_global_config = FLASH_GLOBAL_CFG_SINGLE_8M, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
286 .bank_geom = {&geom_8M_bottomboot, 0}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
287 .cmdset = &flash_cmdset_intel_w30, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
288 }; |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
289 |
553
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
290 /* classic AMD flash chips */ |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
291 |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
292 static struct cfi_check Am29DL640G_cfi[] = { |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
293 {0x10, 'Q'}, |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
294 {0x11, 'R'}, |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
295 {0x12, 'Y'}, |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
296 {0x13, 0x02}, |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
297 {0x14, 0x00}, |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
298 {0x15, 0x40}, |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
299 {0x16, 0x00}, |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
300 {0x27, 0x17}, |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
301 {0x2C, 0x03}, |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
302 {0x2D, 0x07}, |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
303 {0x2E, 0x00}, |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
304 {0x2F, 0x20}, |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
305 {0x30, 0x00}, |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
306 {0x31, 0x7D}, |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
307 {0x32, 0x00}, |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
308 {0x33, 0x00}, |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
309 {0x34, 0x01}, |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
310 {0x35, 0x07}, |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
311 {0x36, 0x00}, |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
312 {0x37, 0x20}, |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
313 {0x38, 0x00}, |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
314 {0x40, 'P'}, |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
315 {0x41, 'R'}, |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
316 {0x42, 'I'}, |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
317 {0x43, '1'}, |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
318 {0x44, '3'}, |
976
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
319 {0x49, 0x04}, |
553
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
320 {-1, 0} |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
321 }; |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
322 |
976
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
323 static struct amd_lock_info Am29DL640G_lock_info = { |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
324 .ngroups = 8, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
325 .groups = { |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
326 {0x2000, 8, 0, 1, 0}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
327 {0x10000, 3, 0, 0, 0}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
328 {0x40000, 3, 1, 0, 1}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
329 {0x40000, 12, 1, 1, 1}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
330 {0x40000, 12, 1, 1, 1}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
331 {0x40000, 3, 1, 1, 0}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
332 {0x10000, 3, 0, 0, 0}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
333 {0x2000, 8, 0, 0, 1}}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
334 .have_status_word_3 = 1, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
335 }; |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
336 |
553
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
337 struct flash_device flashdev_Am29DL640G = { |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
338 .name = "Am29DL640G", |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
339 .cfi_table = Am29DL640G_cfi, |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
340 .required_global_config = FLASH_GLOBAL_CFG_SINGLE_8M, |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
341 .bank_geom = {&geom_8M_bothends, 0}, |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
342 .cmdset = &flash_cmdset_amd, |
976
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
343 .lock_info = {&Am29DL640G_lock_info, 0}, |
553
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
344 }; |
3886a8a40809
fc-loadtool: added support for old Am29DL640G flash chip
Mychaela Falconia <falcon@freecalypso.org>
parents:
523
diff
changeset
|
345 |
506
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
346 /* Spansion S71PL-J and S71PL-N flash */ |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
347 |
559
f229efbfd581
fc-loadtool: added support for S29PL032J/S71PL032J flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
553
diff
changeset
|
348 static struct cfi_check spansion_PL032J_cfi[] = { |
f229efbfd581
fc-loadtool: added support for S29PL032J/S71PL032J flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
553
diff
changeset
|
349 {0x10, 'Q'}, |
f229efbfd581
fc-loadtool: added support for S29PL032J/S71PL032J flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
553
diff
changeset
|
350 {0x11, 'R'}, |
f229efbfd581
fc-loadtool: added support for S29PL032J/S71PL032J flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
553
diff
changeset
|
351 {0x12, 'Y'}, |
f229efbfd581
fc-loadtool: added support for S29PL032J/S71PL032J flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
553
diff
changeset
|
352 {0x13, 0x02}, |
f229efbfd581
fc-loadtool: added support for S29PL032J/S71PL032J flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
553
diff
changeset
|
353 {0x14, 0x00}, |
f229efbfd581
fc-loadtool: added support for S29PL032J/S71PL032J flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
553
diff
changeset
|
354 {0x15, 0x40}, |
f229efbfd581
fc-loadtool: added support for S29PL032J/S71PL032J flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
553
diff
changeset
|
355 {0x16, 0x00}, |
f229efbfd581
fc-loadtool: added support for S29PL032J/S71PL032J flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
553
diff
changeset
|
356 {0x27, 0x16}, |
f229efbfd581
fc-loadtool: added support for S29PL032J/S71PL032J flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
553
diff
changeset
|
357 {0x2C, 0x03}, |
f229efbfd581
fc-loadtool: added support for S29PL032J/S71PL032J flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
553
diff
changeset
|
358 {0x2D, 0x07}, |
f229efbfd581
fc-loadtool: added support for S29PL032J/S71PL032J flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
553
diff
changeset
|
359 {0x2E, 0x00}, |
f229efbfd581
fc-loadtool: added support for S29PL032J/S71PL032J flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
553
diff
changeset
|
360 {0x2F, 0x20}, |
f229efbfd581
fc-loadtool: added support for S29PL032J/S71PL032J flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
553
diff
changeset
|
361 {0x30, 0x00}, |
f229efbfd581
fc-loadtool: added support for S29PL032J/S71PL032J flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
553
diff
changeset
|
362 {0x31, 0x3D}, |
f229efbfd581
fc-loadtool: added support for S29PL032J/S71PL032J flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
553
diff
changeset
|
363 {0x32, 0x00}, |
f229efbfd581
fc-loadtool: added support for S29PL032J/S71PL032J flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
553
diff
changeset
|
364 {0x33, 0x00}, |
f229efbfd581
fc-loadtool: added support for S29PL032J/S71PL032J flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
553
diff
changeset
|
365 {0x34, 0x01}, |
f229efbfd581
fc-loadtool: added support for S29PL032J/S71PL032J flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
553
diff
changeset
|
366 {0x35, 0x07}, |
f229efbfd581
fc-loadtool: added support for S29PL032J/S71PL032J flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
553
diff
changeset
|
367 {0x36, 0x00}, |
f229efbfd581
fc-loadtool: added support for S29PL032J/S71PL032J flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
553
diff
changeset
|
368 {0x37, 0x20}, |
f229efbfd581
fc-loadtool: added support for S29PL032J/S71PL032J flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
553
diff
changeset
|
369 {0x38, 0x00}, |
f229efbfd581
fc-loadtool: added support for S29PL032J/S71PL032J flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
553
diff
changeset
|
370 {0x40, 'P'}, |
f229efbfd581
fc-loadtool: added support for S29PL032J/S71PL032J flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
553
diff
changeset
|
371 {0x41, 'R'}, |
f229efbfd581
fc-loadtool: added support for S29PL032J/S71PL032J flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
553
diff
changeset
|
372 {0x42, 'I'}, |
f229efbfd581
fc-loadtool: added support for S29PL032J/S71PL032J flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
553
diff
changeset
|
373 {0x43, '1'}, |
f229efbfd581
fc-loadtool: added support for S29PL032J/S71PL032J flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
553
diff
changeset
|
374 {0x44, '3'}, |
f229efbfd581
fc-loadtool: added support for S29PL032J/S71PL032J flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
553
diff
changeset
|
375 {-1, 0} |
f229efbfd581
fc-loadtool: added support for S29PL032J/S71PL032J flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
553
diff
changeset
|
376 }; |
f229efbfd581
fc-loadtool: added support for S29PL032J/S71PL032J flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
553
diff
changeset
|
377 |
f229efbfd581
fc-loadtool: added support for S29PL032J/S71PL032J flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
553
diff
changeset
|
378 struct flash_device flashdev_PL032J = { |
f229efbfd581
fc-loadtool: added support for S29PL032J/S71PL032J flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
553
diff
changeset
|
379 .name = "Spansion S29PL032J", |
f229efbfd581
fc-loadtool: added support for S29PL032J/S71PL032J flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
553
diff
changeset
|
380 .cfi_table = spansion_PL032J_cfi, |
f229efbfd581
fc-loadtool: added support for S29PL032J/S71PL032J flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
553
diff
changeset
|
381 .required_global_config = FLASH_GLOBAL_CFG_SINGLE_4M, |
f229efbfd581
fc-loadtool: added support for S29PL032J/S71PL032J flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
553
diff
changeset
|
382 .bank_geom = {&geom_4M_bothends, 0}, |
f229efbfd581
fc-loadtool: added support for S29PL032J/S71PL032J flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
553
diff
changeset
|
383 .cmdset = &flash_cmdset_amd, |
f229efbfd581
fc-loadtool: added support for S29PL032J/S71PL032J flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
553
diff
changeset
|
384 }; |
f229efbfd581
fc-loadtool: added support for S29PL032J/S71PL032J flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
553
diff
changeset
|
385 |
976
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
386 /* |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
387 * For our purposes, S29PL064J/S71PL064J differs from Am29DL640G only |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
388 * in terms of lock status retrieval and manipulation: the older chip |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
389 * lacks persistent/password mode lock bits and in-system lock/unlock |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
390 * operations. We distinguish them by one byte in CFI. |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
391 */ |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
392 |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
393 static struct cfi_check spansion_PL064J_cfi[] = { |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
394 {0x10, 'Q'}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
395 {0x11, 'R'}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
396 {0x12, 'Y'}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
397 {0x13, 0x02}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
398 {0x14, 0x00}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
399 {0x15, 0x40}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
400 {0x16, 0x00}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
401 {0x27, 0x17}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
402 {0x2C, 0x03}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
403 {0x2D, 0x07}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
404 {0x2E, 0x00}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
405 {0x2F, 0x20}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
406 {0x30, 0x00}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
407 {0x31, 0x7D}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
408 {0x32, 0x00}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
409 {0x33, 0x00}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
410 {0x34, 0x01}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
411 {0x35, 0x07}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
412 {0x36, 0x00}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
413 {0x37, 0x20}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
414 {0x38, 0x00}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
415 {0x40, 'P'}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
416 {0x41, 'R'}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
417 {0x42, 'I'}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
418 {0x43, '1'}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
419 {0x44, '3'}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
420 {0x49, 0x07}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
421 {-1, 0} |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
422 }; |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
423 |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
424 static struct amd_lock_info PL064J_lock_info = { |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
425 .ngroups = 8, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
426 .groups = { |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
427 {0x2000, 8, 0, 1, 0}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
428 {0x10000, 3, 0, 0, 0}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
429 {0x40000, 3, 1, 0, 1}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
430 {0x40000, 12, 1, 1, 1}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
431 {0x40000, 12, 1, 1, 1}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
432 {0x40000, 3, 1, 1, 0}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
433 {0x10000, 3, 0, 0, 0}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
434 {0x2000, 8, 0, 0, 1}}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
435 .have_status_word_3 = 1, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
436 .have_mode_lock_bits = 1, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
437 }; |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
438 |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
439 struct flash_device flashdev_PL064J = { |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
440 .name = "Spansion S29PL064J", |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
441 .cfi_table = spansion_PL064J_cfi, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
442 .required_global_config = FLASH_GLOBAL_CFG_SINGLE_8M, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
443 .bank_geom = {&geom_8M_bothends, 0}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
444 .cmdset = &flash_cmdset_amd, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
445 .lock_info = {&PL064J_lock_info, 0}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
446 }; |
559
f229efbfd581
fc-loadtool: added support for S29PL032J/S71PL032J flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
553
diff
changeset
|
447 |
506
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
448 static struct cfi_check spansion_PL129J_cfi[] = { |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
449 {0x10, 'Q'}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
450 {0x11, 'R'}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
451 {0x12, 'Y'}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
452 {0x13, 0x02}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
453 {0x14, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
454 {0x15, 0x40}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
455 {0x16, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
456 {0x27, 0x18}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
457 {0x2C, 0x03}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
458 {0x2D, 0x07}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
459 {0x2E, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
460 {0x2F, 0x20}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
461 {0x30, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
462 {0x31, 0xFD}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
463 {0x32, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
464 {0x33, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
465 {0x34, 0x01}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
466 {0x35, 0x07}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
467 {0x36, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
468 {0x37, 0x20}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
469 {0x38, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
470 {0x40, 'P'}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
471 {0x41, 'R'}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
472 {0x42, 'I'}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
473 {0x43, '1'}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
474 {0x44, '3'}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
475 {-1, 0} |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
476 }; |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
477 |
976
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
478 static struct amd_lock_info PL129J_lock_info_0 = { |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
479 .ngroups = 4, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
480 .groups = { |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
481 {0x2000, 8, 0, 1, 0}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
482 {0x10000, 3, 0, 0, 0}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
483 {0x40000, 7, 1, 0, 1}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
484 {0x40000, 24, 1, 1, 1}}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
485 .have_status_word_3 = 1, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
486 .have_mode_lock_bits = 1, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
487 }; |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
488 |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
489 static struct amd_lock_info PL129J_lock_info_1 = { |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
490 .ngroups = 4, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
491 .groups = { |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
492 {0x40000, 24, 1, 1, 1}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
493 {0x40000, 7, 1, 1, 0}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
494 {0x10000, 3, 0, 0, 0}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
495 {0x2000, 8, 0, 0, 1}}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
496 .have_status_word_3 = 1, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
497 .have_mode_lock_bits = 1, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
498 }; |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
499 |
506
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
500 struct flash_device flashdev_PL129J = { |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
501 .name = "Spansion S29PL129J", |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
502 .cfi_table = spansion_PL129J_cfi, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
503 .required_global_config = FLASH_GLOBAL_CFG_DUAL_8M, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
504 .bank_geom = {&geom_8M_bottomboot, &geom_8M_topboot}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
505 .cmdset = &flash_cmdset_amd, |
976
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
506 .lock_info = {&PL129J_lock_info_0, &PL129J_lock_info_1}, |
506
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
507 }; |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
508 |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
509 static struct cfi_check spansion_PL129N_cfi[] = { |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
510 {0x10, 'Q'}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
511 {0x11, 'R'}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
512 {0x12, 'Y'}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
513 {0x13, 0x02}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
514 {0x14, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
515 {0x15, 0x40}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
516 {0x16, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
517 {0x27, 0x18}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
518 {0x2C, 0x03}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
519 {0x2D, 0x03}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
520 {0x2E, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
521 {0x2F, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
522 {0x30, 0x01}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
523 {0x31, 0x3D}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
524 {0x32, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
525 {0x33, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
526 {0x34, 0x04}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
527 {0x35, 0x03}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
528 {0x36, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
529 {0x37, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
530 {0x38, 0x01}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
531 {0x40, 'P'}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
532 {0x41, 'R'}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
533 {0x42, 'I'}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
534 {0x43, '1'}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
535 {0x44, '4'}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
536 {-1, 0} |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
537 }; |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
538 |
976
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
539 static struct amd_lock_info PL129N_lock_info_0 = { |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
540 .ngroups = 3, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
541 .groups = { |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
542 {0x10000, 4, 0, 1, 0}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
543 {0x40000, 7, 1, 0, 1}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
544 {0x40000, 24, 1, 1, 1}}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
545 .have_status_word_3 = 1, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
546 .have_pln_lock_reg = 1, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
547 }; |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
548 |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
549 static struct amd_lock_info PL129N_lock_info_1 = { |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
550 .ngroups = 3, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
551 .groups = { |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
552 {0x40000, 24, 1, 1, 1}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
553 {0x40000, 7, 1, 1, 0}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
554 {0x10000, 4, 0, 0, 1}}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
555 .have_status_word_3 = 1, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
556 .have_pln_lock_reg = 1, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
557 }; |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
558 |
506
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
559 struct flash_device flashdev_PL129N = { |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
560 .name = "Spansion S29PL129N", |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
561 .cfi_table = spansion_PL129N_cfi, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
562 .required_global_config = FLASH_GLOBAL_CFG_DUAL_8M, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
563 .bank_geom = {&geom_8M_bottomboot_big, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
564 &geom_8M_topboot_big}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
565 .cmdset = &flash_cmdset_amd, |
976
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
566 .lock_info = {&PL129N_lock_info_0, &PL129N_lock_info_1}, |
506
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
567 }; |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
568 |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
569 /* Samsung K5A32xxCTM introduced onto the scene by Openmoko */ |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
570 |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
571 static struct cfi_check samsung_4M_topboot_cfi[] = { |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
572 {0x10, 'Q'}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
573 {0x11, 'R'}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
574 {0x12, 'Y'}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
575 {0x13, 0x02}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
576 {0x14, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
577 {0x15, 0x40}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
578 {0x16, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
579 {0x27, 0x16}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
580 {0x2C, 0x02}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
581 {0x2D, 0x07}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
582 {0x2E, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
583 {0x2F, 0x20}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
584 {0x30, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
585 {0x31, 0x3E}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
586 {0x32, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
587 {0x33, 0x00}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
588 {0x34, 0x01}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
589 {0x40, 'P'}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
590 {0x41, 'R'}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
591 {0x42, 'I'}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
592 {0x43, '3'}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
593 {0x44, '3'}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
594 {0x4F, 0x03}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
595 {-1, 0} |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
596 }; |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
597 |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
598 struct flash_device flashdev_K5A32xx_T = { |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
599 .name = "Samsung K5A32xx_T", |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
600 .cfi_table = samsung_4M_topboot_cfi, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
601 .required_global_config = FLASH_GLOBAL_CFG_SINGLE_4M, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
602 .bank_geom = {&geom_4M_topboot, 0}, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
603 .cmdset = &flash_cmdset_amd, |
0dd2c87c1b63
fc-loadtool flash support overhaul
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
604 }; |
523
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
605 |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
606 /* a different 4 MiB Samsung flash chip used in Huawei GTM900 */ |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
607 |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
608 static struct cfi_check samsung_4M_bothends_cfi[] = { |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
609 {0x10, 'Q'}, |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
610 {0x11, 'R'}, |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
611 {0x12, 'Y'}, |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
612 {0x13, 0x02}, |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
613 {0x14, 0x00}, |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
614 {0x15, 0x40}, |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
615 {0x16, 0x00}, |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
616 {0x27, 0x16}, |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
617 {0x2C, 0x03}, |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
618 {0x2D, 0x07}, |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
619 {0x2E, 0x00}, |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
620 {0x2F, 0x20}, |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
621 {0x30, 0x00}, |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
622 {0x31, 0x3D}, |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
623 {0x32, 0x00}, |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
624 {0x33, 0x00}, |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
625 {0x34, 0x01}, |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
626 {0x35, 0x07}, |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
627 {0x36, 0x00}, |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
628 {0x37, 0x20}, |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
629 {0x38, 0x00}, |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
630 {0x40, 'P'}, |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
631 {0x41, 'R'}, |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
632 {0x42, 'I'}, |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
633 {0x43, '0'}, |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
634 {0x44, '0'}, |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
635 {0x4F, 0x04}, |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
636 {-1, 0} |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
637 }; |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
638 |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
639 struct flash_device flashdev_K5L33xx_A = { |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
640 .name = "Samsung K5L33xx_A", |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
641 .cfi_table = samsung_4M_bothends_cfi, |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
642 .required_global_config = FLASH_GLOBAL_CFG_SINGLE_4M, |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
643 .bank_geom = {&geom_4M_bothends, 0}, |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
644 .cmdset = &flash_cmdset_amd, |
9a478d33b3ca
fc-loadtool: added Samsung K5L33xx_A flash support for GTM900
Mychaela Falconia <falcon@freecalypso.org>
parents:
506
diff
changeset
|
645 }; |
916
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
646 |
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
647 /* Samsung equivalent of S71PL129J, found in Sony Ericsson K200/220 phones */ |
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
648 |
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
649 static struct cfi_check samsung_PL129J_equiv_cfi[] = { |
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
650 {0x10, 'Q'}, |
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
651 {0x11, 'R'}, |
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
652 {0x12, 'Y'}, |
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
653 {0x13, 0x02}, |
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
654 {0x14, 0x00}, |
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
655 {0x15, 0x40}, |
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
656 {0x16, 0x00}, |
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
657 {0x27, 0x18}, |
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
658 {0x2C, 0x03}, |
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
659 {0x2D, 0x07}, |
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
660 {0x2E, 0x00}, |
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
661 {0x2F, 0x20}, |
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
662 {0x30, 0x00}, |
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
663 {0x31, 0xFD}, |
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
664 {0x32, 0x00}, |
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
665 {0x33, 0x00}, |
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
666 {0x34, 0x01}, |
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
667 {0x35, 0x07}, |
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
668 {0x36, 0x00}, |
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
669 {0x37, 0x20}, |
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
670 {0x38, 0x00}, |
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
671 {0x40, 'P'}, |
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
672 {0x41, 'R'}, |
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
673 {0x42, 'I'}, |
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
674 {0x43, '0'}, |
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
675 {0x44, '0'}, |
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
676 {0x4F, 0x04}, |
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
677 {-1, 0} |
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
678 }; |
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
679 |
976
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
680 static struct amd_lock_info K5L29_lock_info_0 = { |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
681 .ngroups = 4, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
682 .groups = { |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
683 {0x2000, 8, 0, 1, 0}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
684 {0x10000, 3, 0, 0, 0}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
685 {0x40000, 7, 1, 0, 1}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
686 {0x40000, 24, 1, 1, 1}}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
687 .have_status_word_3 = 1, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
688 .have_status_word_7 = 1, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
689 .have_mode_lock_bits = 1, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
690 }; |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
691 |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
692 static struct amd_lock_info K5L29_lock_info_1 = { |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
693 .ngroups = 4, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
694 .groups = { |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
695 {0x40000, 24, 1, 1, 1}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
696 {0x40000, 7, 1, 1, 0}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
697 {0x10000, 3, 0, 0, 0}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
698 {0x2000, 8, 0, 0, 1}}, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
699 .have_status_word_3 = 1, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
700 .have_status_word_7 = 1, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
701 .have_mode_lock_bits = 1, |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
702 }; |
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
703 |
916
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
704 struct flash_device flashdev_K5L29xx_A = { |
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
705 .name = "Samsung K5L29xx_A", |
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
706 .cfi_table = samsung_PL129J_equiv_cfi, |
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
707 .required_global_config = FLASH_GLOBAL_CFG_DUAL_8M, |
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
708 .bank_geom = {&geom_8M_bottomboot, &geom_8M_topboot}, |
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
709 .cmdset = &flash_cmdset_amd, |
976
ff4ce8d5ece4
fc-loadtool flash: definitions for AMD sector lock architecture
Mychaela Falconia <falcon@freecalypso.org>
parents:
973
diff
changeset
|
710 .lock_info = {&K5L29_lock_info_0, &K5L29_lock_info_1}, |
916
54a0bc149d9c
fc-loadtool: add support for Samsung K5L29xx_A flash
Mychaela Falconia <falcon@freecalypso.org>
parents:
696
diff
changeset
|
711 }; |