Mauro Carvalho Chehab

About Mauro Carvalho Chehab

Mauro is the upstream maintainer of the Linux kernel media and EDAC subsystems, and also a major contributor for the Reliability Availability and Serviceability (RAS) subsystems. Mauro also maintains Tizen on Yocto packages upstream. He works for the Samsung Open Source Group since 2013. Has worked during 5 years at the Red Hat RHEL Kernel team, having broad experience in telecommunications due to his work at some of the Brazilian largest wired and wireless carriers.

  • Projects

    Linux Kernel, Tizen, v4l-utils, rasdaemon, tvtime, xawtv3
  • Role

    Linux Kernel Expert

Posts by Mauro Carvalho Chehab

  • The usage of https has been so far somewhat restricted on open source projects, because of the cost of acquiring and maintaining certificates. As a result of this and the need to improve Internet security, several projects are working on providing free valid certificates. Among those projects, Let’s Encript launched a public beta last week on December, 3 2015. The Let’s Encrypt Approach Let’s Encrypt is a Linux Foundation Collaborative project that started to fulfill an Electronic Frontier Foundation – EFF long-term mission to Encrypt the Web. According with EFF, the “aim is to switch hypertext from insecure HTTP to secure HTTPS. That protection is essential in order to defend Internet users against surveillance of the content of their communications; cookie theft, account hijacking and other web security flaws; cookie and ad injection; and some forms of Internet censorship.”. With that goal in mind, the Let’s Encrypt project is providing […]

    Read More
  • The Linux Kernel Summit Media Workshop was held on October 26, 2015 in Seoul, South Korea. We had 21 attendees from various companies and places in the world gather to discuss the current state of Linux Media and the challenges that need to be overcome to push these technologies into the future. This article will cover the major topics that were discussed during this workshop and the decisions that were made about the direction of this community.   Codec API Improvements Currently, Video4Linux version 2 (V4L2) memory to memory devices uses the Stream API to handle coders/decoders (codecs), but it might be time for us to develop a Frame API to handle newer devices. Stream API The original V4L2 codec API was developed along with the Exynos codec driver. Since the device implements high-level operations in hardware, the resulting API was high-level as well with drivers accepting unprocessed raw streams. […]

    Read More
  • Tizen+RPI2

    September 14, 2015 - Mauro Carvalho Chehab

    Setup WiFi on Your Raspberry Pi 2 with Tizen

    Once you have your RPi2 up and running with Tizen, it is helpful to get network connectivity setup. This article is part of our series about Tizen on the Raspberry Pi 2, and this guide will describe how to enable WiFi on your RPi2. Doing this will make it much easier to work on the device because it will allow you to connect using ssh through your wireless network and access remote resources on the Internet. Get Familiar With the Hardware The procedure to enable WiFi on Tizen for Raspberry PI2 (Rpi2) is simple. You will first want to make sure Tizen detects your WiFi adapter. You can find it by running lsusb which will display all connected usb devices, including . My own RPi2  is using a Realtek device based on the RTL 8188CUS chipset:

    Once connected, it produces the following messages:

    You can use view this […]

    Read More
  • This article contains a summary of the discussions that took place at the Media Controller Workshop in Espoo, Finland from July 29 – 31, 2015. A more detailed breakdown of these discussions can be found on Linux TV. This is the first  workshop dedicated to the Linux Media Controller. It follows a v4l summit that took place back in 2010 in Finland that established the current foundation for the media controller. This was aimed at properly satisfying the needs of reporting pipelines on the smartphone System on a Chip (SoC). The focus of this year’s workshop was to clarify the kernel→userspace interfaces and extend the Media Controller to be used on other subsystems that need to represent graphs like Linux Digital Video Broadcasting (DVB), Advanced Linux Sound Architecture (ALSA), and Industrial I/O (IIO). Samsung had a strong representation at this workshop, including Shuah Khan and Mauro Carvalho Chehab from the […]

    Read More
  • Tizen+RPI2 got smart

    July 28, 2015 - Mauro Carvalho Chehab

    RPi2: Getting Smart on Tizen

    Once you’ve got Tizen running on your Raspberry PI 2 (RPi2) using the procedures described in Tizen on RPi2: Now Supporting 3D Acceleration, you will probably want to be able to dynamically add/remove packages. It’s a pain to be required to rebuild and flash your OS every time you want to change the included software, so following this tutorial will help make this much easier. This small tutorial shows how to install the smart tool that is shipped on Tizen, but is not installed by default. 1) Add Smart to the RPi2 Image The first step is to add the Smart Package Manager (python-smartpm) to the RPi2 Tizen image. This is the same package manager used on Yocto, and Tizen has its own patches for it. In order to install it, you should apply the following simple patch on your Tizen repository:

    If you are unfamiliar with the patching […]

    Read More
  • Tizen+RPI2

    July 14, 2015 - Mauro Carvalho Chehab

    Tizen on RPi2: Now Supporting 3D Acceleration

    In Bringing Tizen to a Raspberry PI 2 Near You… I described the work we completed to port Tizen to Raspberry Pi 2 (RPi2). Since then, the Samsung Open Source Group has worked hard to add support for 3D acceleration. UPDATES: Added the -dev images, as they’re now supported. Added bitbake command for building the crosswalk-dev image Added command line for ddrescue The Kernel was updated to Vanilla Tizen Kernel 4.4 This is an update to our original guide that describes how to build a custom Tizen image for the RPi2, and it now includes instructions to enable 3D acceleration. This is based mostly on work completed by our own Derek Foreman. Please note that this uses a driver that is still under development (VC4), written by Eric Anholt from Broadcom, so we don’t recommend its use in production situations. If you don’t want to wait through the build process […]

    Read More
  • Part 1 of this series can be read here. Supporting embedded Digital TV (DTV) hardware is complex, considering that such hardware generally has multiple components that can each be rewired during runtime to dynamically change the stream pipelines and provide flexibility for activities like recording a video stream while tuning into another channel to watch a different program. The first article of this series described how the Digital Video Broadcasting (DVB) pipelines are setup and the needs that should be addressed by the Linux Kernel. In this article, I’ll  discuss the needs of the DVB API with a focus on the network interfaces that are part of any DTV device. An Introduction to Digital TV Network Interfaces Typical DTV devices have dedicated hardware that provides the network interfaces. If you would like to learn more about such hardware, check out the first post in this series, specifically Figure 6 and […]

    Read More
  • May 8, 2015 - Mauro Carvalho Chehab

    Media Controller Support for Digital Video Broadcasting

    Supporting embedded Digital TV hardware is complex, considering that such hardware generally has multiple components that can be rewired in runtime to dynamically change the stream pipelines and provide flexibility for things like recording a video stream, then tuning into another channel to see a different program. This article describes how the DVB pipelines are setup and the needs that should be addressed by the Linux Kernel. This introduction will lead into the next article in this series, which will describe how the media subsystem is being improved to support such needs. Digital TV devices A Digital TV device consists of a set of hardware blocks. The basic components are: Tuner – Tunes into a physical frequency (tuner), and outputs the channel on an Intermediate Frequency (IF). Demodulator (a. k. a. demod) – Gets an IF, decodes the sub-carrier(s) content, and outputs the resulting MPEG-TS stream. It is specific for […]

    Read More
  • Tizen+RPI2

    April 18, 2015 - Mauro Carvalho Chehab

    Bringing Tizen to a Raspberry PI 2 Near You…

    The Raspberry Pi is the most popular single-board computer with more than 5 million sold. While there are numerous Linux Distributions that run on RPI including Raspbian, Pidora, Ubuntu, OSMC, and OpenElec, the Tizen OS does not currently run on it. Since Tizen is being positioned as an important player within the growing Internet of Things (IoT) ecosystem, providing a Raspberry PI 2 port can help developers gain more Tizen experience. For this reason, the Samsung Open Source group decided to work on such port. This article will go over how to build a bootable Tizen image for Raspberry Pi from a computer running Linux. The Raspberry Pi 2 has several advantages over the first version. Among them: It has a quad-core CPU It runs at 900 MHz It uses an ARM Cortex-A7 CPU The ARM Cortex-A7 CPU is very nice since most distributions are compiled to use the arm […]

    Read More