Skip to content

Commit f4cb744

Browse files
authored
Merge pull request #9740 from tannewt/document_picodvi_differences
Document picodvi differences
2 parents d9f925b + 1e24389 commit f4cb744

File tree

1 file changed

+21
-10
lines changed

1 file changed

+21
-10
lines changed

ports/raspberrypi/bindings/picodvi/Framebuffer.c

Lines changed: 21 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -41,9 +41,12 @@
4141
//| This allocates a very large framebuffer and is most likely to succeed
4242
//| the earlier it is attempted.
4343
//|
44-
//| Each dp and dn pair of pins must be neighboring, such as 19 and 20.
45-
//| They must also be ordered the same way. In other words, dp must be
46-
//| less than dn for all pairs or dp must be greater than dn for all pairs.
44+
//| On RP2040, each dp and dn pair of pins must be neighboring, such as
45+
//| 19 and 20. They must also be ordered the same way. In other words,
46+
//| dp must be less than dn for all pairs or dp must be greater than dn
47+
//| for all pairs.
48+
//|
49+
//| On RP2350, all pins must be an HSTX output but can be in any order.
4750
//|
4851
//| The framebuffer pixel format varies depending on color_depth:
4952
//|
@@ -53,16 +56,24 @@
5356
//| * 8 - Each byte is a pixels in RGB332 format.
5457
//| * 16 - Each two bytes are a pixel in RGB565 format.
5558
//|
56-
//| Two output resolutions are currently supported, 640x480 and 800x480.
57-
//| Monochrome framebuffers (color_depth=1 or 2) must be full resolution.
58-
//| Color framebuffers must be half resolution (320x240 or 400x240) and
59-
//| pixels will be duplicated to create the signal.
59+
//| Output resolution support varies between the RP2040 and RP2350.
60+
//|
61+
//| On RP2040, two output resolutions are currently supported, 640x480
62+
//| and 800x480. Monochrome framebuffers (color_depth=1 or 2) must be
63+
//| full resolution. Color framebuffers must be half resolution (320x240
64+
//| or 400x240) and pixels will be duplicated to create the signal.
65+
//|
66+
//| On RP2350, output resolution is always 640x480. Monochrome
67+
//| framebuffers (color_depth=1 or 2) must be full resolution. 4-bit
68+
//| color must also be full resolution. 8-bit color can be half or full
69+
//| resolution. 16-bit color must be half resolution due to RAM
70+
//| limitations.
6071
//|
6172
//| A Framebuffer is often used in conjunction with a
6273
//| `framebufferio.FramebufferDisplay`.
6374
//|
64-
//| :param int width: the width of the target display signal. Only 320, 400, 640 or 800 is currently supported depending on color_depth.
65-
//| :param int height: the height of the target display signal. Only 240 or 480 is currently supported depending on color_depth.
75+
//| :param int width: the width of the target display signal. Only 320, 400, 640 or 800 is currently supported depending on color_depth and chip set.
76+
//| :param int height: the height of the target display signal. Only 240 or 480 is currently supported depending on color_depth and chip set.
6677
//| :param ~microcontroller.Pin clk_dp: the positive clock signal pin
6778
//| :param ~microcontroller.Pin clk_dn: the negative clock signal pin
6879
//| :param ~microcontroller.Pin red_dp: the positive red signal pin
@@ -72,7 +83,7 @@
7283
//| :param ~microcontroller.Pin blue_dp: the positive blue signal pin
7384
//| :param ~microcontroller.Pin blue_dn: the negative blue signal pin
7485
//| :param int color_depth: the color depth of the framebuffer in bits. 1, 2 for grayscale
75-
//| and 8 or 16 for color
86+
//| and 4 (RP2350 only), 8 or 16 for color
7687
//| """
7788

7889
static mp_obj_t picodvi_framebuffer_make_new(const mp_obj_type_t *type, size_t n_args, size_t n_kw, const mp_obj_t *all_args) {

0 commit comments

Comments
 (0)