On Fri, Apr 30, 2021 at 04:49:35PM +0800, Art Nikpal wrote: > Yep! but Please don't top post, reply in line with needed context. This allows readers to readily follow the flow of conversation and understand what you are talking about and also helps ensure that everything in the discussion is being addressed. > if i try call spi_master_put(master) or spi_unregister_controller(master); > it's made Segmentation fault for me > > what's wrong - may be somebody can help me Probably something is referencing the controller afer it was freed, I do notice that the current version of the driver uses devm_ to register the controller so you'd end up with a double free unless you either use devm_ when freeing or change to a normal registration.