@daniel
Just to help you out a little bit with terminology.
As mentioned before, generally speaking, most/all drivers are included in linux as part of the kernel. Some vendors do not put effort into this, so this is of course not true for every piece of hardware out there.
Installing drivers IS a thing on Linux, but not really. Generally you not need to install drivers, or kernel modules as they are called. (Mac calls them KEXT, kernel extension btw).
Then we have 'firmware' that lives in '/lib/firmware'. For some pieces of hardware, where the manufacturer saved some cents on an eeprom, the hardware requires (sometimes additional) actual software to function properly. For a WiFi adapter, this could be just a regulatory database (CLM_BLOB for raspberry pi's Broadcom wifi driver), which is just a table of valid wifi frequencies for example. Or, the entire software that actually 'runs' the hardware itself. Imagine that your DVB controller is just a mini-computer in itself (microcontroller). It can't do anything with software, an entire Operating system sometimes if you will GSM modems for embedded systems, sometimes contain a whole Linux system in itself! Imagine connecting an ESP32 to an off-the-shelf GSM modem module, where the modem is far more powerful then the ESP32 ;). So the actual kernel driver, will load files from /lib/firmware (the actual name and path is hardcoded within the driver, so the file has to match certain patterns, e.g. path + filename), and then 'boot' the hardware.
These firmware files are sometimes a pain to obtain. Sometimes they get extracted from windows/mac drivers themselves, sometimes the vendor offers them in a more easily to consume package. Regardless, The link provided above by Jonas, is said Firmware (thus not a driver).
When Linux (your laptop) boots, it will load the kernel module during boot, upload the firmware into the hardware and boot the hardware. If this all, works, you should have gotten /dev/dvb/ entries. On my system, I have for example:
/dev/dvb/adapter1/frontend0
/dev/dvb/adapter1/net0
/dev/dvb/adapter1/dvr0
/dev/dvb/adapter1/demux0
/dev/dvb/adapter0
/dev/dvb/adapter0/frontend0
/dev/dvb/adapter0/net0
/dev/dvb/adapter0/dvr0
/dev/dvb/adapter0/demux0
(I have a dual-tuner dvb-s card, each tuner identifies itself as an adapter).
This is without tvheadend running etc, and there are even commandline or graphical tools to use these devices (in linux, pretty much every hardware device, exists as a file in the filesystem. E.g. a serial port (COM1) is /dev/ttyS0 for example. This is not true in the strictest sense though, as ethernet devices for example are one of the very few that do not show up here.
If you have successfully booted, and you have similar entries then what I mentioned above, (net0 is probably optional, it allows for TCP stuff over DVB, cool stuff, never used it :p) it is likely your tuners are working.
Now, I don't know how your USB tuner works, but if it's a dual tuner, it would be not supprising that tuner0 supports non-hd, and tuner1 supports HD only. This would be weird, in that from a system point of view, there's little difference between non-hd and HD streams. In the end, one is just a simple mpeg2 stream with a low resultion, the other is an mpeg4 stream with high resolution. The tuner itself does not know or care about what kind of data it passes through. However, the transponder that serves this data, may use parameters that only work with one of the tuners. Note, that this is just me assuming. On my system, both tuners work identically which could be very much the case for your system too.
Further more, the firmware can be correct, but not correct. In that its for the right chip, but as written just above, does not support the transponders offering HD streams.
In the end, think of it more like you use your FM radio receiver, and you tune to a station. If it is in English, you understand the program, if it's in chinese, you still receive it, you just don't understand it. That's pretty much the same with HD and non-hd streams generally.
Finally, TV-Headend. Depending on how you uninstall tvheadend, the configuration files from your previous attempt may have been kept. E.g. you uninstalled tvheadend, but files, such as c:\user\you\tvheadned, or registry entries, remained. That's the difference usually between apt-get uninstall and apt-get purge. Sometimes you just want to remove the program, but keep configuration, sometimes you want to nuke stuff.
Generally speaking, in Linux, re-installing software won't really fix anything. Nuking invalid configuration files may. I'm not sure where TVHeadend stored the files for you, but it's quite likely its under /home/you/.hts, if you launched tvheadend as yourself, otherwise, it may depend on where debian puts it. Gentoo for example stores in in /var/lib/tvheadend. To 'start from the beginning' with tvheadend, you'd have to remove your config files.
Also remember, tvheadend has a '--first-run' flag, which will allow access to anyone, until you have created a username/password. But afaik this is all properly documented, so not pre-chewing you this :)
A final word on drivers, tvheadend 'does not care' about any of that. It simply looks in /dev/dvb, and whatever it finds there, it uses and offers to you. So if there's nothing there, you won't see anything in the dvb screen. If you only have a single adapter there, you only get a single adapter.
Hope this helps and explains a little bit about what's happening and going on.