\ *****************************************************************************
\ * Copyright (c) 2004, 2008 IBM Corporation
\ * All rights reserved.
\ * This program and the accompanying materials
\ * are made available under the terms of the BSD License
\ * which accompanies this distribution, and is available at
\ * http://www.opensource.org/licenses/bsd-license.php
\ *
\ * Contributors:
\ *     IBM Corporation - initial implementation
\ ****************************************************************************/

\ this creates the root and common branches of the device tree

defer (client-exec)
defer client-exec

\ defined in slof/fs/client.fs
defer callback
defer continue-client

0 VALUE chosen-node

: chosen
  chosen-node dup 0= IF
    drop s" /chosen" find-node dup to chosen-node
  THEN
;

: set-chosen ( prop len name len -- )
  chosen set-property ;

: get-chosen ( name len -- [ prop len ] success )
  chosen get-property 0= ;

\ Do not assume that cpu0 is available
VARIABLE chosen-cpu-ihandle
: set-chosen-cpu ( -- )
    s" /cpus" find-node  dup 0= ABORT" /cpus not found"
    child                dup 0= ABORT" /cpus/cpu not found"
    0 0 rot open-node
    dup chosen-cpu-ihandle !  encode-int s" cpu" set-chosen
;

: chosen-cpu-unit ( -- ret ) chosen-cpu-ihandle @ ihandle>phandle >unit ;

\ Look for an existing root, create one if needed
" /" find-node dup 0= IF
    drop
    new-device
    s" /" device-name
ELSE
    extend-device
THEN

\ Create /chosen if it doesn't exist
" /chosen" find-node dup 0= IF
    drop
    new-device
    s" chosen" device-name
    s" " encode-string s" bootargs" property
    s" " encode-string s" bootpath" property
    finish-device
ELSE
    drop
THEN

\ Create /aliases
new-device
    s" aliases" device-name
   : open  true ;
   : close ;
finish-device

\ Create /options
new-device
    s" options" device-name
finish-device

\ Create /openprom
new-device
    s" openprom" device-name
    0 0 s" relative-addressing" property
finish-device

\ Create /packages
new-device 
#include <packages.fs>
finish-device

: open true ;
: close ;

\ Finish root
finish-device

