New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Calculate a FRAMEBUFFERS_BASE for hdmi_inX #375
Conversation
c93863e
to
d962f12
Compare
firmware/pattern.c
Outdated
@@ -12,7 +12,7 @@ | |||
#include "uptime.h" | |||
#include "version_data.h" | |||
|
|||
#define PATTERN_FRAMEBUFFER_BASE 0x02000000 + 0x100000 | |||
#define PATTERN_FRAMEBUFFER_BASE 0x00000000 + 0x100000 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pattern is now the first framebuffer? Can you add a comment about this?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not sure what sort of comment you want. The commit message making this change describes it.
What is special enough about the first frame buffer that warrants a comment?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe,
/* We store all the frame buffers at offset 0x0000000, the layout can be seen below;
*
* 0xX00000 - Pattern Frame Buffer
* Each input then has 3 frame buffers spaced like this;
* 0xX00000 - HDMI Input 0 - Frame Buffer n
* 0xX00000 - HDMI Input 0 - Frame Buffer n+1
* 0xX00000 - HDMI Input 0 - Frame Buffer n+2
Does this have a bug associated with it? |
@@ -19,8 +19,6 @@ | |||
int hdmi_in0_debug; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should the firmware/hdmi_in0.c
file be generated via the Makefile in some way now?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't see why?
firmware/hdmi_in.sh
Outdated
@@ -22,6 +22,11 @@ FIRMWARE_DIR=$SCRIPT_DIR | |||
|
|||
X=$1 | |||
|
|||
# parse the hex as an integer, for arithemtic purposes, then convert back to hex |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe it's just better to do a #define HDMI_IN_INDEX
and then calculate the frame buffer value from that?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah, that may be simpler. It'd probably have to be HDMI_IN0_INDEX
etc.
@@ -12,7 +12,7 @@ | |||
#include "uptime.h" | |||
#include "version_data.h" | |||
|
|||
#define PATTERN_FRAMEBUFFER_BASE 0x02000000 + 0x100000 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It would be good if the 0x100000
part was a define somewhere. It's the rough size of the frame buffer right?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Who knows. I haven't seen a memory map.
Presumably the framebuffers are stored above this base, so I don't know what goes between 0x02000000 and the base.
Yes, but not reported in a ticket. Fixing it was easy enough that I didn't bother. |
46c47ba
to
2d0be60
Compare
So that we can put inputs above it, simply.
2d0be60
to
0d77955
Compare
We accidentally started using the same framebuffers for all inputs in 92eb6f9