The sunxi-debug driver in Allwinner 3.4 legacy kernel for H3, A83T and H8 devices allows local users to gain root privileges by sending "rootmydevice" to /proc/sunxi_debug/sunxi_debug.
Stm32g0xx_hal_uart.h를 따라가면 아래와 같이 먼가 있긴 하다.(귀찮아..)
#define UART_ADVFEATURE_NO_INIT 0x00000000U /*!< No advanced feature initialization */ #define UART_ADVFEATURE_TXINVERT_INIT 0x00000001U /*!< TX pin active level inversion */ #define UART_ADVFEATURE_RXINVERT_INIT 0x00000002U /*!< RX pin active level inversion */ #define UART_ADVFEATURE_DATAINVERT_INIT 0x00000004U /*!< Binary data inversion */ #define UART_ADVFEATURE_SWAP_INIT 0x00000008U /*!< TX/RX pins swap */ #define UART_ADVFEATURE_RXOVERRUNDISABLE_INIT 0x00000010U /*!< RX overrun disable */ #define UART_ADVFEATURE_DMADISABLEONERROR_INIT 0x00000020U /*!< DMA disable on Reception Error */ #define UART_ADVFEATURE_AUTOBAUDRATE_INIT 0x00000040U /*!< Auto Baud rate detection initialization */ #define UART_ADVFEATURE_MSBFIRST_INIT 0x00000080U /*!< Most significant bit sent/received first */
#define USART_CR2_MSBFIRST_Pos (19U) #define USART_CR2_MSBFIRST_Msk (0x1UL << USART_CR2_MSBFIRST_Pos) /*!< 0x00080000 */ #define USART_CR2_MSBFIRST USART_CR2_MSBFIRST_Msk /*!< Most Significant Bit First */
#define UART_ADVFEATURE_MSBFIRST_DISABLE 0x00000000U /*!< Most significant bit sent/received first disable */ #define UART_ADVFEATURE_MSBFIRST_ENABLE USART_CR2_MSBFIRST /*!< Most significant bit sent/received first enable */
The USART can also communicate synchronously. It can operate as a SPI in Master or Slave mode with programmable clock polarity (CPOL) and phase (CPHA) and programmable data order with MSB or LSB first. The clock is output (in case of Master mode) or input (in case of Slave mode) on the CK pin. No clock pulses are provided during the start and stop bits. When the USART is configured in SPI slave mode, it supports the Transmit underrun error and the NSS hardware or software management.
SPI The maximum SPI clock speed is 5 MHz with 100 pF maximum loading, and the timing scheme follows clock polarity (CPOL) = 1 and clock phase (CPHA) = 1.
Use of the 3200 Hz and 1600 Hz output data rates is only recommended with SPI communication rates greater than or equal to 2 MHz. The 800 Hz output data rate is recommended only for communication speeds greater than or equal to 400 kHz, and the remaining data rates scale proportionally. For example, the minimum recommended communication speed for a 200 Hz output data rate is 100 kHz
I2C Due to communication speed limitations, the maximum output data rate when using 400 kHz I2C is 800 Hz and scales linearly with a change in the I2C communication speed. For example, using I2C at 100 kHz would limit the maximum ODR to 200 Hz
4 wire는 CS / SCLK / SDI / SDO를 쓴다면
3 wire는 CS / SCLK / SDIO 로 쓰는 듯.
(SDIO Serial Data Input Output의 약자 Secure Digital I/O의 약자이기도 하니.. 주의!)
rpi3 같은 메모리 대역폭 후달리는 애도 잘 쓰도록 만들었다는데 머.. 3.3%면 양호한건가..
sway가 문제인가?
The OpenGL ES 2.0 based renderer has now been replaced with a pixman based renderer. The new renderer is both simpler and performs better on devices with poor memory bandwidth such as the Raspberry Pi 3.
$ sudo apt install wayvnc Reading package lists... Done Building dependency tree... Done Reading state information... Done E: Unable to locate package wayvnc
32bit rpi-OS 해도 안되는건 매한가지 -_-
$ ps -ef | grep way pi 1481 1462 0 12:09 pts/1 00:00:00 grep --color=auto way
$ uname -a Linux raspberrypi 5.15.32-v7+ #1538 SMP Thu Mar 31 19:38:48 BST 2022 armv7l GNU/Linux
$ sudo apt-get install wayvnc Reading package lists... Done Building dependency tree... Done Reading state information... Done E: Unable to locate package wayvnc
우분투 22.04 LTS 설치(x86) 실행은 안되네?
$ uname -a Linux victor-770Z5E-780Z5E 5.15.0-43-generic #46-Ubuntu SMP Tue Jul 12 10:30:17 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
$ sudo apt-get install wayvnc 패키지 목록을 읽는 중입니다... 완료 의존성 트리를 만드는 중입니다... 완료 상태 정보를 읽는 중입니다... 완료 다음의 추가 패키지가 설치될 것입니다 : libaml0 libneatvnc0 libturbojpeg 다음 새 패키지를 설치할 것입니다: libaml0 libneatvnc0 libturbojpeg wayvnc 0개 업그레이드, 4개 새로 설치, 0개 제거 및 4개 업그레이드 안 함. 235 k바이트 아카이브를 받아야 합니다. 이 작업 후 839 k바이트의 디스크 공간을 더 사용하게 됩니다. 계속 하시겠습니까? [Y/n]
$ wayvnc wl_registry@2: error 0: invalid version for global wl_output (4): have 2, wanted 3 ERROR: Virtual Pointer protocol not supported by compositor. ERROR: Failed to initialise wayland
$ wayvnc wl_registry@2: error 0: invalid version for global wl_output (4): have 2, wanted 3 ERROR: Virtual Pointer protocol not supported by compositor. ERROR: Failed to initialise wayland
$ wayvnc wl_registry@2: error 0: invalid version for global wl_output (4): have 2, wanted 3 ERROR: Virtual Pointer protocol not supported by compositor. ERROR: Failed to initialise wayland