We are hiring a Linux device driver engineer to join the MSP Platforms group to spearhead our Linux driver and user space applications efforts. You will be a proactive team member keen to seek real life solutions and improve your learning in the audio applications space that serves electronics companies globally! You will collaborate with Application, Validation and Emulation teams to deliver robust, scalable, and reliable software that meets critical design objectives.
Responsibilities
Design, build, and maintain efficient, reusable, and reliable Linux device drivers and documentation
Code, bring-up and debug Linux drivers for new IP blocks in our FPGA based platforms
Learn audio specifications such as ALSA, SoundWire and SWI3S becoming the team expert
Develop and maintain user-space code used to communicate with PC side tools for comms and testing
Architect, develop, and integrate Linux drivers in a regulated product development process
Collaborate with other teams such as Applications, Validation, Emulation, Tools and SQA
Perform defect tracking and peer code reviews
Required Skills and Qualifications
Bachelor's in CS/EE and good working knowledge of Linux device driver development
3 to 7+ years of experience
Deep knowledge of Linux kernel architecture and subsystems
U-boot configuration and development for embedded Arm systems.
Devicetree development, debug and maintenance for multiple hardware platforms
Experience with Arm 32-bit (arm) and Arm 64-bit (aarch64) embedded devices and environments
Strong understanding of serial buses and protocols (e.g., USB, Ethernet, I2C, SPI, I2S, UART)
Strong knowledge of version control systems such as Git and Bitbucket and automation servers such as Jenkins and experience with defect management systems such as Jira
Incorporate strong troubleshooting skills using software (automated tests, debuggers), hardware (logic analyzers, oscilloscopes, DMMs), and other resources (schematics and datasheets)
Highly dynamic, results-oriented, and self-motivated personality able to work in a small team with minimal direction
Excellent written and verbal interpersonal skills
Ability to work across functional groups and organizations
Preferred Skills and Qualifications
Master's in CS/EE
Good understanding of more advanced serial buses and protocols (e.g., I3C, SoundWire, SWI3S, HDA, SPMI)
Linux PCIe and interrupt subsystems
Knowledge of Xilinx FPGA and SoCs such as Artix, Zynq and Zynq UltraScale+ operation
Upstreamed drivers into the Linux kernel
Successfully worked with customer design-in of semiconductors
#LI-KD1 #LI-Hybrid
Cirrus Logic is an Equal Opportunity/Affirmative Action Employer. We strive to select the best qualified applicant for any opening and to reward employees based on their skills, experience and performance. We do not discriminate on the basis of race, national origin, pregnancy status, marital status, gender, age, religion, physical or mental disability, medical condition, veteran status, sexual orientation, genetic information or any other characteristic protected by law.