Fixes bug introduced with last commit( Recover from bad AP access) Let STM32 timers run at 100 Hz against 10 Hz before. Programming STM32F103 failed random (#900) with 20 ms timeout requested against the 100 ms timeout granularity provided up to now. STM32 Firmware only ticked at 10 hertz, so the sequence "low_access", "set timeout", "send out 8 bit command", "read 3 bit result" when reading "wait" and timer increment tick happening during that sequence will already hits the timeout even so only mininal time has elapsed and not the requested timeout.
33 lines
1.1 KiB
C
33 lines
1.1 KiB
C
/*
|
|
* This file is part of the Black Magic Debug project.
|
|
*
|
|
* Copyright (C) 2016 Black Sphere Technologies Ltd.
|
|
* Written by Gareth McMullin <gareth@blacksphere.co.nz>
|
|
*
|
|
* This program is free software: you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License as published by
|
|
* the Free Software Foundation, either version 3 of the License, or
|
|
* (at your option) any later version.
|
|
*
|
|
* This program is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU General Public License
|
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
*/
|
|
#include "general.h"
|
|
|
|
void platform_timeout_set(platform_timeout *t, uint32_t ms)
|
|
{
|
|
if (ms <= SYSTICKMS)
|
|
ms = SYSTICKMS;
|
|
t->time = platform_time_ms() + ms;
|
|
}
|
|
|
|
bool platform_timeout_is_expired(platform_timeout *t)
|
|
{
|
|
return platform_time_ms() > t->time;
|
|
}
|