neposlušný BIOS

Sekcia: Hardware a Drivery 16.03.2007 | 23:52
karol   Návštevník
Možno sa pýtate, ako suvisi BIOS s operacnym systemom. Neviem ako, ale suvisi.
Mam NB HPnx6310, Mandriva 2007 a spozoroval som, že mi nejde spustiť BIOS setup program. (spusta sa to F10) Nikdy by som to nespajal s OS, skor som podozrieval HW problem, doska a pod. Po upgrade BIOS-u to islo spustit na prvy pokus. Nechal som naehnut OS. ktory som nasledne vypol a problem sa opakoval. Manipulaciou s live CD a analytickymi metodami pokus-omyl som dosiel k zaveru : Ked je system vypnuty korektne (halt) BIOS pri dalsom zapnuti NB nejde zapnut. Staci ho vsak vypnut natvrdo (vypinac, baterka, zastrcka) a pri dalsom zapnuti zdroja sa BIOS da spustit normalne.
Este nieco : Ten BIOS v stave kedy sa neda zapnut, nabieha neskutocne dlho. Kym sa vobec objavi logo HP trva to 7s. Po tvrdom vypnuti vsak pri nasledujucoma starte usetrim minimalne 20s - hned sa totiz dostane ku slovu OS.

Neviete mi poradit ? Je to asi kuriozita, ale je to fakt.
    • Re: neposlušný BIOS 17.03.2007 | 10:40
      Matej   Návštevník
      Ahoj, mam rovnake HP aj Mandrivu, je to znamy problem ('bad state problem'). Okrem ineho nemusi fungovat ACPI ukazovatel baterky a podobne. Ak mas i windows XP, spustis ho a restartujes, tak je vsetko v poriadku, ale po naslednom restarte linuxu problem pretrvava. Jedno z rieseni je napr. take, ze si musis skompilovat vlastny kernel v ktorom ovladac na mys-touchpad 'psmouse' musi byt ako modul a pred restartom ho musis odstranit ('rmmod psmouse', pridaj to niekde do '/etc/init.d/halt' na koniec pred vypnutie a pripadne 'psmouse' pridaj aj do '/etc/modprobe.preloaded').

      S takouto upravou sa mi zda ze vsetko funguje :-)
      Jedna sa pravdepodobne o chybu biosu, ale novsi update to myslim neriesil a iba prestalo fungovat frequency scaling (modul centrino nesiel nacitat, neviem aky je momentalny stav, bios mam stary)
      • Re: neposlušný BIOS 17.03.2007 | 11:54
        WlaSaTy   Návštevník
        ano, toto je sposobene s najvecsiou pravdepodobnostou prislusnou implementaciou ACPI. vyrobca zrejme dal cast kodu do ovladacov, teda tu cast ktora mala byt priamo v biose. ACPI je totizto zo svojej povahy funkcionalita ktora musi byt v dvoch roznych castiach, bios a ovladac ...

        co sa s tym da robit? ak ma clovek stastie, tak si najde verziu biosu a kernelu ktora mu takto neblbne. ak nie, tak ...
        • Re: neposlušný BIOS 17.03.2007 | 13:38
          Avatar srigi   Používateľ
          <OT>

          V modernom 32b kerneli (Linux, W32) a este pouziva nejaky programovy kod z BIOS-u? Kdesi som cital (asi slackbook) postup bootu Linuxu:
          POST -> boot-loader -> rozbalenie jadra do RAM -> prepnutie do chraneneho rezimu ... atd, atd.

          V tom dokumente sa potom pisalo cca toto:
          Po prepnuti do chraneneho rezimu, jadro za sebou spali vsetky mosty, ktore ho spajali s realnym rezimom (BIOSom), lebo jadro plne nahradza funkciu BIOSu.

          <OT>
          • Re: neposlušný BIOS 17.03.2007 | 13:49
            WlaSaTy   Návštevník
            sirgi,
            skus sa zamysliet o tom ako moze byt rieseny rezim riadenia spotreby a pochopis. to co pises je len ohladne inicializacie periferii a nie o ich spolupraci.
    • Re: neposlušný BIOS 17.03.2007 | 15:19
      Avatar Marián Sova Ubuntu 10.10  Používateľ
      Mám ten istý notebook a problém som už chvalabohu dávno (asi pred 4 mesiacmi; asi mesiac po kúpe) vyriešil. Napísal som to v blogu na suseportali . Riešenie je funkčné aj na mandrive. Skúšal som.
      Problém spôsobuje psmouse. Na debian like systémoch je riešenie omnoho jednoduchšie. Stačí do vypínacieho skriptu dopísať rmmod psmouse a je to.
      Čo ťa nezabije, to ťa posilní | Leták na propagáciu jabbera v pdf | www.mikroprocesory.sk
      • Re: neposlušný BIOS 17.03.2007 | 15:21
        Avatar Marián Sova Ubuntu 10.10  Používateľ
        No to som tomu dal. Som si to celé neprečítal a riešenie tu už niekto napísal predo mnou. Ale opakovanie je matka múdrosti ;)
        Čo ťa nezabije, to ťa posilní | Leták na propagáciu jabbera v pdf | www.mikroprocesory.sk
        • Re: neposlušný BIOS 17.03.2007 | 15:34
          karol   Návštevník
          Aj tak ti ďakujem, vyskúšam a uvidím.
          • Re: neposlušný BIOS 17.03.2007 | 15:35
            Avatar Marián Sova Ubuntu 10.10  Používateľ
            Určite to pomôže. Pomohlo to už viacerým na HP notebookoch
            Čo ťa nezabije, to ťa posilní | Leták na propagáciu jabbera v pdf | www.mikroprocesory.sk
            • Re: neposlušný BIOS 24.03.2007 | 10:38
              karol   Návštevník
              No skúsil som tento postup :

              Najprv skopírujeme súbor /boot/config-2.6.18.2-34-default do /usr/src/linux a premenujeme ho na .config. Editujeme tento súbor. Riadok CONFIG_MOUSE_PS2=y zmeníme na CONFIG_MOUSE_PS2=m. Potom nám už stačí byť v konzole ako root na adrese /usr/src/linux a napísať make. To trvá pomerne dlho (asi 1 hodinu). Ale nebráni ďalšej práci. Potom napíšeme make modules. Potom make install a na koniec make modules_install.
              Ešte musíme do súboru /etc/sysconfig/kernel do riadku MODULES_LOADED_ON_BOOT "ndiswrapper" dopísať psmouse (takto by to malo vyzerať "ndiswrapper psmouse") aby sa nám spúšťala myš hneď po štarte. Nakoniec dopíšeme do súboru /etc/init.d/halt.local na koniec súboru riadok rmmod psmouse. A môžeme reštartovať počítač.

              Kompilácia jadra prebehla bez chybových hlásení, iba po napísaní "make modules" vyhadzoval nejaké varovania, no bežal ďalej, tak som ho ignoroval. Po napísaní "make modules_install" sa to tvárilo, že sa to inštaluje, čo to v skutočnosti robilo, netuším. No v druhej časti textu autor píše, že treba zmeniť v /etc/sysconfig/kernel jeden riadok atď. Problém je, že žiadny taký súbor sa tam u mňa nenachádza. Keď chcem ručne vyskúšať, či je modul psmouse mimo jadra a napíšem

              #rmmod psmouse, vypíše hlášku
              ERROR: Module psmouse does not exist in /proc/modules

              Z čoho som pochopil, že psmouse je stále v jadre a nie ako externý modul.

              Netuším, čo s tým robiť.
              • Re: neposlušný BIOS 24.03.2007 | 11:20
                karol   Návštevník
                Asi budem zatiaľ vypínať systém "natvrdo". Na to dlhé bootovanie nemám čas. (Niekedy nemám čas ani na obed) Keď to zapnem, musím hneď pracovať a nie čakať na sprostý BIOS, kým sa spamätá.
                Koľko to ten systém asi vydrží vo funkčnoma stave takéto vypínanie ?
              • Re: neposlušný BIOS 24.03.2007 | 13:37
                karol   Návštevník
                Aby som to upresnil tu je výpis z konzoly.

                [root@XXXX linux-2.6.17-5mdv]# make modules
                CHK include/linux/version.h
                Building modules, stage 2.
                MODPOST
                WARNING: 3rdparty/acerhk/acerhk.o - Section mismatch: reference to .init.text: f
                rom .smp_locks after '' (at offset 0x0)
                WARNING: 3rdparty/eider/eider.o - Section mismatch: reference to .init.text: fro
                m .data between 'ider_pci_info' (at offset 0xe4) and '__mod_pci_device_table'
                WARNING: 3rdparty/eider/eider.o - Section mismatch: reference to .init.text: fro
                m .data between 'ider_pci_info' (at offset 0xec) and '__mod_pci_device_table'
                WARNING: 3rdparty/eider/eider.o - Section mismatch: reference to .init.text: fro
                m .data between 'ider_pci_info' (at offset 0xf4) and '__mod_pci_device_table'
                WARNING: 3rdparty/eider/eider.o - Section mismatch: reference to .init.text: fro
                m .data between 'ider_pci_info' (at offset 0x11c) and '__mod_pci_device_table'
                WARNING: 3rdparty/eider/eider.o - Section mismatch: reference to .init.text: fro
                m .data between 'ider_pci_info' (at offset 0x124) and '__mod_pci_device_table'
                WARNING: 3rdparty/eider/eider.o - Section mismatch: reference to .init.text: fro
                m .data between 'ider_pci_info' (at offset 0x12c) and '__mod_pci_device_table'
                WARNING: 3rdparty/eider/eider.o - Section mismatch: reference to .init.text: fro
                m .data between 'ider_pci_info' (at offset 0x154) and '__mod_pci_device_table'
                WARNING: 3rdparty/eider/eider.o - Section mismatch: reference to .init.text: fro
                m .data between 'ider_pci_info' (at offset 0x15c) and '__mod_pci_device_table'
                WARNING: 3rdparty/eider/eider.o - Section mismatch: reference to .init.text: fro
                m .data between 'ider_pci_info' (at offset 0x164) and '__mod_pci_device_table'
                WARNING: 3rdparty/video-rivatv/rivatv.o - Section mismatch: reference to .init.t
                ext: from .data between 'driver_init' (at offset 0xf90) and 'riva_reg_lock'.....


                A tak ďalej asi 1000 riadkov

                Rozumie tomu niekto? Na čom to haslo? Pomóóóóc
              • Re: neposlušný BIOS 24.03.2007 | 20:34
                Avatar Marián Sova Ubuntu 10.10  Používateľ
                Si si istý, že sa ti to jadro spúšťa? Lebo to je návod na SuSE. Mám pocit, že na mandrive sa jadro automaticky neskopíruje do /boot a nedopíše do grubu (lila). A je dosť možné, že /etc/sysconfig/kernel tam nie je. Taktiež je to mandriva a nie suse. Ale určite to pôjde pridať inde. Je aj na mandrive nejaký skript v /etc/init.d (rc.d ???) ktorý sa spúšťa pri štarte a pôjde to pridať tam
                Čo ťa nezabije, to ťa posilní | Leták na propagáciu jabbera v pdf | www.mikroprocesory.sk
                • Re: neposlušný BIOS 26.03.2007 | 20:54
                  karol   Návštevník
                  Díky moc, už to funguje, moc si mi pomohol. Skompilované jadro sa automaticky skopírovalo do /boot a pribudla aj voľba v zavádzači grub. Do BIOS-u sa už dá dostať a neštartuje to tak pekelne dlho. Po hibernácii mi však nenabehne acpi a ventilátory bežia ako divé, ale to je už maličkosť. Nevieš prosím ťa, čím by to mohlo byť ?
                  • Re: neposlušný BIOS 26.03.2007 | 21:03
                    Avatar Marián Sova Ubuntu 10.10  Používateľ
                    Mne hibernácia značne blbne. Niekedy sa neprebudí, niekedy sa nehibernuje. Takže ju nepoužívam. Ale určite bude treba odstrániť modul psmouse aj pred hibernáciou. On je v konflikte pre ACPI. Bohužial na mandrive netuším, kde sa to nastavuje. Zrejme kukni v /etc/hibernate (ak tam je)
                    Čo ťa nezabije, to ťa posilní | Leták na propagáciu jabbera v pdf | www.mikroprocesory.sk