Changes to support V1 and V2 profiles

pull/125/head
IanSB 2020-01-04 15:30:53 +00:00
rodzic 88fb0aa8c1
commit 3b2a66af70
3 zmienionych plików z 54 dodań i 1 usunięć

Wyświetl plik

@ -987,6 +987,53 @@ cpld_t cpld_bbc = {
.show_cal_raw = cpld_show_cal_raw
};
cpld_t cpld_bbcv1 = {
.name = "BBCV1",
.default_profile = "BBC_Micro",
.init = cpld_init_bbc,
.get_version = cpld_get_version,
.calibrate = cpld_calibrate,
.set_mode = cpld_set_mode,
.analyse = cpld_analyse,
.old_firmware_support = cpld_old_firmware_support,
.frontend_info = cpld_frontend_info_bbc,
.set_frontend = cpld_set_frontend,
.get_divider = cpld_get_divider,
.get_delay = cpld_get_delay,
.update_capture_info = cpld_update_capture_info,
.get_params = cpld_get_params,
.get_value = cpld_get_value,
.get_value_string = cpld_get_value_string,
.set_value = cpld_set_value,
.show_cal_summary = cpld_show_cal_summary,
.show_cal_details = cpld_show_cal_details,
.show_cal_raw = cpld_show_cal_raw
};
cpld_t cpld_bbcv2 = {
.name = "BBCV2",
.default_profile = "BBC_Micro",
.init = cpld_init_bbc,
.get_version = cpld_get_version,
.calibrate = cpld_calibrate,
.set_mode = cpld_set_mode,
.analyse = cpld_analyse,
.old_firmware_support = cpld_old_firmware_support,
.frontend_info = cpld_frontend_info_bbc,
.set_frontend = cpld_set_frontend,
.get_divider = cpld_get_divider,
.get_delay = cpld_get_delay,
.update_capture_info = cpld_update_capture_info,
.get_params = cpld_get_params,
.get_value = cpld_get_value,
.get_value_string = cpld_get_value_string,
.set_value = cpld_set_value,
.show_cal_summary = cpld_show_cal_summary,
.show_cal_details = cpld_show_cal_details,
.show_cal_raw = cpld_show_cal_raw
};
// =============================================================
// RGB_TTL Driver Specific
// =============================================================

Wyświetl plik

@ -4,6 +4,8 @@
#include "cpld.h"
extern cpld_t cpld_bbc;
extern cpld_t cpld_bbcv1;
extern cpld_t cpld_bbcv2;
extern cpld_t cpld_rgb_ttl;
extern cpld_t cpld_rgb_analog;

Wyświetl plik

@ -1118,8 +1118,12 @@ static void cpld_init() {
RPI_SetGpioValue(VERSION_PIN, 1);
// Set the appropriate cpld "driver" based on the version
if ((cpld_version_id >> VERSION_DESIGN_BIT) == DESIGN_BBC) {
if ((cpld_version_id >> VERSION_DESIGN_BIT) == DESIGN_BBC && ((cpld_version_id >> VERSION_MAJOR_BIT) & 0x0f) > 2) {
cpld = &cpld_bbc;
} else if ((cpld_version_id >> VERSION_DESIGN_BIT) == DESIGN_BBC && ((cpld_version_id >> VERSION_MAJOR_BIT) & 0x0f) == 2) {
cpld = &cpld_bbcv2;
} else if ((cpld_version_id >> VERSION_DESIGN_BIT) == DESIGN_BBC && ((cpld_version_id >> VERSION_MAJOR_BIT) & 0x0f) <= 1) {
cpld = &cpld_bbcv1;
} else if ((cpld_version_id >> VERSION_DESIGN_BIT) == DESIGN_ATOM) {
cpld = &cpld_atom;
} else if ((cpld_version_id >> VERSION_DESIGN_BIT) == DESIGN_YUV) {