forked from PAWPAW-Mirror/lib_xua
Merge remote-tracking branch 'xmos/develop' into variable_i2s_bit_width
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -19,6 +19,7 @@
|
|||||||
.DS_Store
|
.DS_Store
|
||||||
test_results.csv
|
test_results.csv
|
||||||
_build*
|
_build*
|
||||||
|
**/.venv/**
|
||||||
|
|
||||||
# waf build files
|
# waf build files
|
||||||
.lock-waf_*
|
.lock-waf_*
|
||||||
|
|||||||
7
Brewfile
Normal file
7
Brewfile
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
tap 'homebrew/core'
|
||||||
|
|
||||||
|
brew 'perl'
|
||||||
|
brew 'cpanm'
|
||||||
|
|
||||||
|
brew 'python@2'
|
||||||
|
brew 'pipenv'
|
||||||
@@ -19,7 +19,7 @@ lib_xua Change Log
|
|||||||
|
|
||||||
* Changes to dependencies:
|
* Changes to dependencies:
|
||||||
|
|
||||||
- lib_spdif: Added dependency 3.0.0
|
- lib_spdif: Added dependency 3.1.0
|
||||||
|
|
||||||
- lib_xassert: Added dependency 3.0.1
|
- lib_xassert: Added dependency 3.0.1
|
||||||
|
|
||||||
|
|||||||
120
Jenkinsfile
vendored
120
Jenkinsfile
vendored
@@ -1,19 +1,63 @@
|
|||||||
@Library('xmos_jenkins_shared_library@master') _
|
@Library('xmos_jenkins_shared_library@develop') _
|
||||||
|
|
||||||
|
getApproval()
|
||||||
|
|
||||||
pipeline {
|
pipeline {
|
||||||
agent {
|
agent none
|
||||||
label 'x86&&macOS&&Apps'
|
|
||||||
}
|
|
||||||
environment {
|
environment {
|
||||||
VIEW = 'xua'
|
|
||||||
REPO = 'lib_xua'
|
REPO = 'lib_xua'
|
||||||
|
VIEW = "${env.JOB_NAME.contains('PR-') ? REPO+'_'+env.CHANGE_TARGET : REPO+'_'+env.BRANCH_NAME}"
|
||||||
|
}
|
||||||
|
triggers {
|
||||||
|
/* Trigger this Pipeline on changes to the repos dependencies
|
||||||
|
*
|
||||||
|
* If this Pipeline is running in a pull request, the triggers are set
|
||||||
|
* on the base branch the PR is set to merge in to.
|
||||||
|
*
|
||||||
|
* Otherwise the triggers are set on the branch of a matching name to the
|
||||||
|
* one this Pipeline is on.
|
||||||
|
*/
|
||||||
|
upstream(
|
||||||
|
upstreamProjects:
|
||||||
|
(env.JOB_NAME.contains('PR-') ?
|
||||||
|
"../lib_device_control/${env.CHANGE_TARGET}," +
|
||||||
|
"../lib_dsp/${env.CHANGE_TARGET}," +
|
||||||
|
"../lib_i2c/${env.CHANGE_TARGET}," +
|
||||||
|
"../lib_logging/${env.CHANGE_TARGET}," +
|
||||||
|
"../lib_mic_array/${env.CHANGE_TARGET}," +
|
||||||
|
"../lib_spdif/${env.CHANGE_TARGET}," +
|
||||||
|
"../lib_xassert/${env.CHANGE_TARGET}," +
|
||||||
|
"../lib_xud/${env.CHANGE_TARGET}," +
|
||||||
|
"../tools_released/${env.CHANGE_TARGET}," +
|
||||||
|
"../tools_xmostest/${env.CHANGE_TARGET}," +
|
||||||
|
"../xdoc_released/${env.CHANGE_TARGET}"
|
||||||
|
:
|
||||||
|
"../lib_device_control/${env.BRANCH_NAME}," +
|
||||||
|
"../lib_dsp/${env.BRANCH_NAME}," +
|
||||||
|
"../lib_i2c/${env.BRANCH_NAME}," +
|
||||||
|
"../lib_logging/${env.BRANCH_NAME}," +
|
||||||
|
"../lib_mic_array/${env.BRANCH_NAME}," +
|
||||||
|
"../lib_spdif/${env.BRANCH_NAME}," +
|
||||||
|
"../lib_xassert/${env.BRANCH_NAME}," +
|
||||||
|
"../lib_xud/${env.BRANCH_NAME}," +
|
||||||
|
"../tools_released/${env.BRANCH_NAME}," +
|
||||||
|
"../tools_xmostest/${env.BRANCH_NAME}," +
|
||||||
|
"../xdoc_released/${env.BRANCH_NAME}"),
|
||||||
|
threshold: hudson.model.Result.SUCCESS
|
||||||
|
)
|
||||||
}
|
}
|
||||||
options {
|
options {
|
||||||
skipDefaultCheckout()
|
skipDefaultCheckout()
|
||||||
}
|
}
|
||||||
|
stages {
|
||||||
|
stage('Basic tests') {
|
||||||
|
agent {
|
||||||
|
label 'x86_64&&brew'
|
||||||
|
}
|
||||||
stages {
|
stages {
|
||||||
stage('Get view') {
|
stage('Get view') {
|
||||||
steps {
|
steps {
|
||||||
prepareAppsSandbox("${VIEW}", "${REPO}")
|
xcorePrepareSandbox("${VIEW}", "${REPO}")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
stage('Library checks') {
|
stage('Library checks') {
|
||||||
@@ -26,19 +70,6 @@ pipeline {
|
|||||||
runXmostest("${REPO}", 'tests')
|
runXmostest("${REPO}", 'tests')
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
stage('Host builds') {
|
|
||||||
steps {
|
|
||||||
dir("${REPO}") {
|
|
||||||
dir("${REPO}") {
|
|
||||||
dir('host') {
|
|
||||||
dir('xmosdfu') {
|
|
||||||
sh 'make -f Makefile.OSX64'
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
stage('xCORE builds') {
|
stage('xCORE builds') {
|
||||||
steps {
|
steps {
|
||||||
dir("${REPO}") {
|
dir("${REPO}") {
|
||||||
@@ -51,11 +82,60 @@ pipeline {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
post {
|
post {
|
||||||
success {
|
cleanup {
|
||||||
|
xcoreCleanSandbox()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
stage('Build host apps') {
|
||||||
|
failFast true
|
||||||
|
parallel {
|
||||||
|
stage('Build Linux host app') {
|
||||||
|
agent {
|
||||||
|
label 'x86_64&&brew&&linux'
|
||||||
|
}
|
||||||
|
steps {
|
||||||
|
xcorePrepareSandbox("${VIEW}", "${REPO}")
|
||||||
|
dir("${REPO}/${REPO}/host/xmosdfu") {
|
||||||
|
sh 'make -f Makefile.Linux64'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
post {
|
||||||
|
cleanup {
|
||||||
|
xcoreCleanSandbox()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
stage('Build Mac host app') {
|
||||||
|
agent {
|
||||||
|
label 'x86_64&&brew&&macOS'
|
||||||
|
}
|
||||||
|
steps {
|
||||||
|
xcorePrepareSandbox("${VIEW}", "${REPO}")
|
||||||
|
dir("${REPO}/${REPO}/host/xmosdfu") {
|
||||||
|
sh 'make -f Makefile.OSX64'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
post {
|
||||||
|
cleanup {
|
||||||
|
xcoreCleanSandbox()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
stage('Update') {
|
||||||
|
agent {
|
||||||
|
label 'x86_64&&brew'
|
||||||
|
}
|
||||||
|
steps {
|
||||||
updateViewfiles()
|
updateViewfiles()
|
||||||
}
|
}
|
||||||
|
post {
|
||||||
cleanup {
|
cleanup {
|
||||||
cleanWs()
|
cleanWs()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
7
Pipfile
Normal file
7
Pipfile
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
[[source]]
|
||||||
|
name = "pypi"
|
||||||
|
url = "https://pypi.org/simple"
|
||||||
|
verify_ssl = true
|
||||||
|
|
||||||
|
[dev-packages]
|
||||||
|
flake8 = "*"
|
||||||
2
cpanfile
Normal file
2
cpanfile
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
requires 'File::Copy::Recursive';
|
||||||
|
requires 'LWP::Simple'
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
// Copyright (c) 2011-2018, XMOS Ltd, All rights reserved
|
// Copyright (c) 2011-2019, XMOS Ltd, All rights reserved
|
||||||
/**
|
/**
|
||||||
* @file xua_ep0_descriptors.h
|
* @file xua_ep0_descriptors.h
|
||||||
* @brief Device Descriptors
|
* @brief Device Descriptors
|
||||||
@@ -423,7 +423,22 @@ USB_Descriptor_Device_t devDesc_Audio1 =
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if (AUDIO_CLASS == 2)
|
#if (AUDIO_CLASS == 2)
|
||||||
/* Device Descriptor for Audio Class 2.0 (Assumes High-Speed ) */
|
/* Device Descriptor for Audio Class 2.0 (Assumes High-Speed )
|
||||||
|
*
|
||||||
|
* The use of two configurations dates back to Windows XP (could be SP2). This
|
||||||
|
* lacked some standards support and incorrectly parsed the full audio class 2.0
|
||||||
|
* descriptor with its IADs (Interface Association Descriptors). The observed
|
||||||
|
* behaviour included loading the built-in audio class 1.0 driver on some
|
||||||
|
* interfaces (possibly the wrong ones, too), and hanging.
|
||||||
|
*
|
||||||
|
* Presenting a blank configuration first prevented loading the composite driver
|
||||||
|
* and issues arising from it, while still allowing to load a vendor driver on
|
||||||
|
* the actual configuration.
|
||||||
|
*
|
||||||
|
* Recent Windows subsystem can parse our class 2.0 descriptor correctly
|
||||||
|
* (certainly Windows 7 and onwards). It may be possible to remove this
|
||||||
|
* workaround.
|
||||||
|
*/
|
||||||
USB_Descriptor_Device_t devDesc_Audio2 =
|
USB_Descriptor_Device_t devDesc_Audio2 =
|
||||||
{
|
{
|
||||||
.bLength = sizeof(USB_Descriptor_Device_t),
|
.bLength = sizeof(USB_Descriptor_Device_t),
|
||||||
|
|||||||
Reference in New Issue
Block a user