
 Install fm10k network driver:
================================
1. Copy the fm10k driver tar file to the directory of your choice. For
   example, use '/RRC'.
2. # cd /RRC               
3. Untar the archive, where <x.x.x> is the version number for the
   driver tar file:
   # tar zxfv fm10k-<x.x.x>.tar.gz
4. Change to the driver src directory, where <x.x.x> is the version number
   for the driver tar:
   # cd fm10k-<x.x.x>/src/
5. Compile the driver module:
   # make install
6. Load the module using the modprobe command:
   # modprobe fm10k
   to load with virtual port (VF interfaces):
   # modprobe fm10k max_vfs=x,...  (max_vmfs=PF-port1_value,PF-port2_value)
   In case there is old driver in the system, need to remove the old driver from the kernel before
   loading the new module:
   # rmmod fm10k; modprobe fm10k [max_vmfs=x,x]
7. Assign an IP address to the interface by entering the following,
   where ethX is the interface name that was shown in dmesg after modprobe:
   # ifconfig ethX <IP_address>/<netmask bits>
   
 Install the bypass driver:
 ==========================
 1. Copy the bprd_ctl driver tar file to the directory of your choice. For
   example, use '/RRC'.
2. Change intro RRC folder
   # cd /RRC               
3. Untar the archive, where <x.x.x> is the version number for the
   driver tar file:
   # tar zxfv bprd_ctl-<x.x.x>.tar.gz
4. Change to the driver src directory, where <x.x.x> is the version number
   for the driver tar:
   # cd bprd_ctl-<x.x.x>
5. Compile the driver module:
   # make install
6. Load the module using the command:
   # bprdctl_start

 Install the RRC driver:
 =======================
1. Copy the rdif driver tar file to the directory of your choice. For
   example, use '/RRC'.
2. Change intro RRC folder
   # cd /RRC               
3. un-pack the rdif-x.x.x archive file:
   # tar xvzf rdif-x.x.x.tar.gz
4. change into rdif_x.x.x. folder
5. run:
   # ./clean
   # ./install
This will install the library module librdif.so in /usr/local/lib, daemon rdifd, sample utility rdifctl and rdif script in /bin.
rdif script starts rdifd daemon.

 Generate configuration file - fm_platform_attributes.cfg for the RRC switch HW setting
 ====================================================
1. Run the fm10k_gencfgx.x.sh script. The script will create the 
   "fm_platform_attributes.cfg" file at the same directory. 
   This is needed for the rdif to work with the specific installed products
   After installing rdif (per the above rdif install), move this "fm_platform_attributes.cfg" file to the folder under RRC - /etc/rdi/ directory 
  # mv ./fm_platform_attributes.cfg  /etc/rdi/


initial configuration of the RRC product
==============================
1. For Bypass adapters: start BP driver before loading the rdif
   # bprdctl_start
2. Make sure, that all PF/VF fm10k network interfaces are brings up.
   # ifconfig ethX
 if not up then bring them all up. PF and VF interfaces.
3. Load the redirector driver and start rdifd daemon:
    # rdif start.
5. Use the rdifctl to define the switch masking and rules per the configuration that you want to have to the switch.
    For help on the available commands use:
   # rdifctl help  
 
for simple NIC operation need to do the following:
========================================
1. For Bypass adapters: start BP driver before loading the rdif
   # bprdctl_start
2. set the bypass to inline mode
   # bprdctl set_bypass off
3. Make sure, that all PF/VF fm10k network interfaces are brings up.
   # ifconfig ethX
 if not up then bring them all up. PF and VF interfaces.
4. Load the redirector driver and start rdifd daemon:
    # rdif start.
5. define switch masking to pass traffic from the external port to the related PF interfaces 
   Example:
   # rdifctl set_port_mask 5 1,2,3,4
   # rdifctl set_port_mask 1 5
   # rdifctl set_port_mask 2 5
   # rdifctl set_port_mask 3 5
   # rdifctl set_port_mask 4 5
   This will change per the product you are using. several masking commands may be needed.

5. Use the rdifctl to define the switch rules per the configuration that you want to have to the switch.
   # rdifctl dir port 1 redir_port 50000 rule_id 10001 (Forward P1 traffic to VF1 )
   # rdifctl dir port 2 redir_port 50001 rule_id 10002 (Forward P2 traffic to VF2 ) 
   # rdifctl dir port 3 redir_port 50002 rule_id 10003 (Forward P3 traffic to VF3 ) 
   # rdifctl dir port 4 redir_port 50003 rule_id 10004 (Forward P4 traffic to VF4 ) 
   # rdifctl dir port 50000 redir_port 1 rule_id 10005 (Forward VF1 traffic to P1 )
   # rdifctl dir port 50001 redir_port 2 rule_id 10006 (Forward VF2 traffic to P2 )
   # rdifctl dir port 50002 redir_port 3 rule_id 10007 (Forward VF3 traffic to P3 )
   # rdifctl dir port 50003 redir_port 4 rule_id 10008 (Forward VF4 traffic to P4 )
  
=====================
   For More Details use the guide to get full details on the options and configuration setting
=====================
   

