PiDP-8/I Software

View Ticket
Log In
Ticket Hash: 88fad950a350f0b50546f6f4a54b769a4772cf25
Title: Replace the sleep(2) after gpio_thread() starts with a semaphore
Status: Closed Type: Code Defect
Severity: Critical Priority: Medium
Subsystem: front panel Resolution: Fixed
Last Modified: 2017-03-19 08:06:26
8.37 years ago
Created: 2017-02-01 01:12:41
8.49 years ago
Version Found In:
User Comments:
tangent added on 2017-02-01 01:12:41:
All programs that use the GPIO module purposely delay 2 seconds to give the GPIO thread time to start up. Replace this with a semaphore: if pthread_create() doesn't error out, grab a semaphore that blocks until the GPIO thread clears it. Then check pidp8i_gpio_present to learn whether GPIO was mapped and set up.

This should cut most of this 2-second delay out of the startup time.

tangent added on 2017-03-19 08:06:26:
Fixed in [f5c3de8341]