| Commit message (Collapse) | Author | Age |
| ... | |
| |
|
|
|
|
|
|
|
|
|
| |
When we don't have a beeper, there's no way to signal a 'warble' for
panic. So, elide that bit.
Second, panic can't use the scheduler and timer because those may not
be running (or may have failed), and so it uses a delay loop. Add a
configurable scale value to the panic loop so that the LED blinks can
be read. For stm32f0 devices, scale that by the sysclk value to
automatically make them of reasonable length.
|
| |
|
|
|
|
| |
The code for the second IN endpoint was using the wrong ifdef.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
|
|
|
|
|
| |
This replaces having the single output switch based on a pin value and
allows us to box the device and still fetch raw data.
For now, this will use a special libusb2 program, ao-chaosread, to
pull bits as I haven't figure out how to make linux provide two
/dev entries for one USB device.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
|
|
| |
This exposes the hardware device ID (which is unique per-chip) as the
USB serial number, avoiding the need to create a custom ROM image for
each device.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
| |
Copied from stm32l and never fixed.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
| |
This better matches the documented cal sequence.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
| |
This contains the code for power managing the GPIO pins
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
|
|
| |
For devices not providing the standard CDC-ACM interface, let them
skip the various descriptors and interfaces to provide a more limited
set of capabilities.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
| |
Allow USB suspend to suspend USB, GPIOs and master clock.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
| |
512 may not be suitable for everyone.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
| |
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
|
|
|
| |
Instead of requiring that the whole set of returned values fit
precisely in the ring, allow for wrap-around so that we can fetch an
odd number of ADC values. The previous version required that the fetch
amount always be a factor of the ADC buffer size.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
| |
Flash loader uses pin configuration to set up GPIOs for boot selection
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
|
| |
This lets the extra allocations used from ao_usb_alloc_buffers be
allocated before the first USB connection happens.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
| |
Extra semicolon
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
|
| |
This was configuring the hardware wrong, and wasn't keeping the output
ring full.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
| |
Tom discovered that this was missing
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
|
|
| |
Small pin-count versions of the STMF0 can remap PA11/PA12 on the same
pins as PA9/PA10. These are used by USB, so have the USB driver deal
with remapping them.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
|
| |
This creates a ring buffer for ADC data so that ADC fetching can run
in parallel with other activities.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
|
| |
Sets up the stm32f0 CRC hardware, exposing inline functions to access
it. DMA access is possible, but usbtrng can't use that.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
|
| |
These were left over from the stm32f0 initial implementation work; now
it's more useful to list only the bits which are valid.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
|
| |
The ADC api is what USBtrng wants; a way to repeatedly read a single
ADC input as fast as possible.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
|
|
| |
This adds a way to allocate private USB buffers for sending data
without needing to copy it again. It requires ensuring that all
accesses are 16 bits aligned to 16 bit boundaries.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
|
|
| |
The flash loader ended up assuming ao_boot was at the start of ram,
while the application stuck it after the interrupt table (where it
needs to go).
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
|
| |
Also moves the usual address for applications out of the way of the
flash loader.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
Basic clock configuration, OS support, LED and USB drivers.
Signed-off-by: Keith Packard <keithp@keithp.com>
|