diff options
author | John Klug <john.klug@multitech.com> | 2017-07-20 16:33:31 -0500 |
---|---|---|
committer | John Klug <john.klug@multitech.com> | 2018-05-02 14:25:41 -0500 |
commit | 88188953e0e5cf566bafd7032dbfc9000f8dc961 (patch) | |
tree | 923f73903033abb2b166fb87808b1dfa3f1d8c9f | |
parent | c39a5cb69e9f22b380e1cfaaa0ed175e2c5de65a (diff) | |
download | mts-io-88188953e0e5cf566bafd7032dbfc9000f8dc961.tar.gz mts-io-88188953e0e5cf566bafd7032dbfc9000f8dc961.tar.bz2 mts-io-88188953e0e5cf566bafd7032dbfc9000f8dc961.zip |
Bump the driver level
-rw-r--r-- | io-module/mts_io.c | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/io-module/mts_io.c b/io-module/mts_io.c index 1f12b86..abac4bb 100644 --- a/io-module/mts_io.c +++ b/io-module/mts_io.c @@ -1010,6 +1010,33 @@ mts_id_eeprom_load(void) } } + /* mtcdt gnss and wifi for future devices. We assume the same + * pinout as mtcdt on MTR. */ + if(DEVICE_CAPA(id_eeprom.capa, CAPA_WIFI)) { + attr_blength += sizeof mtcdt_0_1_wifi_bt_attributes; + } + if(DEVICE_CAPA(id_eeprom.capa, CAPA_GPS)) { + attr_blength += sizeof mtcdt_0_1_gnss_attributes; + } + if (current_blength+(sizeof(struct attribute *)) != attr_blength) { + freelater = all_attrs = kmalloc(attr_blength,GFP_KERNEL); + current_count = current_blength/(sizeof (struct attribute *)); + memcpy(all_attrs,mtrv1_0_1_platform_attributes,current_blength); + if(DEVICE_CAPA(id_eeprom.capa, CAPA_WIFI)) { + log_info("Adding WiFi/BT to mts-io driver"); + memcpy(all_attrs + current_count,mtcdt_0_1_wifi_bt_attributes,sizeof mtcdt_0_1_wifi_bt_attributes); + current_count += sizeof mtcdt_0_1_wifi_bt_attributes / (sizeof (struct attribute *)); + } + if(DEVICE_CAPA(id_eeprom.capa, CAPA_GPS)) { + log_info("Adding GPS to mts-io driver"); + attr_blength += sizeof mtcdt_0_1_gnss_attributes; + memcpy(all_attrs + current_count,mtcdt_0_1_gnss_attributes,sizeof mtcdt_0_1_gnss_attributes); + current_count += sizeof mtcdt_0_1_gnss_attributes / (sizeof (struct attribute *)); + } + all_attrs[current_count] = (struct attribute *)NULL; + mtrv1_0_1_platform_attribute_group.attrs = all_attrs; + } + attr_group = &mtrv1_0_1_platform_attribute_group; gpio_pins = gpio_pins_mtrv1_0_1; mts_hw_version = MTRV1_0_1; |