Re: [PATCH RFC] staging: Add driver to communicate with the T2 Security Chip

From: Aditya Garg
Date: Sun Mar 09 2025 - 05:06:00 EST




> On 9 Mar 2025, at 2:25 PM, gregkh@xxxxxxxxxxxxxxxxxxx wrote:
>
> On Sun, Mar 09, 2025 at 09:52:38AM +0100, gregkh@xxxxxxxxxxxxxxxxxxx wrote:
>>> On Sun, Mar 09, 2025 at 08:40:31AM +0000, Aditya Garg wrote:
>>> From: Paul Pawlowski <paul@xxxxxxxx>
>>>
>>> This patch adds a driver named apple-bce, to add support for the T2
>>> Security Chip found on certain Macs.
>>>
>>> The driver has 3 main components:
>>>
>>> BCE (Buffer Copy Engine) - this is what the files in the root directory
>>> are for. This estabilishes a basic communication channel with the T2.
>>> VHCI and Audio both require this component.
>>
>> So this is a new "bus" type? Or a platform resource? Or something
>> else?
>>
>>> VHCI - this is a virtual USB host controller; keyboard, mouse and
>>> other system components are provided by this component (other
>>> drivers use this host controller to provide more functionality).
>>
>> I don't understand, why does a security chip have a USB virtual
>> interface in it? What "devices" hang off of it that are found and
>> enumerated by the host OS?
>>
>> And what other drivers use this controller, just normal Linux drivers,
>> or vendor-specific ones?
>>
>>> Audio - a driver for the T2 audio interface, currently only audio
>>> output is supported.
>>
>> Again, is this a platform device or does it sit on the BCE "bus" you
>> will create here?
>
> Also, it looks like you are creating some new user/kernel apis here
> (i.e. a char device for a USB host controller?) So those need to be
> explained a lot as to what they are for and who is using them as I
> really don't understand their need, nor know what userspace code
> controls them.

I'll cleanup the code, and try to fix the todos if possible, and send a patch with proper explanation. My main purpose to put it in staging was that without keyboard, trackpad and other input devices, linux is unusable on t2 macs.

>
> thanks,
>
> greg k-h