grub2: bring back build of aros-side grub2 tools
[AROS.git] / rom / expansion / getcurrentbinding.c
blob85b3a59dd0831fccabf02d3b8d7f948de5b459fe
1 /*
2 Copyright © 1995-2014, The AROS Development Team. All rights reserved.
3 $Id$
5 Desc: Get the CurrentBinding structure.
6 Lang: english
7 */
8 #include "expansion_intern.h"
9 #include <proto/exec.h>
11 /*****************************************************************************
13 NAME */
14 #include <proto/expansion.h>
16 AROS_LH2(ULONG, GetCurrentBinding,
18 /* SYNOPSIS */
19 AROS_LHA(struct CurrentBinding *, currentBinding, A0),
20 AROS_LHA(ULONG , bindingSize, D0),
22 /* LOCATION */
23 struct ExpansionBase *, ExpansionBase, 23, Expansion)
25 /* FUNCTION
26 This function will return the contents of the "currentBinding"
27 structure. The currentBinding structure may be set with
28 SetConfigBinding(). This is how arguments are passed to a newly
29 configured device.
31 A CurrentBinding structure has the following information:
32 - the name of the currently loaded driver file
33 - the product string associated with this driver
34 - a singly linked list of ConfigDev structures
36 You may not need this information, but it is recommended that you
37 at least make sure you can deal with the product code in the
38 ConfigDev structure.
40 INPUTS
41 currentBinding - a pointer to the CurrentBinding structure that
42 you wish filled in.
43 bindingSize - the size of the currentBinding structure. Do
44 not pass less than sizeof(struct CurrentBinding).
46 RESULT
47 The size of the CurrentBinding structure returned.
49 NOTES
51 EXAMPLE
53 BUGS
55 SEE ALSO
56 SetCurrentBinding()
58 INTERNALS
60 HISTORY
61 27-11-96 digulla automatically created from
62 expansion_lib.fd and clib/expansion_protos.h
64 *****************************************************************************/
66 AROS_LIBFUNC_INIT
68 if( bindingSize > sizeof(struct CurrentBinding) )
69 bindingSize = sizeof(struct CurrentBinding);
71 CopyMem(&IntExpBase(ExpansionBase)->CurrentBinding,
72 currentBinding,
73 bindingSize);
75 return sizeof(struct CurrentBinding);
77 AROS_LIBFUNC_EXIT
78 } /* GetCurrentBinding */