Hlavní navigace

Názor k článku Ubuntu 17.10 bylo dočasně staženo, poškozuje BIOS některých notebooků od krauser - > Ano, a proto jeho pokusem o přehození...

  • Článek je starý, nové názory již nelze přidávat.
  • 21. 12. 2017 18:44

    krauser

    > Ano, a proto jeho pokusem o přehození se dá detekovat zda je zařízení RW nebo RO. Přesně ta část kódu toto dělá. Hned to zase vrací zpátky a žádná data k přeprogramování neposílá.

    To je hezky popis chovani, ale neodpovidajici realite :)

    static int lpc_ich_init_spi(struct pci_dev *dev)
    ...
    case INTEL_SPI_LPT:
    pci_read_config_dwor­d(dev, RCBABASE, &rcba);
    if (rcba & 1) {
    spi_base = round_down(rcba, SPIBASE_LPT_SZ);
    res->start = spi_base + SPIBASE_LPT;
    res->end = res->start + SPIBASE_LPT_SZ - 1;

    /*
    * Try to make the flash chip writeable now by
    * setting BCR_WPD. It it fails we tell the driver
    * that it can only read the chip.
    */
    pci_read_config_dwor­d(dev, BCR, &bcr);
    if (!(bcr & BCR_WPD)) {
    bcr |= BCR_WPD;
    pci_write_con­fig_dword(dev, BCR, bcr);
    pci_read_config_dwor­d(dev, BCR, &bcr);
    }
    info->writeable = !!(bcr & BCR_WPD);
    }
    break;

    Takze WPD (Write Protection Disable) se vypne (naporad) a tim, ze se necha vypnout, si ovladac overi, ze je to zapisovatelne. Ale nic zpatky nevraci - bit zustane vypnuty. A to sorry, ale to neni absolutne dobry navrh - to tam ten bit vubec nemusel byt :)

    > Lenovo si to vysvětluje po svém aniž by chápali, že když mají FlashROM švába na SPI sběrnici, že tohle je přesně způsob, jakým detekovat, zda na zařízení jde zapisovat nebo ne.
    To nemeni nic na tom, ze to je a) nesikovny zpusob detekce (ale pravdepodobne nelze jiny) b) ze se pri inicializaci driveru naporad ta write ochrana vypne (coz je prasarna, to se ma dit az tehdy, az je zapis potreba)