From e0f5c552b715cb665e7a0f7cc8fd7f47d8e180bc Mon Sep 17 00:00:00 2001 From: MCUdude Date: Mon, 17 Apr 2023 19:38:55 +0200 Subject: [PATCH] make set_vtarget, set_varef and set_fosc hardware dependent based on data from avrdude.conf --- src/stk500.c | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/src/stk500.c b/src/stk500.c index 6984fb1f..f9114444 100644 --- a/src/stk500.c +++ b/src/stk500.c @@ -1300,11 +1300,18 @@ void stk500_initpgm(PROGRAMMER *pgm) { pgm->paged_write = stk500_paged_write; pgm->paged_load = stk500_paged_load; pgm->print_parms = stk500_print_parms; - pgm->set_vtarget = stk500_set_vtarget; - pgm->set_varef = stk500_set_varef; - pgm->set_fosc = stk500_set_fosc; pgm->set_sck_period = stk500_set_sck_period; pgm->setup = stk500_setup; pgm->teardown = stk500_teardown; pgm->page_size = 256; + + /* + * hardware dependent functions + */ + if (pgm->extra_features & HAS_VTARG_ADJ) + pgm->set_vtarget = stk500_set_vtarget; + if (pgm->extra_features & HAS_AREF_ADJ) + pgm->set_varef = stk500_set_varef; + if (pgm->extra_features & HAS_FOSC_ADJ) + pgm->set_fosc = stk500_set_fosc; }