Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(29)

Issue 6480056: Add four main boot methods to developer build (Closed)

Created:
9 years, 10 months ago by sjg
Modified:
9 years, 7 months ago
CC:
chromium-os-reviews_chromium.org, dneiss, Olof Johansson, robotboy, chromeboy, amoljadi
Visibility:
Public.

Description

Add four main boot methods to developer build This adds DHCP/NFS boot, USB key/NFS boot, USB boot and MMC boot to the developer build via easy-to-use commands. To cope with the DHCP server providing less than useful data, we allow configuration of tfpserverip and nfsserverip. To allow users to share a single tftp and NFS server, we append the user, board and serial number to tftpboot and NFS filenames. The developer build progresses through dhcp, keynfs, usb and mmc boot in order until a kernel is found. BUG=chromium-os:9574 TEST=build U-Boot for developer and try: usb start, run dhcp_boot, run keynfs_boot, run usb_boot, run mmc_boot. All should boot to a working system on Seaboard. Change-Id: I452b7df0fcf5ab204017d5d38873ae1a4e6751d5 Committed: http://chrome-svn/viewvc/chromeos?view=rev&revision=5197178

Patch Set 1 #

Patch Set 2 : Fixed quoting in environment #

Patch Set 3 : Fixed # on end of serial #

Total comments: 10

Patch Set 4 : Added dev config to all Tegra2 boards #

Patch Set 5 : Rebased to ToT to take advantage of a refactor there #

Unified diffs Side-by-side diffs Delta from patch set Stats (+98 lines, -2 lines) Patch
M include/configs/chromeos/common.h View 1 2 1 chunk +1 line, -0 lines 0 comments Download
M include/configs/chromeos/developer.h View 1 2 2 chunks +17 lines, -0 lines 0 comments Download
M include/configs/chromeos/tegra2/developer.h View 1 2 3 4 2 chunks +80 lines, -2 lines 0 comments Download

Messages

Total messages: 7 (0 generated)
sjg
This enables useful booting modes in U-Boot. Also please take a look at documentation here ...
9 years, 10 months ago (2011-02-15 21:45:33 UTC) #1
robotboy
LGTM, with addition of developer boot config for all boards. http://codereview.chromium.org/6480056/diff/7002/include/configs/chromeos/tegra2/seaboard/developer.h File include/configs/chromeos/tegra2/seaboard/developer.h (right): http://codereview.chromium.org/6480056/diff/7002/include/configs/chromeos/tegra2/seaboard/developer.h#newcode26 ...
9 years, 10 months ago (2011-02-17 17:51:45 UTC) #2
vb
http://codereview.chromium.org/6480056/diff/7002/include/configs/chromeos/developer.h File include/configs/chromeos/developer.h (right): http://codereview.chromium.org/6480056/diff/7002/include/configs/chromeos/developer.h#newcode80 include/configs/chromeos/developer.h:80: #define CONFIG_IPADDR 10.0.0.2 why is this default setting required? ...
9 years, 10 months ago (2011-02-17 18:00:20 UTC) #3
sjg
I have added the bootcmd to the shared Tegra2 developer.h file. Re the need for ...
9 years, 10 months ago (2011-02-17 18:55:47 UTC) #4
vb
I am not insisting on these changes, will leave them to your/other reviewer's discretion. http://codereview.chromium.org/6480056/diff/7002/include/configs/chromeos/developer.h ...
9 years, 10 months ago (2011-02-17 19:07:24 UTC) #5
sjg
Here are my thoughts. Please let me know - thanks, Simon http://codereview.chromium.org/6480056/diff/7002/include/configs/chromeos/developer.h File include/configs/chromeos/developer.h (right): ...
9 years, 10 months ago (2011-02-17 19:35:51 UTC) #6
vb
9 years, 10 months ago (2011-02-17 20:21:59 UTC) #7
LGTM

Simon, these are good points, this definitely could be checked in and
then amended as we start using it,

cheers,
/v


On Thu, Feb 17, 2011 at 11:35 AM,  <sjg@chromium.org> wrote:
> Here are my thoughts. Please let me know - thanks, Simon
>
>
>
>
http://codereview.chromium.org/6480056/diff/7002/include/configs/chromeos/dev...
> File include/configs/chromeos/developer.h (right):
>
>
http://codereview.chromium.org/6480056/diff/7002/include/configs/chromeos/dev...
> include/configs/chromeos/developer.h:80: #define CONFIG_IPADDR
>  10.0.0.2
> On 2011/02/17 19:07:24, vb wrote:
>>
>> On 2011/02/17 18:55:47, sjg wrote:
>> > On 2011/02/17 18:00:20, vb wrote:
>> > > why is this default setting required? You mention some DHCP server
>
> problems
>>
>> > > without much elaborating, but giving out ip
>
> addreses/masks/dns/gateway
>>
>> configs
>> > > are very basic features of pretty much any DHCP server.
>> > >
>> > > It is going to be a mess when several targets on the same network
>
> try using
>>
>> > the
>> > > default IP config.
>> >
>> > The problem is not DHCP server support, but access to it. For
>
> example at many
>>
>> > companies it is difficult to get the DHCP server to do what we want.
>
> It can
>>
>> > provide an IP address but everything else it sends is bogus.
>> >
>> > I agree this is horrible, but we do have to work in this situation.
>
>> I am almost splitting hairs here, but it could be a config flag for
>
> places where
>>
>> the DHCP server is so deficient, all others should just work without
>
> any static
>>
>> config. It sure would work just fine here.
>
> Sadly it doesn't work here.
>
> It is pretty common for a DHCP server to be set up for pxelinux for
> example. In any case we typically want our local workstation to be the
> tfto and NFS server, which the DHCP will not know about.
>
>
http://codereview.chromium.org/6480056/diff/7002/include/configs/chromeos/dev...
> include/configs/chromeos/developer.h:91: #define
> CONFIG_ROOTPATH         "/export/nfsroot-${user}-${board}-${serial#}"
> On 2011/02/17 19:07:24, vb wrote:
>>
>> On 2011/02/17 18:55:47, sjg wrote:
>> > On 2011/02/17 18:00:20, vb wrote:
>> > > how about pulling these from build environment?
>> >
>> > Can you explain that, please? Not sure what you mean. I am wanting a
>
> standard
>>
>> > format for this root path which serve multiple users at a site.
>
>> What I mean to say is that ${user} could be ${USER} from the build
>
> environment
>>
>> and ${board} could be CONFIG_IMAGE_NAME generated by mkconfig. This
>
> way even a
>>
>> default env would point at a specific directory.
>
>> Of course it should be possible to overwrite these with explicit
>
> environment
>>
>> settings.
>
> OK I see. I think this is a good idea. However U-Boot doesn't have USER
> or BOARD in its config - CONFIG_IMAGE_NAME is
> 'chromeos/tegra2/seaboard/developer' which is not suitable as a tftp
> filename (we just want 'seaboard'.
>
> Do you want to add these things to U-Boot's mkconfig? If so I am happy
> to come back later and move to using it. But I am a little concerned
> about what upstream might think.
>
> http://codereview.chromium.org/6480056/
>

Powered by Google App Engine
This is Rietveld 408576698