Forgot your password?
Ubuntu Programming

Shuttleworth Wants To Get Rid of Proprietary Firmware 147

Posted by samzenpus
from the change-your-ways dept.
jones_supa writes "In a new blog post, the Ubuntu main man Mark Shuttleworth calls for an end to proprietary firmwares such as ACPI. His reasoning is that running any firmware code on your phone, tablet, PC, TV, wifi router, washing machine, server, or the server running the cloud your SAAS app is running on, is a threat vector against you, and NSA's best friend. 'Arguing for ACPI on your next-generation device is arguing for a trojan horse of monumental proportions to be installed in your living room and in your data center. I've been to Troy, there is not much left.' As better solutions, Shuttleworth suggests delivering your innovative code directly to the upstream kernel, or using declarative firmware that describes hardware linkages and dependencies but doesn't include executable code."
This discussion has been archived. No new comments can be posted.

Shuttleworth Wants To Get Rid of Proprietary Firmware

Comments Filter:
  • Re:Precisely how... (Score:5, Informative)

    by Anonymous Coward on Monday March 17, 2014 @02:58PM (#46508995)

    Firmware is just fine, as long as it's non-proprietary--free as in freedom.

  • Re:Precisely how... (Score:5, Informative)

    by amorsen (7485) <> on Monday March 17, 2014 @03:04PM (#46509053)

    Precisely how does he intend that a machine boot to the install media without executable firmware?

    He does not complain about executable, he complains about proprietary.

    Besides, ACPI is complete overkill for booting.

  • by queazocotal (915608) on Monday March 17, 2014 @03:18PM (#46509209)

    Great - you don't want ACPI.

    I'm looking at my Nokia n900 phone.
    (merely because I happen to have a detailed understanding of the design).

    Inside it, there are the following closed-source blobs running on turing complete processors.

    LED controller firmware.
    SIM java virtual machine
    SIM raw firmware.
    eMMC controller.
    SD controller.
    Hard-real-time modem controller.
    Modem high-level engine.
    Bluetooth CPU.
    Wifi processor.
    Main linux application processor
    I strongly suspect there is also an embedded processor in:
    Power managment controller.
    Battery charge monitor.
    GPS. (It's possible this is just an application running on the closed-source modem high level engine). [] [] (rooting SD cards) [] (battery firmware hacking)
    Similar efforts have been done with reverse engineering the firmware of bluetooth devices, wifi.
    The notion that you should only care about the code running on the CPU being open has always seemed really naive to me.

  • by Bill, Shooter of Bul (629286) on Monday March 17, 2014 @03:27PM (#46509359) Journal

    Its already been decided by the industry that its going to be ACPI.

    And Canonical helped desgin it... with ACPI in it []

    So I don't understand why Mark is suddenly against it. Sudden change of heart leading Ubuntu to be non compatible with other linux operating systems? Again? I don't get it.

  • Re:Precisely how... (Score:4, Informative)

    by sjames (1099) on Monday March 17, 2014 @03:37PM (#46509477) Homepage

    He's talking about ACPI. That is, firmware that the kernel is expected to trust and run in it's own context after being loaded. That is quite distinct from bootstrap firmware that is expected to load and jump into the bootloader and then be inactive until the next boot.

    BTW, much of it is actually broken in various ways.

  • by rahvin112 (446269) on Monday March 17, 2014 @04:29PM (#46510129)

    There are many cellphones where there is an independent CPU running the cellular radio. This CPU runs a proprietary OS that runs has write access to all memory and can actually override the main CPU. In theory the radio CPU and OS could actually overwrite memory on the fly and redirect the kernel in completely transparent ways.

  • Re:Precisely how... (Score:3, Informative)

    by nateman1352 (971364) on Monday March 17, 2014 @05:47PM (#46510995)

    Honestly Shuttleworth's reasoning "Binary blobs can contain NSA exploits" is completely irrelevant to ACPI since ACPI byte-code can be completely de-compiled back in to the original source language making it very easy for security researchers to detect any funny business.

    Honestly the modern PC has several microcontrollers in it that contain code that the primary CPU never even sees. I personally would consider those a much bigger security threat than ACPI.

    So lets ask ourselves... why does he really want to get rid of ACPI? The answer is pretty simple, it going to take a lot of coding effort to get the Linux ACPI stack ready to fully support ACPI 5.0 and Connected Standby found on a lot of brand new laptops. This is just a feeble attempt to mask the fact that puring all his resources in dumb projects like Mir and Unity doesn't leave much left to keep up to date on new open PC platform standards.

Whenever a system becomes completely defined, some damn fool discovers something which either abolishes the system or expands it beyond recognition.