Hello Andrew,
Thanks for the review.
On 8/21/23 2:29 PM, Andrew Lunn wrote:
Testing:How relevant is that? To the host side, it just appears to be an
- This is tested on IBM rainier system with BMC. It requires BMC side
BMC device driver which is available in the ASPEED's 5.15 SDK
kernel.
16550A. Is the SDK emulating an 16550A? If you where to use a
different kernel, is it still guaranteed to be an 16550A? I also
notice there is a mainline
drivers/tty/serial/8250/8250_aspeed_vuart.c. Could that be used on the
BMC? That would be a better testing target than the vendor kernel.
This is just to indicate how I tested my code.
Yes, aspeed chip (in this case ast2600) is compatible with 16550 UART.
I am guessing it should work with different kernel too as 16550 standard is used.
The 8250_aspeed_vuart.c is a BMC side driver for accessing VUART over LPC bus and
this is a host side driver to access VUART over PCIe bus.
Removed.+config ASPEED_HOST_BMC_DEVsame default twice?
+ bool "ASPEED SoC Host BMC device driver"
+ default ARCH_ASPEED
+ select SOC_BUS
+ default ARCH_ASPEED
yes, It should work unless the late initcall is important. I will test it and see.
+static int __init aspeed_host_bmc_device_init(void)It looks like you can use module_pci_driver() ?
+{
+ int ret;
+
+ /* register pci driver */
+ ret = pci_register_driver(&aspeed_host_bmc_dev_driver);
+ if (ret < 0) {
+ pr_err("pci-driver: can't register pci driver\n");
+ return ret;
+ }
+
+ return 0;
+
+}
+
+static void aspeed_host_bmc_device_exit(void)
+{
+ /* unregister pci driver */
+ pci_unregister_driver(&aspeed_host_bmc_dev_driver);
+}
+
+late_initcall(aspeed_host_bmc_device_init);
+module_exit(aspeed_host_bmc_device_exit);
Thanks & Regards,
Ninad Palsule