Orange Pi5 kernel

Deprecated Linux kernel 5.10.110 for OrangePi 5/5B/5+ boards

3 Commits   0 Branches   0 Tags
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   1) =========================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   2) Kernel driver i2c-ali15x3
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   3) =========================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   4) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   5) Supported adapters:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   6)   * Acer Labs, Inc. ALI 1533 and 1543C (south bridge)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   7) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   8)     Datasheet: Now under NDA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   9) 	http://www.ali.com.tw/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  10) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  11) Authors:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  12) 	- Frodo Looijaard <frodol@dds.nl>,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  13) 	- Philip Edelbrock <phil@netroedge.com>,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  14) 	- Mark D. Studebaker <mdsxyz123@yahoo.com>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  15) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  16) Module Parameters
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  17) -----------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  18) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  19) * force_addr: int
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  20)     Initialize the base address of the i2c controller
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  21) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  22) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  23) Notes
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  24) -----
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  25) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  26) The force_addr parameter is useful for boards that don't set the address in
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  27) the BIOS. Does not do a PCI force; the device must still be present in
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  28) lspci. Don't use this unless the driver complains that the base address is
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  29) not set.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  30) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  31) Example::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  32) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  33)     modprobe i2c-ali15x3 force_addr=0xe800
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  34) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  35) SMBus periodically hangs on ASUS P5A motherboards and can only be cleared
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  36) by a power cycle. Cause unknown (see Issues below).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  37) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  38) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  39) Description
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  40) -----------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  41) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  42) This is the driver for the SMB Host controller on Acer Labs Inc. (ALI)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  43) M1541 and M1543C South Bridges.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  44) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  45) The M1543C is a South bridge for desktop systems.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  46) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  47) The M1541 is a South bridge for portable systems.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  48) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  49) They are part of the following ALI chipsets:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  50) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  51)  * "Aladdin Pro 2" includes the M1621 Slot 1 North bridge with AGP and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  52)    100MHz CPU Front Side bus
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  53)  * "Aladdin V" includes the M1541 Socket 7 North bridge with AGP and 100MHz
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  54)    CPU Front Side bus
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  55) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  56)    Some Aladdin V motherboards:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  57) 	- Asus P5A
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  58) 	- Atrend ATC-5220
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  59) 	- BCM/GVC VP1541
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  60) 	- Biostar M5ALA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  61) 	- Gigabyte GA-5AX (Generally doesn't work because the BIOS doesn't
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  62) 	  enable the 7101 device!)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  63) 	- Iwill XA100 Plus
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  64) 	- Micronics C200
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  65) 	- Microstar (MSI) MS-5169
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  66) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  67)   * "Aladdin IV" includes the M1541 Socket 7 North bridge
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  68)     with host bus up to 83.3 MHz.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  69) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  70) For an overview of these chips see http://www.acerlabs.com. At this time the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  71) full data sheets on the web site are password protected, however if you
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  72) contact the ALI office in San Jose they may give you the password.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  73) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  74) The M1533/M1543C devices appear as FOUR separate devices on the PCI bus. An
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  75) output of lspci will show something similar to the following::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  76) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  77)   00:02.0 USB Controller: Acer Laboratories Inc. M5237 (rev 03)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  78)   00:03.0 Bridge: Acer Laboratories Inc. M7101      <= THIS IS THE ONE WE NEED
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  79)   00:07.0 ISA bridge: Acer Laboratories Inc. M1533 (rev c3)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  80)   00:0f.0 IDE interface: Acer Laboratories Inc. M5229 (rev c1)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  81) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  82) .. important::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  83) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  84)    If you have a M1533 or M1543C on the board and you get
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  85)    "ali15x3: Error: Can't detect ali15x3!"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  86)    then run lspci.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  87) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  88)    If you see the 1533 and 5229 devices but NOT the 7101 device,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  89)    then you must enable ACPI, the PMU, SMB, or something similar
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  90)    in the BIOS.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  91) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  92)    The driver won't work if it can't find the M7101 device.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  93) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  94) The SMB controller is part of the M7101 device, which is an ACPI-compliant
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  95) Power Management Unit (PMU).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  96) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  97) The whole M7101 device has to be enabled for the SMB to work. You can't
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  98) just enable the SMB alone. The SMB and the ACPI have separate I/O spaces.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  99) We make sure that the SMB is enabled. We leave the ACPI alone.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 100) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 101) Features
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 102) --------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 103) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 104) This driver controls the SMB Host only. The SMB Slave
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 105) controller on the M15X3 is not enabled. This driver does not use
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 106) interrupts.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 107) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 108) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 109) Issues
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 110) ------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 111) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 112) This driver requests the I/O space for only the SMB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 113) registers. It doesn't use the ACPI region.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 114) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 115) On the ASUS P5A motherboard, there are several reports that
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 116) the SMBus will hang and this can only be resolved by
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 117) powering off the computer. It appears to be worse when the board
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 118) gets hot, for example under heavy CPU load, or in the summer.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 119) There may be electrical problems on this board.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 120) On the P5A, the W83781D sensor chip is on both the ISA and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 121) SMBus. Therefore the SMBus hangs can generally be avoided
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 122) by accessing the W83781D on the ISA bus only.