Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Firmware and drivers in Linux [closed]

As per my understanding, the firmware is what controls the hardware, and drivers interacts with the firmware to control the hardware. Is that correct?

In Linux, what are the APIs or functions which interact with the firmware? Is the firmware code independent of any OS (e.g. Linux or Windows)?

like image 977
foo_l Avatar asked Apr 22 '13 10:04

foo_l


People also ask

What are the two types of drivers in Linux?

The Linux kernel supports two main types of USB drivers: drivers on a host system and drivers on a device. The USB drivers for a host system control the USB devices that are plugged into it, from the host's point of view (a common USB host is a desktop computer.)

What is a firmware in Linux?

Linux firmware is a package distributed alongside the Linux kernel that contains firmware binary blobs necessary for partial or full functionality of certain hardware devices.

What is firmware and drivers?

Firmware is the software that runs on the device. A driver is the software that tells your operating system how to communicate with the device.

Is Linux firmware required?

the linux-firmware package is required by the kernel-core package, because lots of hardware that is supported by the kernel does require firmware, so it's just a sane default.


1 Answers

Firmware is the software that runs on the device. A driver is the software that tells your operating system how to communicate with the device. All the devices having firmware are generally programed in to the device (either with a ROM chip, or a programmable ROM chip), but there are some devices where the firmware is loaded into the device at initialization time. Every device does not have the frimware.

  1. More technically "Firmware is software that is uploaded to a microprocessor or programmable logic on the hardware device itself. Examples of hardware that use firmware are HP printers that receive their code from the USB port at power up, wireless network interfaces that upload firmware at start up, routers that can update themselves from the internet, etc... In general, the ability to upload firmware to a device is a plus. it allows for product improvements to be added after the initial sale. These include fixing bugs in the product, responding to security issues, or responding to changes in the regulatory environment; Examples: FCC opening or restricting allowable bandwidths, power consumption, safety."
  2. In General: A driver is a kernel module that talks to hardware; firmware is software that runs on the hardware that talks to the driver.
like image 107
suneet saini Avatar answered Oct 26 '22 11:10

suneet saini