#
41a60d0e |
|
04-Feb-2024 |
Chris Morgan <macromorgan@hotmail.com> |
board: rockchip: Add early ADC button detect for RGxx3 Add ADC button detect for early SPL stage for RGxx3 device. This is important because on at least the RG353P and RG353V a clk pin is not exposed that would allow us to take the eMMC out of the boot path. Signed-off-by: Chris Morgan <macromorgan@hotmail.com> Reviewed-by: Kever Yang <kever.yang@rock-chips.com> |
#
b7202ebc |
|
04-Feb-2024 |
Chris Morgan <macromorgan@hotmail.com> |
board: rockchip: Add support for Powkiddy RGB10MAX3 Add support to the RGxx3 device for the Powkiddy RGB10MAX3. This device is extremely similar to all the other devices and can use the same bootloader with the same detection logic. Signed-off-by: Chris Morgan <macromorgan@hotmail.com> Reviewed-by: Kever Yang <kever.yang@rock-chips.com> |
#
0cc6cbe8 |
|
02-Jan-2024 |
Chris Morgan <macromorgan@hotmail.com> |
board: rockchip: Add support for new boards to RGxx3 Add support for the Anbernic RG-ARC-D, Anbernic RG-ARC-S, Powkiddy RK2023, and Powkiddy RGB30 to the Anbernic RGxx3. While the Powkiddy devices are manufactured by Powkiddy instead of Anbernic, the hardware is so similar they can all use the same bootloader. Signed-off-by: Chris Morgan <macromorgan@hotmail.com> Reviewed-by: Kever Yang <kever.yang@rock-chips.com> |
#
d2048baf |
|
02-Jan-2024 |
Chris Morgan <macromorgan@hotmail.com> |
rockchip: board: Add board_rng_seed() for all Rockchip devices Allow all rockchip devices to use the hardware RNG to seed Linux RNG. Signed-off-by: Chris Morgan <macromorgan@hotmail.com> Reviewed-by: Kever Yang <kever.yang@rock-chips.com> |
#
4913ce37 |
|
02-Jan-2024 |
Chris Morgan <macromorgan@hotmail.com> |
board: rockchip: Refactor panel auto-detect code Make the inability to detect a panel using the auto detection code not fail the entire boot process. This means that if the panel ID cannot be read we don't set an environment variable for the panel, and if an environment variable for the panel is not set we don't attempt to update the compatible string. Changes to the code also ensure that when there are multiple compatible strings required for the panel we use them both, which solves some issues that will pop up soon for the Linux driver. Signed-off-by: Chris Morgan <macromorgan@hotmail.com> Reviewed-by: Kever Yang <kever.yang@rock-chips.com> |
#
ff27afed |
|
15-May-2023 |
Chris Morgan <macromorgan@hotmail.com> |
board: rockchip: Add panel auto-detection for Anbernic RGxx3 Add support to automatically detect the panel for the Anbernic RGxx3. This is done by creating a "pseudo driver" that provides only the bare minimum to start the DSI controller and DSI DPHY. Once started, we then can query the panel for its panel ID and compare it to a table of known values. The panel compatible string (which corresponds to the upstream Linux driver) is then defined as an environment variable "panel". The panel compatible string is also changed automatically via an ft_board_setup() call if what is detected differs from what is in the loaded tree. This way, end users can use the same bootloader without having to worry about which panel they have (as there is no obvious way of knowing). Signed-off-by: Chris Morgan <macromorgan@hotmail.com> Reviewed-by: Kever Yang <kever.yang@rock-chips.com> |
#
b1903814 |
|
15-May-2023 |
Chris Morgan <macromorgan@hotmail.com> |
board: rockchip: Add support for RG353PS to RGxx3 Add support for the RG353PS to the Anbernic RGxx3. This device is a slightly pared down version of the RG353P with no eMMC, no touchscreen, and only 1GB of RAM. Refactor board logic so that all supported devices are defined with ADC values and that future boards can be added by just defining the board values in the device array. Signed-off-by: Chris Morgan <macromorgan@hotmail.com> Reviewed-by: Kever Yang <kever.yang@rock-chips.com> |
#
6cf6fe25 |
|
21-Apr-2023 |
Chris Morgan <macromorgan@hotmail.com> |
board: rockchip: add Anbernic RGXX3 Series Devices The Anbernic RGxx3 is a "pseudo-device" that encompasses the following devices: - Anbernic RG353M - Anbernic RG353P - Anbernic RG353V - Anbernic RG353VS - Anbernic RG503 The rk3566-anbernic-rgxx3.dtsi is synced with upstream Linux, but rk3566-anbernic-rgxx3.dts is a U-Boot specific devicetree that is used for all RGxx3 devices. Via the board.c file, the bootloader automatically sets the correct fdtfile, board, and board_name environment variables so that the correct devicetree can be passed to Linux. It is also possible to simply hard-code a single devicetree in the boot.scr file and use that to load Linux as well. The common specifications for each device are: - Rockchip RK3566 SoC - 2 external SDMMC slots - 1 USB-C host port, 1 USB-C peripheral port - 1 mini-HDMI output - MIPI-DSI based display panel - ADC controlled joysticks with a GPIO mux - GPIO buttons - A PWM controlled vibrator - An ADC controlled button All of the common features are defined in the devicetree synced from upstream Linux. TODO: DSI panel auto-detection for the RG353 devices (requires porting of DSI controller driver and DSI-DPHY driver to send DSI commands to the panel). Signed-off-by: Chris Morgan <macromorgan@hotmail.com> Reviewed-by: Kever Yang <kever.yang@rock-chips.com> |
#
0cc6cbe8 |
|
02-Jan-2024 |
Chris Morgan <macromorgan@hotmail.com> |
board: rockchip: Add support for new boards to RGxx3 Add support for the Anbernic RG-ARC-D, Anbernic RG-ARC-S, Powkiddy RK2023, and Powkiddy RGB30 to the Anbernic RGxx3. While the Powkiddy devices are manufactured by Powkiddy instead of Anbernic, the hardware is so similar they can all use the same bootloader. Signed-off-by: Chris Morgan <macromorgan@hotmail.com> Reviewed-by: Kever Yang <kever.yang@rock-chips.com> |
#
d2048baf |
|
02-Jan-2024 |
Chris Morgan <macromorgan@hotmail.com> |
rockchip: board: Add board_rng_seed() for all Rockchip devices Allow all rockchip devices to use the hardware RNG to seed Linux RNG. Signed-off-by: Chris Morgan <macromorgan@hotmail.com> Reviewed-by: Kever Yang <kever.yang@rock-chips.com> |
#
4913ce37 |
|
02-Jan-2024 |
Chris Morgan <macromorgan@hotmail.com> |
board: rockchip: Refactor panel auto-detect code Make the inability to detect a panel using the auto detection code not fail the entire boot process. This means that if the panel ID cannot be read we don't set an environment variable for the panel, and if an environment variable for the panel is not set we don't attempt to update the compatible string. Changes to the code also ensure that when there are multiple compatible strings required for the panel we use them both, which solves some issues that will pop up soon for the Linux driver. Signed-off-by: Chris Morgan <macromorgan@hotmail.com> Reviewed-by: Kever Yang <kever.yang@rock-chips.com> |
#
ff27afed |
|
15-May-2023 |
Chris Morgan <macromorgan@hotmail.com> |
board: rockchip: Add panel auto-detection for Anbernic RGxx3 Add support to automatically detect the panel for the Anbernic RGxx3. This is done by creating a "pseudo driver" that provides only the bare minimum to start the DSI controller and DSI DPHY. Once started, we then can query the panel for its panel ID and compare it to a table of known values. The panel compatible string (which corresponds to the upstream Linux driver) is then defined as an environment variable "panel". The panel compatible string is also changed automatically via an ft_board_setup() call if what is detected differs from what is in the loaded tree. This way, end users can use the same bootloader without having to worry about which panel they have (as there is no obvious way of knowing). Signed-off-by: Chris Morgan <macromorgan@hotmail.com> Reviewed-by: Kever Yang <kever.yang@rock-chips.com> |
#
b1903814 |
|
15-May-2023 |
Chris Morgan <macromorgan@hotmail.com> |
board: rockchip: Add support for RG353PS to RGxx3 Add support for the RG353PS to the Anbernic RGxx3. This device is a slightly pared down version of the RG353P with no eMMC, no touchscreen, and only 1GB of RAM. Refactor board logic so that all supported devices are defined with ADC values and that future boards can be added by just defining the board values in the device array. Signed-off-by: Chris Morgan <macromorgan@hotmail.com> Reviewed-by: Kever Yang <kever.yang@rock-chips.com> |
#
6cf6fe25 |
|
21-Apr-2023 |
Chris Morgan <macromorgan@hotmail.com> |
board: rockchip: add Anbernic RGXX3 Series Devices The Anbernic RGxx3 is a "pseudo-device" that encompasses the following devices: - Anbernic RG353M - Anbernic RG353P - Anbernic RG353V - Anbernic RG353VS - Anbernic RG503 The rk3566-anbernic-rgxx3.dtsi is synced with upstream Linux, but rk3566-anbernic-rgxx3.dts is a U-Boot specific devicetree that is used for all RGxx3 devices. Via the board.c file, the bootloader automatically sets the correct fdtfile, board, and board_name environment variables so that the correct devicetree can be passed to Linux. It is also possible to simply hard-code a single devicetree in the boot.scr file and use that to load Linux as well. The common specifications for each device are: - Rockchip RK3566 SoC - 2 external SDMMC slots - 1 USB-C host port, 1 USB-C peripheral port - 1 mini-HDMI output - MIPI-DSI based display panel - ADC controlled joysticks with a GPIO mux - GPIO buttons - A PWM controlled vibrator - An ADC controlled button All of the common features are defined in the devicetree synced from upstream Linux. TODO: DSI panel auto-detection for the RG353 devices (requires porting of DSI controller driver and DSI-DPHY driver to send DSI commands to the panel). Signed-off-by: Chris Morgan <macromorgan@hotmail.com> Reviewed-by: Kever Yang <kever.yang@rock-chips.com> |
#
ff27afed |
|
15-May-2023 |
Chris Morgan <macromorgan@hotmail.com> |
board: rockchip: Add panel auto-detection for Anbernic RGxx3 Add support to automatically detect the panel for the Anbernic RGxx3. This is done by creating a "pseudo driver" that provides only the bare minimum to start the DSI controller and DSI DPHY. Once started, we then can query the panel for its panel ID and compare it to a table of known values. The panel compatible string (which corresponds to the upstream Linux driver) is then defined as an environment variable "panel". The panel compatible string is also changed automatically via an ft_board_setup() call if what is detected differs from what is in the loaded tree. This way, end users can use the same bootloader without having to worry about which panel they have (as there is no obvious way of knowing). Signed-off-by: Chris Morgan <macromorgan@hotmail.com> Reviewed-by: Kever Yang <kever.yang@rock-chips.com> |
#
b1903814 |
|
15-May-2023 |
Chris Morgan <macromorgan@hotmail.com> |
board: rockchip: Add support for RG353PS to RGxx3 Add support for the RG353PS to the Anbernic RGxx3. This device is a slightly pared down version of the RG353P with no eMMC, no touchscreen, and only 1GB of RAM. Refactor board logic so that all supported devices are defined with ADC values and that future boards can be added by just defining the board values in the device array. Signed-off-by: Chris Morgan <macromorgan@hotmail.com> Reviewed-by: Kever Yang <kever.yang@rock-chips.com> |
#
6cf6fe25 |
|
21-Apr-2023 |
Chris Morgan <macromorgan@hotmail.com> |
board: rockchip: add Anbernic RGXX3 Series Devices The Anbernic RGxx3 is a "pseudo-device" that encompasses the following devices: - Anbernic RG353M - Anbernic RG353P - Anbernic RG353V - Anbernic RG353VS - Anbernic RG503 The rk3566-anbernic-rgxx3.dtsi is synced with upstream Linux, but rk3566-anbernic-rgxx3.dts is a U-Boot specific devicetree that is used for all RGxx3 devices. Via the board.c file, the bootloader automatically sets the correct fdtfile, board, and board_name environment variables so that the correct devicetree can be passed to Linux. It is also possible to simply hard-code a single devicetree in the boot.scr file and use that to load Linux as well. The common specifications for each device are: - Rockchip RK3566 SoC - 2 external SDMMC slots - 1 USB-C host port, 1 USB-C peripheral port - 1 mini-HDMI output - MIPI-DSI based display panel - ADC controlled joysticks with a GPIO mux - GPIO buttons - A PWM controlled vibrator - An ADC controlled button All of the common features are defined in the devicetree synced from upstream Linux. TODO: DSI panel auto-detection for the RG353 devices (requires porting of DSI controller driver and DSI-DPHY driver to send DSI commands to the panel). Signed-off-by: Chris Morgan <macromorgan@hotmail.com> Reviewed-by: Kever Yang <kever.yang@rock-chips.com> |
#
6cf6fe25 |
|
21-Apr-2023 |
Chris Morgan <macromorgan@hotmail.com> |
board: rockchip: add Anbernic RGXX3 Series Devices The Anbernic RGxx3 is a "pseudo-device" that encompasses the following devices: - Anbernic RG353M - Anbernic RG353P - Anbernic RG353V - Anbernic RG353VS - Anbernic RG503 The rk3566-anbernic-rgxx3.dtsi is synced with upstream Linux, but rk3566-anbernic-rgxx3.dts is a U-Boot specific devicetree that is used for all RGxx3 devices. Via the board.c file, the bootloader automatically sets the correct fdtfile, board, and board_name environment variables so that the correct devicetree can be passed to Linux. It is also possible to simply hard-code a single devicetree in the boot.scr file and use that to load Linux as well. The common specifications for each device are: - Rockchip RK3566 SoC - 2 external SDMMC slots - 1 USB-C host port, 1 USB-C peripheral port - 1 mini-HDMI output - MIPI-DSI based display panel - ADC controlled joysticks with a GPIO mux - GPIO buttons - A PWM controlled vibrator - An ADC controlled button All of the common features are defined in the devicetree synced from upstream Linux. TODO: DSI panel auto-detection for the RG353 devices (requires porting of DSI controller driver and DSI-DPHY driver to send DSI commands to the panel). Signed-off-by: Chris Morgan <macromorgan@hotmail.com> Reviewed-by: Kever Yang <kever.yang@rock-chips.com> |