Re: [coreboot] setting smbios values from the OS

2014-06-22 Thread David Hendricks
On Fri, Jun 20, 2014 at 1:01 PM, Rafael Vanoni 
rafael.van...@pluribusnetworks.com wrote:

 Take serial number, for example. I'd like each different system that I
 build to have its own serial number, and building coreboot for every serial
 number doesn't scale.


You might want to check out the VPD  spec for ChromeOS devices:
https://docs.google.com/document/d/1d2l5obmBYxgaJQvltEJD-oiLTb0M-RXG-pujG5VDa_A/pub

Essentially what we do is reserve a region (or two) in the firmware ROM to
store an SMBIOS table with an added OEM-type table. That table stores data
that's useful for manufacturing and RMAs, but can be used for other
product-specific data such as ethernet MAC for some devices
(coreboot/src/mainboard/google/butterfly/mainboard.c, for example), wifi
antennae and display calibration info, initial language setting, etc. The
utility to manage it is here:
http://git.chromium.org/gitweb/?p=chromiumos/platform/vpd.git;a=summary

It should be easy to use this to populate SMBIOS tables in memory. Let me
know if this looks useful, I'm sure there are some better docs floating
around somewhere...

That said, I should point out that the scheme used on Chromebooks is
designed explicitly to avoid exposing any information that can be traced to
an individual machine. One must switch over to developer mode in order to
access anything beyond what is exposed in chrome://system. Here's an
example:
initial_locale=en-US
initial_timezone=America/Los_Angeles
keyboard_layout=xkb:us::eng
model_name=TOSHIBA CB35-A
region=us
sku_number=PLM01U-002005
ActivateDate=2014-17
-- 
coreboot mailing list: coreboot@coreboot.org
http://www.coreboot.org/mailman/listinfo/coreboot

Re: [coreboot] setting smbios values from the OS

2014-06-21 Thread ron minnich
On Fri, Jun 20, 2014 at 10:00 PM, Scott Duplichan sc...@notabs.org wrote:



 Putting the serial number in the same flash chip as the main
 firmware is a cost reduction measure used with desktop and other
 low cost boards. I have even seen a board where the MAC address
 lives there. The only protection for those items is that the
 flash utility given to the end user knows to skip that area.


OH believe me, I have too. That's when I learned a mac of 00:00:00:00:00:00
actually works.



 The way I have seen the serial number programmed is at
 manufacturing diagnostics time. The board is PXE booted to a
 diagnostic image. The image runs a script that first erases
 the entire flash chip. It then programs it with the OEM firmware
 image. The OEM image contains a blank serial number. The script
 then prompts for operator input. The operator pulls a barcoded
 serial number label from a roll and attaches it to the board. The
 operator then scans the label with a barcode reader. The script
 uses the barcode data to find the serial number in a database.
 The script then runs a special flash utility that reprograms only
 the serial number portion of the flash chip.

  http://www.coreboot.org/mailman/listinfo/coreboot


very interesting. Thing is, this is pretty much the antithesis of
build-time serial number creation ... which is the thing that I don't see
scaling.

thanks!

ron
-- 
coreboot mailing list: coreboot@coreboot.org
http://www.coreboot.org/mailman/listinfo/coreboot

Re: [coreboot] setting smbios values from the OS

2014-06-21 Thread Patrick Georgi
Am 21.06.2014 08:06, schrieb ron minnich:
 very interesting. Thing is, this is pretty much the antithesis of
 build-time serial number creation ... which is the thing that I don't
 see scaling.
Right now we compile any serial number right into .text, and modifying
that is not a good idea (plus, updaters won't be able to handle that
properly either).

By storing the ID somewhere (be that at a magic location or in CBFS) at
least there's the possibility of keeping it around when updating the
same way it's currently done.

In the end, I pose the question why a serial number must be exported to
the OS in the first place - this looks like a potential privacy issue to
me, while doing nothing for servicing the part (if it's sent back, read
the bar code).

Given the possibility of runtime modifying the values (in a preboot
loader), it doesn't even function as some cheap DRM scheme. Which brings
us back to the original question ;-)


Patrick



signature.asc
Description: OpenPGP digital signature
-- 
coreboot mailing list: coreboot@coreboot.org
http://www.coreboot.org/mailman/listinfo/coreboot

Re: [coreboot] setting smbios values from the OS

2014-06-21 Thread ron minnich
On Fri, Jun 20, 2014 at 11:20 PM, Patrick Georgi patr...@georgi-clan.de
wrote:



 In the end, I pose the question why a serial number must be exported to
 the OS in the first place - this looks like a potential privacy issue to
 me, while doing nothing for servicing the part (if it's sent back, read
 the bar code).


There I also agree. I don't like electronically readable serial numbers in
general on computers.

ron
-- 
coreboot mailing list: coreboot@coreboot.org
http://www.coreboot.org/mailman/listinfo/coreboot

Re: [coreboot] setting smbios values from the OS

2014-06-21 Thread Giri
I believe the request is about filling SMBIOS Table Type 1 – System 
Information. 

 

Fields like Manufacturer, Product Name, Version, Serial Number, UUID, SKU 
Number, Family….

 

Some fields are unique per platform / system like Serial Number, UUID. 

 

-Giri

 

From: coreboot [mailto:coreboot-boun...@coreboot.org] On Behalf Of ron minnich
Sent: Friday, June 20, 2014 11:24 PM
To: Patrick Georgi
Cc: coreboot
Subject: Re: [coreboot] setting smbios values from the OS

 

 

 

On Fri, Jun 20, 2014 at 11:20 PM, Patrick Georgi patr...@georgi-clan.de 
mailto:patr...@georgi-clan.de  wrote:



In the end, I pose the question why a serial number must be exported to
the OS in the first place - this looks like a potential privacy issue to
me, while doing nothing for servicing the part (if it's sent back, read
the bar code).

 

There I also agree. I don't like electronically readable serial numbers in 
general on computers.

 

ron 

-- 
coreboot mailing list: coreboot@coreboot.org
http://www.coreboot.org/mailman/listinfo/coreboot

Re: [coreboot] setting smbios values from the OS

2014-06-20 Thread Peter Stuge
Rafael Vanoni wrote:
 Please explain why you want to modify these values at run time?

 Like I said in a previous post, I'd like to set fields like version,
 serial number on a per system basis.

That's not the why, that's the what. Indeed you already wrote what
you want.

I'm asking *why* you want it, because what you ask for doesn't make
sense, so either I don't understand your situation (not at all unlikely)
or there might be a better approach to get what you want (also possible).


 This is partially an experiment, fwiw.

Again, why modify the values at run time?

Why isn't setting these values at build time enough?


Kind regards

//Peter

-- 
coreboot mailing list: coreboot@coreboot.org
http://www.coreboot.org/mailman/listinfo/coreboot


Re: [coreboot] setting smbios values from the OS

2014-06-20 Thread Rafael Vanoni

On 06/20/2014 01:25 AM, Peter Stuge wrote:

Rafael Vanoni wrote:

Please explain why you want to modify these values at run time?


Like I said in a previous post, I'd like to set fields like version,
serial number on a per system basis.


That's not the why, that's the what. Indeed you already wrote what
you want.

I'm asking *why* you want it, because what you ask for doesn't make
sense, so either I don't understand your situation (not at all unlikely)
or there might be a better approach to get what you want (also possible).



This is partially an experiment, fwiw.


Again, why modify the values at run time?

Why isn't setting these values at build time enough?


Kind regards

//Peter



Take serial number, for example. I'd like each different system that I 
build to have its own serial number, and building coreboot for every 
serial number doesn't scale.


Thanks,
Rafael




--
coreboot mailing list: coreboot@coreboot.org
http://www.coreboot.org/mailman/listinfo/coreboot


Re: [coreboot] setting smbios values from the OS

2014-06-20 Thread Patrick Georgi
Am 20.06.2014 22:01, schrieb Rafael Vanoni:
 Take serial number, for example. I'd like each different system that I
 build to have its own serial number, and building coreboot for every
 serial number doesn't scale.
We have an .id section just below the 16bit entry point - that can
(easily) be extended to host more fields, and our smbios table generator
could fetch a number from there, overriding a compile time default.

To start, see src/arch/x86/lib/id.inc. It's really two tables: one
containing the offsets, one containing the data (strings are 0-terminated).
Both tables need to be prepended with new fields, since we're in a
top-aligned world here.

Patches accepted :-)


Patrick



signature.asc
Description: OpenPGP digital signature
-- 
coreboot mailing list: coreboot@coreboot.org
http://www.coreboot.org/mailman/listinfo/coreboot

Re: [coreboot] setting smbios values from the OS

2014-06-20 Thread Vladimir 'φ-coder/phcoder' Serbinenko
On 20.06.2014 20:08, Patrick Georgi wrote:
 Am 20.06.2014 22:01, schrieb Rafael Vanoni:
 Take serial number, for example. I'd like each different system that I
 build to have its own serial number, and building coreboot for every
 serial number doesn't scale.
 We have an .id section just below the 16bit entry point - that can
 (easily) be extended to host more fields, and our smbios table generator
 could fetch a number from there, overriding a compile time default.
 
 To start, see src/arch/x86/lib/id.inc. It's really two tables: one
 containing the offsets, one containing the data (strings are 0-terminated).
 Both tables need to be prepended with new fields, since we're in a
 top-aligned world here.
 
I think it's more sound to have a CBFS plain-text file with serial
numbers and other runtime configs. There is a fair number of board and
chipset-specific config that should be modifiable without recompilation
but are probably inappropriate for CMOS for various reasons as CMOS size
shortage or the need for persistance even across RTC power well failure
[aka bad clock battery] (think MAC address). having fixed indexes
doesn't scale.
 Patches accepted :-)
 
 
 Patrick
 
 
 




signature.asc
Description: OpenPGP digital signature
-- 
coreboot mailing list: coreboot@coreboot.org
http://www.coreboot.org/mailman/listinfo/coreboot

Re: [coreboot] setting smbios values from the OS

2014-06-20 Thread Patrick Georgi
Am 20.06.2014 22:40, schrieb Vladimir 'φ-coder/phcoder' Serbinenko:
 (think MAC address).
I guess PC technology is finally beyond requiring those at fixed magic
offsets. Some of our chipsets still need it that way.

 having fixed indexes doesn't scale.
Neither do text files.


Patrick



signature.asc
Description: OpenPGP digital signature
-- 
coreboot mailing list: coreboot@coreboot.org
http://www.coreboot.org/mailman/listinfo/coreboot

Re: [coreboot] setting smbios values from the OS

2014-06-20 Thread ron minnich
realistically, though, it's hard for me to see how setting the serial # at
firmware image build time scales. And setting it after boot makes no real
sense either -- it's not really a serial number if you're changing it at
that point.

But some way to customize the binary images with a serial number seems most
workable, if you're going to put the serial number in the firmware image at
all (which never made sense to me either --serial #s are supposed to be
indelible, and firmware images are not indelible).

ron
-- 
coreboot mailing list: coreboot@coreboot.org
http://www.coreboot.org/mailman/listinfo/coreboot

Re: [coreboot] setting smbios values from the OS

2014-06-20 Thread Vladimir 'φ-coder/phcoder' Serbinenko
On 20.06.2014 20:43, Patrick Georgi wrote:
 Am 20.06.2014 22:40, schrieb Vladimir 'φ-coder/phcoder' Serbinenko:
 (think MAC address).
 I guess PC technology is finally beyond requiring those at fixed magic
 offsets. Some of our chipsets still need it that way.
 
 having fixed indexes doesn't scale.
 Neither do text files.
 
I disagree. If you have a file named e.g. config.txt with a syntax like:

southbridge/ibexpeak/thermal_correction: 0x1222

one value per line, it perfectly scales.
 
 Patrick
 




signature.asc
Description: OpenPGP digital signature
-- 
coreboot mailing list: coreboot@coreboot.org
http://www.coreboot.org/mailman/listinfo/coreboot

Re: [coreboot] setting smbios values from the OS

2014-06-20 Thread Scott Duplichan
ron minnich [mailto:rminn...@gmail.com] wrote:

]realistically, though, it's hard for me to see how setting the
]serial # at firmware image build time scales. And setting it after
]boot makes no real sense either -- it's not really a serial number
]if you're changing it at that point. 

]But some way to customize the binary images with a serial number
]seems most workable, if you're going to put the serial number in
]the firmware image at all (which never made sense to me either
]--serial #s are supposed to be indelible, and firmware images are
]not indelible).
]
]ron

Putting the serial number in the same flash chip as the main
firmware is a cost reduction measure used with desktop and other
low cost boards. I have even seen a board where the MAC address
lives there. The only protection for those items is that the
flash utility given to the end user knows to skip that area.

The way I have seen the serial number programmed is at
manufacturing diagnostics time. The board is PXE booted to a
diagnostic image. The image runs a script that first erases
the entire flash chip. It then programs it with the OEM firmware
image. The OEM image contains a blank serial number. The script
then prompts for operator input. The operator pulls a barcoded
serial number label from a roll and attaches it to the board. The
operator then scans the label with a barcode reader. The script
uses the barcode data to find the serial number in a database.
The script then runs a special flash utility that reprograms only
the serial number portion of the flash chip.

If the end user flashes the firmware by any method other than the
supplied utility, the serial number will be lost. It can still be
read from the barcoded label though. 

Thanks,
Scott 






-- 
coreboot mailing list: coreboot@coreboot.org
http://www.coreboot.org/mailman/listinfo/coreboot


Re: [coreboot] setting smbios values from the OS

2014-06-19 Thread Rafael Vanoni

On 06/17/2014 01:12 AM, Christian Gmeiner wrote:

2014-06-16 19:05 GMT+02:00 Rafael Vanoni rafael.van...@pluribusnetworks.com:

On 06/13/2014 09:40 AM, Marc Jones wrote:


Rafael,

i don't think that you can update them once the OS loads. The OS would
have already made decisions based on the settings.

Marc


On Tue, Jun 10, 2014 at 7:41 PM, Rafael Vanoni
rafael.van...@pluribusnetworks.com wrote:


Hi folks, first time posting here. I was wondering if it would be
possible
to modify smbios values once a system is up and running. Has anyone ever
looked into that? If not, any pointers on how to implement this would be
greatly appreciated. I'm fairly new to coreboot but would like to look
into
this.

This is with coreboot + seabios, btw.

Thanks,
Rafael





Hi Marc,

That's true, but my intention is to modify more 'informational' fields like
version, sn, etc. Nothing that would break the OS.



Wrong: http://lxr.free-electrons.com/ident?i=DMI_MATCH

You can modify dmi values in coreboot - see bachmann/ot205

greets
--
Christian Gmeiner, MSc

https://soundcloud.com/christian-gmeiner





Ok, is there a tool or library to edit DMI values ?

Thanks,
Rafael







--
coreboot mailing list: coreboot@coreboot.org
http://www.coreboot.org/mailman/listinfo/coreboot


Re: [coreboot] setting smbios values from the OS

2014-06-19 Thread Peter Stuge
Rafael Vanoni wrote:
 is there a tool or library to edit DMI values ?

No.

Please explain why you want to modify these values at run time?


//Peter

-- 
coreboot mailing list: coreboot@coreboot.org
http://www.coreboot.org/mailman/listinfo/coreboot


Re: [coreboot] setting smbios values from the OS

2014-06-19 Thread Rafael Vanoni

On 06/19/2014 12:25 PM, Peter Stuge wrote:

Rafael Vanoni wrote:

is there a tool or library to edit DMI values ?


No.

Please explain why you want to modify these values at run time?


//Peter




Like I said in a previous post, I'd like to set fields like version, 
serial number on a per system basis. This is partially an experiment, fwiw.


Thanks,
Rafael

--
coreboot mailing list: coreboot@coreboot.org
http://www.coreboot.org/mailman/listinfo/coreboot


Re: [coreboot] setting smbios values from the OS

2014-06-17 Thread Christian Gmeiner
2014-06-16 19:05 GMT+02:00 Rafael Vanoni rafael.van...@pluribusnetworks.com:
 On 06/13/2014 09:40 AM, Marc Jones wrote:

 Rafael,

 i don't think that you can update them once the OS loads. The OS would
 have already made decisions based on the settings.

 Marc


 On Tue, Jun 10, 2014 at 7:41 PM, Rafael Vanoni
 rafael.van...@pluribusnetworks.com wrote:

 Hi folks, first time posting here. I was wondering if it would be
 possible
 to modify smbios values once a system is up and running. Has anyone ever
 looked into that? If not, any pointers on how to implement this would be
 greatly appreciated. I'm fairly new to coreboot but would like to look
 into
 this.

 This is with coreboot + seabios, btw.

 Thanks,
 Rafael




 Hi Marc,

 That's true, but my intention is to modify more 'informational' fields like
 version, sn, etc. Nothing that would break the OS.


Wrong: http://lxr.free-electrons.com/ident?i=DMI_MATCH

You can modify dmi values in coreboot - see bachmann/ot205

greets
--
Christian Gmeiner, MSc

https://soundcloud.com/christian-gmeiner

-- 
coreboot mailing list: coreboot@coreboot.org
http://www.coreboot.org/mailman/listinfo/coreboot


Re: [coreboot] setting smbios values from the OS

2014-06-16 Thread Rafael Vanoni

On 06/13/2014 09:40 AM, Marc Jones wrote:

Rafael,

i don't think that you can update them once the OS loads. The OS would
have already made decisions based on the settings.

Marc


On Tue, Jun 10, 2014 at 7:41 PM, Rafael Vanoni
rafael.van...@pluribusnetworks.com wrote:

Hi folks, first time posting here. I was wondering if it would be possible
to modify smbios values once a system is up and running. Has anyone ever
looked into that? If not, any pointers on how to implement this would be
greatly appreciated. I'm fairly new to coreboot but would like to look into
this.

This is with coreboot + seabios, btw.

Thanks,
Rafael





Hi Marc,

That's true, but my intention is to modify more 'informational' fields 
like version, sn, etc. Nothing that would break the OS.


Thanks,
Rafael


--
coreboot mailing list: coreboot@coreboot.org
http://www.coreboot.org/mailman/listinfo/coreboot


Re: [coreboot] setting smbios values from the OS

2014-06-13 Thread Marc Jones
Rafael,

i don't think that you can update them once the OS loads. The OS would
have already made decisions based on the settings.

Marc


On Tue, Jun 10, 2014 at 7:41 PM, Rafael Vanoni
rafael.van...@pluribusnetworks.com wrote:
 Hi folks, first time posting here. I was wondering if it would be possible
 to modify smbios values once a system is up and running. Has anyone ever
 looked into that? If not, any pointers on how to implement this would be
 greatly appreciated. I'm fairly new to coreboot but would like to look into
 this.

 This is with coreboot + seabios, btw.

 Thanks,
 Rafael


 --
 coreboot mailing list: coreboot@coreboot.org
 http://www.coreboot.org/mailman/listinfo/coreboot



-- 
http://se-eng.com

-- 
coreboot mailing list: coreboot@coreboot.org
http://www.coreboot.org/mailman/listinfo/coreboot


[coreboot] setting smbios values from the OS

2014-06-10 Thread Rafael Vanoni
Hi folks, first time posting here. I was wondering if it would be 
possible to modify smbios values once a system is up and running. Has 
anyone ever looked into that? If not, any pointers on how to implement 
this would be greatly appreciated. I'm fairly new to coreboot but would 
like to look into this.


This is with coreboot + seabios, btw.

Thanks,
Rafael


--
coreboot mailing list: coreboot@coreboot.org
http://www.coreboot.org/mailman/listinfo/coreboot