+ int i;
+
+ for (i = len - (strlen("pdata")+1); i > 0; i--) {
+ if (FINDSTR(fw+i, "pdata")) {
+ unsigned char *pos = fw + i + strlen("pdata") + 1;
+
+ /* MAGIC? */
+ if (*((unsigned int*)pos) != 0x00002802) {
+ continue;
+ }
+
+ pos += 26;
+
+ /* MAGIC2? */
+ if (*((unsigned int*)pos) != 0x00500101) {
+ continue;
+ }
+
+ printf("0x%08x: BOARD_DESCRIPTION: ", pos-fw);
+ print_boarddescription(pos);
+
+ if (patch) {
+ /* Enable ATX and relay power switching */
+ pos[22] |= 0x03;
+ printf("0x%08x: BOARD_DESCRIPTION: ", pos-fw);
+ print_boarddescription(pos);
+ }
+
+ break;
+ }
+ }