LinuxQuestions.org
Share your knowledge at the LQ Wiki.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Hardware
User Name
Password
Linux - Hardware This forum is for Hardware issues.
Having trouble installing a piece of hardware? Want to know if that peripheral is compatible with Linux?

Notices


Reply
  Search this Thread
Old 03-18-2008, 06:37 AM   #16
aus9
LQ 5k Club
 
Registered: Oct 2003
Location: Western Australia
Distribution: Icewm
Posts: 5,842

Rep: Reputation: Disabled

I think you are referring to me...so I will sign off with one remark

if you have a bios flash file....and can reflash....sst is mentioned in uniflash so there is the possiblility that you try...(yes I know u won't) uniflash and if it fails you restore the bios with your winflash file
 
Old 03-18-2008, 06:40 AM   #17
unSpawn
Moderator
 
Registered: May 2001
Posts: 29,415
Blog Entries: 55

Rep: Reputation: 3600Reputation: 3600Reputation: 3600Reputation: 3600Reputation: 3600Reputation: 3600Reputation: 3600Reputation: 3600Reputation: 3600Reputation: 3600Reputation: 3600
Not that it helps right now but I'd like to remark OT that this thread could have gone much faster if you provided all specs upfront.
 
Old 03-18-2008, 09:45 AM   #18
r00tb33r
Member
 
Registered: Feb 2007
Distribution: Vector
Posts: 318

Original Poster
Rep: Reputation: 31
Quote:
Originally Posted by aus9 View Post
I think you are referring to me...so I will sign off with one remark

if you have a bios flash file....and can reflash....sst is mentioned in uniflash so there is the possiblility that you try...(yes I know u won't) uniflash and if it fails you restore the bios with your winflash file
Once again, I do not need help flashing, I need help modifying the BIOS.
I'm not quite sure where the confusion is coming from. If you mean the bricked board I mentioned, I already have another one and I am back in business. Really, I don't need another flasher.
This thread is specifically dedicated to decompressing the BIOS image, and putting it back together once it is modified.
The reason why it is done is because the code is scrambled by compression and cannot be modified directly in the image as it is. Kind of if you were to compress a picture into a common archive like .zip and tried editing the archive with a graphics editor.
As I understand it, the BIOS extracts itself into RAM at boot time.

Last edited by r00tb33r; 03-18-2008 at 12:45 PM.
 
Old 03-18-2008, 08:35 PM   #19
aus9
LQ 5k Club
 
Registered: Oct 2003
Location: Western Australia
Distribution: Icewm
Posts: 5,842

Rep: Reputation: Disabled
http://www.paul.sladen.org/thinkpad-...d-pci-ids.html

this section called Get the the point! may excite you.

even tho its talking about a diff hw...it says there is a global checksum.

" In short, if you change a value upwards (add), then you need to subtract the same difference from the correctly aligned byte of the checksum."
 
Old 03-18-2008, 08:49 PM   #20
aus9
LQ 5k Club
 
Registered: Oct 2003
Location: Western Australia
Distribution: Icewm
Posts: 5,842

Rep: Reputation: Disabled
http://www.coreboot.org/Tyan_S2891_Build_Tutorial

ignore the fact its coreboot instead look at the use of
cat

to join separate bios roms together and look at the use of
strings

to search certain things.
 
Old 03-19-2008, 09:49 AM   #21
r00tb33r
Member
 
Registered: Feb 2007
Distribution: Vector
Posts: 318

Original Poster
Rep: Reputation: 31
Quote:
Originally Posted by aus9 View Post
http://www.paul.sladen.org/thinkpad-...d-pci-ids.html

this section called Get the the point! may excite you.

even tho its talking about a diff hw...it says there is a global checksum.

" In short, if you change a value upwards (add), then you need to subtract the same difference from the correctly aligned byte of the checksum."
Yeah, I've seen that article before, as I mentioned before this image cannot be edited as it is, here is why:
PhoenixDeco(phnxdeco) throws this in the output:
Code:
Filelength      : 100D26 (1051942 bytes)
Filename        : bios.wph
PhoenixBIOS hook found at       : EB38D
System Information at           : EB3F1
Version         : DEVEL83S
Start           : DF473
Offset          : E0000
BCP Modules     : 33
Released        : 07 September 2007 at 11:29:03
/* Copyrighted Information */
        âUU
Not a PhoenixBIOS 4.0
The "Not a PhoenixBIOS 4.0" means that it won't give me starts and ends of sections.
But forget that, I have access to Hex Workshop. The ID for a compatible Intel card is 8086:4222/135B:103C, thats VENEV/SUBSYS. So the value for VEN and DEV would be 86802242. There are 0 instances of those values in the image. To verify I searched for 8680 by itself, 21 instances, no DEV values after.
There is no checksum in the format shown in that article either.
HP did quite a number on this one eh?
At this point you may question whether I have a Phoenix BIOS... I'm quite sure I do, in the corner of the splash screen at boot it shows the Phoenix Technologies logo. Just like this one:
http://www.phoenix.com/PhoenixTPLT/i...ommon/logo.gif
And PhoenixDeco shows the basic information about the image.

Thanks for the continued assistance.

PS This is a 6 month old BIOS, I'm going to see if I can find the oldest compatible BIOS out there to see if I can get something out of that.
...Actually I just did, earliest is May 10th 2006. Same result. PhoenixDeco can't do anything with it, no hex values of VEN&DEV found directly, no checksum string.
I'm really stuck now.

Right now I'm trying to find the PhoenixDeco(phnxdeco) project page to see if there is a newer source available. So far I find only Debian&Ubuntu package information.
Still that might not bring any result even if it gives me the section locations and actually extracts it. I still have to have a way to put it back together. So I'm still stuck.

...
I disabled the bootsplash and it shows that the BIOS is of Phoenix TrustedCore product line. No version or anything.

Last edited by r00tb33r; 03-19-2008 at 04:44 PM.
 
Old 03-19-2008, 06:12 PM   #22
aus9
LQ 5k Club
 
Registered: Oct 2003
Location: Western Australia
Distribution: Icewm
Posts: 5,842

Rep: Reputation: Disabled
http://hermann-uwe.de/debian
is the maintainer

pkge is here
http://packages.qa.debian.org/p/phnxdeco.html
 
Old 03-19-2008, 11:39 PM   #23
r00tb33r
Member
 
Registered: Feb 2007
Distribution: Vector
Posts: 318

Original Poster
Rep: Reputation: 31
Quote:
Originally Posted by aus9 View Post
Yeah but I am not a Debian user... I was looking for the project homepage.
Of course I know how to adapt the package.
 
Old 03-20-2008, 01:12 AM   #24
Electro
LQ Guru
 
Registered: Jan 2002
Posts: 6,042

Rep: Reputation: Disabled
Quote:
Originally Posted by r00tb33r View Post
I wish I was paranoid. For now I am someone who gets a post code because I insert a wireless card that HP did not approve. Recent HP laptops like mine do not boot at all when code 104 is encountered. unSpawn posted a link to the article that shows the code on the screen and a screenshot of BIOS code where HP buried the whitelist.
Now I found those as well, and I change the IDs to those of my Atheros card, however there is no tool that can assemble my BIOS back together, and the only way I can get it apart with is PBE which does not understand some things in this BIOS.

Now this might sound crazy and reckless to you, but I did in fact insert the card while the system was in standby, and guess what? It works. So its just the BIOS whitelist check thats the issue.

I would really appreciate if someone could help me out at decompressing the BIOS image and putting it back together.
I still have a lot of hope left.

Thanks everyone for your support so far.

PS I think those alternative BIOS solutions are a bit of a long shot. I am an advanced user but not quite that hardcore. After all one board is already bricked.
Lets try to do it in a less intrusive way for now.

*EDIT*
The BIOS chip is really just an SST 1Mbyte flash chip. Its a 40 pin TSOP/SOP package and I haven't found a single BIOS service in continental USA that programs those.(I did find a chinese dude in Canada that does it though) Everyone does 32 pin chips. Just thought I throw it out there. 1Mbyte would probably be enough for pretty much any BIOS solution though.
I still suggest take out the WiFi NIC and use a PCMCIA or ExpressCard for your WiFi NIC instead. You will have more models to choose from and they should work. Also be able to attach an antenna to it to increase efficiency.

If you still insist of customizing your BIOS code, I suggest use coreboot for better results from what I am reading. Of course check to make sure that coreboot supports your hardware and that you have spare BIOS chips. If the BIOS is soldered, you will have to get a soldering iron designed for SMT or sensitive devices.

There are plenty of programing devices for all kinds of EEPROM, FLASH, PLD, GAL, and several other programmable chips. Just need a 40 pin TSOP/SOP clamp.
 
Old 03-23-2008, 02:46 PM   #25
Enderek
LQ Newbie
 
Registered: Mar 2008
Posts: 2

Rep: Reputation: 0
Hello there. I think I can help you. Please try using phnxdeco from here:

ender.in/bios.tools/ (can't make it a link, my first post and forum disallows that)

Or take the module with whitelist extracted by Phoenix BIOS editor. Modify it and use prepare.exe from Phoenix BIOS editor (if you don't have one, Intel's download center has a copy for you) to compress the module. You'll have to create rom.scr with following contents:

COMPRESS LZINT
BIOSCODE MYMODULE.ROM

Then run prepare.exe rom.scr and it will create MYMODULE.MOD - the compressed version. Repeat this process for the _original_ (unchanged) module. Compare filesizes of original.mod and changed.mod - if they differ, find the whitelist again and modify some other card IDs until it compresses exactly the same.
Then use phnxmod.exe from the linked page, or use some hexeditor to replace the module, and you should be done

Or maybe not, chances are that the module containing whitelist has more than one "block", that it's scattered at more places of the original BIOS, and that will need some more work. Will hint that later, if needed.

And if crisis BIOS recovery works for you (with normal BIOS, not the one "destroyed" by PBE), I'd like to ask if you could flash a BIOS modified by me, I still need to test the way of making module larger/smaller and my notebook does not support any way of BIOS recovery (ThinkPad...).

Last edited by Enderek; 03-23-2008 at 03:00 PM.
 
Old 08-05-2008, 02:36 PM   #26
sunsouthwest
LQ Newbie
 
Registered: Jul 2003
Posts: 2

Rep: Reputation: 0
Cool ...Where the ''problem'' is coming from

Quote:
Originally Posted by r00tb33r View Post
Once again, I do not need help flashing, I need help modifying the BIOS.
I'm not quite sure where the confusion is coming from.
Well then let me tell you. It's called progress. It's called security.

NO manufacturer TODAY is going to tell you everything you might want to know about their bioses. They've gone with Phoenix' plan to make laptops really really really secure from theft of their DATA, even as the ''laptops'' themselves are getting smaller and lighter and easier to steal, physically.

The password encryption routines are in there, obviously. They do not want you to: a) find them; b) unencrypt them; c) reverse engineer them.

All the security that's possible hangs on the security of this mechanism. If you could crack it, so could virtually anybody else. Not gonna happen. Just look at all the posts about resetting bios passwords by ''removing ...battery'' or ''moving ... jumper''. Guys, they've been storing them in the keyboard controller for TEN YEARS already. If you don't understand trapping I/O on ports 70 & 71, you've got a LONG way to go! And, there's a bit somewhere, SOMEWHERE, saying 'password set' so flashing a new bios usually does nothing at all.

If your are 16 and elite, that will hardly be an impediment. Old guys like me tend to be too linear and too literal. As in ''my, that's stupid!'. Yeah ... like a fox. So ...

Think like a fox. There's a door someplace where they get the eggs out, and something where they put the food in. Not sure about the chickenshit. But things go in, things come out. Code can execute in the CPU, of course. But what about in a smart peripheral controller? Nothing stored anywhere to poke around in. Looks like just another register getting initialized.

If you insist on working on the innards of the current crop of laptops, this is what you're up against. Me, for now anyway, I'm sticking with the older ones. Easier to hack.

Bill
 
  


Reply

Tags
bios, error, phoenix, whitelist



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
Booting from cd in Phoenix bios linmix Linux - Hardware 8 11-16-2011 05:12 AM
Killed Phoenix BIOS on install attempt? odum Mandriva 6 12-20-2004 12:44 AM
Can't disable PNP with Phoenix BIOS mixedmemes Linux - Networking 2 08-26-2004 06:52 PM
[HP VECTRA VL400 Desktop Phoenix BIOS] HD Speed pbs sshd Linux - Hardware 0 07-20-2004 05:15 AM
Windows/Phoenix Bios integration scott_R General 7 10-07-2003 10:37 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Hardware

All times are GMT -5. The time now is 09:49 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration