Where is Hardware Firmware Stored?

0

Where is the firmware for a device such as a mouse integrated into a laptop? And how can I access it using Linux. so far I have tried querying the pci Bus using lspci | grep rom, however I have only found bios for Video Card. If I'm not mistaken there must be firmware for every peripheral on the bus, but there's not way to access it? Please Help!!!!

AndroidAcolyteFX

Posted 2019-05-13T01:22:29.657

Reputation: 63

2Firmware for an external device would be in that device, not in the laptop. It's internal to the device. The laptop only sees whatever information is part of the protocol for interacting with that device over a standard interface. The laptop would have a software driver for interacting with the device. – fixer1234 – 2019-05-13T02:15:56.433

Answers

3

A device as simple as a mouse may not have any accessible firmware. If there is any firmware on the device at all (which there might not be!), it may be stored in read-only memory on the device, and not be exposed to the computer.

More generally speaking, though, firmware for hardware devices generally doesn't appear on the PCI bus. What you're looking at is probably the expansion ROM for your graphics card -- this is code run by the CPU during the boot sequence to initialize that device.

There is no universal standard for how firmware on hardware devices is stored, accessed, and/or updated. There are a few standard protocols for certain types of devices (like SATA "Download Microcode" or USB Device Firmware Update); however, these protocols are not always used even for the devices they apply to, they often provide no way to "read back" firmware from a device, and they wouldn't show up on the PCI bus.

duskwuff -inactive-

Posted 2019-05-13T01:22:29.657

Reputation: 3 824