Skip to content

Commit

Permalink
linux: dwc_otg: root port and FIQ bugfixes
Browse files Browse the repository at this point in the history
See: raspberrypi/linux#352

firmware: audioplus: avoid a race condition that can cause lost hdmi audio when pausing and unpausing too quickly

firmware: dispmanx: Correct VC_IMAGE_TRANSFORM_T to DISPMANX_TRANFORM_T where appropriate

firmware: audio: add support for arbitrary 8x8 channel mixing to be specified from host
See: popcornmix/omxplayer#29
  • Loading branch information
Dom Cobley committed Aug 7, 2013
1 parent 04b5c99 commit fb15696
Show file tree
Hide file tree
Showing 40 changed files with 41,815 additions and 41,749 deletions.
Binary file modified boot/fixup.dat
Binary file not shown.
Binary file modified boot/fixup_cd.dat
Binary file not shown.
Binary file modified boot/fixup_x.dat
Binary file not shown.
Binary file modified boot/kernel.img
Binary file not shown.
Binary file modified boot/kernel_emergency.img
Binary file not shown.
Binary file modified boot/start.elf
Binary file not shown.
Binary file modified boot/start_cd.elf
Binary file not shown.
Binary file modified boot/start_x.elf
Binary file not shown.
42,010 changes: 21,005 additions & 21,005 deletions extra/System.map

Large diffs are not rendered by default.

41,468 changes: 20,734 additions & 20,734 deletions extra/System_emergency.map

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion extra/git_hash
Original file line number Diff line number Diff line change
@@ -1 +1 @@
833f70028b9db3cf830140869e073b4d82b823d5
9b22cc2aa86e710dbd30d03a20e15006b5be8eb6
2 changes: 1 addition & 1 deletion extra/uname_string
Original file line number Diff line number Diff line change
@@ -1 +1 @@
Linux version 3.6.11+ (dc4@dc4-arm-01) (gcc version 4.7.2 20120731 (prerelease) (crosstool-NG linaro-1.13.1+bzr2458 - Linaro GCC 2012.08) ) #518 PREEMPT Fri Aug 2 11:39:53 BST 2013
Linux version 3.6.11+ (dc4@dc4-arm-01) (gcc version 4.7.2 20120731 (prerelease) (crosstool-NG linaro-1.13.1+bzr2458 - Linaro GCC 2012.08) ) #520 PREEMPT Wed Aug 7 16:07:34 BST 2013
15 changes: 15 additions & 0 deletions hardfp/opt/vc/include/IL/OMX_Broadcom.h
Original file line number Diff line number Diff line change
Expand Up @@ -476,6 +476,21 @@ R' = coeff[1] * sample[N] + coeff[3] * sample[N+1] + coeff[5] * sample[N+2] + co
\code{coeff} describes the downmixing coefficients
*/

/* OMX_IndexConfigBrcmAudioDownmixCoefficients8x8: Audio Downmix Coefficients */
typedef struct OMX_CONFIG_BRCMAUDIODOWNMIXCOEFFICIENTS8x8 {
OMX_U32 nSize;
OMX_VERSIONTYPE nVersion;
OMX_U32 nPortIndex;
OMX_U32 coeff[64];
} OMX_CONFIG_BRCMAUDIODOWNMIXCOEFFICIENTS8x8;
/*
This config sets the platform-specific audio downmixing coefficients for the
audio mixer component. The coefficients are 16.16 fixed point.
The coefficients are a 8*8 mixing matrix from 8 input channels to 8 outputs channels
\code{coeff} describes the downmixing coefficients
*/

/* OMX_IndexConfigPlayMode: Play Mode */
typedef enum OMX_PLAYMODETYPE {
OMX_PLAYMODE_NORMAL,
Expand Down
1 change: 1 addition & 0 deletions hardfp/opt/vc/include/IL/OMX_Index.h
Original file line number Diff line number Diff line change
Expand Up @@ -502,6 +502,7 @@ typedef enum OMX_INDEXTYPE {

// 0x7f0000f0
OMX_IndexConfigBrcmAudioDownmixCoefficients = 0x7f0000f0, /**< reference: OMX_CONFIG_BRCMAUDIODOWNMIXCOEFFICIENTS */
OMX_IndexConfigBrcmAudioDownmixCoefficients8x8, /**< reference: OMX_CONFIG_BRCMAUDIODOWNMIXCOEFFICIENTS8x8 */

OMX_IndexMax = 0x7FFFFFFF
} OMX_INDEXTYPE;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -476,6 +476,21 @@ R' = coeff[1] * sample[N] + coeff[3] * sample[N+1] + coeff[5] * sample[N+2] + co
\code{coeff} describes the downmixing coefficients
*/

/* OMX_IndexConfigBrcmAudioDownmixCoefficients8x8: Audio Downmix Coefficients */
typedef struct OMX_CONFIG_BRCMAUDIODOWNMIXCOEFFICIENTS8x8 {
OMX_U32 nSize;
OMX_VERSIONTYPE nVersion;
OMX_U32 nPortIndex;
OMX_U32 coeff[64];
} OMX_CONFIG_BRCMAUDIODOWNMIXCOEFFICIENTS8x8;
/*
This config sets the platform-specific audio downmixing coefficients for the
audio mixer component. The coefficients are 16.16 fixed point.
The coefficients are a 8*8 mixing matrix from 8 input channels to 8 outputs channels
\code{coeff} describes the downmixing coefficients
*/

/* OMX_IndexConfigPlayMode: Play Mode */
typedef enum OMX_PLAYMODETYPE {
OMX_PLAYMODE_NORMAL,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -502,6 +502,7 @@ typedef enum OMX_INDEXTYPE {

// 0x7f0000f0
OMX_IndexConfigBrcmAudioDownmixCoefficients = 0x7f0000f0, /**< reference: OMX_CONFIG_BRCMAUDIODOWNMIXCOEFFICIENTS */
OMX_IndexConfigBrcmAudioDownmixCoefficients8x8, /**< reference: OMX_CONFIG_BRCMAUDIODOWNMIXCOEFFICIENTS8x8 */

OMX_IndexMax = 0x7FFFFFFF
} OMX_INDEXTYPE;
Expand Down
7 changes: 4 additions & 3 deletions hardfp/opt/vc/include/interface/vmcs_host/vc_dispmanx.h
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ VCHPRE_ DISPMANX_DISPLAY_HANDLE_T VCHPOST_ vc_dispmanx_display_open( uint32_t de
// Opens a display on the given device in the request mode
VCHPRE_ DISPMANX_DISPLAY_HANDLE_T VCHPOST_ vc_dispmanx_display_open_mode( uint32_t device, uint32_t mode );
// Open an offscreen display
VCHPRE_ DISPMANX_DISPLAY_HANDLE_T VCHPOST_ vc_dispmanx_display_open_offscreen( DISPMANX_RESOURCE_HANDLE_T dest, VC_IMAGE_TRANSFORM_T orientation );
VCHPRE_ DISPMANX_DISPLAY_HANDLE_T VCHPOST_ vc_dispmanx_display_open_offscreen( DISPMANX_RESOURCE_HANDLE_T dest, DISPMANX_TRANSFORM_T orientation );
// Change the mode of a display
VCHPRE_ int VCHPOST_ vc_dispmanx_display_reconfigure( DISPMANX_DISPLAY_HANDLE_T display, uint32_t mode );
// Sets the desstination of the display to be the given resource
Expand Down Expand Up @@ -113,7 +113,7 @@ VCHPRE_ int VCHPOST_ vc_dispmanx_element_change_attributes( DISPMANX_UPDATE_HAND
const VC_RECT_T *dest_rect,
const VC_RECT_T *src_rect,
DISPMANX_RESOURCE_HANDLE_T mask,
VC_IMAGE_TRANSFORM_T transform );
DISPMANX_TRANSFORM_T transform );

//xxx hack to get the image pointer from a resource handle, will be obsolete real soon
VCHPRE_ uint32_t VCHPOST_ vc_dispmanx_resource_get_image_handle( DISPMANX_RESOURCE_HANDLE_T res);
Expand All @@ -123,9 +123,10 @@ VCHPRE_ void VCHPOST_ vc_vchi_dispmanx_init (VCHI_INSTANCE_T initialise_instance

// Take a snapshot of a display in its current state.
// This call may block for a time; when it completes, the snapshot is ready.
// only transform=0 is supported
VCHPRE_ int VCHPOST_ vc_dispmanx_snapshot( DISPMANX_DISPLAY_HANDLE_T display,
DISPMANX_RESOURCE_HANDLE_T snapshot_resource,
VC_IMAGE_TRANSFORM_T transform );
DISPMANX_TRANSFORM_T transform );
#ifdef __cplusplus
}
#endif
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -150,7 +150,7 @@ typedef struct {
typedef struct {
int32_t width;
int32_t height;
VC_IMAGE_TRANSFORM_T transform;
DISPMANX_TRANSFORM_T transform;
DISPLAY_INPUT_FORMAT_T input_format;
} DISPMANX_MODEINFO_T;

Expand Down
Binary file modified hardfp/opt/vc/lib/libEGL_static.a
Binary file not shown.
Binary file modified hardfp/opt/vc/lib/libGLESv2_static.a
Binary file not shown.
Binary file modified hardfp/opt/vc/lib/libkhrn_client.a
Binary file not shown.
Binary file modified hardfp/opt/vc/lib/libkhrn_static.a
Binary file not shown.
Binary file modified hardfp/opt/vc/lib/libopenmaxil.so
Binary file not shown.
Binary file modified hardfp/opt/vc/lib/libvcfiled_check.a
Binary file not shown.
Binary file modified hardfp/opt/vc/lib/libvchostif.a
Binary file not shown.
Binary file modified hardfp/opt/vc/lib/libvmcs_rpc_client.a
Binary file not shown.
15 changes: 15 additions & 0 deletions opt/vc/include/IL/OMX_Broadcom.h
Original file line number Diff line number Diff line change
Expand Up @@ -476,6 +476,21 @@ R' = coeff[1] * sample[N] + coeff[3] * sample[N+1] + coeff[5] * sample[N+2] + co
\code{coeff} describes the downmixing coefficients
*/

/* OMX_IndexConfigBrcmAudioDownmixCoefficients8x8: Audio Downmix Coefficients */
typedef struct OMX_CONFIG_BRCMAUDIODOWNMIXCOEFFICIENTS8x8 {
OMX_U32 nSize;
OMX_VERSIONTYPE nVersion;
OMX_U32 nPortIndex;
OMX_U32 coeff[64];
} OMX_CONFIG_BRCMAUDIODOWNMIXCOEFFICIENTS8x8;
/*
This config sets the platform-specific audio downmixing coefficients for the
audio mixer component. The coefficients are 16.16 fixed point.
The coefficients are a 8*8 mixing matrix from 8 input channels to 8 outputs channels
\code{coeff} describes the downmixing coefficients
*/

/* OMX_IndexConfigPlayMode: Play Mode */
typedef enum OMX_PLAYMODETYPE {
OMX_PLAYMODE_NORMAL,
Expand Down
1 change: 1 addition & 0 deletions opt/vc/include/IL/OMX_Index.h
Original file line number Diff line number Diff line change
Expand Up @@ -502,6 +502,7 @@ typedef enum OMX_INDEXTYPE {

// 0x7f0000f0
OMX_IndexConfigBrcmAudioDownmixCoefficients = 0x7f0000f0, /**< reference: OMX_CONFIG_BRCMAUDIODOWNMIXCOEFFICIENTS */
OMX_IndexConfigBrcmAudioDownmixCoefficients8x8, /**< reference: OMX_CONFIG_BRCMAUDIODOWNMIXCOEFFICIENTS8x8 */

OMX_IndexMax = 0x7FFFFFFF
} OMX_INDEXTYPE;
Expand Down
15 changes: 15 additions & 0 deletions opt/vc/include/interface/vmcs_host/khronos/IL/OMX_Broadcom.h
Original file line number Diff line number Diff line change
Expand Up @@ -476,6 +476,21 @@ R' = coeff[1] * sample[N] + coeff[3] * sample[N+1] + coeff[5] * sample[N+2] + co
\code{coeff} describes the downmixing coefficients
*/

/* OMX_IndexConfigBrcmAudioDownmixCoefficients8x8: Audio Downmix Coefficients */
typedef struct OMX_CONFIG_BRCMAUDIODOWNMIXCOEFFICIENTS8x8 {
OMX_U32 nSize;
OMX_VERSIONTYPE nVersion;
OMX_U32 nPortIndex;
OMX_U32 coeff[64];
} OMX_CONFIG_BRCMAUDIODOWNMIXCOEFFICIENTS8x8;
/*
This config sets the platform-specific audio downmixing coefficients for the
audio mixer component. The coefficients are 16.16 fixed point.
The coefficients are a 8*8 mixing matrix from 8 input channels to 8 outputs channels
\code{coeff} describes the downmixing coefficients
*/

/* OMX_IndexConfigPlayMode: Play Mode */
typedef enum OMX_PLAYMODETYPE {
OMX_PLAYMODE_NORMAL,
Expand Down
1 change: 1 addition & 0 deletions opt/vc/include/interface/vmcs_host/khronos/IL/OMX_Index.h
Original file line number Diff line number Diff line change
Expand Up @@ -502,6 +502,7 @@ typedef enum OMX_INDEXTYPE {

// 0x7f0000f0
OMX_IndexConfigBrcmAudioDownmixCoefficients = 0x7f0000f0, /**< reference: OMX_CONFIG_BRCMAUDIODOWNMIXCOEFFICIENTS */
OMX_IndexConfigBrcmAudioDownmixCoefficients8x8, /**< reference: OMX_CONFIG_BRCMAUDIODOWNMIXCOEFFICIENTS8x8 */

OMX_IndexMax = 0x7FFFFFFF
} OMX_INDEXTYPE;
Expand Down
7 changes: 4 additions & 3 deletions opt/vc/include/interface/vmcs_host/vc_dispmanx.h
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ VCHPRE_ DISPMANX_DISPLAY_HANDLE_T VCHPOST_ vc_dispmanx_display_open( uint32_t de
// Opens a display on the given device in the request mode
VCHPRE_ DISPMANX_DISPLAY_HANDLE_T VCHPOST_ vc_dispmanx_display_open_mode( uint32_t device, uint32_t mode );
// Open an offscreen display
VCHPRE_ DISPMANX_DISPLAY_HANDLE_T VCHPOST_ vc_dispmanx_display_open_offscreen( DISPMANX_RESOURCE_HANDLE_T dest, VC_IMAGE_TRANSFORM_T orientation );
VCHPRE_ DISPMANX_DISPLAY_HANDLE_T VCHPOST_ vc_dispmanx_display_open_offscreen( DISPMANX_RESOURCE_HANDLE_T dest, DISPMANX_TRANSFORM_T orientation );
// Change the mode of a display
VCHPRE_ int VCHPOST_ vc_dispmanx_display_reconfigure( DISPMANX_DISPLAY_HANDLE_T display, uint32_t mode );
// Sets the desstination of the display to be the given resource
Expand Down Expand Up @@ -113,7 +113,7 @@ VCHPRE_ int VCHPOST_ vc_dispmanx_element_change_attributes( DISPMANX_UPDATE_HAND
const VC_RECT_T *dest_rect,
const VC_RECT_T *src_rect,
DISPMANX_RESOURCE_HANDLE_T mask,
VC_IMAGE_TRANSFORM_T transform );
DISPMANX_TRANSFORM_T transform );

//xxx hack to get the image pointer from a resource handle, will be obsolete real soon
VCHPRE_ uint32_t VCHPOST_ vc_dispmanx_resource_get_image_handle( DISPMANX_RESOURCE_HANDLE_T res);
Expand All @@ -123,9 +123,10 @@ VCHPRE_ void VCHPOST_ vc_vchi_dispmanx_init (VCHI_INSTANCE_T initialise_instance

// Take a snapshot of a display in its current state.
// This call may block for a time; when it completes, the snapshot is ready.
// only transform=0 is supported
VCHPRE_ int VCHPOST_ vc_dispmanx_snapshot( DISPMANX_DISPLAY_HANDLE_T display,
DISPMANX_RESOURCE_HANDLE_T snapshot_resource,
VC_IMAGE_TRANSFORM_T transform );
DISPMANX_TRANSFORM_T transform );
#ifdef __cplusplus
}
#endif
Expand Down
2 changes: 1 addition & 1 deletion opt/vc/include/interface/vmcs_host/vc_dispmanx_types.h
Original file line number Diff line number Diff line change
Expand Up @@ -150,7 +150,7 @@ typedef struct {
typedef struct {
int32_t width;
int32_t height;
VC_IMAGE_TRANSFORM_T transform;
DISPMANX_TRANSFORM_T transform;
DISPLAY_INPUT_FORMAT_T input_format;
} DISPMANX_MODEINFO_T;

Expand Down
Binary file modified opt/vc/lib/libEGL_static.a
Binary file not shown.
Binary file modified opt/vc/lib/libGLESv2_static.a
Binary file not shown.
Binary file modified opt/vc/lib/libkhrn_client.a
Binary file not shown.
Binary file modified opt/vc/lib/libkhrn_static.a
Binary file not shown.
Binary file modified opt/vc/lib/libopenmaxil.so
Binary file not shown.
Binary file modified opt/vc/lib/libvcfiled_check.a
Binary file not shown.
Binary file modified opt/vc/lib/libvchostif.a
Binary file not shown.
Binary file modified opt/vc/lib/libvmcs_rpc_client.a
Binary file not shown.

0 comments on commit fb15696

Please sign in to comment.