979 Commits

Author SHA1 Message Date
Jared Boone
14eba3d947 Extract tuning code into separate .c/.h file. 2013-09-07 22:30:13 -07:00
Jared Boone
b5dc264d22 Extract rf_path code into a separate .c/.h.
Add an rf_path_init() function to do initial, idle configuration during start-up.
2013-09-07 22:22:03 -07:00
Jared Boone
7cf4058372 Move various switchctrl manipulation into clearly-defined rf_path_*() implementations. 2013-09-07 22:06:01 -07:00
Jared Boone
bf297e0e08 I might've been a bit hasty removing volatile from transceiver_mode. 2013-09-07 22:01:46 -07:00
Jared Boone
4ad3680428 Break SGPIO interrupt handlers in two -- RX and TX.
Assign an SGPIO interrupt handler function at runtime, based on RX or TX mode. NOTE: This is incompatible with placing the vector table in ROM, which is fine on a device with no internal flash).
Remove SGPIO interrupt-time dependency on volatile transceiver_mode variable. Side effect is that a few cycles are probably saved inside the SGPIO interrupt.
2013-09-07 21:04:36 -07:00
Jared Boone
e7c6408473 Add comment describing SWITCHCTRL pins vs. RF path configurations. 2013-09-07 20:21:43 -07:00
Jared Boone
d65314db37 Clean up switchctrl code a bit -- redundant #ifdefs and complex if conditions. 2013-09-07 20:20:48 -07:00
Jared Boone
bafe97e302 Extract knowledge of RF path configurations from the RFFC5071 driver.
Change initial RF path mode to SWITCHCTRL_SAFE. (Previously started at SWITCHCTRL_SAFE and then immediately switched to SWITCHCTRL_AMP_BYPASS.)
2013-09-07 12:59:57 -07:00
Jared Boone
6dee455ef2 Contain calls to rffc5071_(rx|tr) to a single location. 2013-09-07 12:40:09 -07:00
Jared Boone
518c46a111 Oops, missed a spot where I should've called a MAX2837 mode function. 2013-09-06 23:09:29 -07:00
Jared Boone
b89f43e97e Replace transceiver_mode dependent MAX2837 mode management with max2837_mode() -> max2837_set_mode() calls. 2013-09-06 22:50:04 -07:00
Jared Boone
a367f84d15 Add MAX2837 mode set/get functions. 2013-09-06 22:29:57 -07:00
Jared Boone
a5c0b5deeb Add MAX2837 functions to control operating mode.
Replace direct manipulation of GPIOs controlling MAX2837 with operating mode functions.
2013-09-06 21:29:31 -07:00
Jared Boone
7c5db57f02 Hide the MAX2837 intermediate frequency behind a function. It also prevents leakage of the freq_*_cache variables. 2013-09-06 16:46:03 -07:00
Jared Boone
1ac3d59875 Update libopencm3 submodule commit. 2013-09-06 16:02:01 -07:00
Jared Boone
266003f3af Added two CGU debugging tools:
- check_clock.py to decode the frequency monitor result.
- dump_cgu.py to display selected CGU registers in a legible format.
2013-09-04 16:34:20 -07:00
Jared Boone
6c0d803647 Cleaned up management of SGPIO and transceiver mode state vs. USB configuration state. This should help with power management. It may also be necessary when operating at low speed (48MHz), to keep the SGPIO interrupts from chewing up ALL available CPU cycles. 2013-09-04 16:27:43 -07:00
Jared Boone
1f5b979fd9 Added usb_set_configuration_changed_cb() call that bgamari fixed in his as-yet-unmerged USB branch. 2013-09-04 16:24:19 -07:00
Jared Boone
d76d72665e Adjusted cpu_clock_pll1_low_speed() to operate at 48MHz, as per several comments with the code. The actual MSEL value was previously selecting 84MHz. 2013-09-04 16:23:32 -07:00
Jared Boone
237bf6ecdb Pulled redundant PLL1 initialization code from cpu_clock_init(). Called cpu_clock_pll1_low_speed() instead. 2013-09-04 16:22:41 -07:00
Jared Boone
189d245868 Merge remote-tracking branch 'TitanMKD/master' into titanmkd_overclock_fix
Conflicts:
	firmware/hackrf_usb/hackrf_usb.c
2013-09-04 12:41:03 -07:00
Jared Boone
d5cebd92de Merge pull request #98 from mikeryan/blockdiagram-images
doc: block diagram of HackRF
2013-09-04 10:44:41 -07:00
Jared Boone
a90c3b2324 Merge pull request #100 from jboone/master
Incorporate bgamari changes for libopencm3 upstream.
2013-09-02 11:10:11 -07:00
TitanMKD
24ed48d93a Fix for "issues/62 fix PLL1 overclock bug" see hackrf_core.c -> cpu_clock_init()
Fix for "issues/78 startup current too high" see hackrf_core.c -> New functions cpu_clock_pll1_low_speed()/cpu_clock_pll1_max_speed() & hackrf_usb.c to switch low_speed/max_speed.
2013-08-28 22:01:57 +02:00
Mike Ryan
10d67a8265 doc: block diagram of HackRF
Source: http://2013.hackitoergosum.org/presentations/Day2-04.HackRF%20A%20Low%20Cost%20Software%20Defined%20Radio%20Platform%20by%20Benjamin%20Vernoux.pdf
2013-08-17 10:08:19 -07:00
Michael Ossmann
2648107a0b added dfu-util requirement 2013-08-11 14:56:32 -06:00
Jared Boone
11156d958d Delete jawbreaker_boot_mode.pdf
Document is wrong (ON and OFF reversed) and redundant -- information is in Wiki and LPC43xx UM10503.
2013-08-11 12:51:50 -07:00
Jared Boone
d0f0090474 Delete jawbreaker_boot_mode.ods
Document is wrong (ON and OFF reversed) and redundant -- information is in Wiki and LPC43xx UM10503.
2013-08-11 12:51:40 -07:00
Michael Ossmann
b056efcaf8 .so and .pc version update 2013-07-26 18:30:46 -06:00
Ben Gamari
4822512dac Bump libopencm3 2013-07-07 18:51:50 -04:00
Ben Gamari
2717b7534e firmware/: Update #includes for libopencm3 merge 2013-07-07 17:48:54 -04:00
Ben Gamari
3dbe817b09 firmware/: Use uint32_t instead of u32 2013-07-07 17:48:54 -04:00
Ben Gamari
1bbe375746 A few more changes due to the libopencm3 merge 2013-07-07 17:48:54 -04:00
Ben Gamari
98f30188c1 Ensure that LPC43XX is defined for libopencm3 2013-07-07 17:48:54 -04:00
Ben Gamari
ddd7d8ca71 Fix NVIC interrupt macro names
In libopencm3 master the NVIC macros are prefixed with NVIC_ not
NVIC_M4_
2013-07-07 17:48:54 -04:00
Ben Gamari
fac5d0dfba Bump libopencm3 2013-07-07 17:48:54 -04:00
Ben Gamari
0972829ce5 usb: Rework configuration change notification 2013-07-01 00:25:22 -04:00
Ben Gamari
8a529617e5 Build against libopencm3 submodule tree by default 2013-07-01 00:21:49 -04:00
Ben Gamari
21a83179d8 Add libopencm3 submodule 2013-07-01 00:21:27 -04:00
Michael Ossmann
bc5e683c36 Merge pull request #88 from ZeroChaos/patch-1
fix permissions on udev rules
2013-06-26 21:43:16 -07:00
ZeroChaos
250d6d43ff fix permissions on udev rules
when setting a group on a device typically you only set write for root and the group not for world.  should be 660 not 666, 666 is the devil.
2013-06-27 00:30:47 -04:00
Michael Ossmann
ed805dc370 hackrf_transfer usage() update to warn people about -w 2013-06-26 12:48:10 -06:00
Michael Ossmann
474c40b8c2 trying to fix "0.000 MHz" output bug that only affects certain people 2013-06-26 12:43:59 -06:00
Michael Ossmann
dc8738d9b2 Merge pull request #82 from ibobbitt/upstream
Include udev rule if -DINSTALL_UDEV_RULES=ON is set (copied from rtl-sdr...
2013-06-26 11:33:38 -07:00
Michael Ossmann
631849763b Merge pull request #81 from ibobbitt/master
Typo in hackrf_transfer usage text
2013-06-26 11:33:07 -07:00
Michael Ossmann
8b2a42d706 Merge pull request #79 from Hoernchen/master
This is excellent, especially the DC offset fix.
2013-06-26 10:37:53 -07:00
Ian Bobbitt
a00a6a84e2 Include udev rule if -DINSTALL_UDEV_RULES=ON is set (copied from rtl-sdr) 2013-06-21 13:45:44 -04:00
Ian Bobbitt
7fd44fddfd Include udev rule if -DINSTALL_UDEV_RULES=ON is set (copied from rtl-sdr) 2013-06-21 12:15:03 -04:00
Ian Bobbitt
91307c31bd Fixing typo in usage text 2013-06-20 21:37:45 +00:00
Hoernchen
b33f534da0 firmware, lib: update comments, doc 2013-06-17 12:32:12 +02:00