Commit Graph

1373 Commits

Author SHA1 Message Date
Jared Boone
748e5a4f5f Init: Boot to HackRF mode if PortaPack CPLD not found.
Worst case, customers can always pull off the PortaPack to get back to a working HackRF.
2017-06-13 22:16:00 -07:00
Jared Boone
b3c21c3762 CPLD: Ask Quartus to use maximum number of processors. 2017-06-13 21:21:25 -07:00
Jared Boone
9a0fa128c0 CPLD: Clean up *.qws files. 2017-06-13 21:20:19 -07:00
Jared Boone
e85fb47a49 Extract function that returns audio codec based on hardware revision. 2017-06-02 22:24:15 -07:00
Jared Boone
dec4e41189 CPLD: Organize CPLD code into namespaces.
Use type aliases to hide actual CPLD type (somewhat).
2017-06-02 21:57:13 -07:00
Jared Boone
dd0c009e6f CPLD: Stop generating HackRF CPLD .hpp file. 2017-06-02 21:55:35 -07:00
Jared Boone
3d06941129 Move CPLD filres to common/
...for imminent refactoring.
2017-06-02 17:13:41 -07:00
Jared Boone
fe687b93a2 CPLD: Extract decision about which CPLD config to use.
...based on hardware revision.
2017-06-02 17:05:41 -07:00
Jared Boone
a3483a8394 CPLD: Introduce Config type to clean up programming interface.
Hide the details of how the CPLD data is stored.
2017-06-02 16:54:24 -07:00
Jared Boone
76c2cc77af CPLD: Move around some .gitignores. 2017-06-01 15:20:16 -07:00
Jared Boone
797e63a590 CPLD: Use correct bitstream for updating hardware.
Determine hardware version and use one of two CPLD bitstream files.
2017-05-31 22:28:07 -07:00
Jared Boone
73d62367d1 CPLD: Makefiles for both hardware variants. 2017-05-31 21:05:47 -07:00
Jared Boone
7c715ed913 CPLD: HDL for 20170522 hardware variant. 2017-05-31 15:21:25 -07:00
Jared Boone
0fd52a7483 CPLD: Move HDL project to hardware revision-specific directory. 2017-05-31 11:50:59 -07:00
Jared Boone
4332bc763e Audio: Use correct codec based on hardware revision. 2017-05-31 11:48:03 -07:00
Jared Boone
6e5549f127 Add hardware revision detection function. 2017-05-31 11:47:13 -07:00
Jared Boone
600dcb734e AK4951: Initial commit. 2017-05-31 11:45:54 -07:00
Jared Boone
395e3b1736 Audio: Add input namespace and functions. 2017-05-31 11:43:45 -07:00
Jared Boone
bec626e29f WM8731: Add Codec abstraction. 2017-05-31 11:42:12 -07:00
Jared Boone
37c058354e WM8731: Add method to detect codec is present.
Used to determine PortaPack hardware version.
2017-05-31 11:34:16 -07:00
Jared Boone
8f5555b052 WM8731: Store headphone volume for mute() function.
So when unmuted, previous volume can be restored.
2017-05-31 11:32:32 -07:00
Jared Boone
f6e1e78e8a WM8731: Return bool from reset() and low-level write()s. 2017-05-31 11:28:00 -07:00
Jared Boone
da4bee6cc6 Audio: Introduce Codec abstraction.
Now that we have two hardware variants with different audio codecs.
2017-05-31 11:21:51 -07:00
Jared Boone
5da64ab069 Modify registers widget to simplify configuration.
Now specify number of registers and register bits, and the widget figures out the rest.
2017-05-31 11:12:56 -07:00
Jared Boone
b3ee884f16 I2S RX: Set RX SDA pin to correct SCUMUX mode.
It's left in GPIO mode ordinarily, because of CPLD programming earlier in boot-up.
2017-05-26 16:50:34 -07:00
Jared Boone
5cb71d787e Audio DMA: Fix cut-and-paste error
rx_empy_buffer() was returning the peripheral address, not the buffer address.
2017-05-26 16:21:28 -07:00
Jared Boone
6ef8b19bf1 Move some GPDMA configuration to application processor. 2017-05-24 15:42:44 -07:00
Jared Boone
556085b3e3 I2S: Enable TX_WS output pin's input buffer.
This permits receipt of TX_WS as RX_WS for the receive side of the I2S peripheral, and was why I got no RX samples when testing microphone input.
2017-05-22 14:20:49 -07:00
Jared Boone
f88e27bd3f FatFs: Apply patch ff_12c_p3.diff. 2017-05-03 12:53:52 +01:00
Jared Boone
dfc1eab4ae FatFs: Apply patch ff_12c_p2.diff. 2017-05-03 12:52:59 +01:00
Jared Boone
fd8f5e62e1 FatFs: Apply patch ff_12c_p1.diff. 2017-05-03 12:51:24 +01:00
Jared Boone
a65fe3315c FatFs: Update to release R0.12c. 2017-05-03 12:43:45 +01:00
Jared Boone
85712a2c5f FatFs: Update to release R0.12b. 2017-05-03 12:35:19 +01:00
Jared Boone
dd0048db8d Remove broken simd32_t type. 2017-05-03 09:58:07 +01:00
Jared Boone
018d8ee952 Init PortaPack IO after CPLD update. 2017-05-02 06:45:23 +01:00
Jared Boone
d6e3cc1d1b Move CPLD updating to earlier in start-up
Make sure CPLD code is up-to-date before attempting to interact with PortaPack.
2017-05-02 06:44:50 +01:00
Jared Boone
19e42196db Fn for control of audio codec reset signal. 2017-05-01 10:37:49 +01:00
Jared Boone
b12f90ef08 Adjust initial CPLD io_reg value for new CPLD code. 2017-05-01 10:34:33 +01:00
Jared Boone
17ba51d7eb Move PortaPack IO init to earlier -- with other IO init.
Was causing trouble with performing audio codec reset.
2017-05-01 10:33:16 +01:00
Jared Boone
66d66b57ab HackRF: Update firmware to 2017.02.1 2017-02-22 10:50:46 -08:00
Jared Boone
152fb77d54 bin: fix speeling 2017-02-22 10:50:19 -08:00
Jared Boone
6988afb1b5 Merge pull request #110 from sharebrained/script_up
this seems a bit nicer, and it handles people changing the firmware n…
2017-02-22 10:46:24 -08:00
Rick Farina (Zero_Chaos)
c8e898e8ce
this seems a bit nicer, and it handles people changing the firmware names a little bit 2017-02-21 12:19:30 -05:00
Jared Boone
052fd1c407 Extract loop into static method.
Performance boost as compiler is no longer updating member variable every pass through the loop.
2017-01-06 16:59:57 -08:00
Jared Boone
05eb694c0a Introduce simd32_t type.
Discontinue use of disagreeable __SIMD #define.
2017-01-06 16:57:36 -08:00
Jared Boone
1986d1faca Travis-CI: Update compiler to ARM-GCC 6.2. 2017-01-06 14:28:41 -08:00
Jared Boone
177d49b769 GPIO: Fix for incorrect pin-funciton bit mask.
Caused device to not boot. Oops.
2017-01-06 14:22:27 -08:00
Jared Boone
e763592adb Compile firmware as C++14. 2017-01-05 17:15:00 -08:00
Jared Boone
87383d735c C++14: Decommission my own make_unique. 2017-01-05 17:14:07 -08:00
Jared Boone
0d1e48ae9c C++14: Add two-argument delete() implementations.
Just passing to one-argument versions.
2017-01-05 17:13:03 -08:00