Consider 4BA support when filtering erase functions

When we decide which erase functions to use, we need to know exactly
which functions are supported by the used programmer. We missed that
some programmers can't send 4-byte adddresses.  As we already have a
feature flag for this, check it right away for all 4BA erase opcodes.

This affects mostly rare combinations of external programmers with
modern 4BA flash chips. For instance early versions of the Dediprog
SF100.

Tests confirmed that this fixes the combination of a first protocol
generation SF100 with a Winbond W25Q256JV.

Change-Id: I51da2832a6a703058da57cdc0335b214653453ed
Signed-off-by: Nico Huber <nico.huber@secunet.com>
Reviewed-on: https://review.sourcearcade.org/c/flashprog/+/99
Reviewed-by: Arthur Heymans <arthur@aheymans.xyz>
Tested-by: Nico Huber <nico.h@gmx.de>
3 files changed