=head1 NAME

B<mkhwconn> - Sets up connections for FSP and BPA nodes to HMC nodes or hardware server.

=head1 SYNOPSIS

B<mkhwconn> [B<-h>| B<--help>]

B<mkhwconn> [B<-v>| B<--version>]

=head2 PPC (with HMC) specific:

B<mkhwconn> [B<-V>| B<--verbose>] I<noderange> B<-t>

B<mkhwconn> [B<-V>| B<--verbose>] Inoderange B<-s>

B<mkhwconn> [B<-V>| B<--verbose>] I<noderange> B<-p> I<hmc> [B<-P> I<passwd>]

=head2 PPC (without HMC, using Direct FSP Management) specific:

B<mkhwconn> I<noderange> B<-t> [B<-T tooltype>] [B<--port> I<port_value>]

=head1 DESCRIPTION

For PPC (with HMC) specific:

This command is used to set up connections for FSP and BPA nodes to HMC nodes. (If the connection already exists, it will not break it.)
This command is useful when you have multiple HMCs, each of which will manage a subset of the FSPs/BPAs.  Use B<mkhwconn> to tell
each HMC which FSPs/BPAs it should manage.  When using this, you should turn off the self-discovery on each HMC.  You also need
to put all the HMCs and all the BPAs on a single flat service network.

When B<-t> is specified, this command reads the connection information from the xCAT ppc table (e.g. the parent attribute), and read the user/password from the ppcdirect table. Then this command will assign FSP nodes and BPA nodes to HMC nodes. 

When B<-p> is specified, this command gets the connection information from command line arguments. If B<-P> is not specified, the default password for FSP and BPA nodes is used.

The flag B<-s> is used to make the connection between the frame and its Service focal point(HMC). The sfp of the frame should be specified in ppc table.

In any case, before running this command, the FSP and BPA nodes need be defined with correct nodetype.nodetype value (fsp or bpa) and nodehm.mgt value (hmc).

Note: If a CEC (FSP) belongs to a frame, which has a BPA installed, this CEC should not be assigned to an HMC individually. Instead, the whole frame (BPA) should be assigned to the HMC.

For PPC (without HMC, using Direct FSP Management) specific:

It is used to set up connections for FSP and BPA node to Hardware Server on management node (or service node ). It only could be done according to the node definition in xCAT DB. And this command will try to read the user/password from the ppcdirect table firstly. If fails, then read them from passwd table. Commonly , the username is B<HMC>. If using the B<ppcdirect> table,  each FSP/BPA and user/password should be  stored in B<ppcdirect> table. If using the B<passwd> table, the key should be "B<fsp>" or "B<bpa>", and the related user/password are stored in B<passwd> table.

When B<--port> is specified, this command will create the connections for FSPs/BPAs whose side in B<vpd> table is equal to port value.

=head1 OPTIONS

=over 5

=item B<-h|--help>

Display usage message.

=item B<-t>

Read connection information from xCAT DB (ppc and ppcdirect tables).  Use this option if you need to connect multiple FSPs/BPAs
to multiple HMCs in a single command.

=item B<-p>

The HMC node name. Only one HMC nodes can be specified by this flag. To setup connection for multiple HMC nodes, use flag B<-t>.

=item B<-P>

The password of HMC based FSP/BPA login user(Default user name is 'HMC'). This flag is optional.

=item B<-T>

The tooltype is used to communicate to the FSP/BPA. The value could be B<lpar> or B<fnm>. The tooltype value B<lpar> is for xCAT and B<fnm> is for CNM. The default value is "B<lpar>".

=item B<--port>

The port value specify which side will be used to create the connection to the FSP/BPA. The value could be "B<0>" or "B<1>". If this port value is not specfied in the command, it will use the default value "B<0>". If the port value is "B<0>", in the vpd table, the side column should be B<A-0> and B<B-0>; If the port value is "B<1>", the side column should be B<A-1> and B<B-1>.

=item B<-s>

The flag -s is used to make the connection between the frame and its Service Focal Point(HMC). -s flag is not supposed to work with other functional flags. The noderange should be frame.

=item B<-V|--verbose>

Verbose output.

=back

=head1 RETURN VALUE

0 The command completed successfully.

1 An error has occurred.

=head1 EXAMPLES

=over 3

=item 1.

To setup the connection for all FSP nodes in node group fsp to HMC node, according to the definition in xCAT DB:

 mkhwconn fsp -t

=item 2.

To setup the connection for BPA nodes in node group frame_grp1 to HMC node hmc1, with password 'abc123':

 mkhwconn frame_grp1 -p hmc1 -P abc123

=item 3.

To setup the connections for all FSP nodes in node group fsp to hardware server, and the tooltype value is lpar:

 mkhwconn fsp -t -T lpar

=back

=head1 FILES

$XCATROOT/bin/mkhwconn

(The XCATROOT environment variable is set when xCAT is installed. The
default value is "/opt/xcat".)

=head1 NOTES

This command is part of the xCAT software product.

=head1 SEE ALSO

L<lshwconn(1)|lshwconn.1>, L<rmhwconn(1)|rmhwconn.1>
