Giter Club home page Giter Club logo

cbl-mariner-smartnic's Introduction

This is a combination of the following repos

CBL-Mariner https://github.com/microsoft/CBL-Mariner/

Mellanox/bfb-mariner https://github.com/Mellanox/bfb-mariner

Build BFB

The following steps will pull RPMs from Nvidia servers. These RPMs will be tied to Nvidia's licensing and user agreements.

$ sudo ./bfb-build

You may need to run the following to configure qemu docker run --rm --privileged multiarch/qemu-user-static --reset -p yes

Flash BFB

On the linux machine connected via USB to the bf2, If you do not have RSHIM installed: RSHIM package is available under: https://developer.nvidia.com/networking/doca https://www.mellanox.com/downloads/BlueField/RSHIM/rshim_2.0.6-3.ge329c69_amd64.deb

Deploy the image to BF2 device via the rshim interface (assuming rshim0).

$ sudo bfb-install -r rshim0 -b your-bfb

You can watch the process using a serial monitor like minicom on port /dev/rshim0/console

$ sudo minicom

Configure the Linux rshim network interface static IP address to 192.168.100.3/24 (basically 192.168.100.x). The BF2 device is set to static IP 192.168.100.2. If you are not using the BF2 management network interface, but rather the rshim network interface, you will need to configure your Linux machine as a gateway/router, so the device can use it for internet access.

Make sure ipv4 forward is enabled

$ cat /proc/sys/net/ipv4/ip_forward
1

NAT (MASQUERADE) is enabled on the external network interface, in this example eno1: $ sudo iptables -t nat -A POSTROUTING -o eno1 -j MASQUERADE

Once the bfb is flashed, log in using minicom and the credentials user: mariner pw: mariner

Some network configuration may be needed. Make the following changes:

$ sudo cat > /etc/resolv.conf << EOF
nameserver 127.0.0.53
EOF
$ sudo cat >  /etc/netplan/60-mlnx.yaml << EOF
network:
    ethernets:
        oob_net0:
            renderer: networkd
            dhcp4: true
        tmfifo_net0:
            renderer: networkd
            addresses:
            - 192.168.100.2/24
            dhcp4: false
            gateway4: 192.168.100.3
            nameservers:
               addresses: [10.50.10.50, 10.50.50.50]
               search: [corp.microsoft.com]
        enp3s0f0s0:
            renderer: networkd
            dhcp4: true
        enp3s0f1s0:
            renderer: networkd
            dhcp4: true
    version: 2
EOF

$ sudo netplan apply

Now you should be able to ssh using the rshim device $ ssh [email protected]

cbl-mariner-smartnic's People

Contributors

jcamposeco avatar microsoftopensource avatar rlmenge avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

cbl-mariner-smartnic's Issues

pinctrl-mlxbf3 fails to build for Azure Linux version 5.15.145

Build error when adding pinctrl for bluefield3

/tmp/4.2.0-12855/extras/BUILD/pinctrl-mlxbf3-1.0/obj/default/pinctrl-mlxbf3.c:183:9: error: implicit declaration of function 'PINCTRL_PINFUNCTION'; did you mean 'PINCTRL_PIN_ANON'? [-Werror=implicit-function-declaration]
183 | PINCTRL_PINFUNCTION("hwfunc", mlxbf3_hwfunc_group_names, 1),
| ^~~~~~~~~~~~~~~~~~~
| PINCTRL_PIN_ANON

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.